ADI 技术
直播中

谭怡宁

7年用户 186经验值
私信 关注
[问答]

请教关于AD2S1210 寄存器读取的问题

工程师你好,我在配置模式下写入和读取配置寄存器时发现一些奇怪的现象,寄存器地址为偶数的时候,内容只能写进去一次,再次读取的时候内容就变成了0,地址是奇数的时候,则没有这样的问题,读写都正常。比如,DOS失配阈值寄存器,我第一次写入数据以后,DOS超过失配阈值故障不会报错,当我读取这个寄存器的时候,读出的内容是0,同时DOS故障灯亮,读取一次错误寄存器(奇数地址)显示是0,灯灭(读取其他奇数寄存器,显示正常,灯也会灭)。还有一种情况是,第一写入DOS失配阈值寄存器没有错误,读取内容之后为0,DOS故障灯亮,再读错误寄存器,灯不会灭,同时错误指示为DOS超过失配阈值故障。这些现象如何解释?还有一个问题是,使用AD2S1210读取位置和速度各一次的时间多少算正常?我用的28335,主频150M只读位置和速度用了大概30us。

回帖(3)

黄鸿江

2018-8-1 08:58:00
你这是串口操作还是并口操作,正常情况下,写进寄存器的值和读取出来的值一致说明时序没有问题,先确保你的时序没有问题,手册上分别给出了串口和并口的时序指标,只要满足时序要求就可以
举报

梁龙营

2020-12-28 00:15:46
你好,你这个问题解决了吗,我和你的现象一模一样,不知道怎么办了,特求助。
举报

新馨之乐

2024-10-16 19:06:11
AD2S1210的读时序和写时序要一起看。当你以为你在读取时,实际上在你写入地址后,然后通过引脚SDO读取数据时,此时AD2S1210也在偷偷地通过SDI引脚重新给寄存器赋值。当你是偶数寄存器写完地址后SDI为低,所以SDI会认为是数据字节,所以给赋值了。解决方案就是:在写入地址后,将SDI引脚拉高就可以了
举报

更多回帖

发帖
×
20
完善资料,
赚取积分