单片机课程设计-空调温度控制器的设计.doc

上传人:爱问知识人 文档编号:5019285 上传时间:2020-01-29 格式:DOC 页数:28 大小:924KB
返回 下载 相关 举报
单片机课程设计-空调温度控制器的设计.doc_第1页
第1页 / 共28页
单片机课程设计-空调温度控制器的设计.doc_第2页
第2页 / 共28页
单片机课程设计-空调温度控制器的设计.doc_第3页
第3页 / 共28页
单片机课程设计-空调温度控制器的设计.doc_第4页
第4页 / 共28页
单片机课程设计-空调温度控制器的设计.doc_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《单片机课程设计-空调温度控制器的设计.doc》由会员分享,可在线阅读,更多相关《单片机课程设计-空调温度控制器的设计.doc(28页珍藏版)》请在三一文库上搜索。

1、苏 州 市 职 业 大 学课程设计任务书 课程名称: 空调温度控制器的设计 起讫时间: 2010年1月18日1月22日 院 系: 电子信息工程系 班级: 08电子信息2班 姓 名: 指导教师: 系 主 任: 目录第一章 绪论- 2 -1、空调发展史- 2 -第二章 AT89S51单片机原理- 4 -2.1、AT89S51的结构和封装- 4 -2.2 AT89S51单片机的存储空间、特殊功能寄存器- 4 -2.3单片机三大功能- 9 -2.3.3串行口- 12 -2.4键盘和显示- 13 -第三章A/D转换芯片TLC1549- 17 -一、概述- 17 -第四章EEPROM,AT24C02- 1

2、9 -1I2C总线的基本结构- 19 -2双向传输的接口特性- 19 -3I2C总线上的时钟信号- 20 -4数据的传送- 20 -5总线的竞争解决- 21 -6. I2C总线接口器件- 21 -第五章温度传感器- 21 -5.1温度传感器介绍- 21 -5.2 空调温度传感器的作用- 22 -第六章设计- 23 -6.1硬件设计- 23 -6.2软件设计- 23 -第一章 绪论1、空调发展史 我们现在所定义的空调出现于从18世纪90年代到19世纪初的一次科学技术的急速发展。 19世紀,英国科学家及发明家麦克法拉第(Michael Faraday),发现压缩及液化某种气体可以將空气冷冻,此现象

3、出現在液化亚摩尼亚蒸发时,当时其意念仍流于理论化。 John Gorrie在1842年以压缩技术制造出冰块,并使用作冷冻空气以吹向患疟疾和黄热病的病人。为了拯救一些的渔民的生命而作的一次尝试,却改变了全世界人民的生活方式。 Leonardo Da Vinci 在大约1500年制造了一台水动风扇用于他妻子闺房的通风; Dr. William Cullen在1775年发明了一台用于冷冻水的机器; Jacrb Perkins 在1834年取得了一台制冷机的专利权; 在1851年,Grorrie因为他的“第一个用于医学制冷和空调的机器”得到了8080 号专利权,获得了肯定。这台新机器给历史上第一个空调

4、医院提供了冰和冷空气。这个过程是20世纪初广泛用于航海船只的压缩空气冰制冷机器的前身。 正像瓦特兄弟发明蒸汽机改变了之前的陆地运输系统那样,John Gorrie的成就改变了人类控制环境的能力。 1972年,Raymond B.Becker of Gainesville, Fla.出版了Gorrie, M.D.空气调节和医用制冷之父。 20年之后,美国最早的女工程师之一的Margaret Ingels出版了Willis Haviland Carrier,空调之父 1901年,Stuart Willis. Carrier博士在美国建立世界上第一所空调试验研究室。 1902年7月17日,开利博士为

