第十一讲串行通讯 教材第六章 数字的并行传输与时序 数字的串行通讯与波特率 上位机COM口、VB控件及编程 四下位机中断、协约及节拍时钟 演示 五现场总线简介
第十一讲 串行通讯 教材第六章 一 数字的并行传输与时序 二 数字的串行通讯与波特率 三 上位机COM口、VB控件及编程 四 下位机中断、协约及节拍时钟 演示 五 现场总线简介
数值的并行传输与时序 DO D1 A DA W或R A0 A1 CPU R 8255口 AO A1 C b8255与cPU数据传输时序 a并行接口芯片8255接线图
一数值的并行传输与时序
二数字的串行传输与波特率 数字并行与串行传输 A机 B机 765 DODO D6 串行数据 并行数据—L 时→网→网 一并行数据 TXD RXD
二 数字的串行传输与波特率 数字并行与串行传输
2.RS-232串行通讯接口定义及线路连接 RS-232串行接口(25)管脚定义: 1保护地(FG)2发送数据(TXD) 3接受数据(RXD)4请求发送(RTS) 5清除发送(CTS)6设备就绪(DSR) 7信号地(GND)8载波检测(DCD) 20终端就绪(DTR)22振铃指示(R|) 发送数据 TXD 发送数据 接受数据 接受数据 远程 RXD 算Rs|请求发送 计 电话线 请求发送 MODEN MODEN 连接 机DsRL数据就绪 终 数据就绪」端 信号地 信号地
2. RS-232串行通讯接口定义及线路连接 RS-232串行接口(25)管脚定义: 1 保护地(FG) 2 发送数据(TXD) 3 接受数据(RXD) 4 请求发送(RTS) 5 清除发送(CTS) 6 设备就绪(DSR) 7 信号地(GND) 8 载波检测(DCD) 20 终端就绪(DTR)22 振铃指示(RI) 远程 连接
近 TXD 发送数据 发送数据 /+6按爱熟据按受据 程 连 请求发送 RTS 请求发送 机R数据就 之 数据就绪端 信号地 信号地 GND 简单连接 TX 发送数据 发送数据 RXD 3接受数据 接受数据 上位机 下位机 信号地 GND
近程连接简单连接
3数值串行传输的节拍与波特率 波特率:每秒传送的二进制代码的位数 (bps 时钟脉冲与传送节拍 E时钟儿L几几几几几几几几几几 起始位 B四D国四停止位
3.数值串行传输的节拍与波特率 波特率:每秒传送的二进制代码的位数 (bps) 时钟脉冲与传送节拍
上位(PC)机串行通讯及ⅤB软件 1cOM口9针插座3线定义: 2-发送,3-接受,5-数字地 2VB软件中的c○M控件及其属性设置 VB控件箱中有一标有电话机样图标的控件 用鼠标拖至窗体的适当位置。单击此控件(选中) 再按“F4"键,视窗中出现其属性栏 Commprot (1 or 2) ;两个COM口的选择 In Buffersize ;接受缓存器的容量大小 OutBuffersize ;发送缓存器的容量大小 Seting 4800, n, 8, 1 ;参数依次为波特率, )校验,有效位数及开始位数
三 上位(PC)机串行通讯及VB软件 1 COM口 9 针插座 3 线定义: 2---发送,3---接受,5---数字地 2 VB 软件中的 COM 控件及其属性设置 • VB 控件箱中有一 标有电话机样图标的控 件, 用鼠标拖至窗体的适当位置。单击此控件(选中) 后,再按“F4”键,视窗中出现其属性栏。 Commprot (1 or 2) ;两个COM口的选择 InBuffersize ;接受缓存器的容量大小 OutBuffersize ;发送缓存器的容量大小 Seting 4800,n,8,1 ;参数依次为波特率, (无)校验,有效位数及开始位数
3VB软件串行通讯基本指令语句 发送程序 Comm1 Output=“0 ;输出缓存器清0 Comm1. Output=Strs(val(Text2text);发送文本框2中的内容 CommOut Buffercount=0 ;输出缓存器清0 Comm Output= ;发送结束信号“f 接受程序 Do while Comm 1. In Buffercount <5 DoEvents Loop ;等待接受完毕 Si=Comm Input ;取接受的信息 Text1. text=Si ;把接受的信息送文本框1显示 d=Val(si) ;把接受的信息变换为数值
3 VB 软件串行通讯基本指令语句 • 发送程序 • Comm1.Output=“0” ;输出缓存器清0 • Comm1.Output=Str$(Val(Text2.text)) ;发送文本框2中的内容 • Comm1.OutBuffercount=0 ;输出缓存器清0 • Comm1.Output=“f” ;发送结束信号“f” • 接受程序 • Do while Comm1.InBuffercount<5 • DoEvents • Loop ;等待接受完毕 • Si=Comm1.Input ;取接受的信息 • Text1.text=Si ;把接受的信息送文本框1显示 • d=Val(Si) ;把接受的信息变换为数值
四下位(单片)机中断、协约及节拍时钟 1单片机串行通讯中断环节 中断允许寄存器E(A8H)的相关位定义如下 E D7----D4 D3 D2 D1 DO EA---ESET1E×1ET0EX0 EA(E7)CPU中断总允许位。EA=1,CPU开放中断;EA=0, CPU屏蔽所有中断。 Es(E4)串行中断总允许位。为1允许,为0禁止。 ET1(|E3)千1溢出断总允许位。为1允许,为0禁止。 EX1(E2)外部中断1(NT1)断总允许位。为1允许,为0否。 ET0(旧E1)T0溢出断总允许位。为1允许,为0禁止 EX0(E0)外部中断0(NTo)断总允许位。为1允许,为0否。 由于串行通讯涉及EA、ES及控制波特率的ET1(时钟1),因此, lE寄存器应赋值为98H。其助记 编指令)为 MOVE,#98H
四 下位(单片)机中断、协约及节拍时钟 1 单片机串行通讯中断环节 • 中断允许寄存器IE(A8H)的相关位定义如下: • IE D7 ----D4 D3 D2 D1 D0 • EA ----ES ET1 EX1 ET0 EX0 EA(IE.7) CPU中断总允许位。EA=1,CPU开放中断; EA=0, CPU屏蔽所有中断。 ES(IE.4) 串行中断总允许位。为1允许,为0禁止。 ET1(IE.3)T1溢出断总允许位。为1允许,为0禁止。 EX1(IE.2)外部中断1(INT1)断总允许位。为1允许,为0否。 ET0(IE.1)T0溢出断总允许位。为1允许,为0禁止 EX0(IE.0)外部中断0(INT0)断总允许位。为1允许,为0否。 • 由于串行通讯涉及EA、ES及控制波特率的ET1(时钟1),因此, IE寄存器应赋值为98H。其助记符(汇编指令)为: • MOV IE,#98H
2.串行口控制串行口控制寄存器SCON(99H)的相 关位定义如下: SCON D7 D6 D5 D4 D3 D2 D1 DO SMO SM1 SM2 REN TB8 RB8 TI RI 方式控制多机接受发接发接 00:方式1進讯控制送受送受 第第中中 01:方式2允许允许九九断断 10:方式3 0 0: 禁止禁止 11:方式4
• 2.串行口控制 串行口控制寄存器SCON(99H)的相 关位定义如下: SCON D7 D6 D5 D4 D3 D2 D1 D0 • SM0 SM1 SM2 REN TB8 RB8 TI RI 方式控制 00:方式1 01:方式2 10:方式3 11:方式4 多机 通讯 1: 允许 0: 禁止 接受 控制 1: 允许 0: 禁止 发 送 第 九 位 接 受 第 九 位 发 送 中 断 接 受 中 断