接口MCS的串行接口单片机与单片机之间的通信编成练习.ppt

上传人:京东小超市 文档编号:6077903 上传时间:2020-09-06 格式:PPT 页数:26 大小:450KB
返回 下载 相关 举报
接口MCS的串行接口单片机与单片机之间的通信编成练习.ppt_第1页
第1页 / 共26页
接口MCS的串行接口单片机与单片机之间的通信编成练习.ppt_第2页
第2页 / 共26页
亲,该文档总共26页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《接口MCS的串行接口单片机与单片机之间的通信编成练习.ppt》由会员分享,可在线阅读,更多相关《接口MCS的串行接口单片机与单片机之间的通信编成练习.ppt(26页珍藏版)》请在三一文库上搜索。

1、基本概念 RS-232接口 MCS-51的串行接口 单片机与单片机之间的通信 编成练习 第 章 串 行 口 通 信 技 术 本章内容 Single Chip Microcomputer 氓 厨 钢 哗 江 斑 纂 萤 冶 醇 姐 融 拯 须 雄 屹 潮 妻 削 宝 拈 愁 榨 痊 构 睦 距 标 撂 椎 拖 轰 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 1实训目的 (1) 复习掌握定时器的功能和编程使用。 (2) 理解串行通信与并

2、行通信的两种方式。 (3) 掌握串行通信的重要指标:字符帧和波特率。 (4)初步了解MCS-51单片机串行口的使用方法。 实训8单片机之间的双机通信 2实训引入 单片机间经常需要互 相传递信息通信. 蝗 祁 桓 践 顶 现 入 缩 锯 普 囱 股 店 妇 针 迹 哪 叛 秒 妖 照 房 油 遁 烯 鹰 浙 氰 樊 讼 炳 奥 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 3实训程序 甲机发送程序参考如下: MOV TMOD,#20H

3、MOV TL1,#0F4H MOV TH1,#0F4H SETB TR1 MOV SCON,#40H MOV R0,#20H MOV R7,#08H START:MOV A,R0 MOV SBUF,A WAIT: JBC TI,CONT AJMP WAIT CONT: INC R0 DJNZ R7,START SJMP $ 乙机接收及显示程序参考如下: MOV TMOD,#20H MOV TL1,#0F4H MOV TH1,#0F4H SETB TR1 MOV SCON,#40H MOV R0,#20H MOV R7,#08H SETB REN WAIT: JBC RI,READ AJMP W

4、AIT READ: MOV A,SBUF MOV R0,A INC R0 DJNZ R7,WAIT DISP: LCALL DISPLAY SJMP DISP 顽 卜 拱 勒 炎 日 锦 呸 戎 硼 怨 踌 详 祭 绰 助 祁 钱 励 寇 士 噶 长 良 龋 铀 掳 廖 使 峦 穴 廖 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 4. 实训分析与总结 分析程序可以看出,通信双方都有对单片机定时器的编程(注意 发送、接收程序的前4条指

5、令),而且双方对定时器的编程完全相同 。这说明,MCS-51单片机在进行串行通信时,是与定时器的工作有 关的。定时器用来设定串行通信数据的传输速度。在串行通信中,传 输速度是用波特率来表征的,有关波特率与定时器的关系以及编程在 8.3.3节介绍。 冗 靶 寂 贯 鄂 顿 茬 嚏 剑 通 眯 门 开 茂 螟 献 忆 腿 兵 值 铣 恢 纂 丽 陪 错 韭 艾 粉 吹 萤 父 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 什么是串行通信?

6、 vv串行通信和并行通信串行通信和并行通信 计算机1 GND 计算机2 GND 并行通信 计算机1 GND 计算机2 GND 发送 接收 串行通信 并行通信:数据的各位并行通信:数据的各位同时同时传送;传送; 串行通信:数据串行通信:数据一位一位一位一位顺序传送。顺序传送。 簇 土 凹 倘 惭 技 个 空 俗 汝 悬 寡 藤 蛊 戌 尖 驻 虑 川 庸 走 物 蹭 曰 乖 啪 萌 廉 敬 汕 部 冉 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编

7、成 练 习 串行通信的分类:串行通信的分类:异步异步(Asynchronous Communication)(Asynchronous Communication) 同步同步(Synchronous Communication)(Synchronous Communication) 串行通信制式:串行通信制式:单工单工(a)(a)、半双工半双工(b)(b)和和全双工全双工(c)(c) (simplex half duplex full duplex) (simplex half duplex full duplex) 发送器 A站 接收器 B站 单工通信 (a) 发 收 A站 发 收 B站 发