5、美国纽约市一家印刷厂设计了世界上公认的第一套科学空调系统喷淋式热湿控制系统。空调行业将这项发明视为空调业诞生的标志。 1906年,开利博士发明了世界上第一台喷淋式空气洗涤器,即喷水室。 1906年,开利在Buffalo锻造公司风机手册上发表了第一个焓湿图。 1911年12月,开利博士得出来空气干球、湿球和露点温度之间的关系,以及空气湿热、潜热和比焓值之间关系的计算公式。 1911:开利向机械工程师美国分会发表论文合理的温湿度公式,成为空调行业最基本的理论。 1922年,开利博士发明了世界上第一台离心式冷水机组。 1906年5月,美国的多面手工程师克勒谋(Stuart WCramer)在一次美国

6、棉业协会(ACMA)的会议上正式提出了“空气调节”(Air Conditioning)术语,从而为空气调节命名。 韦利士加利亚将“空气调节”放进其1907年创办的公司名称:美国加利亚空气调节公司 (开利公司)。 空调的发明已经列入20世纪全球十大发明之一,它首次向世界证明了人类对环境温度、湿度、通风和空气品质的控制能力。 1911年,芝加哥建立了第一座空调电影院,随后两座是在洛杉矶和纽约(1922年)。纽约空调电影院是第一座真正可以调节空气各种性能的电影院。 Henry Galson 设计出了第一台“人民的空调器”。 1919年,美国布鲁克林的Abraham&Straus商店是第一家实现舒适空

7、调的大型商店。 1920年就有一座教堂配备了舒适空调。 1920年,巴西莫罗韦洛矿是第一个实现空调的矿井。 自1925年到1931年,空调首次大规模的试验:估计美国约有400家电影院和剧场配备了舒适空调。 1927-1928年,各类工厂尤其是卷烟厂和纺织厂,采用了空调。 在法国,1927年巴黎附近的一座医院,1932年一家电话交换局实现了空调。 在日本,1917年一家私人住宅实现了空调,1920年一家糖果厂实现了空调,1927年一家剧场实现了空调。 1928年,有学者提出氟利昂CFC在制冷技术中的研究。 1928年,开利和其他人合力在通用汽车研究实验室为冰箱合成CFC制冷剂。 1928年,第一

8、台电制冷自动售货机在纽约销售股份有限公司诞生。 1929年在巴尔的摩-俄亥俄运行线上一辆火车餐车配备了舒适空调。 1930年的时候,空调首次应用在汽车中。 1930年左右,空调在欧洲开始出现。在英国,第一座空调旅馆是伦敦的Cumberland旅馆。 1931年在纽约-华盛顿线路上有一列火车全部实现舒适空调。1931年我国首先在上海的许多纺织厂安装了带喷水室的空调系统,其冷源为深水井。随后,几座高层建筑的大旅馆和几家所谓“首轮”电影院,先后设置了全空气式空调系统。有一家电影院和一家银行,还安装了离心式制冷机。 1932年,Reuben Trane 发明了风机盘管机组。 1937年,开利博士又发明

9、了空气水系统的诱导器装置,是目前常见的空调末端装置风机盘管的前身。 从1937年起就采用活动式空调机组使飞机在起飞前降温。 1938年,华盛顿市府大厦配备了当时最大的空调装置(20930kW)。 1945年以后,人们才大规模地实现私人小汽车的空调。 1969年,空调技术应用在了宇航船系统中。 第二次世界大战以来,空调在农业生产中得到了直接的应用,首先是在人工气候室里。人工气候室里的试验装置可随意调节温度、湿度、照明度及大气中的化学成分等等,以研究农作物的生长情况。这些环境模拟装置1945年以来发展很快。 1948 年,在美国加利福尼亚州北部,出现了纺织工人因为工作环境温度的恶劣而罢工要求安装空

10、调系统的事件。 1950年之后,专家学者也开始研究人们在空调环境下的热舒适。1953年,公共汽车和小汽车实现空调。现代化飞机也采用空调,有的用空气循环,有的采用液化蒸汽压缩机。第二章 AT89S51单片机原理2.1、AT89S51的结构和封装 从功能上分,它包括如下部件:一个8位中央处理器(CPU);4K可在线编程Flash ;128字节RAM与特殊功能寄存器;2个16位定时/计数器;中断逻辑控制电路;一个全双工串行接口(UART);32条可编程的IO口线;另外,还包括一些寄存器如程序计数器PC 、程序状态寄存器PSW 、堆栈指针寄存器SP 、数据指针寄存器DPTR等部件。 AT89S51单片

