基于外部中断的单片机串行通讯技术
涂水林
【摘 要】介绍了一种利用单片机外部中断进行串行通讯的方法.具有系统结构简单、可靠性高,运行效果较好的特点. 【期刊名称】《常熟理工学院学报》 【年(卷),期】2005(019)002 【总页数】3页(P97-99)
【关键词】单片机;外部中断;串行通讯 【作 者】涂水林
【作者单位】常熟理工学院自动控制系,江苏,常熟,215500 【正文语种】中 文 【中图分类】基础科学
第 19 卷第 2 期2005 年 3 月 常 熟 理 工 学 院 学报 Joumalof
ChangshuInstituteofTechnology Vol.19 No.4Mar.2005基 于 外 部 中 断 的 单 片 机 串行 通 讯 技 术涂 水林(常熟理工学 院 自动控制系 ,江苏 常熟 215500 )摘 要 : 介 绍 了一 种 利 用 单片机 外部 中断进行 串行通讯 的 方 法 。 具 有 系统 结 构 简单 、 可 靠性 高 ,运行 效 果较好 的 特 点 。关键词 : 单 片机 ;外部 中断 ;串行通讯中图分类号 : IP29文 献标识码 : A文 章编 号 : 1008-2794(2005)02 -0097-03单片机 串行数据通讯一般使用 RS-232C ,RS-422/485 标准 。 MCS-51 单片机所具有 的 多机通信功 能 , 使它可 以方便地构
成主从分布式 多机系统 。 这种 系统一般 由一 台主机和 多 台从机构成 。 主机或者从机 的身 份都是确定 的。 但是在有些 多机通信情况下 ,一个单片机系统在与另一个单片机系统通讯时属 于 主机 ,但与 第三个单片机 系统通讯 时却属 于从机 。 在利用 RS-232C 接 口 实现本地单 片机 系统作从机 的 串行 通 讯后 , 笔者利用单 片机外部 中断配合 I/O 口 开辟 了另一条 串行通讯线路 ,成功地解决 了这一 问题 。 1硬 件 电路 设 计P87LPG767 是Pr-nLIPS公 司新推 出的 20 脚封装的单 片机 , 内含 4 路复用 8 位 A/D 转换 器 。 它 提供高速和低速 的晶振和 RC 振荡方 式 ,可 编程选 择 。 具有 较 宽 的操作 电压 范 围。 可 编程 I/O 口 线 输 出模 式选 择 。有内部看 门狗定时器 。 它还采用 80C51 加速处理 器结构 ,指令 执行速度是标 准 80C51 单 片机 的两倍 。 因此适合 于许 多要求高集成度 、低 成本 的场合 。 可 以满 足许 多方面 的性能要求 。在本 系统 中 ,两个需要进行 串行通讯 的单 片机系统分别 为 P87LPC767 和 89C54 。 硬 件 连 接 如 图 1 所示 。 将两单 片机 的一对外部 中断引脚 连接起来做握手线 ,另选 一对 I/O 口 线作数据线 ,再选一对 I/O 口 线作 同步 时钟线 。 在 P87LPC767 单 片机和 89C54 单 片机之 间设置这三根线 即可实现 串行通讯 。 2 通 讯协议在通 常的异步通信 中 ,数据是 以字符 ( 或字节 ) 为单位组成字符帧传送 的 。 字符 帧 由发送 端一 帧一 帧地 发送 ,通过传输线被接收设备一帧一帧地接收。 发送端和 接 收端可 以有各 自的时钟来控制数据 的发送 和 接 收 ,这两个时钟源彼此独立 ,互 不 同步。 那 么 , 究竟发送 端 和接收端依靠什么 来协调 数据 的发送 和 接 收 呢? 也就是说 :接收端 怎 么 会知 道 发 送 端何 时 开 始 发送 和 何 时 结 束发 送 呢 ? 为 此 本 文 制 定 了 如 下 通 讯 协 议 ,89C54与 P87LPC767 通信时序 图如 图 2 所示 。当 87LPG767为发送方时 ,87LPC767 首先禁止 自己 的外部 中断 1 ,然后使 P1.4 变为低 电平 ,启动 89C54 的收稿 日期 :2004-02 -20作者简介 :涂水林 ( 1967-) ,男 ,江西南 昌人 ,副教授第19卷第 2
期 2005年3月常 熟 理 工 学 院 学报 Joumalof
ChangshuInstituteofTechnology Vol.19 No.4 Mar.2005摘要:介 绍 了一 种 利 用 单片机 外部 中断进行 串行通讯 的 方 法 。 具 有 系统 结 构 简单 、 可 靠性 高 ,运文 章编 号 : 1008-2794(2005)02 -0097-03单片机 串行数据通讯一般使用 RS-232C ,RS-422/485 标准 。 MCS-51 单片机所具有 的 多机通信功 能 ,使它可 以方便地构成主从分布式 多机系统 。 这种 系统一般 由一 台主机和 多 台从机构成 。 主机或者从机 的身份都是确定 的。 但是在有些 多机通信情况下 ,一个单片机系统在与另一个单片机系统通讯时属 于 主机 ,但与第三个单片机 系统通讯 时却属 于从机 。 在利用 RS-232C 接 口 实现本地单 片机 系统作从机 的 串行 通 讯后 ,笔者利用单 片机外部 中断配合 I/O 口 开辟 了另一条 串行通讯线路 ,成功地解决 了这一 问题 。硬 件 电路 设 计 P87LPG767是在本 系统 中 ,两个需要进行 串行通讯 的单 片机系统分别 为 P87LPC767 和 89C54 。 硬 件 连 接 如 图 1 所示 。将两单 片机 的一对外部 中断引脚 连接起来做握手线 ,另选 一对 I/O 口 线作数据线 ,再选一对 I/O 口 线作 同步时钟线 。 在
P87LPC767 单 片机和 89C54 单 片机之 间设置这三根线 即可实现 串行通讯 。 2通 讯协议在通 常的异步通信 中 ,数据是 以字符 ( 或字节 ) 为单位组成字符帧传送 的 。 字符 帧 由发送 端一 帧一 帧地发送 ,通过传输线被接收设备一帧一帧地接收。 发送端和 接 收端可 以有各 自的时钟来控制数据 的发送 和 接收 ,这两个时钟源彼此独立 ,互 不 同步。 那 么 , 究竟发送 端 和接收端依靠什么 来协调 数据 的发送 和 接 收 呢?也就是说 :接收端 怎 么 会知 道 发 送 端何 时 开 始 发送 和 何 时 结 束发 送 呢 ? 为 此 本 文 制 定 了 如 下 通 讯 协 议 , 89C54与P87LPC767通信时序 图如 图 2 所示 。收稿 日期 :2004-02 -20作者简介 :涂水林 ( 1967-) ,男 ,江西南 昌人 ,副教授98常熟理工学 院学报 2005 年┏ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ┳ ━ ━ ━ ━ ━ ━ ━ ━ ━ ┳ ━ ━ ┳ ━ ━ ━ ━ ━ ━ ━ ━