文档库 最新最全的文档下载
当前位置:文档库 › 用LED数码管和DS18B20设计的温度显示器

用LED数码管和DS18B20设计的温度显示器

用LED数码管和DS18B20设计的温度显示器
用LED数码管和DS18B20设计的温度显示器

单片机课程设计说明书

用LED 数码管和DS18B20设

计的温度显示器

专业 电气工程及其自动化

学生姓名 陆雅玲 班级 B 电气081 学

0810601102 指导教师 张兰红

完成日期

2011年 6 月 23 日

目录

1.概述 (1)

1.1课题研究背景和意义 (1)

1.2课题设计内容 (1)

2.课程方案设计 (2)

2.1系统总体设计要求 (2)

2.2系统模块结构论证 (2)

2.2.1方案一 (2)

2.2.2方案二 (2)

3.系统硬件设计 (5)

3.1总体设计 (5)

3.2单片机最小运行系统 (5)

3.3温度传感器(DS18B20)电路 (6)

3.3.1 DS18B20基本介绍 (6)

3.3.2 DS18B20控制方法 (7)

3.3.3 DS18B20供电方式 (7)

3.4七段数码管显示电路 (7)

3.5驱动电路 (8)

4.系统软件设计 (9)

4.1程序结构分析 (9)

4.2系统程序流图 (9)

5.软硬件联调 (13)

5.1软硬件调试中出现的问题及解决措施 (13)

5.2实物图 (13)

5.3调试结果 (13)

结束语 (14)

参考文献 (15)

附录 (16)

附录1:基于单片机的温度显示系统设计原理图 (17)

附录2:基于单片机的温度显示系统设计PCB图 (18)

附录3:proteus仿真图 (19)

附录4:基于单片机的温度显示系统设计C语言程序清单 (20)

附录5: 基于单片机的温度显示系统设计元器件目录表 (24)

1.概述

1.1课题研究背景和意义

温度控制是工业自动控制的重要组成部分,在工业、电子、化工精度实验等诸多领域都有重要的应用,而温度测量又是温度控制当中重要的一环。将现场温度控制在一定范围内,是在各种实际应用的重要保证和前提。因此温度控制系统在工业控制领域中十分重要。

由于现代工艺越来越多的需要对实时温度进行监测和控制,而且需要的精度越来越高。所以温度控制系统国内外许多有关人员的重视,得到了十分广泛的应用。温度控制系统发展迅速,而且成果显著。由于单片微处理器的性能日益提高、价格又不断降低,使其性能价格比的优势非常明显。“用LED数码管和DS18B20设计的温度显示器”课程设计,主要设计以一个单片机为控制核心的温度自动测量系统,本课题的研究意义如下:

(1)它是一个单片机系统,对它的设计和制作可以灵活运用在单片机课程中所学的知识,并使之得到巩固和提高。

(2)它的测温部分采用了美国Dallas半导体公司的DS18B20一线式数字式温度传感器,DS18B20是最新一代的测温器件,具有许多优点,它正在逐步取代传统的测温元件——热敏电阻和热电偶。它的最主要的优点是把温度转换、A/D转换和数据的串行通讯集成为一体,而且它的体积很小,非常便于构成多点测温系统。

1.2课题设计内容

本课题的主要任务是设计并制作用LED数码管和DS18B20设计的温度显示器,即根据温度传感器感受室温,通过数码管显示出来。它能感受微小的温度误差,灵敏度为0.1摄氏度。灵活方便,用途广泛。

设计温度显示器的硬件电路与软件控制程序,对硬件电路与软件程序分别进行调试,并进行软硬件联调,要求获得调试成功的实物。

2.课程方案设计

2.1系统总体设计要求

该系统组要有STC89C51为核心的主控电路测温电路(DS18B20)、LED显示电路。

2.2系统模块结构论证

2.2.1方案一

用铂电阻测温的非线性校正方法,采用桥式电路将热敏电阻的感温效应,在将随被测温度变化的电压或电流采集过来,再加上放大器将信号放大,并经A\D转换器,在通过显示电路,就可以将被测温度显示出来。

图2-1铂电阻桥式测温电路

2.2.2方案二

考虑使用数字温度传感器,结合单片机电路设计,采用一只DS18B20温度传感器,直接读取被测温度值,之后进行转换,依次完成设计要求。

图2-2 DS18B20测温系统框图

2.2.3方案比较

方案一采用模拟温度传感器,数据处理麻烦,且容易产生信号失真. DS18B20可以直接温度转换为串行数字信号,供单片机进行处理,具有低功耗、高性能、抗干扰能力强等优点。比较以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计容易实现,故实际设计中拟采用方案二。在本系统的电路设计方框图如图2-3所示。

图2-3 温度计电路总体设计方案

DS18B20是Dallas 公司生产的一线式数字温度传感器,它具有微型化、低功耗、高性能抗干扰能力、强易配处理器等优点,特别适合用于构成多点温度测控系统,可直接将温度转化成串行数字信号(按9位二进制数字)给单片机处理,且在同一总线上可以挂接多个传感器芯片,它具有三引脚TO-92小体积封装形式,温度测量范围-55~+125℃,可编程为9~12位A/D 转换精度,测温分辨率可达0.0625℃,

STC89C52 CPU

DS18B20

温度芯片 LED 显示

报警电路

电源

被测温度用符号扩展的16位数字量方式串行输出,其工作电源既可在远端引入,业可采用寄生电源方式产生,多个DS18B20可以并联到三根或者两根线上,CPU只需一根端口线就能与多个DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。从而可以看出DS18B20可以非常方便的被用于远距离多点温度检测系统。

图2-4 温度芯片DS18B20

3.系统硬件设计

3.1总体设计

根据第2节设计方案,设计的系统总体电路如附录1所示,下面具体介绍每一部分的设计。

3.2单片机最小运行系统

a)晶振

晶振为单片机提供时钟信号。单片机XIAL1和XIAL2分别接30PF的电容,中间再并个12MHZ的晶振,形成单片机的晶振电路。

C2

30pF

30pF

C3

图3-1 晶振电路

b)复位电路

单片机在启动时都需要复位,以使CPU及系统各部件处于确定的初始状态,并从初态开始工作。89系列单片机的复位信号是从RST引脚输入到芯片内的施密特触发器中的。当系统处于正常工作状态时,且振荡器稳定后,如果RST引脚上有一个高电平并维持2个机器周期(24个振荡周期)以上,则CPU就可以响应并将系统复位。单片机系统的复位方式有:手动按钮复位和上电复位。

图3-2 复位电路

ALE引脚悬空,复位引脚接到复位电路、VCC接电源、VSS接地、EA接电源

3.3温度传感器(DS18B20)电路

3.3.1 DS18B20基本介绍

DS18B20是美国DALLAS半导体公司推出的第一片支持“一线总线”接口的温度传感器,它具有微型化、低功耗、高性能、抗干扰能力强、易配微处理器等优点,可直接将温度转化成串行数字信号处理器处理。