11、机具有多种封装形式,包括PDIP40、PDIP42、PLCC44和TQFP44。最适合学校实验室使用的是PDIP40封装形式,它的外形如图1.1所示。PDIP40封装形式的单片机芯片可以很方便地使用面包板来组成应用电路。图2.2 AT89S51单片机PDIP40封装外形图2.2 AT89S51单片机的存储空间、特殊功能寄存器AT89S51单片机的程序存储空间和数据存储空间是分离的,每种存储空间的寻址范围都是64KB。上述存储空间在物理上可以被映射到4个区域:片内程序存储器和片外程序存储器,片内数据存储器和片外数据存储器。存储空间的映射图如图1.2所示。当存储空间映射为外部存储器时,包括程序空间

12、和数据空间,AT89S51单片机的P0口的8个引脚,从P0.0(AD0)到P0.7(AD7)(引脚从39到32),以时分方式被用作数据总线和地址总线的低8位;P2口的8个引脚,从P2.0(A8)到P2.7(A15)(引脚从21到28),被用作地址总线的高8位。由于对外部程序存储器和外部数据存储器的访问都是通过P0口和P2口实现,为了区分它们,外部程序存储器由引脚(引脚29)的输出信号控制;外部数据存储器的写或读操作分别由引脚P3.6(,引脚16)和引脚P3.7(,引脚17)输出信号控制。图2.3 AT89S51单片机的存储器映射图2.2.1 程序存储空间程序存储空间可以被映射为内部程序存储器或

13、者外部程序存储器。AT89S51单片机内部具有的4KB程序存储器被映射到程序存储空间的0000H0FFFH区间,如图1.2所示。这部分程序存储空间也可以被映射为外部程序存储器,它具体被映射为哪一种程序存储器取决于引脚(引脚31)所接的电平。当引脚为高电平,内部程序存储器被映射到这部分程序存储空间;当引脚为低电平,外部程序存储器被映射到这部分程序存储空间。高于0FFFH的程序存储空间只能被映射为外部程序存储器。目前Atmel公司生产的8051兼容芯片具有多种容量的内部程序存储器的型号,例如AT89S52单片机具有8KB内部程序存储器;T89C51RD2单片机具有64KB内部程序存储器。鉴于通常可

14、以采用具有足够内部程序存储器容量的单片机芯片,用户在使用中不需要再扩展外部程序存储器,这样在单片机应用电路中引脚(引脚31)可以总是接高电平。2.3.2 数据存储空间数据存储空间也可以被映射为内部数据存储器和外部数据存储器。进入不同的数据存储器是通过不同的指令来实现的,这点与程序存储器不一样。AT89S51的内部数据存储器有256字节,它们被分为两部分:高128字节和低128字节。低128字节的内部数据存储器是真正的RAM区,可以被用来写入或读出数据。这一部分存储容量不是很大,但有很大的作用。它可以进一步被分为3部分,如图1.3所示。图2.4 内部数据存储器低128字节在内部数据存储器低128

15、字节中,地址从00H1FH的最低32个字节组成4组工作寄存器,每组有8个工作寄存器。每组中的8个工作寄存器都被命名为从R0到R7。在一个具体时刻,CPU只能使用其中的一组工作寄存器。当前正在使用的工作寄存器组由位于高128字节的程序状态字寄存器(PSW)中第3位(RS0)和第4位(RS1)的数据决定。程序状态字寄存器中的数据可以通过编程来改变。这种功能为保护工作寄存器的内容提供了很大的方便。如果用户程序中不需要全部使用4组工作寄存器,那么剩下的工作寄存器所对应的内部数据存储器也可以作为通用数据存储器使用。工作寄存器在内部数据存储器中的地址映射如表1.1所示。表2.1 工作寄存器地址映射表0组(

16、RS1=0,RS0=0)1组(RS1=0,RS0=1)2组(RS1=1,RS0=0)3组(RS1=1,RS0=1)地址寄存器地址寄存器地址寄存器地址寄存器00HR008HR010HR018HR001HR109HR111HR119HR102HR20AHR212HR21AHR203HR30BHR313HR31BHR304HR40CHR414HR41CHR405HR50DHR515HR51DHR506HR60EHR616HR61EHR607HR70FHR717HR71FHR7在工作寄存器区上面,内部数据存储器的地址从20H2FH的16个字节范围内,既可以通过字节寻址的方式进入,也可以通过位寻址的方式