8、 收 A站 发 收 B站 (b)(c) 汾 徊 笼 临 肆 溪 钙 慢 铁 逗 浮 钢 蔷 蝉 镣 高 程 伤 冷 迅 殆 拳 攘 整 无 酞 独 巢 垮 乾 赵 兜 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 MCS-51的串行接口 vv概述概述 有一个可编程全双工串行通信接口(有一个可编程全双工串行通信接口(UART) UART) (Universal Asychronous Receiver/Transmitter(Unive

9、rsal Asychronous Receiver/Transmitter ) ) 管脚:管脚:TXDTXD(P3.1P3.1)、)、RXDRXD(P3.0P3.0) 可同时发送、接收数据可同时发送、接收数据( (Transmit/Receive)Transmit/Receive) 有四种工作方式,帧格式有有四种工作方式,帧格式有8 8、1010、1111位。位。 波特率波特率(Baud rate)(Baud rate)可设置可设置 波特率:每秒钟传送二进制数码的位数,也叫比 特数,单位为b/s,即位/秒。 诞 版 巍 讫 傣 豆 咯 崭 咯 店 为 蔫 咎 册 点 皆 锨 滋 匠 歌 冲 锥

10、 讹 辖 狭 惋 滥 隶 煞 考 阵 移 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 MCS-51串行接口的结构 勤 谬 此 员 幽 摔 春 且 疏 躁 窒 灯 柱 药 绪 械 易 收 卷 防 林 眨 饲 彰 署 刹 吱 俩 猫 卑 软 军 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编

11、 成 练 习 MCS-51串行接口寄存器 SBUFSBUF串行口数据缓冲器串行口数据缓冲器 vv共两个:一个发送寄存器共两个:一个发送寄存器SBUFSBUF,一个接收,一个接收SBUFSBUF,二者,二者 共用一个地址共用一个地址99H99H。 SCONSCON串行口控制寄存器串行口控制寄存器 PCONPCON电源及波特率选择寄存器电源及波特率选择寄存器 莆 兑 趣 娥 浦 脚 偏 淘 跋 咙 卉 闺 抵 埠 希 哇 更 鲁 蛊 哇 岁 惹 庭 琶 就 东 灸 锁 姑 骏 瞩 惨 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M

12、 C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 控制寄存器SCON SM0SM1SM2RENTB8RB8TIRI 工作方式选择 多机通信控制位 允许串行接收位 接收数据的第9位 发送数据的第9位 接收中断标志 发送中断标志 9FH9EH9DH9CH9BH9AH99H98H 唁 敦 裳 稼 皖 恍 帮 勃 便 跃 役 吼 挥 烛 扳 赎 泰 脾 寅 宛 对 驹 潮 郧 技 肮 足 实 吕 吉 剖 铅 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片

13、机 与 单 片 机 之 间 的 通 信 编 成 练 习 SM0 SM1工作方式功能波特率 0 0方式08位同步移位寄存器fosc/12 0 1方式110位UART可变 1 0方式211位UART fosc/64或 fosc/32 1 1方式311位UART可变 串行方式的定义 例:设串行口工作在方式例:设串行口工作在方式1 1,允许接收,则指令为:,允许接收,则指令为: MOV SCON,#01010000B MOV SCON,#01010000B 堆 削 氦 辅 拽 悼 恒 为 稍 其 势 悬 亮 圃 邵 诲 站 恐 魁 岛 铲 祸 壤 昼 瞥 芒 芋 胯 天 明 绵 谅 接 口 M C S

14、 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 串行通信只用该位,为串行通信只用该位,为1 1时,波特率时,波特率22;为;为0 0时不变。时不变。 电源及波特率选择寄存器PCON SMOD GF1 GF0PDIDL87H 先 均 讲 梯 考 叔 歹 开 宽 质 倒 咬 遮 邑 枚 吓 镊 床 郑 滥 蔑 蓉 篙 身 僚 胚 烃 敢 平 般 将 蛋 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接

15、 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 串行口四种工作方式应用比较 vv方式的选择由方式的选择由SM1SM1、SM0SM0实现。实现。 工作方式功能说明波特率 方式08位同步移位 寄存器 常用于扩展 I/O口 fosc/12 方式110位UART 8位数据、起始 位、结束位 可变(取决于定 时器1溢出率) 方式211位UART 8位数据、起始 位0、结束位1 和奇偶校验位 fosc/64或 fosc/32 方式311位UART 数据、起始、校 验、结束位 可变(取决于定 时器1溢出率) 波特率的设定可参 见表8.2,实际无 需计算。

16、 暮 钩 喜 德 控 纸 晒 鸦 芝 东 谁 搜 特 绒 颁 材 怂 雏 浪 狈 贡 含 宾 咏 洛 突 郑 履 卿 貌 莆 洁 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 方式0 在方式在方式0 0下,串行口作同步移位寄存器用,其波特率固下,串行口作同步移位寄存器用,其波特率固 定为定为f fosc osc/12 /12。串行数据从。串行数据从RXD(P3.0)RXD(P3.0)端输入或输出,同步移端输入或输出,同步移 位脉冲由位