DS18B20进行精确的温度转换,I/O线必须保证在温度转换期间提供足够的能量,由于每个DS18B20在温度转换期间工作电流达到1mA,当几个温度传感器挂在同一根I/O线上进行多点测温时,只靠4.7K上拉电阻就无法提供足够的能量,会造成无法转换温度或温度误差极大。

因此,下图电路只适应于单一温度传感器测温情况下使用,不适宜采用电池供电系统中。并且工作电源VCC必须保证在5V,当电源电压下降时,寄生电源能够汲取的能量也降低,会使温度误差变大。

图3-3温度传感器电路引脚图

如图3-2,P3.6引脚接继电器电路的4.7K的限流电阻上。

3.3.2 DS18B20控制方法

DS18B20有六条控制命令:

温度转换 44H 启动DS18B20进行温度转换

读暂存器 BEH 读暂存器9个字节内容

写暂存器 4EH 将数据写入暂存器的TH、TL字节

复制暂存器 48H 把暂存器的TH、TL字节写到E2RAM中

重新调E2RAM B8H 把E2RAM中的TH、TL字节写到暂存器TH、TL字节

读电源供电方式 B4H 启动DS18B20发送电源供电方式的信号给主CPU

3.3.3 DS18B20供电方式

DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,如图3.1所示单片机端口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个三极管来完成对总线的上拉。本设计采用电源供电方式, P2.2口接单线总线为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个上拉电阻和STC89C52的P2.2来完成对总线的上拉。当DS18B20处于写存储器操作和温度A/D 变换操作时,总线上必须有强的上拉,上拉开启时间最大为10 μs。采用寄生电源供电方式是VDD和GND端均接地。由于单线制只有一根线,因此发送接收口必须是三状态的。主机控制DS18B20完成温度转换必须经过3个步骤:

●初始化。

●ROM操作指令。

●存储器操作指令。

3.4七段数码管显示电路

当位选打开时,送入相应的段码,则相应的数码管打开,关掉位选,打开另一个位选,送入相应的段码,则数码管打开,而每次打开关掉相应的位选时,时间间隔低于20ms,从人类视觉的角度上看,就仿佛是全部数码管同时显示的一样。

图3-4 数码管引脚图

考虑到实际室温的温度范围,显示需用五位,硬件中用了

4.系统软件设计

4.1程序结构分析

主程序调用了2个子程序,分别是数码管显示程序、温度信号处理程序。

温度信号处理程序:对温度芯片送过来的数据进行处理,进行判断和显示。

数码管显示程序:向数码的显示送数,控制系统的显示部分。

4.2系统程序流图

系统程序主要包括主程序,读出温度子程序,写入子程序等,按键子程序,串口通信程序,显示子程序。

主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值,温度测量每1s进行一次。这样可以在一秒之内测量一次被测温度,其程序流程见图4.2所示。

通过调用读温度子程序把存入内存储中的整数部分与小数部分开分存放在不的的两个单元中,然后通过调用显示子程序显示出来。

图4-1 DS18B20温度流程图uchar Init_DS18B20()

{

uchar status;

DQ=1;Delay(8);

DQ=0;Delay(90);

DQ=1;Delay(8);

status=DQ;

Delay(100);

DQ=1;

return status;

}

uchar ReadOneByte()

{

uchar i,dat=0;

DQ=1;_nop_();

for(i=0;i<8;i++)

{

DQ=0;dat >>=1;DQ=1;_nop_();_nop_();

if (DQ ) dat |=0x80; Delay(30); DQ=1;

}

return dat;

}

void WriteOneByte(uchar dat)

{

uchar i;

for(i=0;i<8;i++)

{

DQ=0;DQ=dat & 0x01;Delay(5); DQ=1; dat>>=1; }

}

void Read_Temperature()

{

if( Init_DS18B20()==1)

DS18B20_IS_OK=0;

else

{

WriteOneByte(0xCC);

WriteOneByte(0x44);

Init_DS18B20();

WriteOneByte(0xCC);

WriteOneByte(0xBE);

Temp_Value[0]=ReadOneByte();

Temp_Value[1]=ReadOneByte();

DS18B20_IS_OK=1;

}

}

5.软硬件联调

5.1软硬件调试中出现的问题及解决措施

问题1:温度传感器1、3引脚接线错误,导致数码管无显示

解决措施:将温度传感器1脚接地,3脚接Vcc。

问题2:数码管显示乱码,甚至无显示

解决措施:检验出数码管为共阴极数码管,上网查找共阴极数码管的引脚图,认真连线,将位选和段选连接正确。

问题3:程序、引脚间的连接都没问题,数码管还没有显示

解决措施:用万用表检查各个引脚之间是否导通,是否出现空焊现象。

5.2实物图

5.3调试结果

结束语

课程设计是培养学生综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。

通过这次单片机课程设计,第一,我加深了对单片机理论的理解,将理论很好地应用到实际当中去,我花了近三天的时间做实物,焊板子是一项很考验技术的活,我们组焊好后有人成功有人失败。接下来我们面对的是查错,先看看是不是电路原理图接错了,然后再看是不是虚焊,我拿着万用表一个一个焊点检查,着实不易。最苦恼的是发现不存在虚焊、短路时,可能是有元器件烧掉了,我们又去网上买。

在做实物的过程中,提高了分析和解决实际问题的综合能力。另外,也培养了自己严肃认真的科学态度和严谨求实的作风。

在此期间,张兰红老师对我的设计进行了耐心的修改和指导,我十分感激。

参考文献

1曹巧媛主编. 单片机原理及应用(第二版). 北京:电子工业出版社,2002

2全国大学生电子设计竞赛组委会编.第五届全国大学生电子设计竞赛获奖作品选编(2001), 北京:北京理工大学出版社,2003

3何力民编. 单片机高级教程. 北京:北京航空大学出版社,2000

4金发庆等编. 传感器技术与应用.北京机械工业出版社,2002

5刘坤、宋戈、赵洪波、张宪栋编.51单片机C语言应用开发技术大全,北京:人民邮电出版社,2008

6谭浩强著.C程序设计.北京:清华大学出版社,2007;

7王忠飞,胥芳.MCS-51 单片机原理及嵌入式系统应用[M].西安:西安电子科技大学出版社,2007.P268-273

8 Peter Van Der Linden著,徐波译.C专家编程,人民邮电出版社,2003

附录

附录1:基于单片机的温度显示系统设计原理图

附录2:基于单片机的温度显示系统设计PCB图

附录3:proteus仿真图

附录4:基于单片机的温度显示系统设计C语言程序清单附录5:基于单片机的温度显示系统设计元器件目录表

附录1:基于单片机的温度显示系统设计原理图

附录2:基于单片机的温度显示系统设计PCB图

七段数码管及其驱动七段数码管及其驱动原理,