17、进入,位地址范围从00H到7FH。字节地址与位地址的对应关系如表1.2所示。表2.2 字节地址与位地址的关系位 地 址字 节 地 址D7D6D5D4D3D2D1D02FH7F7E7D7C7B7A79782EH77767574737271702DH6F6E6D6C6B6A69682CH67666564636261602BH5F5E5D5C5B5A59582AH575655545352515029H4F4E4D4C4B4A494828H474645444342414027H3F3E3D3C3B3A393826H373635343332313025H2F2E2D2C2B2A292824H272625

18、242322212023H1F1E1D1C1B1A191822H171615141312111021H0F0E0D0C0B0A090820H0706050403020100内部数据存储器地址从30H7FH部分仅可以用作通用数据存储器。内部数据存储器的高128字节被称为特殊功能寄存器(SFR)区。特殊功能寄存器被用作CPU和在片外围器件之间的接口,它们之间的联系方框图如图1.4所示。图2.5 特殊功能寄存器(SFR)工作框图CPU通过向相应的特殊功能存储器写入数据实现控制对应的在片外围器件的工作,从相应的特殊功能存储器读出数据实现读取对应的在片外围器件的工作结果。在AT89S51单片机中,包括前

19、面提到的程序状态字寄存器(PSW)的特殊功能存储器共有26个,它们离散地分布在80HFFH的内部数据存储器地址空间范围内,如表1.3所示。表2.3 AT89S51单片机特殊功能存储器地址映射表F8HFFHF0HBF7HE8HEFHE0HACCE7HD8HDFHD0HPSWD7HC8HCFHC0HC7HB8HIPBFHB0HP3B7HA8HIEAFHA0HP2AUXR1WDERSTA7H98HSCONSBUF9FH90HP197H88HTCONTMODTL0TL1TH0TH1AUXR8FH80HP0SPDP0LDP0HDP1LDP1HPCON87H在表2.3中,对于没有定义的存储单元用户不能使用

20、。如果向这些存储单元写入数据将产生不确定的效果,从它们读取数据将得到一个随机数。对于字节地址低位为8H或者FH的特殊功能存储器,既可以进行字节操作,也可以进行位操作。例如前面提到的用来确定当前工作寄存器组的程序状态字寄存器(PSW),它的地址为D0H,因此对它可以进行字节操作,也可以进行位操作。采用位操作可以直接控制程序状态字寄存器中的第3位(RS0)或第4位(RS1)数据而不影响其他位的数据。低位地址不为8H或FH的特殊功能存储器只可以进行字节操作,当需要修改这些特殊功能存储器中的某些位时,对其他的位应注意保护。片外数据存储空间可以被映射为数据存储器、扩展的输入/输出接口、模拟/数字转换器和

21、数字/模拟转换器等。这些外围器件统一编址。所有外围器件的地址都占用数据存储空间的地址资源,因此CPU与片外外围器件进行数据交换时可以使用与访问外部数据存储器相同的指令。CPU通过向相应的外部数据存储器地址单元写入数据实现控制对应的片外外围器件的工作,从相应的外部数据存储器地址单元读出数据实现读取对应的片外外围器件的工作结果。2.3单片机三大功能2.3.1中断中断概念 单片机的CPU正在处理某个任务时,遇到其它事件请求(如定时器溢出),暂时停止目前的任务,转去处理请求的事件,处理完后再回到原来的地方,继续原来的工作,这一过程称为“中断”,我们把请求的事件称为中断源。图2.6图2.7 MCS-51

