设计74hc164控制数码管显示系统.docx_第1页
设计74hc164控制数码管显示系统.docx_第2页
设计74hc164控制数码管显示系统.docx_第3页
设计74hc164控制数码管显示系统.docx_第4页
设计74hc164控制数码管显示系统.docx_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

设计74hc164控制数码管显示系统 (00-99显示)一、总体设计1、 系统组成本系统功能由硬件和软件两大部分协调完成。本系统的硬件采用模块化设计,以单片机控制为核心,74hc164为驱动,与数码管接口电路等组成单片机控制的数码管显示系统。该系统硬件主要包括主控模块、报警模块、数码管显示模块等。其中单片机控制器主要完成外围硬件的控制以及一些运算按功能,74hc164完成串行输入,并行输出,数码管显示模块完成字符、数字的显示功能。应用软件采用模块化设计方法。该系统软件主要由主程序、定时器T0中断服务子程序、164子程序等模块组成。二、硬件设计1、主控模块设计本项目采用AT89S52单片机。电源、时钟信号以及复位电路是单片机工作的基本条件,缺一不可。单片机系统的基本工作电路电源电路、时钟电路、复位电路。(1)电源电路模块设计电源模块为系统板上的其他模块提供+5V电源。系统板可从USB接口获取+5V电源,即用相应配套的USB线从电脑主机上获取+5V直流电源。(2)时钟电路模块设计单片机的时钟信号用来位单片机芯片内部的各种操作提供时间基准。时钟电路为单片机产生时钟脉冲序列,作为单片机工作的时间基准,典型的晶体振荡频率为12MHz。由于AT89S52系列单片机芯片内有时钟振荡电路,因此本项目中采用内部时钟方式,只要在单片机的XTAL1和XTAL2引脚外接石英晶体和微调电容,就够成了自激振荡器并在单片机内部产生时钟脉冲信号,具体电路如图1-1。图中电容C1和C2的作用是稳定频率和快速起振。(3)复位电路模块设计复位电路使用单片机或系统中的其他部件处于某中确定的状态。当在MC-51系列单片机的RST引脚处引入高电平并保持2个机器周期,单片机内部就执行复位操作。实际应用中,复位操作有两种基本形式:一种是上电复位,另一种是按键复位。本项目中采用案件复位方式,具体电路设计如图1-1。在单片机运行期间,可以用此案件完成复位操作。2、报警模块设计本项目中选用蜂鸣器。蜂鸣器的正极接+5V的电源,另一极接在三极管8550的集电极,三极管8550主要用于信号的放大,以驱动数码管工作。三极管8550的基极通过限流电阻接到单片机P2的P2.0如图1-1,通过控制三极管8550的基极电平来打开或关闭蜂鸣器。三极管8550的发射极接地。3、数码管显示模块设计本项目中选用8段共阳极数码管,数码管的a、b、c、d、e、f、g、dp段分别与74hc164的QA、QB、QC、QD、QE、QF、QG、QH相连,用来控制显示数字。数码管的公共使能端COM连接+5V的电源。如电路图1-1图1-1 74hc164控制数码管显示原理图三、软件设计1、数据结构设计单片机的P0口P1.0、P1.1通过控制74hc164控制数码管显示。单片机的P2口P2.0用于控制8550是否导通,从而控制蜂鸣器。单片机的P2口P2.1、P2.2、P2.3控制三个独立按键。2、程序设计主程序主要完成子函数调用等功能。 开始主程序流程图: 调用定时器T0中断服务子函数判断是否有按键按下 否 是R99 m=99m=20?TL0=0xb0TH0=0x3c开始定时器T0中断服务子函数流程图:count=20? 是子程序返回164子函数流程图:开始8位数据传送完毕后才给数码管显子程序返回 C语言程序:#include#define uchar unsigned char#define uint unsigned intuchar smg10=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;sbit clk=P10;sbit dak=P11;sbit key1=P20;sbit key2=P21;sbit key3=P22;sbit fm=P23;uchar count,flag;void time() interrupt 1TH0=0x3c;TL0=0xb0;count+;if(count=20)count=0;flag=1;void sendchar (uchar ch) uchar i ; for(i=0;i8;i+) /8位数据传送完毕后才给数码管显示 clk=0; dak=ch&0x80; clk=1; ch=1; void delay(uchar n)uchar i,j;for(i=0;in;i+)for(j=0;j110;j+);void main()uchar m,s,g,temp,r,temp1,temp2;TMOD=0X01;TH0=0x3c;TL0=0xb0;EA=1;ET0=1;TR0=1;sendchar(smgg);sendchar(smgs);temp=1;while(1)if(!key1)&temp&temp1&temp2=1)delay(20);if(!key1)&temp&temp1&temp2=1)r+;if(r=100) m=0; s=m/10; sendchar(smgs); g=m%10; sendchar(smgg);temp1=key2;if(!key3)&temp&temp2=1) delay(20);if(!key3)&temp&temp2=1) m=m-1; if(m=100) m=0;s=m/10;g=m%10;sendchar(smgs);sendchar(smgg);if(g=0)fm=0;elsefm=1;相关知识一、 数码管的结构数码管由8个发光二极管(以下简称字段)构成,通过不同的组合可用来显示数字09。数码管分为共阴极和共阳极两种结构。所谓共阴极,及时将所有的LED的阴极连到一起,而共阳极这相反,所有的阳极被连到了一起。但不是那种结构,其设计的原理基本相同,唯一不同的是驱动电路的设计有差异,一般共阴极采用推(Push)电流的方式来驱动,而共阳极结构则采用拉(Pull)电流的方式来驱动。二、 数码管工作原理共阳极数码管的8个发光二极管的阳极(二极管正端)连接在一起。通常,公共阳极接高电平(一般接电源),其他管脚阶段驱动电路输出端。当某段驱动电路的输出端为低电平时,则该段所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符,此时,要求段驱动电路能吸收额定的段导通电流,还需根据未接电源及额定段导通电流来确定相应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论