关于SPI设备的使用
由于MCU(增强型8051)处理速度不够,想让两个SPI设备同时工作,如下图连接,实现一个发送一个接收,SPI1---MCU----SPI2构成数据"回路"至于发数据的模...
由于MCU(增强型8051)处理速度不够, 想让两个SPI设备同时工作, 如下图连接, 实现一个发送一个接收, SPI1 --- MCU ---- SPI2 构成数据"回路"
至于发数据的模块地址可以用 IO口模拟输入
还没有开始编程, 不知道可不可行?
第一次用单片机 对SPI也不太懂.... 求指点啊~~ 展开
至于发数据的模块地址可以用 IO口模拟输入
还没有开始编程, 不知道可不可行?
第一次用单片机 对SPI也不太懂.... 求指点啊~~ 展开
展开全部
我觉得如果瓶颈在MCU速率上的话,仅靠改变外部回路的连接也没有办法提高通信速度。SPI本身就是同时收发数据的吧?你选的MCU没有硬件SPI接口,那就只能靠I/O模拟软件实现了,那影响通信速率的就应该是指令执行的速度了,换句话说每个通信周期执行的指令越少理论速度越快,上面的回路设计可能会导致程序复杂度增加,效率可能会更低。说白了,CLK的频率决定理论通信速率,外部回路特性决定通信稳定性,二者同时达标就是你所能达到的速度了。
追问
为什么会增加代码呢
我以为用一个SPI_READ()的函数就可以把下面那个模块的数据传到上面了...
不知哪里想错了....请指正啊~~
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不行吧,你的片选信号呢。好像MASTER不能同时使能2个SLAVE吧,不使能咋能用呢?一个主设备可以接多个从设备,但是好像只能一次使能一个从设备吧。使能后才会送出时钟。2个从设备可以一个一个来。先发然后收,2个一起整好像不行哦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不对,每个SPI设备都需要接MOSI,MISO和CLK,还有一个片选CS,你要同时接两个设备的话,只需要CS连接不通IO来控制就可以了。
更多追问追答
追问
我只是希望两个SPI设备间定向的数据传输(比如由2号到1号)
那么把图上没画的MOSI / MISO 接到其他IO口, 但不进行操作可以吗?....
那以正常的连接接方式, 把两个模块的SS都拉低, 可以实现他们之间数据传递吗 不是先传地址才能读数据么? ....
实在是没有更快的单片机以实现常规的SPI传输了, 也没有查到有人这么连接过...
小生诚心求教.....
追答
两个设备之间是不能直接通信的,只能是你单片机采了1的数据发给2。SPI口是又主从关系的。SPI1 --- MCU ---- SPI2你这个模型是对的。就是MCU采了1的数据发给2,然后采了2的数据发给1.。51完全可以完成这个过程。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询