22、系列单片机的中断系统与中断系统有关的SFR(1)TCON中断控制寄存器 表2.4中断控制寄存器TCOND7D6D5D4D3D2D1D0位地址8FH8DH8BH8AH89H88H位定义TF1TF0IE1IT1IE0IT0IT0外部中断INT0的触发方式选择位。 IT0=0,低电平触发方式 ;IT0=1,下降沿触发方式 。IE0外部中断INT0的中断请求标志。 IT1外部中断INT1的触发方式选择位。功能与IT0类似。IE1外部中断INT1的中断请求标志。功能与IE0类似。TF0定时/计数器T0的中断请求标志。TF1定时/计数器T1的中断请求标志。(2)IE中断允许控制寄存器表2.5中断允许控制寄

23、存器IED7D6D5D4D3D2D1D0位地址AFHACHABHAAHA9HA8H位定义EAESET1EX1ET0EX0EX0外部中断0中断允许控制位。EX0=1, INT0被允许(开中断)EX0=0,外部中断0被禁止(关中断)ET0定时/计数器T0中断允许控制位。EX1外部中断INT1中断允许控制位。 ET1定时/计数器T1中断允许控制位。ES串行口中断允许控制位。 EA中断系统总允许控制位 。(3)中断优先级控制寄存器 表2.6中断优先级控制寄存器IPD7D6D5D4D3D2D1D0位地址BCHBBHBAHB9HB8H位定义PSPT1PX1PT0PX0PX0外部中断INT0中断优先级控制位

24、。PT0定时/计数器T0优先级控制位。PX1外部中断INT1中断优先级控制位。PT1定时/计数器T1优先级控制位。PS串行口优先级控制位。 (4)中断源向量地址 INT0: 0003HT0: 000BHINT1: 0013HT1: 001BH串行口:0023H2.3.2、中断处理过程1、中断请求 中断源只有在有请求时,CPU才可能响应它,不同的中断源产生中断请求的方式是不同的 。外部中断产生请求是在外中断的引脚上加低电平或下降沿信号,而定时/计数器中断请求是在内部的计数单元计满溢出时产生,串行口中断请求是在完成一次发送或接收时产生。2、中断响应(1)条件 中断源的中断已经被允许 ,中断允许标志

25、和总的中断允许标志EA都被设置为“1”。 CPU此时没有响应同级或高级中断。 CPU正处于执行某一条指令的最后一个机器周期。 (并且不是对IE、IP进行访问的指令或者是中断返回指令RETI ) (2)响应中断时的操作 保护断点地址。 撤除该中断源的请求标志。 关闭同级中断。 将该中断源的入口地址送给PC,程序将转到该程序的入口地址处运行。 3、中断服务 中断服务就是中断源请求CPU做的任务,需要编程者用指令来实现。 4、中断返回 中断返回和子程序的返回类似,需要执行一条返回指令RETI RETI ;(SP)PC158,SP-1SP。 ;(SP)PC70,SP-1SP。中断返回时完成的操作:(1

26、)恢复断点地址。 (2)开放同级中断 。2.3.2、定时/计数器两个16位的定时/计数器T0和T1。它们本质上是计数器。在做计数器使用时计数引脚上的脉冲信号(下降沿),在做定时器使用时数内部的机器周期 。计数器是加法计数器,计满时溢出,并产生溢出标志(TF0、TF1) 。1、与定时器有关的SFR1定时/计数器控制寄存器TCON 表2.7定时/计数器控制寄存器TCON TCOND7D6D5D4D3D2D1D0位地址8FH8EH8DH8CH8BH8AH89H88H位定义TF1TR1TF0TR0IE1IT1IE0IT1TR0定时/计数器T0运行控制位。 TR0=1,启动T0运行(与TMOD中的GAT

27、E位有关),TR0=0,T0停止运行。TR1定时/计数器T1运行控制位。功能同TR02、定时/计数器工作方式控制寄存器TMOD 表2.8定时/计数器工作方式控制寄存器TMODTMODD7D6D5D4D3D2D1D0位定义GATEC/TM1M0GATEC/TM1M0高4位控制T1,低4位控制T0(1)GATE门控位。GATE一般情况下设置为 0,此时定时/计数器的运行仅受TR0/TR1控制。 (2)C/T定时/计数选择位。 C/T=0,为定时方式,对内部的机器周期计数。 C/T=1,为计数方式,对引脚上的脉冲信号计数,负跳变有效。(3)M1M0工作方式选择位。 M1M0=00B,方式013位的定

