打印

82G516 SPI口访问ADS7843问题

[复制链接]
3429|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
mcuatmel|  楼主 | 2013-3-14 14:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
82G516 的SPI设成主,读写ADS7843,有外部中断时读回来的数据不正确,不知是否有人这么用过,请指点!
沙发
MG_FAE| | 2013-3-14 16:03 | 只看该作者
虽然没用过ADS7843,但是MPC82G516的SPI本身是内部硬件,除非外部中断直接在SPI收发资料的同时,影响改变到SPI接口的I/O,最重要的SPI Clock以及数据输入输出到内部移位寄存器的改变,理论上,从MPC82G516的SPI收发数据,不会有错误。
再者,是否外部中断去影响到ADS7843控制,需要查看下。

使用特权

评论回复
板凳
mcuatmel|  楼主 | 2013-3-15 12:16 | 只看该作者
用IO口方式是可以的,我怀疑SPI的时序,可能不支持ADS7843.

使用特权

评论回复
地板
MG_FAE| | 2013-3-15 13:45 | 只看该作者
细看ADS7843规格书内的时序图~~~
没看出什么差异~~I/O口方式可以~~
只能试着降低SPI_CLOCK速度看看再配合上升沿/下降沿触发看看~~

使用特权

评论回复
5
mcuatmel|  楼主 | 2013-3-15 15:31 | 只看该作者
这个SCLK的速度肯定不是问题,上升下降沿四种组合我都试了,不知是为什么。
我用NSS引脚以IO口方式驱动ADS7843的CS

使用特权

评论回复
6
MG_FAE| | 2013-3-15 15:42 | 只看该作者
本帖最后由 MG_FAE 于 2013-3-15 16:03 编辑

哪就问题可能在nSS控制管脚,
MPC82G516设成主控端,nSS管脚基本上无作用,应该会一直保持在高电平
只有设置成从机时,nSS才能被动的当成片选控制,
LZ已经直接I/O口控制nSS管脚的P1.4当ADS7843的片选CS~~~~难不成还要仔细查看BUSY信号~~~

使用特权

评论回复
7
mcuatmel|  楼主 | 2013-3-18 08:38 | 只看该作者
资料上说,如果SPI设成主,NSS设成输出方式是可以当IO口用的,那么依这规则,就这么设计了,之前也曾发过一贴,请教关于这个引脚的使用和处理,因为没有实际用过,所以先问了,有人回答是可以的,所以出现了现在的问题。

使用特权

评论回复
8
mcuatmel|  楼主 | 2013-4-15 17:37 | 只看该作者
用IO口方式操作,程序主要部分都实现了,现在回过头来还是想这个问题,MCU已集成SPI,如果不用显得有些浪费,可用了,却又调不出来,现在又发现一个问题:如果使能SPI,那么,ADS7843干脆就不工作了,连中断请求信号都没了,恢复IO操作一切正常,真太怪了。哪位大位用过的能否给解释下?

使用特权

评论回复
9
mcuatmel|  楼主 | 2013-4-18 09:12 | 只看该作者
是程序的问题。
读时要:SPIDAT=0这样写,我写成SPIDAT=0xff,是不行的,
但不理解的是,即使不好用也不至于AD7843不在工作啊,不知是为什么。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

512

主题

1456

帖子

2

粉丝