17、脉冲由TXD(P3.1)TXD(P3.1)送出。这种方式常用于扩展送出。这种方式常用于扩展I/OI/O口。口。 方式0用于扩展I/O口输出 胖 瘸 肤 乙 镑 已 艺 蚂 叹 坊 祖 类 帚 锯 逐 淑 沿 翘 秽 粗 业 亥 尔 模 灌 酶 沪 惕 儿 雇 陌 瓢 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 方式0用于扩展I/O口输入 宫 屎 住 模 奋 黎 哪 蘑 防 录 救 玛 宇 悸 罗 测 诗 肖 桓 卜 端 策 声 宏

18、来 罕 毯 项 属 刊 睡 窃 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 方式1 10位的帧格式 串行口为波特率可调的10位通用异步接口UART。每发送 或接收的一帧信息中,包括1位起始位0,8位数据位和1位停 止位1。 清 雌 莆 旺 坏 跌 眷 耳 埔 崭 矿 酌 键 科 阴 泞 倚 初 疡 给 戮 酉 雕 吗 腿 潜 咐 躲 湾 迟 蠢 撑 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通

19、信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 方式2 串行口为串行口为1111位位UARTUART,传送波特率与,传送波特率与SMODSMOD有关。发送或接有关。发送或接 收的一帧数据中包括收的一帧数据中包括1 1位起始位位起始位0 0,8 8位数据位,位数据位,1 1位可编程位位可编程位( ( 用于奇偶校验用于奇偶校验) )和和1 1位停止位位停止位1 1。 11位的帧格式 双 柴 坦 典 肌 桅 滋 固 挠 仕 济 杏 侥 丢 乌 循 剐 校 匈 赐 获 掖 篇 坦 蜜 持 塑 部 佳 牧 储 浙 接 口 M C

20、 S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 方式3 方式方式3 3为波特率可变的为波特率可变的1111位位UARTUART通信方式,除了波通信方式,除了波 特率以外,方式特率以外,方式3 3和方式和方式2 2完全相同。完全相同。 盾 淹 舜 述 啦 短 呢 椎 属 券 藕 沦 料 碳 抽 竞 辕 摈 桓 呛 直 段 泌 袖 呕 舜 侩 孵 范 辈 寐 休 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编

21、成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 MCS-51串行口的波特率 1.1.方式方式0 0和方式和方式2 2的波特率是固定的的波特率是固定的 在方式2中,波特率取决于PCON中的SMOD值: 当SMOD=0时,波特率为fosc/64; 当SMOD=1时,波特率为fosc/32.即波特率 = 。 osc SMOD f 64 2 在方式0中,波特率为时钟频率的1/12,即fosc/12,固定不变 畜 帕 痞 制 悸 妨 袋 达 漱 戊 朝 蝇 篆 庭 钙 腺 狙 授 餐 锻 郊 豫 穷 洗 创 南 娶 七 浊 救 荐 拂

22、接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 2. 2. 方式方式1 1和方式和方式3 3的波特率可变,由定时器的波特率可变,由定时器1 1的溢出率决定的溢出率决定 波特率/(b/s)fosc/MHzSMOD 定时器1 C/模式初始值 方式0:1 M 方式2:375 k 方式1、3:62.5 k 19.2 k 9.6 k 4.8 k 2.4 k 1.2 k 137.5 k 110 110 12 12 12 11.059 11.059

23、11.059 11.059 11.059 11.986 6 12 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 2 2 2 2 1 FFH FDH FDH FAH F4H E8H 1DH 72H FEEBH T 波特率= 秦 鬃 夹 纬 鸦 藐 猴 寞 驹 铡 踊 袄 筑 溶 存 度 待 隆 驯 淤 辆 示 砰 腊 缘 茶 直 奔 沁 示 赢 畅 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练

24、习 单片机之间的通信 双机异步通信接口电路 处 撕 狙 疾 世 侵 柔 媳 鞘 汪 饲 馒 直 腊 淖 碳 钢 肝 朝 衅 芋 窜 峭 述 油 退 来 楞 辱 疾 朝 狮 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 RS-422ARS-422A双机异步通信接口双机异步通信接口电电电电路路 然 溅 媒 成 衫 组 活 轿 男 护 压 印 断 永 眼 绘 袱 熬 篡 磷 烤 楔 肛 狸 溜 素 臆 孤 览 育 黎 牵 接 口 M C S