28、时/计数器。 M1M0=01B,方式116位的定时/计数器。 M1M0=10B,方式28位的定时/计数器,初值自动重装。 M1M0=11B,方式3两个8位的定时/计数器,仅适用于T0。2定时/计数器计数寄存器 TH0T0的高8位。 TL0T0的低8位。 TH1T1的高8位。 TL1T1的低8位。2.3.3串行口1串行通信的方式:异步通信:它用一个起始位表示字符的开始,用停止位表示字符的结束。其每帧的格式如下:在一帧格式中,先是一个起始位0,然后是8个数据位,规定低位在前,高位在后,接下来是奇偶校验位(能省略),最后是停止位1。用这种格式表示字符,则字符能一个接一个地传送。在异步通信中,CPU与

29、外设之间必须有两项规定,即字符格式和波特率。字符格式的规定是双方能够在对同一种0和1的串理解成同一种意义。原则上字符格式能由通信的双方自由制定,但从通用、方便的角度出发,一般还是使用一些标准为好,如采用ASCII标准。波特率即数据传送的速率,其定义是每秒钟传送的二进制数的位数。例如,数据传送的速率是120字符/s,而每个字符如上述规定包含10数位,则传送波特率为1200波特。同步通信:在同步通信中,每个字符要用起始位和停止位作为字符开始和结束的标志,占用了时间;所以在数据块传递时,为了提高速度,常去掉这些标志,采用同步传送。由于数据块传递开始要用同步字符来指示,同时要求由时钟来实现发送端与接收

30、端之间的同步,故硬件较复杂。28051单片机的串行接口结构8051单片机串行接口是一个可编程的全双工串行通信接口。它可用作异步通信方式(UART),与串行传送信息的外部设备相连接,或用于通过标准异步通信协议进行全双工的8051多机系统也能通过同步方式,使用TTL或CMOS移位寄存器来扩充I/O口。8051单片机通过管脚RXD(P3.0,串行数据接收端)和管脚TXD(P3.1,串行数据发送端)与外界通信。SBUF是串行口缓冲寄存器,包括发送寄存器和接收寄存器。它们有相同名字和地址空间,但不会出现冲突,因为它们两个一个只能被CPU读出数据,一个只能被CPU写入数据。串行口的控制与状态寄存器串行口控

31、制寄存器SCON它用于定义串行口的工作方式及实施接收和发送控制。字节地址为98H,其各位定义如下表:D7D6D5D4D3D2D1D0SM0SM1SM2RENTB8RB8TIRISM0、SM1:串行口工作方式选择位,其定义如下:SM0、SM1工作方式功能描述波特率0 0方式08位移位寄存器Fosc/120 1方式110位UART可变1 0方式211位UARTFosc/64或fosc/321 1方式311位UART可变其中fosc为晶体震荡器频率2.4键盘和显示在设计各种单片机应用系统中,还需扩展很多外部接口器件才能充分发挥单片机的智能控制功能。如扩展键盘与显示器件接口,可实现人机对话功能;扩展A

