保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

一种用于单片机的红外串行通信接口


全双工方式下发送的信号也可能会被本身接收,因此红外通信需采用异步半双工方式,即通信的某一方发送和接收是交替进行的。这里设置单片机的串行口采用方式3通信;通信的数据格式为每帧11位,包括1位起始位、8位数据位、1位奇偶校验位和1位停止位;片内定时器T1作为波特率发生器,选择传送的波特率为1200bps,则定时器T1的初值应设置为TL1=TH1=E8H,另外应禁止定时器T1中断,以免因定时器T1溢出而产生不必要的中断。

3.2 通信协议

进行红外通信之前,通信双方首先要根据系统的功能要求制订某种特定的通信协议,然后才能编写相应的通信程序。例如在电度表抄表系统中,红外通信的一方是单相电度表,另一方是手持抄表器,双方遵循表1格式的通信协议。

表1 抄表系统的通信协议

          格 式
  操 作 操作码 地址码 数  据 结束符 读取表数 AAH 3字节BCD码 3字节BCD码 EDH 设置表号 BBH - 3字节BCD码 EDH 设置表底数 CCH 3字节BCD码 3字节BCD码 EDH 开/关表设备 DDH 3字节BCD码 A0H/B0H EDH 校验出错 EEH 3字节BCD码 - EDH

3.3 单相电度表通信程序

在电度表抄表系统中,单相电度表接收命令是被动的,因此它采用实时性的中断方式进行接收。在系统初始化程序中依据如前所述的通信方式,对串行口和定时器T1进行相应的设置。

在中断程序程序中按字节形式进行接收,将接收到的字节存放在预先设定的缓冲区内,当接收到命令结束符后,则转入命令处理并回送相应的信息。接收过程中若发现校验错误,则停止接收并调用错误处理子程序,发送接收出错的信息,要求发送端重新发送。串行口中断服务程序的流程如图4所示。

3.4 手持抄表器通信程序

在红外通信过程中,手持抄表器是通信的发起者,其发送和接收都是主动的。它的具体工作过程为:CPU不断扫描键盘,若发现有命令键按下,则调用发送子程序发送相应的操作命令;发送结束后即启动接收子程序,以接收电度表回送的信息,然后对接收到的信息进行后续处理。

结语

本文介绍的应用于单片机系统的红外串行通信接口,具有硬件电路简单、成本低廉、编程方便、通信可靠性高的特点,实现了通信双方非接触式的数据传送。在电度表抄表系统中,由于配备了红外通信接口,利用手持抄表器可以方便地完成对电度表的抄录和校准等工作,大大提高了抄表工作的效率,而且抄表确定高并杜绝了估抄和误抄的问题。这种红外通信方案也可用于其它遥控、遥测的单片机应用场合。


《一种用于单片机的红外串行通信接口(第2页)》
本文链接地址:http://www.oyaya.net/fanwen/view/164050.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。