打印

51F310读写45DB161,能写不能读咋回事呢?救命啊

[复制链接]
2402|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xusnwise|  楼主 | 2007-6-14 16:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
51F310读写45DB161,能写不能读咋回事呢?救命啊.
用示波器看了下波形,发现写的数据是正确的,但读
的时候怎么进不了中断,SCK和MISO一直为高电平,
好象是:  读SPI寄存器不能启动SPI总线;
        *ptr = SPI0DAT(310中的SPI Buffer);
这条语句启动不了SPI,程序就一直死在中断等待上了
我是这样配置SPI的,使用三线方式,MODE 3,
NSS接上拉,MISO接5.1k上拉,频率6MHZ 
   谢谢各位老师教导!

相关帖子

沙发
xusnwise|  楼主 | 2007-6-14 16:25 | 只看该作者

救火车前辈呢,快来救火啊

救火车前辈呢,快来救火啊

使用特权

评论回复
板凳
古道热肠| | 2007-6-15 10:42 | 只看该作者

再大喊大叫,谁了帮不了你

  首先你要分清楚是芯片是161或是161B或者161D,再看对应的PDF,一般先读器件状态字,就是发0x57命令,再读1字节设备状态字,通常为0xAC, 再进行下边的测试,如果是161D,还可能读设备ID。
  单片机的SPI总线,读数据是不会出现死循环的,至多读取到的数据的内容不对,自已仔细查查再说吧!

使用特权

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

本版积分规则

40

主题

294

帖子

0

粉丝