32、/D转换接口,可实现对外部各种模拟信号的检测与转换;扩展D/A转换接口可将数字信号转换为模拟信号,从而完成对控制对象的驱动。本章将主要介绍常见的键盘、显示(LED、LCD)、A/D和D/A转换接口电路。(1) 键盘接口电路键盘是计算机最常用的输入设备,是实现人机对话的纽带。按其结构形式可分为非编码键盘和编码键盘。编码键盘采用硬件方法产生键码。每按下一个键,键盘能自动生成键盘代码,键数较多,且具有去抖动功能。这种键盘使用方便,但硬件较复杂,PC机所用键盘即为编码键盘。非编码键盘仅提供按键开关工作状态,其键码由软件确定,这种键盘键数较少,硬件简单,广泛应用于各种单片机应用系统,一、 独立式键盘按照

33、键盘与单片机的连接方式可分为独立式键盘与矩阵式键盘。独立式键盘相互独立,每个按键占用一根I/O口线,每根I/O口线上的按键工作状态不会影响其他按键的工作状态。这种按键软件程序简单,但占用I/O口线较多(一根口线只能接一个键),适用于键盘应用数量较少的系统中。1键闭合测试,检查是否有键闭合KCS:MOV P1,#0FFHMOV A,P1CPL AANL A,#0FHRET若有键闭合,则(A0), 若无键闭合,则(A=0)。2去抖动当测试到有键闭合后,需进行去抖动处理。由于按键闭合时的机械弹性作用,按键闭合时不会马上稳定接通,按键断开时也不会马上断开,由此在按键闭合与断开的瞬间 会出现电压抖动,如

34、图6-2所示。键盘抖动的时间一般为510ms,抖动现象会引起CPU对一次键操作进行多次处理,从而可能产生错误,因而必须设法消除抖动的不良后果。通过去抖动处理,可以得到按键闭合与断开的稳定状态。去抖动的方法有硬件与软件两种:硬件方法是加去抖动电路,如可通过RS触发器实现硬件去抖动;软件方法是在第一次检测到键盘按下后,执行一段10ms的延迟子程序后再确认该键是否确实按下,躲过抖动,待信号稳定之后,再进行键扫描。通常多采用软件方法。二、矩阵式键盘矩阵式键盘又称行列式键盘,P1口的8根口线分别作为4根行线与4根列线,在其行、列交汇点接有16个键盘。与独立式键盘相比,单片机口线资源利用率提高了一倍。但若

35、需要更多的键盘,需采用接口扩展的方式,利用8155芯片进行键盘扩展,利用PA口作为输出口,8根口线作为列线,利用PC口作为输入口,4根口线作为行线,由此产生32键的矩阵式键盘。这种键盘采用扫描方式检测按键闭合情况及识别确定键码,因此称扫描方式键盘。2键盘扫描的中断控制方式在单片机系统中,CPU除了对键盘进行处理外,还要进行数据处理、结果输出显示及其它各种控制,因此键盘处理不应占用CPU过多的时间,但又必须保证CPU能够检测到键盘的工作。为提高CPU的工作效率,可采用中断扫描方式。当无键闭合时,CPU处理自已的工作,当有键闭合时,产生中断请求,CPU转去执行键盘扫描子程序并执行相应的功能。采用中

36、断方式的键盘扫描电路。本电路采用4输入与门用于产生键盘中断,其输入端与各行线相连,输出端接至8031的外部中断输入端 。当无键盘闭合时,与门各输入端均为高电平,输出端为高电平;当有键闭合时, 为低电平,于是向CPU申请中断。若CPU开放中断,则会响应该键盘中断,转去执行键盘扫描子程序。 (2) LED显示接口电路一、LED显示器LED(Light Emitting Diode)显示器是由发光二极管作为显示字段的数码型显示器件,具有显示清晰、成本低廉、配置灵活、与单片机接口简单易行的特点,在单片机应用系统中得到了广泛的应用。1LED显示器结构与分类LED显示器内部由7段发光二极管组成,因此亦称之