[转]7段数码管管脚顺序及译码驱动集成电路74LS47,48 7段数码管管脚顺序及译码驱动集成电路74LS47,48 这里介绍一下7段数码管见下图7段数码管又分共阴和共阳两种显示方式。如果把7段数码管的每一段都等效成发光二极管的正负两个极,那共阴就是把abcdefg 这7个发光二极管的负极连接在一起并接地;它们的7个正极接到7段译码驱动电路74LS48的相对应的驱动端上(也是abcdefg)!此时若显示数字1,那么译码驱动电路输出段bc为高电平,其他段扫描输出端为低电平,以此类推。如果7段数码管是共阳显示电路,那就需要选用74LS47译码驱动集成电路。共阳就是把abcdefg的7个发光二极管的正极连接在一起并接到5V电源上,其余的7个负极接到74LS47相应的abcdefg输出端上。无论共阴共阳7段显示电路,都需要加限流电阻,否则通电后就把7段译码管烧坏了!限流电阻的选取是:5V电源电压减去发光二极管的工作电压除上10ma到15ma得数即为限流电阻的值。发光二极管的工作电压一般在1.8V--2.2V,为计算方便,通常选2V即可!发光二极管的工作电流选取在10-20ma,电流选小了,7段数码管不太亮,选大了工作时间长了发光管易烧坏!对于大功率7段数码管可根据实际情况来选取限流电阻及电阻的瓦数!74ls48引脚图管脚功能表 74LS48芯片是一种常用的七段数码管译码器驱动器,常用在各种数字电路和单片机系统的显示系统中,下面我就给大家介绍一下这个元件的一些参数与应用技术等资料。74ls48引脚功能表—七段译码驱动器功能表http://www.51hei. com/chip/312.html74LS47引脚图管脚功能表:

LED点阵书写显示屏设计方案

LED点阵书写显示屏设计方案 第一章设计任务及要求 1.1、任务 设计并制作一个基于32x32点阵LED模块的书写显示屏,其系统结构如图1所示。在控制器的管理下,LED点阵模块显示屏工作在人眼不易觉察的扫描微亮和人眼可见的显示点亮模式下;当光笔触及LED点阵模块表面时,先由光笔检测触及位置处LED点的扫描微亮以获取其行列坐标,再依据功能需求决定该坐标处的LED是否点亮至人眼可见的显示状态(如下图中光笔接触处的深色LED点已被点亮),从而在屏上实现“点亮、划亮、反显、整屏擦除、笔画擦除、连写多字、对象拖移”等书写显示功能。 图1.1 LED点阵书写显示屏系统结构示意图 1.2、要求 (1)在“点亮”功能下,当光笔接触屏上某点LED时,能即时点亮该点LED,并在控制器 上同步显示该点LED的行列坐标值(左上角定为行列坐标原点)。 (2)在“划亮”功能下,当光笔在屏上快速划过时,能同步点亮划过的各点LED,其速度 要求2s能划过并点亮40点LED。 (3)在“反显”功能下,能对屏上显示的信息实现反相显示(即:字体笔画处不亮,无笔 画处高亮)。 (4)在“整屏擦除”功能下,能实现对屏上所显示信息的整屏擦除。

第二章系统整体框架 系统整体框架图如图一所示,分为控制模块、显示模块、光笔模块、LED点阵模块和辅助模块(包括键盘、数据存储等)。 图2.1 系统整体框架图

第三章方案论证与比较 3.1、控制模块 在数字信号处理中,常用的控制器有FPGA、DSP及嵌入式51单片机。 FPGA可以直接用硬件扫描、编码、解码、纠错,速度快、稳定性高,但其价格昂贵,很多的功能在本设计难以使用到。 DSP都有较快的数据处理速度,能实时地、快速地监测信号量的变化,但其受采样频率的限制,处理频率围有限。 AT89S52 是一种低功耗、高性能CMOS 8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案,具有硬件的设计十分简单,软件开发周期短等特点。 考虑到价格、功耗及系统的要求,最终选用AT89S52单片机为控制系统。 3.2、光笔模块 光笔设计的关键是选择合适的传感器件,只有具有很高的灵敏度和一定的响应时间的传感器才能完成系统的要求及功能。 方案一:采用核心部件为光敏电阻制成的光笔检测系统。光敏电阻是将光能转换为电能的一种传感器件,它是构成光电式传感器的主要部件。光敏电阻结构简单、使用方便、价格便宜,但其响应时间长,不易检测。 方案二:采用光敏二极管,与光敏电阻相比有较好的高频特性,具有较好的可靠性,功耗低,且同样价格低廉,使用方便。 比较两种器件,系统设计中选用光敏二极管制作光笔模块。 3.3、LED点阵模块 LED点阵的显示方式有以下几种: 1)在LED点阵上贴上一层触摸屏,形成压膜式LED点阵。把触摸屏的信息通过微处理器处理来控制LED点阵显示。这种显示方式准确,反应速度快,光笔制作简单,但造价高。 2)用普通的LED点阵,在LED点阵的边上加上红外线传感接收器,构成32×32的

数码管显示原理

数码管显示原理 我们最常用的是七段式和八段式LED 数码管,八段比七段多了一个小数点,其他的基本相同。所谓的八段就是指数码管里有八个小LED 发光二极管,通过控制不同的LED 的亮灭来显示出不同的字形。数码管又分为共阴极和共阳极两种类型,其实共阴极就是将八个LED 的阴极连在一起,让其接地,这样给任何一个LED 的另一端高电平,它便能点亮。而共阳极就是将八个LED 的阳极连在一起。其原理图如下。

其中引脚图的两个COM 端连在一起,是公共端,共阴数码管 要 将其接地,共阳数码管将其接正5伏电源。一个八段数码管称为一 位,多个数码管并列在一起可构成多位数码管,它们的段选线(即 a,b,c,d,e,f,g,dp )连在一起,而各自的公共端称为位选线。显示时, 都从段选线送入字符编码,而选中哪个位选线,那个数码管便会被点 亮。数码管的8段,对应一个字节的8位,a 对应最低位,dp 对应最 高位。所以如果想让数码管显示数字 0,那么共阴数码管的字符编码 为00111111,即0x3f ;共阳数码管的字符编码为11000000,即0xc0。 可以看出两个编码的各位正好相反。如下图。 MW 引脚图 共阴极 *5V 共阳取 g f vpM a ti e d COM c

共阴扱共阳极 共阳极的数码管0~f的段编码是这样的: unsigned char code table[]={ // 共阳极0~f 数码管编码0xc0,0xf9,0xa4,0xb0,//0~3 0x99,0x92,0x82,0xf8,//4~7 0x80,0x90,0x88,0x83,//8~b 0xc6,0xa1,0x86,0x8e //c~f }; 共阴极的数码管0~f的段编码是这样的: un sig ned char code table[]={// 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71 }; 共阴极0~f数码管编码 //0~3 //4~7 //8~b //c~f Qa

led数码管点阵显示器

8*8点阵 一、项目描述 LED数码管点阵显示器是由LED按矩阵方式排列而成的,按照尺寸大小,LED点阵显示器有5×7、5×8、6×8、8×8等多种规格;按照LED发光颜色的变化情况,LED点阵显示器分为单色、双色、三色;按照LED的连接方式,LED点阵显示器又有共阴极、共阳极之分。在使用时,只要点亮相应的LED,LED点阵显示器即可按要求显示英文字母、阿拉伯数字、图形以及中文字符等。LED点阵显示器广泛地应用于股票显示板、活动信息公告板、活动字幕广告板等场合。 单片机采用AT89C51,振荡器频率fosc为12MHz,LED-DOT为8×8共阳极LED点阵显示器(MATRIX-8×8-GREEN)。试编程实现下列功能:循环显示字符0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F。 电路中采用带输出锁存器的8位串入并出移位寄存器74HC595作为列驱动器,目的是为了解决列扫描过程中列数据准备与列数据显示之间的矛盾问题。74HC595由一个8位串入并出的移位寄存器和一个8位输出锁存器组成,两者的控制是各自独立的,即数据的准备和数据的输出可以同时进行。 二:项目目的 1、熟悉Keil Vision2软件的使用。 2、熟练使用Proteus ISIS软件的使用。 3、掌握利用Proteus ISIS与Keil Vision2进行单片机应用系统的仿真调试方法。 三:硬件设计 (1)电路原理图 电路原理图 (2)元件清单: 四、软件设计 5.1程序清单 sbit EN74138 = P1^7; // 74138片选线 sbit ST_CP74595 = P1^6; // 74595内部输出(从移位寄存器到输出锁存器)控制sbit CLEAR74595 = P1^5; // 74595移位寄存器清零 unsigned char code SJM[ ][8]={ { 0x3e, 0x41, 0x41, 0x41, 0x3e, 0x00, 0x00, 0x00 }, // 0 { 0x11, 0x21, 0x7F, 0x01, 0x01, 0x00, 0x00, 0x00 }, // 1 { 0x23, 0x45, 0x49, 0x51, 0x21, 0x00, 0x00, 0x00 }, // 2 { 0x22, 0x49, 0x49, 0x49, 0x36, 0x00, 0x00, 0x00 }, // 3

6位7段LED数码管显示

目录 1. 设计目的与要求..................................................... - 1 - 1.1 设计目的...................................................... - 1 - 1.2 设计环境...................................................... - 1 - 1.3 设计要求...................................................... - 1 - 2. 设计的方案与基本原理............................................... - 2 - 2.1 6 位 8 段数码管工作原理....................................... - 2 - 2.2 实验箱上 SPCE061A控制 6 位 8 段数码管的显示................... - 3 - 2.3 动态显示原理.................................................. - 4 - 2.4 unSP IDE2.0.0 简介............................................ - 6 - 2.5 系统硬件连接.................................................. - 7 - 3. 程序设计........................................................... - 8 - 3.1主程序......................................................... - 8 - 3.2 中断服务程序.................................................. - 9 - 4.调试............................................................... - 12 - 4.1 实验步骤..................................................... - 12 - 4.2 调试结果..................................................... - 12 - 5.总结............................................................... - 14 - 6.参考资料........................................................... - 15 - 附录设计程序汇总.................................................... - 16 -

七段数码管显示

七段数码管显示设计报告 目录 一、设计任务 二、题目分析与整体构思 三、硬件电路设计 四、程序设计 五、心得体会

一.设计任务 数码的显示方式一般有三种:第一种是字型重叠式;第二种是分段式;第三种是点阵式。目前以分段式应用最为普遍,主要器件是七段发光二极管(LED)显示器。它可分为两种,一是共阳极显示器(发光二极管的阳极都接在一个公共点上),另一是共阴极显示器(发光二极管的阳极都接在一个公共点上,使用时公共点接地)。 数码管动态扫描显示,是将所用数码管的相同段(a~g 和p)并联在一起,通过选位通 信号分时控制各个数码管的公共端,循环依次点亮各个数码管。当切换速度足够快时,由于人眼的“视觉暂留”现象,视觉效果将是数码管同时显示。 根据七段数码管的显示原理,设计一个带复位的七段数码管循环扫描程序,本程序需要着重实现两部分: 1. 显示数据的设置:程序设定4 位数码管从左至右分别显示1、2、3、4; 2. 动态扫描:实现动态扫描时序。 利用EXCD-1 开发板实现七段数码管的显示设计,使用EXCD-1 开发板的数码管为四位共阴极数码管,每一位的共阴极7 段数码管由7 个发光LED 组成,7 个发光LED 的阴极连接在一起,阳极分别连接至FPGA相应引脚。四位数码管与FPGA 之间通过8 位拨码开关(JP1)进行连接。 二.题目分析与整体构思 使用EXCD-1 开发板的数码管为四位共阴极数码管,每一位的共阴极7 段数码管由7 个发光LED 组成,呈“”字状,7 个发光LED 的阴极连接在一起,阳极分别连接至FPGA 相应引脚。SEG_SEL1、SEG_SEL2、SEG_SEL3 和SEG_SEL4 为四位7 段数码管的位选择端。当其值为“1”时,相应的7 段数码管被选通。当输入到7 段数码管SEG_A~ SEG_G 和SEG_DP 管脚的数据为高电平时,该管脚对应的段变亮,当输入到7 段数码管 SEG_A~SEG_G 和SEG_DP 管脚的数据为低电平时,该管脚对应的段变灭。该四位数码管与FPGA 之间通过8 位拨码开关(JP1)进行连接,当DIP 开关全部拨到上方时(板上标示为:7SEGLED),FPGA 的相应IO 引脚和四位7 段数码管连接,7 段数码管可以正常工作;当DIP 开关全部拨到下方时(板上标示为:EXPORT5),FPGA 的相应IO引脚与7 段数码管断开,相应的FPGA 引脚用于外部IO 扩展。 注意:无论拨码开关断开与否,FPGA 的相应IO 引脚都是与外部扩展接口连接的,所 以当正常使用数码管时,不允许在该外部扩展接口上安装任何功能模块板。 数码管选通控制信号分别对应4 个数码管的公共端,当某一位选通控制信号为高电平时,其对应的数码管被点亮,因此通过控制选通信号就可以控制数码管循环依次点亮。一个数码管稳定显示要求的切换频率要大于50Hz,那么4 个数码管则需要50×4=200Hz 以上的切换频率才能看到不闪烁并且持续稳定显示的字符。 三.硬件电路设计 设计结构图如下:

LED点阵显示屏设计报告

西安邮电大学 开发性实验结题报告 学院:电子工程学院 班级:光信1201 姓名:袁云飞学号:05123010 班级:光信1201 姓名:赵晓伟学号:05123019 班级:光信1201 姓名:陶鹏江学号:05123018 237团队 2014年3月30日

16 32点阵LED电子显示屏 摘要: 本设计是一16×32点阵LED电子显示屏的设计。 整机以美国ATMEL 公司生产的40脚单片机AT89C52为核心,介绍了以它为控制系统的LED点阵电子显示屏的动态设计和开发过程。通过该芯片控制两个行驱动器74HC573和四个列驱动器74HC573来驱动显示屏显示。该电子显示屏可以显示各种文字或单色图像,全屏采用8块8×8点阵LED显示模块来组成16×32点阵显示模式。文中详细介绍了LED点阵显示的硬件设计思路、硬件电路各个部分的功能及原理、相应软件的程序设计,以及使用说明等。 单片机控制系统程序采用单片机C语言进行编辑,通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。LED显示以其组构方式灵活、显示稳定、功耗低、寿命长、技术成熟、成本低廉等特点得到广泛的应用。 关键词:AT89C51单片机;LED;点阵显示;动态显示;C语言。 一绪论 LED显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。它具有发光效率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。并广泛的应用于公交汽车,码头,商店,学校和银行等公共场合的信息发布和广告宣传。LED显示屏经历了从单色,双色图文显示屏到现在的全彩色视频显示屏的发展过程,自20世纪八十年代开始,LED显示屏的应用领域已经遍布交通、电信、教育、证券、广告宣传等各方面。 1 LED点阵显示屏概述 LED点阵显示屏的构成型式有多种,其中典型的有两种。一种把所需展示的广告信息烧写固化到EPROM芯片内,能进行固定内容的多幅汉字显示,称为单显示型;另一种在机内设置了字库、程序库,具有程序编制能力,能进行内容可变的多幅汉字显示,称可编程序型。 目前,国内的LED点阵显示屏大部分是单显示型,其显示的内容相对较少,

实验四八位七段数码管动态显示电路的设计

八位七段数码管动态显示电路的设计 一、实验目的 1、了解数码管的工作原理。 2、学习七段数码管显示译码器的设计。 3、学习VHDL的CASE语句及多层次设计方法。 二、实验原理 七段数码管是电子开发过程中常用的输出显示设备。在实验系统中使用的是两个四位一体、共阴极型七段数码管。其单个静态数码管如下图4-4-1所示。 图4-1 静态七段数码管 由于七段数码管公共端连接到GND(共阴极型),当数码管的中的那一个段被输入高电平,则相应的这一段被点亮。反之则不亮。共阳极性的数码管与之相么。四位一体的七段数码管在单个静态数码管的基础上加入了用于选择哪一位数码管的位选信号端口。八个数码管的a、b、c、d、e、f、g、h、dp都连在了一起,8个数码管分别由各自的位选信号来控制,被选通的数码管显示数据,其余关闭。 三、实验内容 本实验要求完成的任务是在时钟信号的作用下,通过输入的键值在数码管上显示相应的键值。在实验中时,数字时钟选择1024HZ作为扫描时钟,用四个拨动开关做为输入,当四个拨动开关置为一个二进制数时,在数码管上显示其十六进制的值。 四、实验步骤 1、打开QUARTUSII软件,新建一个工程。 2、建完工程之后,再新建一个VHDL File,打开VHDL编辑器对话框。 3、按照实验原理和自己的想法,在VHDL编辑窗口编写VHDL程序,用户可参照光 盘中提供的示例程序。 4、编写完VHDL程序后,保存起来。方法同实验一。

5、对自己编写的VHDL程序进行编译并仿真,对程序的错误进行修改。 6、编译仿真无误后,根据用户自己的要求进行管脚分配。分配完成后,再进行全编译 一次,以使管脚分配生效。 7、根据实验内容用实验导线将上面管脚分配的FPGA管脚与对应的模块连接起来。 如果是调用的本书提供的VHDL代码,则实验连线如下: CLK:FPGA时钟信号,接数字时钟CLOCK3,并将这组时钟设为1024HZ。 KEY[3..0]:数码管显示输入信号,分别接拨动开关的S4,S3,S2,S1。 LEDAG[6..0]:数码管显示信号,接数码管的G、F、E、D、C、B、A。 SEL[2..0]:数码管的位选信号,接数码管的SEL2、SEL1、SEL0。 8、用下载电缆通过JTAG口将对应的sof文件加载到FPGA中。观察实验结果是否与 自己的编程思想一致。 五、实验现象与结果 以设计的参考示例为例,当设计文件加载到目标器件后,将数字信号源模块的时钟选择为1464HZ,拨动四位拨动开关,使其为一个数值,则八个数码管均显示拨动开关所表示的十六进制的值。

7段数码管显示电路

4.4 显示模块 4.4.1 7段数码管的结构与工作原理 7段数码管一般由8个发光二极管组成,其中由7个细长的发光二极管组成 数字显示,另外一个圆形的发光二极管显示小数点。 当发光二极管导通时,相应的一个点或一个笔画发光。控制相应的二极管导通,就能显示出各种字符,尽管显示的字符形状有些失真,能显示的数符数量也有限,但其控制简单,使有也方便。发光二极管的阳极连在一起的称为共阳极数码管,阴极连在一起的称为共阴极数码管,如图4.9所示。 4.4.2 7段数码管驱动方法 发光二极管(LED 是一种由磷化镓(GaP )等半导体材料制成的,能直接将电能转变成光能的发光显示器件。当其内部有一一电流通过时,它就会发光。 7段数码管每段的驱动电流和其他单个LED 发光二极管一样,一般为5~10mA ;正向电压随发光材料不同表现为1.8~2.5V 不等。 7段数码管的显示方法可分为静态显示与动态显示,下面分别介绍。 (1) 静太显示 所谓静态显示,就是当显示某一字符时,相应段的发光二极管恒定地寻能可截止。这种显示方法为每一们都需要有一个8位输出口控制。对于51单片机,可以在并行口上扩展多片锁存74LS573作为静态显示器接口。 静态显示器的优点是显示稳定,在发光二极管导通电注一定的情况下显示器的亮度高,控制系统在运行过程中,仅仅在需要更新显示内容时,CPU 才执行一次显示更新子程序,这样大大节省了CPU 的时间,提高了CPU 的工作效率;缺点是位数较多时,所需I/O 口太多,硬件开销太大,因此常采用另外一种显示方式——动态显示。

(2)动态显示 所谓动态显示就是一位一位地轮流点亮各位显示器(扫描),对于显示器的每一位而言,每隔一段时间点亮一次。虽然在同一时刻只有一位显示器在工作(点亮),但利用人眼的视觉暂留效应和发光二极管熄 灭时的余辉效应,看到的却是多个字符“同时”显示。显示器亮度既与点亮时的导通电流有关,也与点亮时间和间隔时间的比例有关。调整电流和时间参烽,可实现亮度较高较稳定的显示。若显示器的位数不大于8位,则控制显示器公共极电位只需一个8位I/O 口(称为扫描口或字位口),控制各位LED 显示器所显示的字形也需要一个8位口(称为数据口或字形口)。 动态显示器的优点是节省硬件资源,成本较低,但在控制系统运行过程中,要保证显示器正常显示,CPU 必须每隔一段时间执行一次显示子程序,这占用了CPU 的大量时间,降低了CPU 工作效率,同时显示亮度较静态显示器低。 综合以上考虑,由于温度显示为精确到小数点后两位,故只需4个数码管,又考虑到CPU 工作效率与电源效率,本毕业设计采用静态显示。为共阳极显示。 4.4.3 硬件编码 动74LS47是一款BCD 码转揣为7段输出的集成电路芯片,利用它可以直接驱动共阳 极的7段数码管。它的引脚分部和真值表分别下图。

LED点阵显示屏(完整源程序版)

编号: 单片机 实训 (论文)说明书 题目:LED点阵模块控制器 院(系):应用科技学院 专业:电子信息工程 学生姓名: 学号: 指导教师: 2009年12月28日

目录 引言 (1) 1系统的设计与分析 (2) 1.1 LED点阵控制原理 (3) 1.1.1LED简介 (3) 1.1.2LED点阵 (4) 1.1.3显示原理 (5) 1.1.4显示屏的原理图及结构 (6) 1.2 单片机小系统 (8) 1.2.1 51系列单片机的概述 (8) 1.2.2单片机的组成 (8) 2 程序设计 (10) 2.1 系统程序的框架 (10) 2.1.1 串口通讯协议 (10) 2.1.2 显示处理效果函数 (10) 2.1.3 显示函数 (10) 2.2 程序流程图 (9) 3总结 (11) 谢辞 (13) 参考文献 (14) 附录(所有的源程序) (15)

摘要 LED是发光二极管Light Emitting Diode的英文缩写, 是一种能够将电能转化为可见光的半导体。LED点阵是由发光二极管排列组成的显示器件, 在我们日常生活的电器中随处可见,极为普通也广为人知。特别是它的发光类型属于冷光源,效率及发热量是普通发光器件难以比拟的,它采用低电压扫描驱动,具有:耗电少、使用寿命长、成本低、亮度高、故障少、视角大、可视距离远、规格品、可靠耐用、应用灵活、安全、响应时间短、绿色环保、控制灵活种等特点。目前LED显示屏作为新一代的信息传播媒体,已经成为城市信息现代化建设的标志。随着社会经济的不断进步,以及LED显示技术的不断完善,人们对LED显示屏的认识将越来越深入,其应用领域将会越来越广。 本文设计一个16*64点阵模块控制器,根据标准的08控制接口要求,可以驱动市面上常见的16扫单色显示屏,显示汉字、英文、阿拉伯数字及其他信息等。整个系统提供很宽的外部扩展,包括时钟、温湿度、亮度等常规点阵控制器的模块。 关键词:LED点阵控制器;89S52;16扫;08接口

7段数码管控制引脚

《EDA技术综合设计》 课程设计报告 报告题目:计数器7段数码管控制接口技术作者所在系部: 作者所在专业: 作者所在班级: 作者姓名: 作者学号: 指导教师姓名: 完成时间:

内容摘要 掌握VHDL语言基本知识,并熟练运用VHDL语言来编写程序,来下载实践到硬件上,培养使用设计综合电路的能力,养成提供文档资料的习惯和规范编程的思想。利用VHDL语言设计一个七段数码管控制引脚,在时钟信号的控制下,使6位数码管动态刷新显示十进制计数器及其进位,十二进制计数器,四位二进制可逆计数器,六十进制计数器的计数结果,这期间需要seltime分频器来动态的给各个计数器分配数码管,并显示数字的变化。 关键词:VHDL语言编程七段数码管控制引脚芯片

目录 一概述 (1) 二方案设计与论证 (1) 三单元电路设计与参数计算 (1) 3.1数码管译码器 (1) 3.2 十进制计数器 (2) 3.3六十进制计数器 (3) 3.4四位二进制可逆计数器 (5) 3.5时间数据扫描分时选择模块 (6) 3.6顶层文件 (8) 四总的原理图 (9) 五器件编程与下载 (9) 六性能测试与分析(要围绕设计要求中的各项指标进行) (10) 七实验设备 (10) 八心得体会 (10) 九参考文献 (10)

课程设计任务书课题 名称7段数码管控制引脚 完成 时间 2011. 12.12 指导 教师胡辉职称副教授 学生 姓名 庄仲班级B09212 总体设计要求和技术要点 通过本课程的学习使学生掌握可编程器件、EDA开发系统软件、硬件描述语言和电子线路设计与技能训练等各方面知识;提高工程实践能力;学会应用EDA技术解决一些简单的电子设计问题。 具体要求: 1.设计一个共阴7段数码管控制接口,在硬件时钟电路的基础上,采用分频器,输出一个1S的时钟信号,同时显示2、3、4所要求的计数器。 2.设计一个带使能输入、进位输出及同步清0的增1十进制计数器。 3.设计一个带使能输入及同步清0的六十进制同步加法计数器; 4.设计一个四位二进制可逆计数器; 工作内容及时间进度安排 第16周: 周一、周二:设计项目的输入、编译、仿真 周三:器件编程下载与硬件验证 周四:成果验收与总结 周五:撰写课程设计总结报告 课程设计成果 把编写好的程序下载到试验箱,使数码管能够按照编写的程序显示出正确的结果,实验成功。

单片机的LED点阵屏显示学习资料

51单片机的LED点阵屏设计 1 引言 点阵显示是集微电子技术、计算机技术、信息处理于一体的新型显示方式。由于其具有色彩鲜艳,动态范围广,亮度高,寿命长,工作稳定可靠等优点。目前大多数的公交车招牌都是采用固定的板块显示,显示的信息量少,内容固定,修改站点信息比较麻烦,不能快速、便捷的更新站点信息。本文提出一种方案,采用LED点阵显示模块,克服了上述缺点,不仅可以静态的显示公交车站点信息,而且也可以通过动态滚动,从而增加信息显示的容量。为了醒目,还可以产生诸如闪动、滚动等显示效果。 1.1 车内显示器的发展现状 随着电子技术和计算机控制技术在客车上的日益广泛的应用,客车内的路牌显示器也经历了从灯光路牌、翻板式电子模块路牌、CRT显示、LCD液晶显示和LED 点阵显示等几种发展类型;显示信息也从固定内容发展到任意内容的多种显示方式;对显示信息的编辑、修改,也由遥控键盘有线通讯模式发展到用计算机编辑文字,在经专用无线控制器将其发射到各站点的通讯模式。以后的发展趋势是卫星定位系统站点显示器,客车内站牌显示器由天线、卫星定位模块、微处理器、LED点阵驱动电路、LED点阵站牌和电可擦写存储器构成。 目前在客车内广泛的显示器由LED点阵显示器和LCD液晶显示器,还有部分CRT 显示器,由于CRT显示器耗电量多、体积较大,且本质量较重,与LED点阵显示器和LCD液晶显示器相比,已处于下风,目前LED和LCD显示器成为现代人们选择之一,它们各有优缺点。LCD液晶显示器具有图像清晰、体积小、功耗低等优点,但它的成本高、亮度低、寿命短、可视距离和角度很有限。而LED显示屏具有亮度高、故障低、能耗少、使用寿命长、显示内容多样、显示方式丰富等优点。 1.2 LED点阵显示系统 点阵显示是集微电子技术、计算机技术、信息处理于一体的新型显示方式。由于其具有色彩鲜艳,动态范围广,亮度高,寿命长,工作稳定可靠等优点。目前大

七段数码管显示实验

单片机实验报告

实验九七段数码管显示实验 一、实验目的 1.学习七段数码管的工作原理; 2.学习数码管与8051单片机的接口方法; 3.掌握动态扫描显示技术。 二、实验原理 如图4.9-1所示,LED数码管由7个发光二极管组成,此外,还有一个圆点型发光二极管(在图中以dp表示),用于显示小数点。通过七段发光二极管亮 共阴极接法共阳极接法 图4.9-1 暗的不同组合,可以显示多种数字、字母以及其它符号。LED数码管中的发光二极管共有两种连接方法: 1)共阴极接法:把发光二极管的阴极连在一起构成公共阴极。使用时公共阴极接地,这样阳极端输入高电平的段发光二极管就导通点亮,而输入低电平的则不点亮。实验中使用的LED显示器为共阴极接法 2)共阳极接法:把发光二极管的阳极连在一起构成公共阳极。使用时公共阳极接+5V。这样阴极端输入低电平的段发光二极管就导通点亮,而输入高电平的则不点亮。 为了显示数字或符号,要为LED显示器提供代码,因为这些代码是为显示字形的,因此称之为字形代码。七段发光二极管,再加上一个小数点位,共计八段。因此提供给LED显示器的字形代码正好一个字节。若a、b、c、d、e、f、g、dp 8个显示段依次对应一个字节的低位到高位,即D0、D1、D2、D3、D4、D5、D6、D7,则用共阴极LED数码管显示十六进制数时所需的字形代码如表4.9-1所示。

