一直为这个芯片的程序烦心,6个脚的芯片,无须设置基准电压,没有寄存器的设置,没有指令的输入,没有任何外围电路.
串行传输,两根控制线(CS和SCLK),一根数据线(SDO),时序也很简单:CS从高到低--->片子开始工作-->SCLK给个下降沿-->读取SDO输出数据0或1-->SCLK置高-->(循环读取16次)-->CS置高,一个读取过程结束.
怎么就是读取的全是0呢?
郁闷~~狂搜~~无果~~到EDN上瞎逛,偶然的机会看到一位博友xiepengkang在圈子里提问:能不能用单片机驱动ADS7886啊? 在三楼有他自己的回复:我已经解决了.
救星啊,赶忙发站内信求助~~~第二天得到回复:在做的时候,不要把SDO,SCLK,CS接成排线。我做的时候搞了好久结果把排线做成单线就好了按照时序图来写应该不会有问题
马上试试看,果然OK了~~~~~~~~欣喜若狂~~~~~~~~~~~~
后感:连接线的问题往往很容易被人忽视,特别是在数字电路中,很少会有人考虑到连线的问题会造成系统的不稳定或根本就没有反应.这次是一个教训,是一次成长,再一次感谢博友xiepengkang的一语破天机
~~~~~~~鉴于电赛期间保持竞赛的公平性原则,源程序待赛后发布,见谅~~~~~~~~
----------------------------------------------------------------------------------------------
应一些网友的请求,现把源程序贴上来,供大家参考研究。https://static.assets-stash.eet-china.com/album/old-resources/2009/7/11/fa72ce38-e7e3-4704-8c85-2abd3479efb9.rarads7886程序
用户1773882 2014-7-16 13:59
用户1773882 2014-7-16 12:15
用户1453845 2013-3-8 10:52
用户429381 2013-1-17 18:00
用户366586 2011-8-22 15:58
用户1599940 2010-8-24 16:37
用户1564440 2009-7-26 14:53
用户221422 2009-7-9 16:50
用户4861 2008-8-31 18:17