37、为七段LED显示器,由于主要用于显示各种数字符号,故又称之为LED数码管。每个显示器还有一个圆点型发光二极管(用符号DP表示),用于显示小数点,图6-6为LED显示器的符号与引脚图。根据其内部结构,LED显示器可分为共阴极与共阳极两种LED显示器。(1)共阴极LED显示器。各二极管的阴极连在一起,公共端接低电平时,若某段阳极加上高电平则该段发光二极管就导通发光,而输入低电平的段则不发光。(2)共阳极LED显示器。图中各二极管的阳极连在一起,公共端接高电平时,若某段阴极加上低电平则该段发光二极管就导通发光,而输入高电平的段则不发光。LED数码管通常有红色、绿色、黄色三种,以红色应用最多。由于二极

38、管的发光材料不同,数码管有高亮与普亮之分,应用时根据数码管的规格与显示方式等决定是否加驱动电路。2LED显示器的段码7段LED显示器可采用硬件译码与软件译码两种方式。在数字电路中曾介绍硬件译码显示方法,如利用74LS47等实现译码显示,这里主要介绍软件方式实现译码显示。加在显示器上对应各种显示字符的二进制数据称为段码。数码管中,七段发光二极管加上一个小数点位共计8段,因此段码为8位二进制数,即一个字节。由于点亮方式不同,共阴与共阳两种LED数码管的段码是不同的。表2.9LED数码管显示(字型 共阳极段码 共阴极段码) 0C0H3FH990H6FH1F9H06HA88H77H2A4H5BHB83

39、H7CH3B0H4FHCC6H39H499H66HDA1H5EH592H6DHE86H79H682H7DHF8EH71H7F8H07H灭FFH00H880H7FH二、LED并行显示技术1利用8155做LED显示器并行接口电路在单片机应用系统中,通常具有多位LED显示器,在编程时采用动态显示方式。所谓动态显示是指利用单片机控制显示器逐位点亮,而不是同时点亮。由于人眼的视觉残留效应,仍然感觉显示器是同时点亮的,但要求显示器动态点亮的速度应足够快,否则会有闪烁感。在实现动态显示时,除了必须给各位数码管提供段码外还必须对各位显示器进行位的控制,即进行段控与位控。工作时,各位数码管的段控线对应并联在一起

40、,由一个8位的I/O口控制;各位的位控线(公共阳极或阴极)由另一I/O控制。在某一时刻只选通一位数码管,并送出相应的段码。三、串行LED显示技术在单片机系统设计中,LED显示方式由于具有使用方便、价格低廉等优点而得到广泛应用。在采用并行显示方式时,显示电路的段码与位控码要占用单片机的较多口线,尽管可采用8155等接口芯片进行扩展,但口线利用率仍较低,不能满足大型控制系统的要求。采用串行显示方式则只需占用2至3根口线,节约单片机大量的I/O线,且使用效果很好。下面介绍一种基于74HC595A的LED串行显示技术。174HC595A工作原理74HC595A内部含有8位移位寄存器和8位D锁存器,内部

41、结构见图6-9所示。串行移位寄存器接收外部输入串行数据,一方面可进行串行数据输出,同时向锁存器提供8位并行输入数据,并具有异步复位功能;8位锁存器可三态输出并行数据。该芯片具有串行输入、并行输出两个独立的时钟信号。 工作状态 输 入 输 出 SER SRCLK RCLK SQH Q0-Q7复 位 L L H L L U串行输入 H D L H L SRG SRH U锁存输出 H L H L U N高 阻 H Z注:U:不变;N:数据刷新;Z:高阻。 输入数据在串行移位时钟SCLK上升沿由串行输入端SER输入到芯片内部串行移位寄存器中,同时SQH端串行输出;在锁存时钟信号LCLK上升沿到来时,芯片将内部串行移位寄存器8位数据并行输出。正常工作时,应将复位端 与使能端 分别接高电平、低电平。2应用电路设计图6-10为12位LED显示器应用电路。若采用普通的LED并行显示方式需扩展单片机接口,电路复杂、成本高。本系统利用三片74HC595A芯片实现12位串行LED显示控制。使用时,在串行时钟的控制下,可将显示器位控码与段控码逐位串行输入至三个芯片中,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 商业贸易


经营许可证编号:宁ICP备18001539号-1