表4.9-1 共阴极LED 数码管字形代码 字型 共阴极字形代码 字型 共阴极字形代码 字型 共阴极字形 代码 0 3FH 6 7DH C 39H 1 06H 7 07H d 5EH 2 5BH 8 7FH E 79H 3 4FH 9 6FH F 71H 4 66H A 77H 灭 00H 5 6DH b 7CH *实际上试验中使用的是共阳极数码管,这里就不一一列出。 2、动态显示 按图4.9-2(b )连接线路,通过交替选中LED1和LED0循环显示两位十进制数。七段数码管段码连接不变,位码驱动输入端S1、S0接8255A C 口的PC1、PC0,通过C 口的这两位交替输出1和0,以便交替选中LED1和LED0,从而实现两位十进制数的交替显示。请编程实现在两个LED 数码管上循环显示00 99,程序流程图如图4.9-3(b)所示。 (a) 静态显示程序流程图 (b) 动态显示程序流程图 图4.9-3 十位数的段码至A 口 个位数的段码至A 口 开始 开始 返回DOS 返回DOS 延时并修改要显示的数字

七段数码管循环显示

(封面) 天津理工大学中环信息学院 电子技术课程设计 设计题目:七段数码管循环显示控制电路设计 姓名:诸钦峰学号:11160014 系别:电子信息工程系专业班级:物联网1班 开始日期: 2013年6月24日完成日期2013 年07月01日 指导教师:彭利标成绩评定等级

