莱芜职业技术学院毕业论文 第3章 报警器硬件设计
图3.10 串口通信电路
3.5 蜂鸣器电路
本系统的蜂鸣器报警电路如图3.11所示,蜂鸣器用一个三极管0913来驱动。单片机引脚P3.4接0913的基极输入端。当P3.4输出高电平1时,三极管导通,蜂鸣器两端获得约+5V的电压而鸣叫;当P3.4输出低电平0时,三极管截止,蜂鸣器停止发声。
图3.11 蜂鸣器电路
3.6 数码管显示电路
本系统的显示电路采用的是数码管显示电路,数码管显示器由于其成本低,
22
莱芜职业技术学院毕业论文 第3章 报警器硬件设计
配置灵活,与单片机接口简单,广泛应用于单片机应用系统中。下面介绍其工作原理及与单片机的接口电路。 3.6.1 数码管的工作原理
LED数码显示器是由若干个发光二极管组成的,当发光二极管导通时,相应的点或线段发光,将这些二极管排成一定图形,控制不同组合的二极管导通,就可以显示出不同的字形。单片机应用系统中常用的LED显示器为七段显示器,再加上有一个小数点,因此也可把它称为八段显示器。结构形式有共阴极和共阳极两种,它的结构图如图3.12所示。共阴极是把所有发光二极管的阴极连起来,通常接地,通过控制每一只发光二极管的阳极电平来使其发光或熄灭,阳极为高电平发光,为低电乎熄灭,如图3.12(a)所示;共阳极是把所有发光二极管的阳极连起来,通常为高电平(如+5v),通过控制每一只发光二极管的阴极电平来使其发光或熄灭,阴极为低电平发光,为高电平熄灭,如图3.12(b)。图3.12(c)当中的com端在应用时作为位选端,8只发光二极管被分成两组,所以有两个com端,在使用时把它们并联起来。
在图中的电阻并非是数码管内部就有的电阻,它们是需外接的限流电阻,如果不限流将造成发光二极管的烧毁。限流电阻的取值一般使流经发光二极管的电流在10-20mA,由于高亮度数码管的使用,电流还可以取得小一些。
3.12(a) 共阴极 3.12(b) 共阳极 3.12(c) 封装图 为了在LED显示器上显示某个字符,必须在它的8位段选线上加上相应的电平组合,即一个8位数据,这个数据就叫该字符的段选码。通常用的段选码的编码规则如下表所示。
23
莱芜职业技术学院毕业论文 第3章 报警器硬件设计
dp g f e d c b a 忽略小数点的七段LED显示器的段选码如表3-2所示。表中是不带小数点的字段选码,读者很容易得到带小数点的字段选码。
表3-2 七段LED显示器的段选码 显示字符 0 1 2 3 4 5 6 7 8 9 A 共阴极段选码 3FH 06H 5BH 4FH 66H 6DH 7DH 07H 7FH 6FH 77H 共阳极段选码 C0H F9H A4H B0H 99H 92H 82H F8H 80H 90H 88H 显示字符 b c d E F P U Y T 8. 灭 共阴极段选码 7CH 39H 5EH 79H 71H 73H 3EH 6EH 31H FFH 00H 共阳极段选码 83H C6H A1H 86H 8EH 8CH C1H 91H CEH 00H FFH 3.6.2 本系统的数码管显示电路
LED的显示方式分为静态显示和动态显示。在静态显示方式下,每一位显示器的字段控制线是独立的。当显示某一字时,该位的各字段线和字位线的电平不变,也就是各字段的亮灭状态不变。动态显示 是利用人眼的视觉暂留效应,分时显示不同的数码管,动态显示是一位一位地轮流点亮各位数码管,这种逐位点亮显示器的方式称为位扫描。静态显示方式下LED显示器的电路连接方法是:每位LED的字位控制线门共阴极点或共阳极点连在一起,接地或接+5V;其字段控制线(a~dP)分别接到一个8位口。本系统中的数码管显示电路采用静态显示,如图3.13所示,为共阳极数码管,a~g通过分别接到单片机的P0.1~P0.7脚。
24
莱芜职业技术学院毕业论文 第3章 报警器硬件设计
图3.13 数码管显示电路
25
莱芜职业技术学院毕业论文 第4章 系统软件设计
第4章 系统软件设计
4.1 程序语言设计
计算机能理解和执行的语言称为计算机程序设计语言,它随计算机的诞生而诞生,随计算机的发展而发展。程序设计语言有机器语言、汇编语言和高级语言之分,究竟选用哪一类、哪一种语言来编写程序,这要根据计算机的具体应用场合和各类语言的特点来决定
(一)机器语言
机器表示计算机,机器语言是用二进制表示的、计算机能直接识别和执行的语言。它虽然能被计算机直接识别,但在书写、阅读、记忆上都很困难,用它编写程序具有工作量大、易出错、不便查错和不便交流等缺点。因此,人们通常不用它来进行程序设计。
(二)汇编语言
为了解决机器语言存在的问题,人们用英文字母代替机器码,这些英文字母称为助记符。汇编语言是用助记符、保留字和伪指令等组成的一种计算机语言,是 种用来替代机器语言进行程序设计的语言,是一种特别适用于编写实时控制程序的计算机语言。采用汇编语言编程,用户可以直接操作内部的寄存器,能把数据的处理过程表述得非常具体和翔实,可以在空间和时间上充分发掘计算机的潜力 采用汇编语言编写的程序叫汇编语言源程序。计算机不能直接识别和执行汇编语言源程序,必须通过“汇编程序”将它翻译成机器语言程序(即目标程序)。汇编语言实际上是用符号来表示机器的指令,而指令和计算机的结构密切相关。因此,汇编语言有两个方面的缺点:一是对程序员计算机结构、指令系统等技术知识的要求非常高,二是编写出的程序不能通用于其他类型的计算机,即用某种型号机器的汇编语言写的程序,只有该型号的机器才能执行。
(三)高级语言
高级语言是一种独立于计算机的通用程序设计语言,它基本上不依赖于计算机的结构,程序员对计算机的结构不用作具体的了解,就可以编写程序,而且编写的程序通用性好。一个高级语言程序只要做些“移植”工作(有时也可以不做),就可以应用在不同型号的计算机上。此外,高级语言是一种接近入的自然语言和常用数学表达式的计算机语言,语句功能强,编程效率高,易于掌握和交流。但
26