请教:如何用8位SPI发送连续的24位数据
我要用mega16的SPI(数据寄存器只有8位)给一个DAC发送连续的24位数据,除了IO口模拟时序外,还有什么方法可以实现吗?谢谢各位! 硬件SPI一样可以啊 IO模拟也一样容易实现 yklstudent 发表于 2013-3-6 22:54 static/image/common/back.gif硬件SPI一样可以啊 IO模拟也一样容易实现
硬件SPI如何实现?可以具体一点吗?IO模拟的话太耗时间了,不利于精确控制。 superAFE 发表于 2013-3-6 23:24 static/image/common/back.gif
看了数据手册吗?AVR的各个硬件模块说明很详细的。
mega16的SPI数据寄存器是8位的,发送完后SS#就拉高了,从机没法接收到完整的24位数据。 发三次不就行了嘛 zhanan 发表于 2013-3-6 23:41 static/image/common/back.gif
发三次不就行了嘛
要连续的24位才行,分开后就会被SS#打断了,从机设备无法识别数据。 SS可配置吧,可程序控制。 zhanan 发表于 2013-3-7 00:01 static/image/common/back.gif
SS可配置吧,可程序控制。
数据寄存器只有8位,没传完不能改寄存器的,不然就出错了 手册截图 本帖最后由 zhanan 于 2013-3-7 00:10 编辑
你真够笨的,发送的时候你判断是否发完,发完再发下一个8位。或者用中断。全发完了,拉高SS。
好好看手册。 zhanan 发表于 2013-3-7 00:04 static/image/common/back.gif
感谢,我去试试看!
页:
[1]