完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我现在做的项目需要LPC2136与Mega8相互通信,我采用的是SPI协议,LPC2136先发命令,Mega8执行并返回给LPC2136检测到的数据,两者都是在中断中接收数据。现在LPC2136能够发送数据,Mega8不能接收数据,感觉到Mega8的SPI好像就没有工作。
请问LPC2136和Mega8怎么设置才能够正常接收和发送数据?当LPC2136给Mega8发数据时我把LPC2136设为主机,Mega8设为从机,当Mega8给LPC2136回传数据时是不是应把Mega8设为主机LPC2136设为从机,主从机要相互切换下吗?麻烦各位大侠指导下啊。小弟在此感激不尽。 |
|
相关推荐
6个回答
|
|
|
|
|
|
|
|
|
|
1、你先确定一下mega8的SPI到底有没有工作。方法是将这个SPI挂载到一个确认可以工作的主机上面看能不能收到信息
2、SPI的通信协议是一主多从式,就是一个总线上面只能有一个主机和多个从机。主从机都能够向对方互相发送数据,因此不用切换 (PS:SPI跟USB的工作原理差不多的) |
|
|
|
云汉达人 邀请回答
SPI的主从关系是确定的,不用切换,SPI 四线 写的过程中主机其实也是在读数据的,只需要将两边的时钟极性与相位匹配一直就可以了 以下是 Mega8的 SPI时序 |
|
|
|
主从机不许要切换,你需要检查一下的时序是否正确,然后看一下地址是否正确,一般情况下只要设置对了spi就能工作
|
|
|
|
邀请回答
可以附上您的Code和接線方式比較好知道問題 Master/Slave不需對調,只是接線方式MOSI和MISO腳位會顛倒而已 CS/SS腳位要先拉低後才能開始通訊喔,這是選擇正確的Slave 您可以配合示波器看看MISO和MOSI腳位有沒有正確訊號輸出 以上供參考 |
|
|
|
只有小组成员才能发言,加入小组>>
793 浏览 0 评论
1152 浏览 1 评论
2528 浏览 5 评论
2861 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2711 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1072浏览 3评论
195浏览 2评论
457浏览 2评论
370浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
455浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 01:44 , Processed in 1.178041 second(s), Total 90, Slave 71 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号