




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 基于计算机串口的红外虚拟逻辑分析仪摘要:采用用途广泛的红外线通信技术设计了一款基于计算机串口的红外逻辑分析仪,介绍其硬件电路原理及上位机和下位机(单片机)的软件设计方法。实现了对红外线信号的可视化分析。关键词:串口红外通信虚拟逻辑分析仪引言红外通信技术是一种点对点的数据传输协议,是传统设备之间连接线缆的替代技术,是目前国际上普通采用的一种近程无线传输技术,常用于智能小区控制系统和电话教学交互式远程控制系统中,但是目前的家电(如空调、 摘要:采用用途广泛的红外线通信技术设计了一款基于计算机串口的红外逻辑分析仪,介绍其硬件电路
2、原理及上位机和下位机(单片机)的软件设计方法。实现了对红外线信号的可视化分析。 关键词:串口 红外通信 虚拟逻辑分析仪引言红外通信技术是一种点对点的数据传输协议,是传统设备之间连接线缆的替代技术,是目前国际上普通采用的一种近程无线传输技术,常用于智能小区控制系统和电话教学交互式远程控制系统中,但是目前的家电(如空调、录像机、VCD机等)有各种不同的品牌和型号,其红外遥控编码及发送格式不尽相同。为了能够用一台通用控制器对多种不同型号的家电进行控制,本文利用功能强大的单片机和编程软件VB设计了一种基于计算机串口的通用型智能红外逻辑分析仪,它可对各种电器的红外遥控
3、器所发射的控制信号进行识别、存贮和再现。还可通过红外硬件接口识别出红外信号并送入单片机处理,然后利用VB开发的虚拟软件在电脑屏幕上实时显示采集到的红外信号波形,便于设计人员对各种调制方式的红外信号进行“可视化”的分析与研究。1 硬件设计1.1 串行通信的基本原理串行端口本质上是计算机的CPU和外部串行设备间的编码转换器。当数据从CPU经过串行端口发送出去时,字节数据被转换为串行的侠。而在接收数据时,串行的位则被转换为字节数据。在Windows环境下,串行端口是Windows系统资源的一部分。如果要使用串口进行通信,应用程序必须在使用前向操作系统提出使用串口资源的申请(创建并打开串口),然后进行
4、相应的串口参数配置,双方的串口才可进行通信,通信完毕后,还必须释放系统资源(关闭串口)。串口通信程序的流程如图1所示。1.2 89C51的串行口89C51内有一个全双工的串行口,它有4种工作方式:方式0,串行接口为移位寄存器I/O方式;方式1,串行接口被控制为8位的异步通信接口,实际上,此时传送一帧住处应为10位,其中1位为起始位,8位为数据位,1位为停止位,在该方式中,波特率可变;方式2和方式3被定义为9位的异步通信接口,此时传送一帧信息为11位,其中1位起始位,8位数据位,1位可编程数据位,1位停止位,工作方式的选择由芯片内的特殊功能寄存器SCON(串行口控制寄存器)来设备。1.3 接口电
5、路为了能使单片机与PC进行通信,必须使其遵循相同的通信协议。由于89C51的串行口输入/输出为TTL逻辑电平,高电平为3.8V左右,低电平为0.3V左右,因而这种以TTL电平传送数据的方式的抗干扰性较差。而计算机内部的RS-232C串行口用±12V和-12V电平方式,这种方式中,信号0和信号1的电平差别增大,从而增强了抗干扰性。但是,为了解决这种电平不一致的矛盾,必须采用一个RS-232C电平转换器,文中采用的MAX232自身带有电源电压变换器,可把+5V电压变换成RS-232输出电平所需的±10V电压,因而采用这种方式进行串行通信具有较好的性能和低廉的价格。如果通
6、信距离较远,还可以通过增加MAX485转换器来连接MAX232以满足要求。其硬件接口电路原理如图2所示。2 软件设计2.1 红外遥控编码及传送格式红外通信的基本原理是在发送端将基带二进制信号调制为一系列的脉冲串信号,然后通过红外发射管发射红外信号。常用的有通过脉冲宽度来实现信号调制的脉宽调制(PWM)和通过脉冲串之间的时间间隔来实现信号调制的脉冲调制(PPM)两种方式。本系统采用的是脉时调制方法。在调制脉冲宽度编码方式下,“0”是由时间间隔为T的一串38.5kHz载波脉冲后加时间间隔壁为T0的无载波脉冲的空闲状态来表示;而“1”是由时间间隔壁为T的一串38.5kHz载波脉冲后加时间间隔为T1的
7、无载波脉冲的空闲状态来表示,其中T1大于T0。图2 为了提高抗干扰能力和通讯可靠性,多数红外遥控发射器在发送二进制编码前要插入各种引导码,以便接收器识别。为了区分不同类型的遥控器,还需要发送地址码和校验码,另外不同遥控器所发送的码长也不相同。一般的传送格式如图3所示。2.2 单片机的软件编程单片机(下位机)部分的编程主要是完成单片机和计算机之间的串行通讯。该软件主要由串口初始化子函数、单片机内部定时器T0中断子函数、红外信号发送子函数等3大模块组成。其具体程序如下:#include>at89x52.h)#define byte unsigned char
8、#define WAR_0 P1_1 /定义接收引脚#defineLED_RECEIVE P1_0 /定义指示灯引脚/晶振22.1184MHz/波特率=(xtal/12/t1_over_rate)/32)*2pconbyte bdata buffer=0;sbit way0=buffer0;byte i=0;bit start=0;void send char(unsigned char word)/串口发送子函数TI=0;SBUF=word;While(TI=0);TI=0;void t0_service(viod) interrupt 1 using 1/T0中断子函数way0=WAY_0
9、;I+;If(I=8)TI=0;SBUF=buffer;I=0;buffer=buffer<<1;void main(void) /主函数SCON=0x40; /设置串口模式TMOD=0x22; /设置定时器模式TH1=0xff; /定时器加载初值TH1=0xff;PCON=0x80; /57600bps *2 22.1184M115200bpsTR1=1; /开定时器TH0=0xdb; /定时器0加载初值TL0=0xfd;EA=1;WAY_0=1;ET0=1; /以上是串行初始化While(1) /主循环if(! WAY_0)TR0=1; /开定时器T0中断LED_REC
10、EIVE=0;/LED指示灯点亮 2.3 上位机软件设计上位机(计算机)软件的作用是实时采集由计算机串口接收的信号(即单片机发送的信号),同时通过VB软件编程来实现被采集红外信号的实时显示,以便于分析。一般的IBMPC兼容型微机均提供有1至2个25针或9针的RS-232C标准串行口,简称COM1和COM2。在某些应用中,还可通过插装通信卡来获得额外的RS-232C标准串行口。利用这些串行口,微机便可以与其他数字设备(包括计算机)进行一般的数据通信。利用Visual Basic提供的MSComm控件可以简单便携地通过应用程序实现串行通信,也可以创建功能完备、具有事件驱动功能的高级通信工具。与DOS环境下用汇编或C语言等编制的串行通信程序及Windows环境下用Visual C编制的串行通信程序相比,在使用Visual Basic的MSComm控件实现串行通信时,程序员只需关心MSC
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 罐头食品生产过程中的卫生操作规范考核试卷
- 线上预约打车平台协议
- 箱包行业未来发展趋势预测考核试卷
- 结合虚拟现实技术的沉浸式安全教育培训设计考核试卷
- 糖果与巧克力企业市场渠道拓展与整合策略实践案例考核试卷
- 幼儿园主题教育
- 小学生自护自救安全教育
- 环境监测中的流动注射分析技术考核试卷
- 游戏开发项目管理与团队沟通考核试卷
- 托班课程:生气了怎么办
- 北师大版七年级数学下册举一反三 专题1.5 整式的混合运算与化简求值专项训练(30道)(举一反三)(原卷版+解析)
- 栏杆计算书完整版本
- 星巴克消费者数据分析报告
- 实时数据采集系统方案
- PMC-651T配电变压器保护测控装置使用说明书V1.2
- 中国红色革命故事英文版文章
- 《体育保健学》课件-第三章 运动性病症
- 雷雨话剧第四幕雷雨第四幕剧本范文1
- 办公设备维保服务投标方案
- 服装终端店铺淡旺场管理课件
- PQR-按ASME要求填写的焊接工艺评定报告
评论
0/150
提交评论