温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

DEI1016&BD429使用遇到的问题及解决

发布时间:2020-06-14 23:03:02 来源:网络 阅读:2184 作者:一袭清风 栏目:开发技术

测试框图:

DEI1016&BD429使用遇到的问题及解决

图中未画出/EN2,/DR2,RXB+,RXB-的连接,/EN2一直维持为高电平,/DR2、RXB+、RXB-悬空;


测试步骤:

  • 系统上点;

  • 可编程器件向DEI1016发送复位信号(/MR低电平持续400ns

  • 可编程器件向DEI1016发送控制信息  (/LDCW电平持续400ns,控制信息为0x0020)

  • 可编程器件向DEI1016加载数据;1 0x0666,2数据为0x55550xAAAA(0x55550xAAAA交替加载),加载数据的频率为1Hz

  • DR1为低电平时,可编程器件从DEI1016读取数据。

问题如下:当可编程器件从DEI1016成功读取几个数据以后,DR1会持续为低电平(即使已经没有向DEI1016写发送数据,且DEI1016已经没有再发送数据),DR1无法自动变为高电平;从芯片手册中得知,当从DEI1016完成读取Word1Word2后,DR1会自动复位(变为高电平),实际情况与此不符,实际情况是DR1会持续为低电平,此时会认为DEI1016接受缓冲器一直存在有效数据,所以会一直做读取数据的动作。

经过测试后发现SEL/OE1,数据总线数据波形如下图1或图2所示(此时DEI1016BD429已经没有发送数据)

DEI1016&BD429使用遇到的问题及解决

DEI1016&BD429使用遇到的问题及解决

解决步骤:

首先怀疑时程序出现了问题,但是经过仔细研究芯片手册的读写时序,发现程序设计出的读写时序完全符合芯片手册的要求;

然后怀疑是硬件电路设计的问题,但是检查原理图和硬件图很久,各种测试后认为没有问题;因为如果硬件或程序有问题的话,那么一次数据收发应该都不会成功的,实际情况时正常收发20多次数据后才出问题;此时整个人就懵逼了。

接下来我打算使出杀手锏,问度娘;但是这次度娘让我失望了,百度压根就没有此种问题的描述或解决办法,整个人已经心灰意冷,地球太残酷了!

然后我使出了终究杀招,寻求芯片厂家的技术支持;联系到中国区技术支持后将问题发送过去,在忐忑中等待了一天;得到的回复是他们也不知道为什么,没有解决办法;此时我绝望了

最后鄙人一狠心,将DEI1016所有未用到的引脚(其实也就只有/DR2,RXB+,RXB-)全都做了处理——/DR2上拉至高电平,RXB+、RXB-下拉至地;再做收发测试的时候居然成功了,此时鄙人整个人激动的快要盆骨涨裂了

问题原因:应为当时在进行硬件设计时只需要一路收发通道,设计选择DEI1016接收通道1进行数据接受;所以只是将DEI1016的/DR1引脚连接至可编程器件,/DR2未用(悬空);当将DEI1016的/DR2上拉至高电平后,对接收通道1的数据读取动作后,/DR1能正常复位。至于为什么至今未明;

教训:以后用新器件的时候没有使用到的,不明确的的芯片引脚尽量还是做处理,该上拉的上拉,该下拉的下拉;

本文属原创,如引用请注明出处!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI