第八章数据通信
任课教师:刘忠国
山东大学课程中心网站:
./G2S/
宏晶官方网站:单片机编译(汇编)/编程(烧录)/仿真工具说明书; stc15系列单片机器件手册等
keil μvision软件下载及指导手册(Help→μvision Help) /
Keil Software –Cx51 编译器用户手册: Cx51编译器--对传统和扩展的8051微处理器的优化的C编译器和库参考
2
第八章数据通信
本章学习目标
了解通信的有关概念
掌握串行通信和并行通信的原理
掌握常见串行接口(RS232/RS485/SPI/I2C)的原理及应用方法
掌握单片机并行接口的扩展方法
3
第八章数据通信
通信的有关概念
串行通信的相关概念
并行通信的相关概念
串行接口
单片机的串行接口
RS232串行通信接口
RS485通信接口
SPI通信接口
I2C通信接口
并行总线接口的使用方法
文件管理控制芯片CH376简介
CH376的常用命令
CH376使用步骤和实例代码
1. 串行口的寄存器
2. 串行口的工作方式
3. 多处理机通信
4. 波特率的设定
5. 串行口通信应用举例
4
1)SM0/FE:
PCON寄存器中的SMOD0=1时,该位用于帧错误检测,当检测到一个无效停止位时,FE置1。它必须由软件清零。
PCON寄存器中的SMOD0=0时, SM0/FE位和SM1一起指定串行通信的工作方式。(如表8-2)
表中SYSclk为振荡器频率
(1)串口1控制寄存器SCON
位号
D7
D 6
D 5
D 4
D 3
D 2
D 1
D 0
位名称
SM0/FE
SM1
SM2
REN
TB8
RB8
TI
RI
5
(1)串口1控制寄存器SCON
注: 当T1工作于模式0且T1x12 = 0时:
T1的溢出率= SYSclk/12/( 65536 –[RL_TH1,RL_TL1]);
当T1工作于模式0且T1x12 = 1时:
T1的溢出率= SYSclk / (65536–[RL_TH1,RL_TL1])。
当T2x12=0时, T2溢出率=SYSclk/12/(65536–[RL_TH2,RL_TL2] );
当T2x12 = 1时, T2的溢出率=SYSclk/(65536–[RL_TH2,RL_TL2] )。
表8-2 串行通信的工作方式
T1工作于模式2的波特率从略
SYSclk为振荡器频率
6
(1)串口1控制寄存器SCON
表8-2 串口1的工作方式
7
(1)串口1控制寄存器SCON
2)SM2:多机通信控制位。
多机通信时单片机工作于方式2或方式3。SM2位是进行主-从多机通信的控制位。
当进行主从式通信时, 开始各个从机都应置SM2=1。主机发出的第一帧信息是地址帧信息(数据帧的第9数据位RB8为1), 此时各个从机接收到地址帧信息后都能产生中断,并进入各自的中断服务程序。
只有被寻址的从机(地址与从主机发出的地址号相符) 在中断服务程序中使SM2=0, 为从机接收主机发出的数据帧信息(第9数据位RB8为0)作准备。
位号
D7
D 6
D 5
D 4
D 3
D 2
D 1
D 0
位名称
SM0/FE
SM1
SM2
REN
TB8
RB8
TI
RI
单片机工作于方式2或方式3时未必是多机通信
8
(1)串口1控制寄存器SCON
2)SM2:多机通信控制位。
而其他从机(地址与地址号不相符),在中服中仍然维持SM2=1。对主机以后发出的数据帧信息(RB8为0), 将不会产生中断申请, 从而不会接收后续的数据帧信息。
方式1和方式0是非多机通信方式, 这两种方式时, 要设置SM2=0。
方式1时, 如SM2=1, 只有接收到有效停止位时才能激发中断标志(RI=1), 若没有接收到有效停止位,则RI仍然为0。
方式0是同步移位寄存器输出方式, 无起始位和停止位。
位号
D7
D 6
D 5
D 4
D 3
D 2
D 1
D 0
位名称
SM0/FE
SM1
SM2
REN
TB8
RB8
TI
RI
9
单片机的串行接口
2、串行接口的工作方式
(1) 串行接口1的工作方式
IAP15W4K58S4单片机的串行口1有4种工作方式,通过设置SCON寄存器的SM0和SM1进行选择。现分别加以介绍。
SM0, SM1 串口1工作方式
0
数据通信-四川大学课程中心-山东大学 来自淘豆网m.daumloan.com转载请标明出处.