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

发布者:VelvetSoul最新更新时间:2009-11-27 关键字:单片机  红外通讯 手机看文章 扫描二维码
随时随地手机看文章

  1、引言

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

  2、系统硬件电路设计

  在主从式红外通信系统中,主机及从机的红外发射电路相同,红外线的载波频率都为38KHz,在同一时间内,可以是主机发射,从机接收;或者从机发射,主机接收。

  2.1 红外发射电路设计

  红外发射器电路主要由单片机,驱动管Q1和Q2、红外发射管D1等组成,电路如下:

  

  红外发射器工作原理为:单片机通过I/O端口控制整个发射过程。其中,红外载波信号采用频率为38KHz的方波,由PIC18F248的CCP模块的PWM功能实现,并由CCP1端口传输到三极管T2的基极。待发送到数据由单片机的TX端口以串行方式送出并驱动三极管Q1,当TX为“0”时使Q1管导通,通过Q2管采用脉宽调制(PWM)方式调制成38KHz的载波信号,并由红外发射管D1以光脉冲的形式向外发送。当TX为“1”时使Q1管截止,Q2管也截止,连接Q1和Q2的两个上拉电阻R1和R3把三极管的基极拉成高电平,分别保证两个三极管可靠截止,红外发射管D1不发射红外光。因此通过待发送数据的“0”或“1”就可控制调制后两个脉冲串之间的时间间隔,即调制PWM的占空比。比如若传送数据的波特率为1200bps,则每个数位“0”就对应32个载波脉冲调制信号。红外发射管D1采用TSAL6200红外发射二极管,其实现将电信号转变成一定频率的红外光信号,它发射一种时断时续的高频红外脉冲信号,由于脉冲串时间长度是恒定的,根据脉冲串之间的间隔大小就可以确定传输的数据是“0”还是“1”。

  2.2 红外接收电路设计

  红外接收电路主要采用Vishay公司的专用红外接收模块HS0038B。接收电路及HS0038B内部结构如下:

  

  

  接收电路工作原理为:当接收到载波频率为38KHz的脉冲调制信号时,首先,HS0038B内的红外敏感元件将脉冲调制红外光信号转换成电信号,再由前置放大器和自动增益控制电路进行放大处理,然后通过带通滤波器进行滤波,滤波后的信号由解调电路进行解调,最后由输出电路进行反向放大并输出低电平;未接收到载波信号时,电路则输出高电平。这样就可以将断断续续的红外光信号解调成一定周期的连续方波信号,并通过单片机的串口输入单片机,由单片机处理后便可以恢复出原始数据信号。[page]

  3、主从式红外通信软件设计

  主从式红外通信中主机红外接收、发送电路与从机的电路完全相同,红外线的载波频率也相同。在红外通信系统中,若采用不同载波频率来区分主机及从机之间的通信可以通过改善红外发射和接收电路的频率特性,但是这样会大大提高硬件成本,本系统通过配置适当的通信协议来降低硬件成本。为了避免发射时造成对本机的干扰,系统采用异步半双工通信模式,在同一时间内可以是主机发送,从机接收;也可以是从机发射,主机接收。主机及从机通信流程如下:

  

  主机通信过程为:(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( )等。部分函数程序代码如下:

  

  4、结束语

  红外通信可用于许多需短距离及非接触式传输数据的场合。本文设计的主从式红外通信接口具有硬件电路简单、成本低、通信可靠等特点,实现了主机及从机双方非接触式的数据传输。适当修改通信软件就可以让系统用于红外抄表、遥控、遥测等许多场合。

关键字:单片机  红外通讯 引用地址:基于单片机的主从红外通信系统的研究与设计

上一篇:PLC与单片机的区别浅谈
下一篇:基于MSP430内嵌温度传感器的温度告警系统

推荐阅读最新更新时间:2024-03-16 12:27

一种扩散硅压力式密度静态测量系统
在制糖等轻化工程中,为了全面实现工艺过程及质量的自动控制,需要对溶液的密度、浓度等万分进行测量,而密度的在线测量与湿度、流量、压力及液位等非电量测量相比,较为落后。谐振式和奥我力式密度计工作原理复杂,价格昂贵,未能在工业过程中普及;压差式密度测量一般采用具有可动部件和测量精度不高的机械式压力传感器(或压力变送器) ,测量精度和响应速度不能满足工业过程测量需要。在1980年末到1990年初,扩散硅压力传感器技术有了新的突破,不仅无可动部件,并且具有动态响应快和测量精度高等优点,它为扩散硅压力传感器的二次开发提供了一个很好的机遇。基于扩散硅压力传感器的密度测量方法和其它测量方法相比,具有结构简单、性能价格比高及易于工程实现等优点。密度
[单片机]
一种扩散硅压力式密度静态测量系统
影响单片机功耗的因素有哪些
最近一周一直在做pic单片机功耗问题。由于项目使用电池供电,所以功耗问题显得非常重要。根据数据手册以及网络上的资料,影响单片机功耗主要由以下几个因素: 1:所有I/O引脚保持为高阻输入高点平或低电平 2:关闭比较器和CVref(可编程偏上参考电压)、WTD、T1OSC、BOR(欠压复位)等 3:PORTB片内弱上拉 4:所有不用的模块全部关闭,在用到时再打开 5:MCLR引脚必须处于逻辑高电平 PIC单片机在执行SLEEP指令后进入睡眠省电模式。进入SLEEP模式后,主振荡停止,如果看门狗在烧写时打开了,看门狗定时器将被清并保持运行。I/O口,周边模块和内部RAM将保持原来状态,所以如果要求睡眠后有很低功耗,应该在进入SLEE
[单片机]
影响<font color='red'>单片机</font>功耗的因素有哪些
单片机6位数电子密码锁设计
以下是一套单片机电子密码锁程序: /******************************************************************************* 初始密码:000000 密码位数:6位 注意:掉电后,所设密码会丢失,重新上电时,密码恢复为原始的000000 与P1.0相连的8位发光LED点亮代表锁被打开;熄灭代表锁被锁上 程序功能: 1、开锁: 下载程序后,直接按六次数字0(即代表密码000000),LED亮,锁被打开,输入密码时, 六位数码管依次显示小横杠。 2、更改密码:
[单片机]
<font color='red'>单片机</font>6位数电子密码锁设计
进入家庭自动化的连网技术
  自微控制器问世以来,就出现了一种自动控制生活环境,并响应每个人偏好的可能性,这种智能家庭的梦想一直挥之不去。然而,高昂的成本、可靠性问题、有限的功能,以及缺乏标准等都大大限制了这个市场的发展,使家庭自动化更多地存在于人们的想象中,而不是成为现实。现在,随着无线技术的发展、家庭连网标准的出现,以及娱乐市场和能源市场的拉动,人们正在重新努力去实现梦想,尽管业内各方对实现的方法仍各执一词。   家庭自动化的首个尝试只是提供对基本功能的简单遥控,如调光、风扇调速和控制电器的开关。苏格兰的 Pico Electronics 公司在 1975 年首次推出了 X10 电力线信号传输技术,它是这些早期尝 试的代表。X10 控制
[单片机]
进入家庭自动化的连网技术
一种基于单片机的温度监控系统设计
在工业控制领域,温度控制的应用非常广泛,控制精度的高低直接影响到产品的质量及使用寿命,研究和设计高性能的温度控制系统具有非常重要的意义。目前控制算法的多样化也为温度控制提供了便利条件,应用较为普遍的有比例积分微分(PID)控制、模糊控制等。本文根据某温控设备的控制要求设计了一种以单片机为核心的监控系统。系统采用热电偶温度传感器测温,利用位置式PID算法,实现了温度的实时监测、超限报警、显示与控制等功能。 1 系统硬件设计 本系统主要由热电偶温度传感器、OP27低噪声精密运算放大器、双积分型A/D转换器ICL7135、可编程定时/计数接口芯片8253、AT89C51单片机等器件组成。系统框图如图1所示。 1.1 电源模
[单片机]
一种基于<font color='red'>单片机</font>的温度监控系统设计
单片机与键盘接口程序
单片机与键盘接口程序 void int1proc() interrupt IE1_VECTOR using 1 { unsigned char i, key; code unsigned char PS2TAB = {//20键PS2小键盘键码表 0x70,//0 0x69,//1 0x72,//2 0x7a,//3 0x6b,//4 0x73,//5 0x74,//6 0x6c,//7 0x75,//8 0x7d,//9 0x05,//F1 0x06,//F2 0x04,//F3 0x0c,//F4 0x03,//F5 0x0b,//F6 0x5a,//Enter 0x76,//Esc 0
[单片机]
减少空间提高效率:PIC单片机A/D转换数据打包
  PIC 单片机A/D 转换后的数据通常需要占用两个8 位宽的RAM 单元, 而PIC 单片机的存储单元有限,因此造成了单片机的存储单元不能被有效利用, 同时通过串口向上位机传送数据时也需要花费较多的时间。   为此提出一种数据打包的方法, 使得相同的数据量占用较少的存储空间, 并可提高传输效率。   引言   在由单片机和PC 机构成的检测系统中, 通常会由多个单片机采集数据并将经过A/D 转换的数据通过串口送往上位PC 机进行数据处理。PIC 单片机A/D 转换后的结果大多是8 位或10 位的, 8 位的A/D转换不涉及该问题。以10 位的数据为例, 在单片机内进行存储时需要占用2 个8 位的字节, 低8 位和高2位分
[单片机]
80C51单片机的定时器/计数器介绍
定时器/计数器介绍 定时/计数器T0和T1分别是由两个8位的专用寄存器组成,即定时/计数器T0由TH0和TL0组成,T1由TH1和TL1组成。此外,其内部还有2个8位的特殊功能寄存器TMOD和TCON,TMOD负责控制和确定T0和T1的功能和工作模式,TCON用来控制T0和T1启动或停止计数,同时包含定时/计数器的状态。 TF1:定时器1溢出标志。定时/计数器溢出时由硬件置位。中断处理时由硬件清除。或用软件清除。 TF0:定时器0溢出标志。定时/计数器溢出时由硬件置位。中断处理时由硬件清除,或用软件清除。 在现在很多新MCU中,不只有两个 定时/计数器,例如STC15系列就有四个定时/计数器,但是在使用上操作上是大同小异的。
[单片机]
80C51<font color='red'>单片机</font>的定时器/计数器介绍
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved