1、微型计算机原理课程设计报告微型计算机的红外接口与红外通信(仅供参考)摘要:研究微型计算机的短距离红外无线通信技术,设计红外接口和数字录音接口电路,编写应用程序,实现文本、图形(由于时间关系未做)和语音数据的红外无线传输.关键词:无线串行通信 红外数据通信 MASM32一技术背景红外通信在人们日常生活中扮演着重要的角色:从电视机、VCD 遥控器,到电梯、门禁系统,乃至便携式电脑,都可以见到红外通信的身影.由于其价格低廉,使用方便,解决了有线连接的许多不便,因而受到了家电设备厂商、电脑外围设备商、以及通信设备厂商的高度重视.为了实现各类产品的互连,国际上还成立了一个红外数据通信协会(IrDA: I
2、nfrared Data Association)来协调各方面的工作,并制定了一系列的标准.这一系列标准的出台不仅规范了产品的设计,同时还进一步扩展了红外通信的功能和应用领域(如:数据传输速率即可高达到 4Mb/s,而且进一步的建议中还允许高达 16Mb/s 的速率).这些标准包括:物理层协议、数据链路层协议、数据链路控制协议以及其它高层的如:流控制协议、串行通信协议、类HTTP 的实体交换协议、图象交换协议、局域网接入协议等等.目前微型计算机的短距离联接大都还是有线(电缆)联接,微机之间以及微机与外设之间的联线往往造成麻烦.短距离联接到发展必然要走向无线联接,目前主要的短距离无线联接技术有红
3、外通信技术和蓝牙通信技术,前者采用红外线,后者则采用无线电波作为信息传输的媒介.这两种技术各有所长.红外线是波长在 750nm 至 1mm 之间的电磁波,它的频率高于微波而低于可见光,是一种人的眼睛看不到的光线.红外通信一般采用红外波段内的近红外线,波长在0.75um 至 25um 之间.由于红外线的波长较短,对障碍物的衍射能力差,所以更适合于应用在需要短距离无线通信的场合,进行点对点的直线数据传输.蓝牙技术工作在全球统一的 2.4GHz 工科医(ISM)频段.选用此全球统一的频段,就意味着具有蓝牙功能的设备可以实现全球通用,只要相互在近距离的范围内,就可以实现互联.蓝牙没有直线视距的要求,可
4、以实现全方位的稍远一些的通信,并可提供一定的穿透功能.蓝牙设备功耗低,可以用在 10 米的短距离内数据交换及文件传送,适当加装功率放大器后,通信距离可以扩展到 100 米左右,其速率最高为 12Mbit/s(蓝牙 2.0 版本).由于红外通信技术比较成熟,并且成本低廉,连接方便、简单易用和结构紧凑的特点,因此我们主要研究这一技术.红外数据协会主要发布了 IRDA1.0 和 IRDA1.1 标准.IRDA1.0 可支持最高 115.2kbps 的通信速率,而 IRDA1.1 可以支持的通信速率达到 4Mbps.IRDA 标准包括三个基本的规范和协议:物理层规范,连接建立协议和连接管理协议.物理曾
5、规范制定了红外通信硬件设计上的目标和要求,IrLAP 和 IrLMP 为两个软件层,负责对连接进行设置、管理和维护.除此之外,还有一些适用于特殊应用模式的可选层.IRDA 物理层协议提出了对工作距离、工作角度(视角)、光功率、数据速率不同品牌设备互联时抗干扰能力的建议.当前红外通信距离最长为 3 米,接受角度大于 30 度.图 1 给出了IRDA 物理层的方框图.数据速率小于 4Mb/s 时,使用 RZI(归零反转)调制;而在 4Mb/s 的数据速率时,使用 4PPM(脉冲位置)调制.RDA 要求的 RZI(反向归零)调制度编码效果如图 2 中的 IR 帧数据所示,最大脉冲宽度是3/16 位宽
6、或 1.6us 宽(1.6us 是最高位速率 115.2kbps 的位宽的 3/16).逻辑 0 由一个光脉冲代表,0 位的开始对应脉冲的上升沿.逻辑 1 由无光脉冲代表.I二设计任务(1)微机红外接口的设计与调试在异步串行通信接口芯片 8250 的基础上,按照 IRDA 物理层协议,采用 RZI(反相归零)调制方法,设计一个红外接口,其中的脉冲调制发射电路,将串行数字信号转换为红外光脉冲,其中的脉冲解调接收电路,将红外广脉冲转换为串行数字信号,再通过编程实现双机短距离无线通信.(2)微机文件数据的红外无线传输先编程实现文本和图形文件的读出(显示)和保存;再通过红外接口编程实现文本和图形文件的
7、短距离无线发送和无线接收.(3)微机语音数据的红外无线传输设计并调试一个数字录音接口电路,其中包括 A/D 转换电路和 D/A 转换电路,先编程实现语音信号的输入和保存和读出回放,再通过红外接口编程实现语音信号的短距离无线发送和无线接收,并且回放出声音.在本设计中采用 MASM32 开发通信软件,他可以很方便地调用 WINDOWS API 和插入汇编语言.可方便地开发出界面友好的 GUI 图形界面.三设计过程与步骤(1)微机红外接口的设计与调试1.编一简单程序使 8250A 重复送出同一字符代码.(1)8250 初始化程序mov dx,283hmov al,80hout dx,almov dx
8、,280hmov al,12out dx,almov dx,281hmov al,0out dx,almov dx,283hmov al,0bhout dx,al2.通过示波器管程 8250A 的有关输出信号.3.设计并连接红外接口脉冲调制发射电路.红外发射电路4.改变字符代码,调试红外接口脉冲调制发射电路.字符发送程序:invoke GetWindowText,hEdit1,ADDR mybuffer1,256mov ecx,eaxmov esi,offset mybuffer1chck: mov dx,285hin al,dxtest al,20hjz chckmov dx,280hlod
9、sbout dx,alloop chckmov al,1bhout dx,al5、设计并连接红外接口脉冲调制接收电路.红外接收电路6、改变字符代码,调试红外接口脉冲解调接收电路.接收程序:mov edi,offset mybuffer2rec: mov dx,285hin al,dxtest al,01hjnz rcvjmp recrcv: mov dx,280hin al,dxcmp al,1bhjz overstosbjmp recinvoke SetWindowText,hEdit2,ADDR mybuffer2over:7、编程实现单机自发自收,发送键盘字符,接受后显示出来.8、编程实
10、现双机无线通信,一机键盘字符在另一机屏幕显示出来.(二)微机文件数据的红外无线传输1、编程实现文本文件的读出(显示)和保存.2、将文本文件读出(显示),通过红外接口发送给另一机.3、通过红外接口接受文本数据,显示并保存.文本文件发送和接收程序文本文件的发送程序invoke GetWindowText,hEdit,ADDR mybuffer1,256mov ecx,eaxmov esi,offset mybuffer1chck: mov dx,285hin al,dxtest al,20hjz chckmov dx,280hlodsbout dx,alloop chckmov al,1bhout
11、 dx,al接收程序中mov edi,offset mybuffer2rec: mov dx,285hin al,dxtest al,01hjnz rcvjmp recrcv: mov dx,280hin al,dxcmp al,1bhjz overstosbjmp recinvoke SetWindowText,hEdit,ADDR mybuffer2over:(三)微机语音数据的红外无线传输设计并调试数字录音 A/D 转换接口电路.2.设计并调试数字录音 D/A 转换接口电路.录音机电路3.将语音信号通过数字录音接口电路输入并保存为文件.录音程序:lu proc ;录音子程序mov edi
12、,offset data_qu ;置数据区首地址为 DImov cx,60000 ;录 60000 个数据cldxunhuan:mov dx,luport ;启动 A/Dout dx,alcall delay ;延时in al,dx ;从 A/D 读数据到 ALstosb ;存入数据区,使 DI 加 1loop xunhuan ;循环ret ;子程序返回4.将语音数据通过数字录音接口电路回放为声音.放音程序:fang proc ;放音子程序mov cx,60000 ;放 60000 个数据mov esi,offset data_qu ;置数据区首地址为 SIcldfang_yin: mov d
13、x,fangportlodsb ;从数据区取出数据sub al,30hout dx,al ;放音call delay ;延时loop fang_yin ;循环ret ;子程序返回fang endpdelay proc near ;延时子程序push dxmov al,10h ;设 8253 通道 0 工作方式 0mov dx,2a3hout dx,almov al,100 ;写入计数器初值 200mov dx,2a0hout dx,almov dx,28bh ;设 8255 的 A 口为输入mov al,9bhout dx,almov dx,288h ;从 8255 的 A 口输入delay1
14、: in al,dxand al,1 ;判断 PA0 是否为 1jz delay1 ;若 PA0 不为 1,转 de_laypop dxret ;子程序返回delay endp5、将语音信号输入并通过红外接口发送给另一机.语音发送程序:mov cx,60000mov esi,offset data_quchck: mov dx,285hin al,dxtest al,20hjz chckmov dx,280hlodsbout dx,alloop chck6、通过红外接口接收语音数据并回放为声音.语音接收程序:mov cx,60000mov edi,offset data_qurec: mov
15、dx,285hin al,dxtest al,01hjnz rcvjmp recrcv: mov dx,280hin al,dxstosbloop rec实验中碰到问题总结导线尽量不要往面包板上插,插线一定要插紧,以防接触不良而导致电路不能正常工作.在进行发送和接收的步骤中,经常会出现接收不到的情况,一方面是由于发送的电路中电流太小的缘故,可以改变限流的电阻的大小,来改变电流的大小.另一方面,由与红外传输的局限性,发光管和接收管一定要在同一直线上,从而也给实验带来了一些麻烦.在接电路之前,一定要判断红外发光二极管的好坏.判断红外发光二极管好坏的办法与判断普通二极管一样:用万用表电阻挡量一下红外
16、发光二极管的正、反向电阻即可.由于红外发光二极管的发射功率一般都较小(100mW 左右),所以红外接收二极管接收到的信号比较微弱,因此就要增加高增益放大电路.接收部分的红外接收管是一种光敏二极管.在实际应用中要给红外接收二极管加反向偏压,它才能正常工作,亦即红外接收二极管在电路中应用时是反向运用,这样才能获得较高的灵敏度.实验中曾把它接错了.系统改进措施(1)在接收的过程中,用有线信号接入可以成功,然而无线却不能实现,对电路进行检测并没有接错,在接收二极管的管脚上没有信号,说明没有接收到红外线,考虑到可能是距离太远,将发射管和接收管靠近果然有了信号.这说明了红外线太弱,也就是说发射管的功率不够
17、大,可以用提高电流的方法来实现,由于与非门的输出电流比较小,可以在输出端用两个与非门并接的方法使电流提高,也可以在输出端用一个三极管对电流进行放大.红外通讯电路增强方案: 该电路中主要改进的地方是发射部分采用对管放大,进一步提高了发射功率;而接收部分采用三极管对接收信号进行放大,提高了接收的灵敏度.(2)采用基于“蓝牙“技术设计的无线收发一体芯片 TR3001 来替换红外发射电路如图 6 所示.TR3001 是 RFM 公司最新推出的基于“蓝牙“技术设计的单片无线收发一体芯片,在一个 20 脚的芯片中包括了高频发射、高频接收、ASK/OOK 调制、ASK/OOK 解调等电路,是目前集成度很高的
18、无线数据传输产品.软件的设计可以使用 VB、VC,它们都是开发串行通信很好的软件.在 Winsows 环境下,不允许用户直接控制串口的中断.Visual C+ 5.0 提供了一个 Active X 控件 Microsofe Comm Control,简称 MSComm 控件,用户可以在自己的应用程序中嵌入 MSComm 控件,从而方便地进行计算机串口的管理.在数据传输中,可靠性是一个重要的指标,为了克服干扰,增加传输的可靠性,需要引入差错控制技术(又叫信道编码).在计算机通信中,差错控制的基本方式主要有三种:反馈重发纠错(ARQ)方式、前向纠错(FEC)方式、混合纠错(HEC)方式.为了提高数
19、据传输的可靠性,可以考虑使用以上三种纠错方式.课程设计感想实验中经常碰到因为两个二极管没有对准的原因,而使实验碰到困难,今天的一些手机具有红外传输端口,可以用来和其他装有红外传输端口的设备通信.但是使用红外传输遇到的最大的问题是两个端口必须以直线方式对齐,这样才可以传输数据.T39mc 手机就采用蓝牙技术,其先进之处是允许两个设备在视线不及之处就能无线传送.实际上,因为蓝牙是基于无线电波技术(在 2.4GHz 频率范围内),所以传送波能够穿过墙壁、口袋和公文包.此外,T39mc的蓝牙数据传输速率要比红外端口快,最高可达 108.8kbps.不过,由于蓝牙技术还未完全成熟,也会碰到这样或那样的问
20、题,所以红外通信的应用还是有很大的市场的,如红外遥控.红外遥控的特点是不影响周边环境、不干扰其它电器设备.由于其无法穿透墙壁,故不同房间的家用电器可使用通用的遥控器而不会产生相互干扰;电路调试简单,只要按给定电路连接无误,一般不需任何调试即可投入工作;编解码容易,可进行多路遥控.由于各生产厂家生产了大量红外遥控专用集成电路,需要时按图索骥即可.因此,现在红外遥控在家用电器、室内近距离(小于 10 米)遥控中得到了广泛的应用.多路控制的红外遥控系统多路控制的红外发射部分一般有许多按键,代表不同的控制功能.当发射端按下某一按键时,相应地在接收端有不同的输出状态.接收端的输出状态大致可分为脉冲、电平
21、、自锁、互锁、数据五种形式.“脉冲“输出是当按发射端按键时,接收端对应输出端输出一个“有效脉冲“,宽度一般在 100ms 左右.“电平“输出是指发射端按下键时,接收端对应输出端输出“有效电平“,发射端松开键时,接收端“有效电平“消失.此处的“有效脉冲“和“有效电平“,可能是高、也可能是低,取决于相应输出脚的静态状况,如静态时为低,则“高“为有效;如静态时为高,则“低“为有效.大多数情况下“高“为有效.“自锁“输出是指发射端每按一次某一个键,接收端对应输出端改变一次状态,即原来为高电平变为低电平,原来为低电平变为高电平.此种输出适合用作电源开关、静音控制等.有时亦称这种输出形式为“反相“.“互锁
22、“输出是指多个输出互相清除,在同一时间内只有一个输出有效.电视机的选台就属此种情况,其它如调光、调速、音响的输入选择等.“数据“输出是指把一些发射键编上号码,利用接收端的几个输出形成一个二进制数,来代表不同的按键输入.一般情况下,接收端除了几位数据输出外,还应有一位“数据有效“输出端,以便后级适时地来取数据.这种输出形式一般用于与单片机或微机接口. 除以上输出形式外,还有“锁存“和“暂存“两种形式.所谓“锁存“输出是指对发射端每次发的信号,接收端对应输出予以“储存“,直至收到新的信号为止;“暂存“输出与上述介绍蓝牙技术及其应用(摘自 中国电子技术信息网)一、蓝牙技术的概念蓝牙是一个开放性的、短
23、距离无线通信技术标准,它可以用于在较小的范围内通过无线连接的方式实现固定设备以及移动设备之间的网络互连,可以在各种数字设备之间实现灵活、安全、低成本、小功耗的话音和数据通信.蓝牙技术可以方便地嵌入到单一的 CMOS 芯片中,因此它特别适用于小型的移动通信设备. 二、蓝牙中的关键技术1.跳频技术蓝牙的载频选用全球通用的 2.45GHz ISM 频段,由于 2.45GHz 的频段是对所有无线电系统都开放的频段,因此使用其中的任何一个频段都有可能遇到不可预测的干扰源.采用跳频扩谱技术是避免干扰的一项有效措施.2.微微网和分散网当两个蓝牙设备成功建立链路后,一个微微网便形成了,两者之间的通信通过无线电
24、波在信道中随机跳转而完成. 蓝牙给每个微微网提供特定的跳转模式,因此它允许大量的微微网同时存在,同一区域内多个微微网的互联形成了分散网.不同的微微网信道有不同的主单元,因而存在不同的跳转模式. 3.安全性蓝牙技术的无线传输特性使它非常容易受到攻击,因此安全机制在蓝牙技术中显得尤为重要.虽然蓝牙系统所采用的跳频技术已经提供了一定的安全保障,但是蓝牙系统仍然需要链路层和应用层的安全管理.4、纠错技术蓝牙系统的纠错机制分为 FEC 和包重发.为了减少复杂性,使开销和无效重发为最小,蓝牙执行快 ARQ 结构.ARQ 结构分为:停止等待 ARQ、向后 N 个 ARQ、重复选择 ARQ 和混合结构. 三、
25、蓝牙系统组成蓝牙系统一般由天线单元、链路控制(固件)单元、链路管理(软件)单元和蓝牙软件(协议栈)单元四个功能单元组成. 1.天线单元蓝牙的天线部分体积十分小巧、重量轻,属于微带天线.2.链路控制(硬件)单元目前蓝牙产品的链路控制硬件单元包括 3 个集成芯片:连接控制器、基带处理器以及射频传输/接收器,此外还使用了 3-5 个单独调谐元件.基带链路控制器负责处理基带协议和其它一些低层常规协议.3.链路管理(软件)单元链路管理(LM)软件模块携带了链路的数据设置、鉴权、链路硬件配置和其它一些协议.LM能够发现其他远端 LM 并通过 LMP(链路管理协议)与之通信.4.软件(协议栈)单元蓝牙的软件
26、(协议栈)是一个独立的操作系统,不与任何操作系统捆绑,它符合已经制定好的蓝牙规范.蓝牙系统的通信协议大部分可用软件来实现,加载到 Flash RAM 中即可进行工作.四、蓝牙系统的应用蓝牙技术能够在短时间内在世界范围内成为了标准,其主要原因在于它不仅可以让许多种智能设备无线互连,可以传输文件、支持语音通信,可以建立数据链路等,它还有更多地作用.1.蓝牙可以为局域设备提供互连在一个 piconet 中,蓝牙能够对 8 个接收器进行同步互连.使用蓝牙技术通信的设备可以发送和接收 1Mbit/s 的数据.但是实际上当允许多个应用设备进行同步通信时,数据传输率会在某种程度上降低.目前不在 picone
27、t 中的蓝牙设备,将持续听从其他蓝牙设备的动向,当它们足够接近成为 piconet 的一部分时,它们将确定自己,如果需要,其他的设备可以与其通信.2.支持多媒体终端3G 终端将提供接口接入许多不同格式的信息和通信,例如 WEB 浏览、电子邮件传输和接收、视频和语音,使它们成为真正的多媒体终端.语音仍是通信的主要形式,在蓝牙规范中已经意识到这一点,并对此提供特别支持,支持 64Kbit/s 的高质量演说信道.随着支持分组包数据和演说的能力不断提高(如果需要可以同时进行),蓝牙可以为这些多媒体应用提供完全的局域支持.蓝牙收发器可以支持多个数据连接并可同时达到 3 个语音连接,为 3 个手持无绳多媒
28、体/互联系统提供完全的功能性.3.家庭网络在一个典型的家庭中,有各种形式的娱乐设备(电视/VCR、 Hi-Fi),不同来源的主题信息(报纸、杂志、电视报)和特别是在厨房中的功能性设备(烤炉、微波炉、冰箱/冰柜、中央暖气系统).虽然这些项目组目前没有办法相互连接,可以设想将其与蓝牙设备组成宽松的连接,不管这些设备在那里,它的控制和接入将成为用户的核心.设想一个简单的数据便签簿,与PDA(或智能电话)类似,但是使用蓝牙收发器和轻触屏幕.它轻巧便捷,带有高级像素驱动菜单,很容易使用.无线红外遥控的应用将成为过去,你的 PDA 将控制所有的娱乐设备.4.3G 可能支持的应用以下的例子说明 3G 和蓝牙
29、技术如何合作,为一系列广泛的应用提供局域互联和广泛的区域连接.这些不很确定,而且绝不详尽,但是目的在于展示互补的标准可以提供更高层次的服务.购物中心的自动售货机,在一个限定范围内的所有的自动售货机都可以通过蓝牙接入系统与中心的售货机管理设备相连,相反这样也可以使用 3G 接入系统进行维护或者提供货物.少数问题可以直接通过蓝牙发报机传递给购物中心的技术人员.从中心管理机构发出价格变化的信息,通过局域广播给所有的蓝牙自动售货机.投送到 PC 机 3G 终端的电子邮件将能够同时处理几个信道(例如语音、传真和数据,每一个都需要不同的信道特征和速度).随着终端渗透的预言不断升高(在几年之内人口中的每个超
30、过 12 岁的成员),为了接收移动中的电子邮件,PC 机本身不必成为 3G 终端.蓝牙/3G 终端可以以数据传输的方式通过蓝牙技术接收电子邮件并转发到 PC 机(假设它在附近范围内).当完成接收任务后,PC 机可以通过蓝牙通知用户并发送短消息给移动终端,它有电子邮件,如果事情紧急,这个消息也可以继续发送.这个思想使 3G 终端成为许多应用设备的局域,它们通过蓝牙技术形成互联.例如,如果,在等火车或飞机时收到了这样的电子邮件,用户可以通过蓝牙服务亭读取(服务于商业旅行者的新的商业企业).这样他可以使 PC 运行打印感兴趣的电子邮件(可以将 PC 留在行李箱中,使用 3G/蓝牙终端控制它),将费用
31、记在帐上或信用卡上,或电子钱包中.许多人相信移动电话将成为电子商务世界中的首选便携设备.但是,目前需要一个分离的智能卡保存电子现金,然而为了让它被销售点终端识别,没有人想要从电话中去除 SIM.当然当SIM(现在它成为多功能智能卡)放在电话中时,蓝牙将使其得到识读.5.应用的关键在于成本控制蓝牙促进者的目标是使不同制造商的设备之间可以进行相互通信,所以在这个设计中最主要的限制就是成本问题.考虑到目前在移动手机和 PC 中使用的红外接口,可以设想说服设备制造商使用这个接口,应用的成本必须足够低.其目标价格为 5 美元.一个精密的无线接口可以提供更大的灵活性,这样就会比红外线接口更为复杂,价格也会
32、昂贵.看起来如果所有的家庭最终选择蓝牙设备,使产量达到很高的数目,每个器件 10 美元的目标价格比较现实.但是随着最近在科技方面的衰退,连通性问题的继续,蓝牙芯片的价格已经涨到大约 30 美元,但是德州仪器在 2001 年 2 月伦敦会议中宣布任何人如果进行大规模定购达到 100 万件,将会得到 5 美元的价格.随着蓝牙技术的发展,一个蓝牙解决方案只要 510 美元,非常价廉物美.在技术领域,蓝牙的硬件正在进一步集成,直到所有的处理器功能与无线硬件可以集成在一个集成电路里为止.硬件厂商正朝这个方向努力.未来的新产品可以是带着已集成的软件部件的蓝牙硬件平台并且可以移植到通用的操作系统之上.这种集成趋势会更加降低蓝牙产品的成本,开发人员可以把所有的精力放在产品应用开发上,从而缩短产品上市的时间.