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

发布者:科技舞者最新更新时间:2009-03-24 来源: 电子测量技术 关键字:红外通信  PIC18F248  单片机 手机看文章 扫描二维码
随时随地手机看文章

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内的红外敏感元件将脉冲调制红外光信号转换成电信号,再由前置放大器和自动增益控制电路进行放大处理,然后通过带通滤波器进行滤波,滤波后的信号由解调电路进行解调,最后由输出电路进行反向放大并输出低电平;未接收到载波信号时,电路则输出高电平。这样就可以将断断续续的红外光信号解调成一定周期的连续方波信号,并通过单片机的串口输入单片机,由单片机处理后便可以恢复出原始数据信号。

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( )等。部分函数程序代码如下:

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、结束语

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

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

上一篇:爱特梅尔用于AT91CAP9H微控制器工具包
下一篇:飞思卡尔推出8位 MC9S08JS16 MCU

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

突显MCU控制系统优势的方案
电子技术和微电脑的飞速发展,促进了微型计算机控制技术的迅速发展和广泛应用。中小规模的单片机控制系统在工业生产及日常生活中的智能机电一体化产品得到了广泛的应用。在单片机控制系统的设计开发过程中,我们不单要突出设备的自动化程度及智能性,另一方面也要重视控制系统的工作稳定性,否则就无法体现控制系统的优越性。 1. 系统受到干扰的主要原因和现象 由于单片机控制系统应用系统的工作环境往往是比较恶劣和复杂的,其应用的可靠性、安全性就成为一个非常突出的问题。单片机控制系统应用必须长期稳定、可靠地运行,否则将导致控制误差加大,严重时会使系统失灵,甚至造成巨大的损失。 影响单片机控制系统应用的可靠、安全运行的主要因素是来自系统内部和
[单片机]
MCU销售金额/出货量可望连年创新高
在各种消费性、工业与汽车应用需求的带动下,IC Insights预估,到2020年为止,微控制器(MCU)的销售金额与出货量数字都将连年打破历史纪录。预估到2020年时,全球MCU的销售金额将达到209亿美元,出货量则为267亿颗。 在平均销售价格(ASP)方面,过去几年高阶32位元MCU普遍流行,但价格也迅速滑落,使得整体MCU ASP不断下跌。2015年全球MCU的ASP价格为0.72美元,创下历史最低纪录。不过,IC Insights预估,32位元MCU的价格将开始止稳,甚至在未来几年有机会小幅增加。
[单片机]
<font color='red'>MCU</font>销售金额/出货量可望连年创新高
基于AT89C51单片机的数码管循环点亮0到9(Keil+Proteus+C语言)
要求描述: 选用AT89C51单片机,绿色7段共阴极数码管,使用C语言实现 仿真图 代码 #include reg52.h #include intrins.h #define uchar unsigned char #define uint unsigned int uchar code DSY_CODE = { 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f }; void DelayMS(uint x) { uchar t; while(x--) for(t=120;t 0;t--); } void main() { u
[单片机]
基于AT89C51<font color='red'>单片机</font>的数码管循环点亮0到9(Keil+Proteus+C语言)
讨论有关单片机内存的问题
由于单片机的内存比较小,在以前的型号如AT89c51内存只有128byte,按照目前的电子市场飞速的发展,这么点点的内存只够做一个简单的电子系统,若是大一点的就远远不够用了,这样要么就要外扩一个静态RAM,要么就要选择一个内存比较大一点的单片机,比如:AT89S52 \ SST89E564 等等。这样在使用KEIL软件的时候是如何适用超过128byte字节的RAM呢?很多人都有这样的疑问【当初我搞的也不是很明白】。 在网上也看到了很多人都有这样的想法: ① 超过变量128后必须使用compact模式编译 实际的情况是只要内存占用量不超过256.0【前提是:单片机的内存必须要大于128byte,对于at89c51来说想
[单片机]
从零开始51单片机学习教程——连载2 单片机简叙
1、 什么是单片机 一台能够工作的计算机要有这样几个部份构成:CPU(进行运算、控制)、RAM(数据存储)、ROM(程序存储)、输入/输出设备(例如:串行口、并行输出口等)。在个人计算机上这些部份被分成若干块芯片,安装一个称之为主板的印刷线路板上。而在单片机中,这些部份,全部被做到一块集成电路芯片中了,所以就称为单片(单芯片)机,而且有一些单片机中除了上述部份外,还集成了其它部份如A/D,D/A等。 单片机是一种控制芯片,一个微型的计算机,而加上晶振,存储器,地址锁存器,逻辑门,七段译码器(显示器),按钮(类似键盘),扩展芯片,接口等那是单片机系统。 天!PC中的CPU一块就要卖几千块钱,这么多东西做在一起,还不得买个天价!
[单片机]
51单片机实现通讯协议的串口通讯编程
我们以51单片机为例。51中一般针对串口通讯编程,通常采取中断接受查询发送的方式。中断函数在接受数据到达时被重复调用,其实是个重复入栈的过程,所以不宜将函数写的太长,函数太长一般会导致栈太深占用系统资源,二是处理时间过长,可能导致通讯出错。为了防止在处理数据过程中不受干扰,通常在处理接受数据前关闭中断,处理完后再开。 通常的的编程方式如下: static void UartInterruptService(void) interrupt 4 { ES = 0; RI = 0; uart_process(SBUF); ES=1; } 下面重点介绍数据处理函数 uart_process(SBUF); 其实很多时候,对于通讯
[单片机]
51<font color='red'>单片机</font>实现通讯协议的串口通讯编程
图形点阵式液晶显示模块与51单片机的接口设计
引 言 液晶作为一种显示器件,以其特有的优势正广泛应用于仪器、仪表、电子设备等低功耗产品中。以往的测控仪器的显示部分大都采用LED式液晶显示屏进行参数设定和结果显示,其显示信息量少、形式单一、人机交互性差、操作人员要求较高。而液晶显示器(LCD)具有功耗低、体积小、质量轻、超薄和可编程驱动等其他显示方式无法比拟的优点,不仅可以显示数字、字符,还可以显示各种图形、曲线、及汉字,并且可实现屏幕上下左右滚动、动画、闪烁、文本特征显示等功能;人机界面更加友好,使用操作也更加灵活、方便,使其日益成为智能仪器仪表和测试设备的首选显示器件。本文在介绍以ST7920为驱动器的WGM-12832液晶显示模块的引脚、结构、功能的基础上,详述了与AT
[单片机]
Keil工具分销网又添新员——周立功单片机 加速8位向32位过渡
Keil开发工具分销网扩大,获得更便捷,加速8位设计向32位过渡 中国上海,2007年8月15日 —— ARM公司(伦敦证交所:ARM;纳斯达克:ARMHY)今天宣布,中国本土领先的微控制器和嵌入式解决方案供应商、ARM Connected Community成员周立功单片机发展有限公司(周立功单片机)被指定为Keil开发工具中国区代理商。通过这项协议,中国的嵌入式系统设计师将能够更便捷地获得先进的Keil开发工具和中国版RealView MDK(微控制器开发工具包),从而加快其基于ARM7、ARM9处理器系列和Cortex-M3处理器的高品质微控制器的设计。不仅如此,由于周立功单片机开发了大量基于ARM技术的解决方案,其在基
[焦点新闻]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

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

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