1、毕业论文文献综述 通信工程 单片机及其在通信上的应用 摘要 :单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器 CPU 随机存储器 RAM、只读存储器 ROM、多种 I/O 口和中断系统、定时器 /计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、 A/D 转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。本文提出一种全新的利用键盘接口实现单片机系统和 PC 机通信的方案,介绍了键盘与 PC 机通信的原理,并成功地应用于实际系统。该方案为外部单片机系统与 PC 机通信提供了 一条有效的途径。 关键词 :单片机;单片机系统时序;键
2、盘接口。 1 引言 单片机是嵌入式系统的独立发展之路,向 MCU 阶段发展的重要因素,就是寻求应用系统在芯片上的最大化解决;因此,专用单片机的发展自然形成了 SoC 化趋势。随着微电子技术、 IC 设计、EDA 工具的发展,基于 SoC 的单片机应用系统设计会有较大的发展。因此,对单片机的理解可以从单片微型计算机、单片微控制器延伸到单片应用系统。本文介绍了单片机于 PC 机相结合的应用,工控系统中,单片机应用系统与 PC 机之间的通信主要是采用异步串行通信方式,通过 RS-232C、RS-422、 RS-423 或 RS-499 标准接口实现。这引起通信方式都各自规定了自己的电气标准,都不能直
3、接满足 TTL 电平的传送要求。为了通过这些标准接口通信,必须在单片机应用系统中加入电平转换芯片,以实现 TTL 电平向标准接口电平的转换 键盘接口是 PC 机的固有接口。在很式工控系统中,工控 PC 机的键盘由于受到高温、灰尘的侵袭,容易损坏,故仅采用鼠标作为人机对话的工具,键盘接口处于空闲状态 2。以键盘接口作为单片机应用系统与 PC 机的通信接口,具有以下优点:键盘接口的电气标准能满足 TTL 电平的传送要求,不需电平 转换; PC 机的操作系统内核能够解释单片机应用系统通过键盘接口传送来的数据,免除了编写串行数据接收程序的工作; PC 机能够提供 +5V 电源。 2 单片机的介绍 单片
4、微型计算机简称单片机,是典型的嵌入式微控制器( Microcontroller Unit),常用英文字母的缩写 MCU 表示单片机,它最早是被用在工业控制领域。单片机由芯片内仅有 CPU 的专用处理器发展而来。最早的设计理念是通过将大量外围设备和 CPU 集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。 INTEL 的 Z80 是 最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。 早期的单片机都是 8 位或 4 位的。其中最成功的是 INTEL的 8031,因为简单可靠而性能不错获得了很大的好评。此后在 8031 上发展出了
5、MCS51 系列单片机系统。基于这一系统单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了 16 位单片机,但因为性价比不理想并未得到很广泛的应用。 90 年代后随着消费电子产品大发展,单片机技术得到了巨大提高。随着INTELi960 系列特别是后来的 ARM 系列的广泛应用, 32 位单片机迅 速取代 16 位单片机的高端地位,并且进入主流市场。而传统的 8 位单片机的性能也得到了飞速提高,处理能力比起 80 年代提高了数百倍。目前,高端的 32 位单片机主频已经超过 300MHz,性能直追 90 年代中期的专用处理器,而普通的型号出厂价格跌落至 1 美元,最高端 1的型
6、号也只有 10 美元。当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的 Windows 和 Linux 操作系统。 单片机比专用处理器更适合应 用于嵌入式系统,因此它得到了最多的应用。事实上单片机是世界上数量最多的计算机。现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有 1-2 部单片机。而个人电脑中也会有为数不少的单片机在工作。汽车上一般配备 40 多部单片机,复杂的工业控制系统上甚至可能
7、有数百台单片机在同时工作!单片机的数量不仅远超过 PC 机和其他计算的总和,甚至比人类的数量还要多。 单片机又称单片微控制器 ,它不是完成某一个逻辑功能的芯片 ,而是把一个计算机系统集 成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了 I/O 设备。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。 单片机内部也用和电脑功能类似的模块,比如 CPU,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也是低的,一般不超
8、过 10 元即可 .用它来做一些控制电器一类不是很复杂的工作足矣了。我们现在用的全自动滚筒洗衣 机、排烟罩、 VCD 等等的家电里面都可以看到它的身影! .它主要是作为控制部分的核心部件。 它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机的(比如家用 PC)的主要区别。 单片机是靠程序运行的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。一个不是很复杂的功能要是用美国 50 年代开发的 74 系列,或者 60 年代的 CD4000 系列这些
9、纯硬件来搞定的话 ,电路一定是一块大 PCB 板!但是如果要是用美国 70 年代成功投放市场的系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性! 由于单片机对成本是敏感的,所以目前占统治地位的软件还是最低级汇编语言,它是除了二进制机器码以上最低级的语言了,既然这么低级为什么还要用呢?很多高级的语言已经达到了可视化编程的水平为什么不用呢?原因很简单,就是单片机没有家用计算机那样的 CPU,也没有像硬盘那样的海量存储设备。一个可视化高级语言编写的小程序里面即使只有一个按钮,也会达到几 十 K 的尺寸!对于家用 PC 的硬盘来讲没什么,可是对于单片机
10、来讲是不能接受的。 单片机在硬件资源方面的利用率必须很高才行,所以汇编虽然原始却还是在大量使用。一样的道理,如果把巨型计算机上的操作系统和应用软件拿到家用 PC 上来运行,家用 PC 的也是承受不了的。 可以说,二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。不过,这种电脑,通常是指个人计算机,简称 PC 机。它由主机、键盘、显示器等组成。还有一类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机(亦称微控制器) 。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中
11、,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词 “智能型”,如智能型洗衣机等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因, 可能就卡在产品未使用单片机或其它可编程逻辑器件上。 3 单片机的应用 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程
12、的实时控制和数据处理,广泛使用的各种智能 IC 卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。因此,单片机的学习、开发与应用将造就一批计算机应用与 智能化控制的科学家、工程师。 单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴: 1.在智能仪器仪表上的应用 单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、
13、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密的测 量设备(功率计,示波器,各种分析仪)。 2.在工业控制中的应用 用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管 芯片理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。 3.在家用电器中的应用 可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭煲、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备,五花八门,无所不在。 4.在计算机网络和通信领域中的应
14、用 现代的单片机普遍具备通信接口,可以很方便地与计 算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。 5.单片机在医用设备领域中的应用 单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。 6.在各种大型电器中的模块化应用 某些专用单片机设计用于实现特定功能,从而在各种电路中进行模块化应 用,而不要求使用人员了解其内部结构。如音乐集成单片机,看似
15、简单的功能,微缩在纯电子芯片中(有别于磁带机的原理),就需要复杂的类似于计算机的原理。如:音乐信号以数字的形式存于存储器中(类似于 ROM),由微控制器读出,转化为模拟音乐电信号(类似于声卡)。 在大型电路中,这种模块化应用极大地缩小了体积,简化了电路,降低了损坏、错误率,也方便于更换。 7.单片机在汽车设备领域中的应用 单片机在汽车电子中的应用非常广泛,例如汽车中的发动机控制器,基于 CAN 总线的汽车发动机智能电子控制器, GPS 导航系统, abs 防抱死系统,制动系统等等。 此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。 4 键盘与 PC 机通信原理 1
16、.键盘接口结构 PC 机键盘分为 PC/XT、 PC/AT 和 PS/2 这三种类型。 PC/XT和 PC/AT 键盘通过一个 6针 DIN 插头与 PC 机相连。 3 种键盘接口结构类似,在其应用于外部单片机应用系统与 PC 机通信的场合,有效的接口引脚都为 4 个,它们在接口上的编号与定义分别为: 1、键盘时钟, 2、键盘数据; 4、地; 5、+5V。 2键盘与 PC 机通信时序 当首次给键盘上电时,键盘逻 辑电路产生上电复位信号,键盘开始自检。在自检期间,数据线和时钟线上的任何信号都无效。如果自检无误,键盘发送 0AAH 给 PC 机,然后开始键盘扫描。 在键盘与 CP 机通信中,存在两
17、种传输协议: XT 传输协议和 AT 传输协议。在采用 XT 协议的传输模式下,键盘只能接收来自 PC 机的复位指令和向 PC 发送数据,没有大的应用价值。只有在采用AT 协议的传输模式下,键盘能接收来自 AT-PS/2 兼容 PC 机的指令和向 PC 机发送数据。其数据帧长度为 11 位,由起始位(低电平)、 8 位数据 (低位在前,高位在后 )、奇采用 AT 传输偶校验位(奇校验)和 停止位(高电平)组成。 当无数据传输时,键盘接口数据线和时钟线均为高电平。接口时钟信号由键盘提供,其频率至少应为 733.33Hz,才能保证数据的准确发送与接收。在键盘发送数据之前,键盘检测接口时钟线和数据线
18、上电平。如果时钟线为低电平,则主机禁止键盘发送数据。键盘上的键击代码送到缓存器中缓存。只有当数据线和时钟线上电平均为高时,才允许键盘发送数据。此时键盘向主机发送数据和时钟信号。键盘发送数据时,先拉低数据线以发送起始位,再依次送出 8 位数据,最后发送奇偶校验位和停止位。每位数据在时钟脉冲下降沿有效,在时钟脉冲 高电平期间变化。如果在第 10 位(奇偶校验位)发送之前,计算机下拉时钟线至少有 60 s,则键盘停止发送,并将故障数据存储在输出缓存器中。数据发送完毕后,保持数据线和时钟线为高电平。 PC 机接收到数据后,若有误,则要求键盘重发。当 PC 机请求发送数据时, PC 机将数据线拉低,键盘
19、进入接收数据状态并发送时钟信号。每位数据均为时钟脉冲上升沿有效,在时钟脉冲低电平期间变化。键盘接收完 11 位数据后,将停止位拉低作为应答信号,表示数据接收完毕。键盘对接收到的数据进行判断,若有误,则要求 PC机重发。 3键盘与 PC 机通信命令字 键盘与 PC 机通信命令字很多,下面仅介绍与单片机系统和 PC 机通信有关的命令字。表 1为 PC机和键盘发送的命令字及其对应的 16 进制值。 表 1 PC 机和键盘发送的命令字及其 16 进制值 PC 机发送的命令字 16 进制值 键盘发送的命令字 16 进制值 置位 /复位方式指示 ED 自检完成码 AA ECHO EE 自检错误码 FC 允
20、许 F4 ECHO EE 重新发送 FE 确认 FA 复位 FE 重新发送 FE 在任何时候 PC 机都可对键盘发送命令字。除了以下两种情况外,键盘一般必须在 20ms 内应答确认命令字 0FAH:( 1)当 PC 机发送 ECHO 指令( 0EEH),键盘回应以 ECHO( 0EEH),表示通信正常;( 2)当 PC 机要求重发数据时,键盘重发上次发送的数据。 5 单片机应用系统通过键盘接口与 PC 机通信构思及实例 1单片机应用系统通过键盘接口与 PC 机通信的构思 单片机应用系统通过键盘接口与 PC 机通信必须严格按照键盘与 PC 机通信的时序要求并且按照命令字进行应答。当系统上电复位时
21、,单片机应用系统通过键盘接口发送 0AAH,模拟键盘自检完成信息。之后,单片机应用系统检测键盘接口数据线上电平,若数据线电平被 PC 机拉低,单 片机系统进入接收数据状态,时序接收命令信息或数据信息,单片机系统根据表 1 对接收信息予以解释。当单片机系统要发送数据或命令时,时序发送信息,命令字则按表 1 的定久发送, PC 机操作系统能识别这些键盘命令并进行相应的操作。而发送的数据则模拟键盘上各键的编码, PC 机操作系统可将编码解释为对应的键盘字符。在 PC 机端通信程序中,根据接收到的字符串执行相应的操作,这样就省去了编写将 PC 机端接收到的二进制流解释为相应字符的程序。 2. 实例 在
22、一个温度测量单片机应用系统中,要求定时将测得的温度信息显示在 PC 机上。系统由 3 部分组成:温度检测部分、信号转换部分、信号处理部分。外界温度的测量通过集成化测温元件 AD590实现。 AD590 是一种电流型元件,其测温范围为 -55 100 ,其分辨率为 1A/ 。经过信号转换部分(由标准运放电路和 A/D 元件组成)将电流信号转变为数字信号。输出结果送入 89C51 的 I/O口,经程序处理后,将温度信息转换为字符串信息,经键盘接口送入 PC 机。键盘接口的数据线和时钟线分别与 89C51 的 P0 口第 7、 8 脚( P0.6、 P0.7)相连。测量系统的供电直接取自键盘接口。
23、温测系统通过键盘接口与 PC 机通信程序包括 两部分: PC 机通信程序和单片机应用系统通信程序。 PC 机通信程序很简单:在 C 语言条件下,使用 getchar 函数接收数据,接收到的是经过操作系统解释的字符。使用 outport 函数往键盘端口( 60H)写数据。相比之下,单片机应用系统通信程序更为复杂 。 6 结束语 21 世纪是全人类进入计算机时代的世纪,许多人不是在制造计算机便是在使用计算机。在使用计算机的人们中,只有从事嵌入式系统应用的人才真正地进入到计算机系统的内部软、硬件体系中,才能真正领会计算机的智能化本质并掌握智能化设计的知识。从学习单片机应用技术入手是 当今培养计算机应
24、用软、硬件技术人才的最佳道路之一。独具魅力的单片机能使你体会到电脑的真谛,你可以用单片机亲自动手设计智能玩具,可以设计不同的应用程序实现不同的功能。既有硬件制作又有软件设计,既动脑、又动手。初级水平可开发智能玩具,用宏指令编程。中级水平可开发一些智能控制器,如电脑鼠、智能车、各种遥控模型。高级水平可开发机器人,如机器人足球赛,开发工业控制单元,网络通信等,并用汇编语言或高级语言设计应用程序。围绕单片机及嵌入式系统形成的电子产业的未来,将会为电子爱好者提供广阔的天地,一个比当年无线电世界更广阔 、更丰富、更持久、更具魅力的电子世界。投身到单片机世界来,将使你一生受益。 参考文献 1 蒋学程,赵国
25、良。单片机数据无线传输 J.应用技术, 2005, 32( 4): 28-31。 2 戴志强。基于单片机控制的短距离无线传输 J.大众科技, 2009, 2(12): 63-65。 3 文芳,李勇。基于 PTR2000 的单片机的无线数据传输的实现 J。电气自动化, 2008, 30( 2):47-48。 4 黄英,肖旭。基于嵌入式 Linux 的远程监控系统的设计 J。电子工程师, 2002, 22( 4): 11-13。 5刘峰,任勇,山秀明。互联网络数据包传输的一种简单元胞自动机模型 J。物理学报, 2007,56( 2): 1948-1951。 6黄智伟。单片机无线收发集成电路原理与应用 M。北京:人民邮电出版社, 2005。 7曹巧媛。单片机原理及应用 M。北京:电子工业出版社, 2002。 8马先才。单向无线数据传输系统的设计 J。电子科技, 2003,3( 21): 39-40,44。 9毋昌明,育辛力。无线数据传输系统的设计 J。北京理工大学学报, 1994,14( 1): 59-63 10Harmann Haken .Synergctic Applicatiuon in Socioeconomic SystemsM.Higher Education Press,Beijing,1984。