PIC单片机双机同步通信设计

单片机 双机同步通信
1. 单片机 pic1编程(主控发送)
list p=16f876
#include p16f876.inc
cblock 0x24 ;保留三个字节作为显示用
count ;作计数器或暂存器用
endc
org 0x0000 ;程序复位入口
nop
start goto main
org 0x0100
main movlw 0x30
movwf fsr ;以下将从30h单元开始的ram内容初始化
movlw 0x30 ;将值30h赋给单元30h
movwf count
intram movf count,0 ;将30h~7fh赋给单元30h~7fh
movwf indf
incf count,1
incf fsr,1
btfss count,7
goto intram
bsf status,rp0 ;将sci部件初始化
movlw 0x19 ;将传输的波特率设为约9600 bps
movwf spbrg
movlw 0x94 ;选择同步高速方式传输8位数据
movwf txsta
bcf status,rp0
movlw 0x80 ;允许同步串行口工作
movwf rcsta
bsf status,rp0
bsf trisc,7 ;将rc6、rc7设置为输入方式,断绝与外接电路的连接
bsf trisc,6
bsf status,rp0
movlw 0x30 ;将从30h单元开始的内容传送到pic2
movwf fsr
movf indf,0
movwf txreg ;将待发送的数据写入发送缓冲器txreg
bsf status,rp0
bsf txsta,txen ;发送允许
bcf status,rp0
tx1 btfss pir1,txif ;等待上一个数据写完
goto tx1
incf fsr ;准备发送下一个数据
movf indf,0
movwf txreg ;将新的数据写入txreg
btfss fsr,7 ;判断所有30h~7fh单元的内容是否发送完毕?
goto tx1 ;没有,则继续发送其它字节
tx2 btfss pir1,txif ;等所有要求发送的数据已经发送完,再额外
goto tx2 ;写一个字节到txreg,使最后一个数据能够顺利发送
movwf txreg
nop ;延时几个微秒后,关发送允许
nop
nop
nop
nop
bsf status,rp0
bcf txsta,txen
bcf status,rp0
call led ;调用显示子程序,将发送的数据显示出来
end ;程序完
2. 单片机 pic2编程(从动接收)
list p=16f876
#include p16f876.inc
cblock 0x24
count
endc
org 0x0000
nop
start goto main
org 0x0100
main bsf status,rp0
movlw 0x10 ;选择同步从动方式
movwf txsta
bcf status,rp0
movlw 0x80 ;串行口使能
movwf rcsta
bsf status,rp0
bsf trisc,7 ;关断与外部电路的联系
bsf trisc,6
bcf status,rp0
movlw 0x30 ;从30h单元开始存放接收的数据
movwf fsr
bsf rcsta,cren ;接收允许
wait btfss pir1,rcif ;等待接收
goto wait
movf rcreg,0 ;读取接收到的数据
movwf indf ;将接收到的数据存入pic2的ram
incf fsr
btfss fsr,7 ;所有的数据是否已接收完?
goto wait ;没有,继续接收其它字节
nop ;延时数微秒后,清接收允许位
nop
nop
nop
bcf rcsta,rcen
call led ;调用显示子程序,将接受到的数据显示出来
end ;程序完

什么是户外电源?便携式户外储能电源的优势了解一下
常见的接线端子故障形式有哪几点?
微软已经声明该操作系统也将支持Win32应用程序
从看清到看懂,3D视觉引爆第四次视觉革命
【虹科技术】网络万用表在数据中心的应用
PIC单片机双机同步通信设计
扬尘检测仪厂家有哪些详细介绍
人工智能和大数据怎样赋能国家治理
电源电源滤波器设计 浅谈电源滤波器设计过程
翼辉信息已正式加入对申威SW64自主指令集架构的支持
我们和八个蔚来产品经理聊了聊,如何把座舱做出蔚气?
5G有什么难言之隐
如何提高系统级设计的工作效率
如何恢复苹果通讯录
是德科技与罗姆半导体联合推出先进设计系统新工作区
数据分析中最常用、最好用的20个Python库分享
工信部王建伟针对工业互联网平台的下一步工作建议提出了四点建议
基于ColdFire5307处理器和uClinux操作系统实现数据采集系统的设计
【方案分享】使用 4 节 AA 电池实现寿命超过 5 年且配备扩展闪存的智能锁方案
常见MOSFET失效模式的分析与解决方法