天津理工大学中环信息学院 课程设计任务书 系别:电子信息工程系班级:物联网1班姓名:诸钦峰学号:11160014 本表附在课程设计说明书的目录之后。

天津理工大学中环信息学院 课程设计成绩评定表 系别:电子信息工程系班级:物联网1班姓名:诸钦峰学号:11160014 本表附在课程设计任务书之后。

目录 一、设计意义 (4) 二、主要任务 (5) 2.设计方案比较 (5) 三、电路组成框图 (8) 1.数列循环电路的设计 (8) 2.序列显示电路的设计 (8) 2.1十进制自然数序列的显示电路 (8) 2.2奇数序列显示电路 (9) 2.3偶数序列显示电路 (9) 2.4音乐序列显示电路 (10) 3.脉冲产生电路的设计 (11) 4.二分频电路的设计 (11) 四、电路原理图 (12) 五、各电路的仿真测试 (14) 1.脉冲产生电路的仿真 (15) 2.二频分电路的仿真 (16) 六、元件清单 (16) 七、总结 (16)

一、设计意义 这次的课程设计主要是用计数器来实现的,这个七段数码管循环显示控制电路设计的实质就是要产生一系列有规律的数列, 然后通过一个七段数码管显示出来。这里使用的只要就是计数器, 计数器在时序电路中应用的很广泛,它不仅可以用于对脉冲进行计数,还可用于分频,定时,产生节拍脉冲以及其他时序信号。运用计数器的不同的功能和不同的接发就可以实现不同的序列输出了。 而这次的内容还包括分电路图的整合,使这个七段数码管能够按照要求那个依次输出自然序列,奇数序列,偶数序列还有音乐序列。为了实现这个循环输出的功能,在设计的时候还用到了一个以为寄存器,可以利用它的输出端来控制四个计数器的工作情况, 可以让四个计数器依次工作,就可以达到要求的依次循环输出数列。 最后还有一个部分就是脉冲的产生基于多谐振荡器可以产生方波,就可以利用它来产生脉冲信号了。而这个多谐振荡器采用的是 555 定时器来完成的。这个设计基本上就是由以上三个部分连接在一起组成的。 1、基本方案框图 计数器输出信号,将信号给译码器和脉冲信号再由脉冲信号和译码器分别编成自然序列,奇数序列,偶数序列和音乐序列,最后由数码管显示出来。 图1 七段数码管显示的基本方框图

