怎么用PIC单片机实现SPI双机通信

怎么用PIC单片机实现SPI双机通信,第1张

(1)SDI – 主设备数据输入,从设备数据输出;

(2)SDO – 主设备数据氏粗输出,从设备数据输入;

(3)SCLK – 时钟信号,由主设备产生;

(侍激4)CS – 从设备使老核袜能信号,由主设备控制。

直接把两个单片机连接到一起就可以了,然后按照datasheet要求写驱动程序也就是设置寄存器

我这里有用汇编写的两个atmega 16之间用SPI通信的程序。主单片机查询腔闹发送11个字节的数据,从单片机中断接收这些数腔唤据。

主单片机从0090单元开始发送伍圆凯11字节的数据

f_chuans:

QQ2: CLR R30

LDI YL,$90

LDI YH,$00

QQ1: LD R16,Y+

OUT SPDR,R16

CBI PORTB,4

QQ0: SBIS SPSR,7

RJMP QQ0

CBI SPSR,7

SBI PORTB,4

INC R30

CPI R30,LOW(11)

BRNE QQ1

LDI R30,$00

RET

从单片机中断接收11个数据,存入到0270单元中

f_zhongd:IN R14,SREG

IN R15,SPDR

ST X+,R15

INC R20

CPI R20,LOW(11)

BRNE FF0

LDI XL,$70

LDI XH,$02

CLR R20

FF0:OUT SREG,R14

RETI

要加入数码管动态显示程序,必须要与实际的数码管电路相符才能显示出来,可是没有具体电路,怎么写程序。这不能瞎悄谈随便磨碰瞎写,瞎写的程序没有什么用,等于没写。是实物开发板,还是仿真。数码管显示什么,是几个数码管,你自己都一律不知,别人运高更不知道了,怎么可能写程序。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12310411.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存