查看: 2167|回复: 8

[讨论] FlexIO接口AD7771 T0没有触发T2 原因

[复制链接]

该用户从未签到

12

主题

49

帖子

0

中级会员

Rank: 3Rank: 3

积分
326
最后登录
2023-3-23
发表于 2020-4-28 10:14:49 | 显示全部楼层 |阅读模式
本帖最后由 wwllzz 于 2020-5-4 13:00 编辑

我用i.MX RT1061, 想由FlexIO异步方式接收4个AD7771的OUT脚, T0持续DRDY(引脚上升沿触发)一个DCLK周期后触发T2波特率定时器, 驱动移位器接收俩32位数据. 用DRDY上升沿触发的T1定时器(65位时间)去关闭T2, 但目前我的设置只看到T0和T1被触发过, T2没跑. TICTL[0]=TICTL[1]=0x38400003  TIMCTL[2]=0x03400401  TIMCFG[0]=0x01062600  TIMCFG[1]=03062600 TIMCFG[2]=03061600 TIMCMP[0]=0x27  TIMCMP[1]=0x103 TIMCMP[2]=0x3F09
回复

使用道具 举报

该用户从未签到

12

主题

49

帖子

0

中级会员

Rank: 3Rank: 3

积分
326
最后登录
2023-3-23
 楼主| 发表于 2020-4-28 10:25:59 | 显示全部楼层
在我看资料的想象中, T0使能时输出逻辑0, T0关闭(disable)后就是输出1, 配置Timer2采用Timer0的触发器输出 上升沿(Trigger active high)即可 但不行
回复 支持 反对

使用道具 举报

该用户从未签到

656

主题

6312

帖子

0

超级版主

Rank: 8Rank: 8

积分
20106
最后登录
2024-5-1
发表于 2020-4-29 15:48:00 | 显示全部楼层
楼主你好!
是否可以把你AD7771的实际需要波形,以及FLEXIO的测试波形也发出来看看?
回复 支持 反对

使用道具 举报

该用户从未签到

12

主题

49

帖子

0

中级会员

Rank: 3Rank: 3

积分
326
最后登录
2023-3-23
 楼主| 发表于 2020-4-29 15:59:48 | 显示全部楼层
本帖最后由 wwllzz 于 2020-4-29 16:13 编辑

其中一个输出脚

其中一个输出脚
   这是其中一个引脚的输出波形, 我的分析仪只能解析前16位的数据, 实际的数据是64位的俩个. 两个DRDY之间的DCLK时钟数是多于65个的(足够传出完整数据)  AD的4个脚输出采样数据, 处理器用FlexIO3的引脚来移位接收.  理解不了这FlexIO的原理和手册说明 瞎弄  配置FLEXIO_TIMCTL_TRGPOL(1)后 似乎Timer2有发生动作, 但产生的移位器输出中断的时刻与频率都不对
回复 支持 反对

使用道具 举报

该用户从未签到

656

主题

6312

帖子

0

超级版主

Rank: 8Rank: 8

积分
20106
最后登录
2024-5-1
发表于 2020-4-29 16:23:15 | 显示全部楼层
wwllzz 发表于 2020-4-29 15:59
这是其中一个引脚的输出波形, 我的分析仪只能解析前16位的数据, 实际的数据是64位的俩个. 两个DRDY之间 ...

你也看看这两篇文档,是否对你有用:
https://www.nxpic.org.cn/module/forum/thread-616602-1-1.html
https://www.nxpic.org.cn/module/forum/thread-616561-1-1.html
回复 支持 反对

使用道具 举报

该用户从未签到

12

主题

49

帖子

0

中级会员

Rank: 3Rank: 3

积分
326
最后登录
2023-3-23
 楼主| 发表于 2020-4-29 16:23:20 | 显示全部楼层
本帖最后由 wwllzz 于 2020-4-29 16:47 编辑

我将FLEXIO2_CK_ROOT的时钟速度配置到80MHz, 而不是默认的30MHz, FlexIO3用的也是这个时钟, 这样会有问题吗? 我多想有差不多现成简单配置就能搞定的应用呀 那逻辑抽象的驱动程序对我不合适(更难懂和难调 不知所云) 我反复衡量还是选择了看手册死抠寄存器
回复 支持 反对

使用道具 举报

该用户从未签到

12

主题

49

帖子

0

中级会员

Rank: 3Rank: 3

积分
326
最后登录
2023-3-23
 楼主| 发表于 2020-5-4 13:01:42 | 显示全部楼层
本帖最后由 wwllzz 于 2020-5-4 16:36 编辑

寄存器的配置顺序不能随意 配置阶段不能使能快速存取. 定时器可以临时输出到某个调试引脚上 看下逻辑波形 再体会问题. 我还是自己摸索体会按手册 操作寄存器实现的. 那个逻辑层只要不是现成成熟直接可用的驱动, 其实仅供参考的
回复 支持 反对

使用道具 举报

该用户从未签到

656

主题

6312

帖子

0

超级版主

Rank: 8Rank: 8

积分
20106
最后登录
2024-5-1
发表于 2020-5-6 11:14:46 | 显示全部楼层
wwllzz 发表于 2020-4-29 16:23
我将FLEXIO2_CK_ROOT的时钟速度配置到80MHz, 而不是默认的30MHz, FlexIO3用的也是这个时钟, 这样会有问题吗 ...

关于时钟,我认为只要不超过最大时钟,都是可以配置的。不需要关注默认的情况。
你这边的应用,我查了下,目前是真没有对应的方案,所以确实需要你理解了寄存器之后,去给定你需要的波形。然后测试对应的波形是否是你外部设备需要的。
回复 支持 反对

使用道具 举报

该用户从未签到

0

主题

72

帖子

0

注册会员

Rank: 2

积分
78
最后登录
2023-1-28
发表于 2022-11-6 20:12:33 | 显示全部楼层
本帖最后由 kwcha333 于 2022-12-31 19:58 编辑

感谢分享






















萬能KEY轉介的專業團隊首先會以豐富的經驗及知識整合出客戶所有的二線財務供款、外,並制定分期貸款足夠的貸款額作一次性的還債
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /4 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2024-5-2 15:02 , Processed in 0.129459 second(s), 27 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表