LED点阵显示屏设计说明书

目录 前言 (2) 1 概述 (2) 1.1 LED电子显示屏的分类 (2) 1.2 LED显示屏的应用示例 (2) 1.3 设计任务 (2) 2 显示原理及控制方式分析 (3) 2.1 LED点阵模块结构 (3) 2.2 LED 动态显示原理 (3) 2.3 LED常见的控制方式 (5) 3 总体方案设计与分析 (6) 3.1显示单元的考虑 (6) 3.2 滚屏的实现 (6) 3.3 关于可扩展性 (6) 3.4 微控制器的考虑 (6) 3.5 总体电路结构及工作原理 (6) 3.5.1 硬件电路框图 (6) 3.5.2 工作原理 (7) 4 硬件电路设计 (8) 4.1 显示单元电路设计 (8) 4.1.1 LED点阵模块的选择 (8) 4.1.2 列驱动电路设计 (8) 4.1.3 行驱动电路设计 (10) 4.2 单片机控制系统电路设计 (10) 4.2.1单片机的选型 (10) 4.3对于系统电源及通信电缆的选择 (11)

4.4 其它元件的选择 (11) 5 单片机软件设计与仿真 (13) 5.1 开发工具及语言 (13) 5.2 单片机软件流程 (14) 5.3 单片机软件中算法的实现 (14) 5.4 调试及仿真结果 (15) 6 PCB设计及硬件调试 (16) 6.1 PCB设计平台 (16) 6.2元件布局及PCB整体结构工艺 (17) 6.3 布线工艺与准则 (17) 7 总结 (17) LED点阵电子显示屏系统的设计 xxx 摘要:本设计使用STC系列高速单片机作为主控制模块,利用简单的外围电路来驱动16×64的点阵LED显示屏。本LED显示屏能够以动态扫描的方式同时显示特定的四个16×16点阵汉字。本文从LED的显示原理入手,详细阐述了LED动态显示的过程,以及硬件电路的设计、计算和软件的算法。 关键词:LED;单片机;点阵; Design of LED Dot Matrix Electronic Display System SOND Jian-lei Abstract: This design uses STC series MCU as a main controller and depends on a simple external circuit to drive 16×64 the lattice LED display. The LED Display dynamic scan can show the way at the same time six 16 × 16 dot matrix Chinese characters. This article from the start LED display principle, elaborated on the LED display dynamic process, as well as hardware circuit design, computing and software algorithms. Key words: LED;Single Chip Microcomputer;Dot Matrix

