DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 117|回复: 0
打印 上一主题 下一主题

基于单片机的主从红外通信的系统设计

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-16 16:53:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

                    ???? 1、引言
  红外通信是目前比较常用的一种无线数据传输手段,其具有无污染、信息传输稳定、信息安全性高以及安装使用方便等优点,并且可以在很多场合应用,如家电产品,工业控制、娱乐设施等领域。红外通信是利用950nm近红外波段的红外线作为传递信息的载体,通过红外光在空中的传播来传递信息,由红外发射器和接收器实现。发射端将二进制数字信号调制成某一频率的脉冲序列,经电光转换电路,驱动红外发射管以光脉冲的形式发送到空中。接收端将接收到的光脉冲转换成电信号,再经解调和译码后恢复出原二进制数字信号。本文设计了一种基于单片机PIC18F248的主从式红外通信系统,主要设计了红外接口电路以及主机和从机通信软件流程。
  2、系统硬件电路设计
  在主从式红外通信系统中,主机及从机的红外发射电路相同,红外线的载波频率都为38KHz,在同一时间内,可以是主机发射,从机接收;或者从机发射,主机接收。
  2.1 红外发射电路设计
  红外发射器电路主要由单片机,驱动管Q1和Q2、红外发射管D1等组成,电路如下:







  主机通信过程为:(1) 上电初始化,完成UART的工作模式、波特率的设置(系统波特率为2400bps);CCU模块PWM工作模式、PWM频率设定。CCU模块工作在对称的、非反向的PWM模式,频率38KHz,占空比50%;(2) 等待数据发送控制信号到来;(3) 若接收到发送控制信号,则立即通过红外串行发送16字节数据;(4) 通过红外接口接收从机返回的16字节数据;(5) 比较接收到的16字节与发送到16字节数据,若一致则发送下一个数据,否则重发该数据。
  从机通信过程为:(1) 上电初始化,完成UART的工作模式、波特率设置;CCU模块PWM工作模式、PWM频率设定;(2) 通过红外接口从主机接收16字节数据;(3) 判断是否为重发数据,若是则覆盖前次接收到的数据。
  主机和从机通信过程包括的函数主要有系统初始化函数UART_Init(),向串口发送数据函数UART_SendByte()、 串口接收红外信号数据 UART_RcvByte( )等。部分函数程序代码如下:
  UART_SendByte(unit8 dat) //向串口发送数据
  { SBUF = dat; //发送数据
  while(TI = =0; // 等待发送完毕
  TI = 0;
  }
  unit8 UART_RcvByte() //接收串口数据
  {if(RI = =0) return(0); //若没有接收到数据,则返回0
  *dat = SBUF;
  RI = 0;
  return(1);
  }
  4、结束语
  红外通信可用于许多需短距离及非接触式传输数据的场合。本文设计的主从式红外通信接口具有硬件电路简单、成本低、通信可靠等特点,实现了主机及从机双方非接触式的数据传输。适当修改通信软件就可以让系统用于红外抄表、遥控、遥测等许多场合。


            
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-6-10 05:47 , 耗时 0.089363 秒, 18 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表