[AVR单片机] SPI 通信问题,各位大侠帮忙啊。

[复制链接]
3628|7
 楼主| mochou 发表于 2010-6-30 10:39 | 显示全部楼层 |阅读模式
我现在做的项目需要LPC2136与Mega8相互通信,我采用的是SPI协议,LPC2136先发命令,Mega8执行并返回给LPC2136检测到的数据,两者都是在中断中接收数据。现在LPC2136能够发送数据,Mega8不能接收数据,感觉到Mega8的SPI好像就没有工作。

     请问LPC2136和Mega8怎么设置才能够正常接收和发送数据?当LPC2136给Mega8发数据时我把LPC2136设为主机,Mega8设为从机,当Mega8给LPC2136回传数据时是不是应把Mega8设为主机LPC2136设为从机,主从机要相互切换下吗?麻烦各位大侠指导下啊。小弟在此感激不尽。
guita 发表于 2010-6-30 13:58 | 显示全部楼层
LPC2136什么玩意呢
 楼主| mochou 发表于 2010-6-30 17:10 | 显示全部楼层
LPC2136是NXP出的一款ARM7内核的MCU.
lh8008 发表于 2010-7-1 11:49 | 显示全部楼层
先用LPC2136只作主机,MEGA8只做从机.如果通信正常了,然后再反过来做.如果通信正常了,第三步,再做接下来的主从切换的事情. 问题要一个一个的解决. 我做过的项目是单向的通信,所以不能在双向通信上给你更深的帮助.自己多看一看资料的文档吧.希望你早日解决问题.
 楼主| mochou 发表于 2010-7-1 12:41 | 显示全部楼层
谢谢4楼.现在能够通信了,只是在接收数据时,有一点小问题,我下正在调试.SPI双向通信不必主从切换的.
SHSLZHZ 发表于 2010-7-2 10:35 | 显示全部楼层
1# mochou
既然MEGA8是从机了,就一直是从机.因为你无法控制LPC2136主从切换的.具体你吃透LPC2136就行了.......
 楼主| mochou 发表于 2010-7-2 16:23 | 显示全部楼层
谢谢6楼,MEGA8是一直要做从机的。现在的问题是LPC2136在接收MEGA8返回的數据的時候,单步调试时一会儿接收MEGA8返回的数据,一会接收它本自己发送的数据.(LPC2136在中断中读SPDR).全速运行时LPC2136发什么它自己就接收什么数据请问是什么原因,该怎么的解决呢?谢了.
laslison 发表于 2010-7-2 23:07 | 显示全部楼层
LPC2136陌生,看看
您需要登录后才可以回帖 登录 | 注册

本版积分规则

60

主题

1445

帖子

8

粉丝
快速回复 在线客服 返回列表 返回顶部