八位七段数码管动态显示电路设计

八位七段数码管动态显示电路的设计 一七段显示器介绍 七段显示器,在许多产品或场合上经常可见。其内部结构是由八个发光二极管所组成,为七个笔画与一个小数点,依顺时针方向为A、B、C、D、E、F、G与DP等八组发光二极管之排列,可用以显示0~9数字及英文数A、b、C、d、E、F。目前常用的七段显示器通常附有小数点,如此使其得以显示阿拉伯数之小数点部份。七段显示器的脚位和线路图如下图4.1所示( 其第一支接脚位于俯视图之左上角)。 图4.1、七段显示器俯视图 由于发光二极管只有在顺向偏压的时候才会发光。因此,七段显示器依其结构不同的应用需求,区分为低电位动作与高电位动作的两种型态的组件,另一种常见的说法则是共阳极( 低电位动作)与共阴极( 高电位动作)七段显示器,如下图4.2所示。 ( 共阳极) ( 共阴极) 图4.2、共阳极(低电位动作)与共阴极(高电位动作)

要如何使七段显示器发光呢?对于共阴极规格的七段显示器来说,必须使用“ Sink Current ”方式,亦即是共同接脚COM为VCC,并由Cyclone II FPGA使接脚成为高电位,进而使外部电源将流经七段显示器,再流入Cyclone II FPGA的一种方式 本实验平台之七段显示器模块接线图如下图4.5所示。此平台配置了八组共阳极之七段显示器,亦即是每一组七段显示器之COM接脚,均接连至VCC电源。而每一段发光二极管,其脚位亦均与Cyclone II FPGA接连。四位一体的七段数码管在单个静态数码管的基础上加入了用于选择哪一位数码管的位选信号端口。八个数码管的a、b、c、d、e、f、g、h、dp都连在了一起,8个数码管分别由各自的位选信号来控制,被选通的数码管显示数据,其余关闭。 图4.5、七段显示器模块接线图 七段显示器之常见应用如下 可作为与数值显示相关之设计。 ?电子时钟应用显示 ?倒数定时器 ?秒表 ?计数器、定时器 ?算数运算之数值显示器

74LS47连接七段数码管设计

数字逻辑与数字系统 课程设计报告书 课题:数码管译码控制器 指导老师: 姓名: 学号: 班级: 完成日期:2012年4月24日

目录 一、课程设计目的:错误!未定义书签。 二、课程设计要求错误!未定义书签。 三、方案设计与论证错误!未定义书签。 四、所用元器件属性功能介绍错误!未定义书签。 五、设计方案总图错误!未定义书签。 六、所用元器件的编号列表错误!未定义书签。 七、设计结果以及体会错误!未定义书签。 八、参考文献错误!未定义书签。

一、课程设计目的: 1、了解与课程有关的电子电路以及元器件工程技术规范,能按照课程设计书的技术要求,编写设计说明,能正确反映设计和实验成果,能正确绘制电路图。 2、掌握74LS47译码器的逻辑功能,掌握用74LS47驱动5161BS的连接方法。 二、课程设计要求 任务: 本课程设计主要利用一个共阳极的七段数码管与74LS47芯片构成一个完整的数码管显示电路 要求: 要求能在数码管上一次显示0~9十个数字。 三、方案设计与论证 1、74ls47七段译码显示电路设计

七段译码器是用74LS47驱动5161BS,用译码器将BCD代码译成数码管所需要的驱动信号,以便使数码管用十进制数显示出BCD代码所表示的值。 四、所用元器件属性功能介绍 1、74LS47译码器功能 74LS47是BCD-7段数码管译码器/驱动器,74LS47的功能用于将BCD码转化成数码块中的数字,通过它来进行解码,可以直接把数字转换为数码管的数字,从而简化了程序,节约了单片机的IO开销。因此是一个非常好的芯片!但是由于目前从节约成本的角度考虑,此类芯片已经少用,大部分情况下都是用动态扫描数码管的形式来实现数码管显示。

LED数码管显示电子钟

#include #include unsigned char data dis_digit; unsigned char key_s, key_v; unsigned char code dis_code[11]={0xc0,0xf9,0xa4,0xb0, // 0, 1, 2, 3 0x99,0x92,0x82,0xf8,0x80,0x90, 0xff};// 4, 5, 6, 7, 8, 9, off unsigned char data dis_buf[8]; unsigned char data dis_index; unsigned char hour,min,sec; unsigned char sec100; sbit K1 = P1^4; sbit K2 = P1^5; bit scan_key(); void proc_key(); void inc_sec(); void inc_min(); void inc_hour(); void display(); void delayms(unsigned char ms); void main(void) { P0 = 0xff; P2 = 0xff; TMOD = 0x11; // 定时器0, 1工作模式1, 16位定时方式 TH1 = 0xdc; TL1 = 0; TH0 = 0xFC; TL0 = 0x17; hour = 12; min = 00; sec = 00; sec100 = 0; dis_buf[0] = dis_code[hour / 10]; // 时十位

相关文档
相关文档 最新文档