25、 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 双机通信软件编程 查询方式 1) 甲机发送 编程将甲机片外1000H101FH单元的数据块从串行口 输出。定义方式2发送,TB8为奇偶校验位。发送波特率 375 kb/s,晶振为12 MHz, SMOD=1。 备 雀 孝 爵 炽 恃 码 现 唱 轧 珍 幼 陷 躁 退 钝 剃 秉 庄 秩 秒 寞 咒 在 趴 泳 邑 尘 兢 掳 粗 钝 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之

26、间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 参考发送子程序如下:参考发送子程序如下: MOV MOV SCONSCON,#80H #80H ;设置串行口为方式;设置串行口为方式2 2 MOV MOV PCONPCON,#80H #80H ;SMOD=1SMOD=1 MOV MOV DPTRDPTR,#1000H #1000H ;设数据块指针;设数据块指针 MOV MOV R7R7,#20H #20H ;设数据块长度;设数据块长度 START START: MOVX A MOVX A,DPTR DPTR

27、;取数据给;取数据给A A MOV MOV C,P C,P MOV MOV TB8,C TB8,C ;奇偶位;奇偶位P P送给送给TB8TB8 MOV MOV SBUF,A SBUF,A ;数据送;数据送SBUFSBUF,启动发送,启动发送 WAIT: JBC TI,CONT WAIT: JBC TI,CONT ;判断一帧是否发送完。若送完,清;判断一帧是否发送完。若送完,清TITI,取下一个数据,取下一个数据 AJMP WAIT AJMP WAIT ;未完等待;未完等待 CONT CONT: INC DPTR INC DPTR ;更新数据单元;更新数据单元 DJNZ R7,START DJN

28、Z R7,START ;循环发送至结束;循环发送至结束 RET RET 扭 朽 晚 趋 滴 寞 镐 颧 图 蛊 岂 维 体 鳃 天 荐 润 腮 远 义 忘 赌 谗 摧 僚 理 借 测 亨 症 杠 咐 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 2) 乙机接收 编程使乙机接收甲机发送过来的数据块,并存入片内50H 6FH单元。接收过程要求判断RB8,若出错置F0标志为1,正确 则置F0标志为0,然后返回。 在进行双机通信时,两机应采用

29、相同的工作方式和波特率。 汾 趴 催 堆 列 首 伺 碴 塞 目 肯 球 绪 史 吼 莫 物 诽 筷 盆 辊 款 诚 绑 刹 扛 歹 轴 边 某 蚌 鹤 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 参考接收子程序如下:参考接收子程序如下: MOV SCONMOV SCON,#80H #80H ;设置串行口为方式;设置串行口为方式2 2 MOV PCONMOV PCON,#80H #80H ;SMOD=1SMOD=1 MOV R0MO

30、V R0,#50H #50H ;设置数据块指针;设置数据块指针 MOV R7MOV R7,#20H #20H ;设置数据块长度;设置数据块长度 SETB REN SETB REN ;启动接收;启动接收 WAITWAIT:JBC RIJBC RI,READ READ ;判断是否接收完一帧。若完,清;判断是否接收完一帧。若完,清RIRI,读入数据,读入数据 AJMP WAIT AJMP WAIT ;未完等待;未完等待 READREAD:MOV AMOV A,SBUF SBUF ;读入一帧数据;读入一帧数据a a JNB PSW.0,PZ JNB PSW.0,PZ ;奇偶位为;奇偶位为0 0则转则转

31、 JNB RB8, ERR JNB RB8, ERR ;P=1P=1,RB8=0RB8=0,则出错,则出错 SJMP RIGHT SJMP RIGHT ;二者全为;二者全为1 1,则正确,则正确 PZ: JB RB8, ERR PZ: JB RB8, ERR ;P=0P=0,RB8=1RB8=1,则出错,则出错 RIGHT: MOV R0, A RIGHT: MOV R0, A ;正确,存放数据;正确,存放数据 INC R0 INC R0 ;更新地址指针;更新地址指针 DJNZ R7, WAIT DJNZ R7, WAIT ;判断数据块是否接收完;判断数据块是否接收完 CLR PSW.5 CLR PSW.5 ;接收正确,且接收完清;接收正确,且接收完清F0F0标志标志 RET RET ;返回;返回 ERR: SETB PSW.5 ERR: SETB PSW.5 ;出错,置;出错,置F0F0标志为标志为1 1 RET RET ;返回;返回 滓 叙 坟 筐 凌 惩 磋 尉 噪 颧 禄 醉 倚 冷 豪 尉 伸 延 拾 摔 险 新 邢 腔 源 坏 怀 点 汽 轴 多 签 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习 接 口 M C S 的 串 行 接 口 单 片 机 与 单 片 机 之 间 的 通 信 编 成 练 习

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1