八段数码管
- 格式:doc
- 大小:104.00 KB
- 文档页数:14
标签:八段数码管发光二极管共阳极限流电阻
八段数码管结构
数码管由8个发光二极管(以下简称字段)构成,通过不同的组合可用来显示数字0 ~9、字符A ~ F、H、L、P、R、U、Y、符号“-”及小数点“.”。
数码管的外形结构如图所示。
数码管又分为共阴极和共阳极两种结构。
数码管引脚图
数码管工作原理:
共阳极数码管的8个发光二极管的阳极(二极管正端)连接在一起。
通常,公共阳极接高电平(一般接电源),其它管脚接段驱动电路输出端。
当某段驱动电路的输出端为低电平时,则该端所连接的字段导通并点亮。
根据发光字段的不同组合可显示出各种数字或字符。
此时,要求段驱动电路能吸收额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。
共阴极数码管的8个发光二极管的阴极(二极管负端)连接在一起。
通常,公共阴极接低电平(一般接地),其它管脚接段驱动电路输出端。
当某段驱动电路的输出端为高电平时,则该端所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。
此时,要求段驱动电路能提供额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。
系统分类: 模拟技术 | 用户分类: 无分类 | 来源: 原创 | 【推荐给朋
友】 | 【添加到收藏夹】。
8段数码管属于LED发光器件的一种。
LED发光器件一般常用的有两类:数码管和点阵。
8段数码管又称为8字型数码管,分为8段:A、B、C、D、E、F、G、P。
其中P为小数点。
数码管常用的有10根管脚,每一段有一根管脚,另外两根管脚为一个数码管的公共端COM,两根之间相互连通,如图所示:
图一 LED的管脚和电路原理
从电路上,数码管又可分为共阴和共阳两种。
数码管的公共端就是”位“选端。
共阴极的数码管公共端接地(叫做“位”选端),段选端高电平有效,
共阳级公共端(位选端)接+5V电源,段选端低电平有效。
位选端的意思就是只有这一端选通的时候才能给段选端赋不同的值。
比如说对共阴级的数码管,只有先给位选端(也就是共阴级)一个低电平时,才能给段选端(阳级)赋不同的码(高电平有效),才能在数码管上显示不同的数字。
中断中的下降沿的产生方法:(例如,在外部中断0下的产生方法)一端接P3.2(外部中断0),另外一端快速接一下地(接地就相当于是产生一个低电平),就可以产生一个下降沿了。
共阳四位八段数码管
标题:共阳四位八段数码管
共阳四位八段数码管是一种常见的显示器件,广泛应用于计时器、计数器等电子设备中。
它具有清晰的显示效果和简单的使用方式,为用户提供了便利。
数码管的工作原理是通过控制不同的管脚电平来点亮对应的数字或符号。
共阳四位八段数码管共有12个引脚,其中8个用于控制8段显示,另外4个引脚用于控制四位显示。
使用共阳四位八段数码管的步骤如下:首先,通过电路连接将数码管与主控芯片相连;然后,通过主控芯片发送信号控制数码管的显示内容;最后,数码管根据信号点亮相应的数字或符号。
在使用共阳四位八段数码管时,需要注意以下几点:首先,要保证电路连接正确,引脚对应无误;其次,要根据需要设置合适的亮
度,以便在不同环境下清晰可见;此外,要注意避免过高的电流和过高的温度,以防止数码管损坏。
总结起来,共阳四位八段数码管是一种常用的显示器件,具有清晰的显示效果和简单的使用方式。
在使用时要注意正确的连接和设置适当的亮度,以确保正常运行。
通过合理使用和维护,共阳四位八段数码管能够为用户提供稳定可靠的显示功能。
八段数码管的显示实验是一个程序语句长,编程设计的结构相对复杂的实验。
但是电类专业目一般在第4个实验就要编制八段数码管程序,因为该实验是其它后续大量实验的基础。
该实验是否能掌握,成为整个单片机实验课程能学习取得效果的转折点。
这样一个复杂的实验指望在2个学时的实验课上掌握是不可能的,采用如下的步骤和方法逐步推进会事半功倍!1.首先将八段数码管的实验箱电路在理论课程中作为例题出现,并且应该成为典型例题!图9-12是某实验箱的键盘和数码显示的部分电路,试回答下列问题:(1.)试写出8255的PA\PB\PC\及控制寄存器的地址;(2.)设置8255的控制寄存器,并初始化8255(88H);(3.)试写出键盘扫描程序一般应具有的功能;(4.)试编写在两位数码管上显示数字20编程思路(2段码为A4;0段选码为C0);(5).试写出用手按下键盘后,在八段数码管上显示对应键值的思路。
2. 实验课程内容必须分解2.1 首先完成能够在数码管上显示一个字符2.2 其次要求在数码管上能显示两个字符,动态显示2.3 最后要求在数码管上轮流显示0~F.3.教师应该提供2.1实验的参考程序作为引导,否则实践证明2个学时后编程程序的不超过10%4.附件 2.1程序cs8255 equ 0ffffh ;8255命令控制口outseg equ 0fffch ;字形控制口outbit equ 0fffdh ;字位/键扫控制口LEDBuf equ 60h ;显示缓冲Num equ 70h ;显示的数据DelayT equ 75h ;延迟参数org 0mov dptr,#CS8255mov a,#88h ;命令字:A,B口输出movx @dptr,a ;8255初始化FillBuf: mov a,#00hanl a,#0fhmov dptr,#LEDMapmovc a,@a+dptr ;数字转换成显示码mov @r0,a ;显示在码填入显示缓冲mov r2,#10000000b;从左边开始显示Loop:mov dptr,#OUTBITclr amovx @dptr,a ;关所有八段管mov a,@r0mov dptr,#OUTSEGmovx @dptr,amov dptr,#OUTBITmov a,r2movx @dptr,a ;显示一位八段管sjmp $LedMap: db 0c0h,0f9h,0a4h,0b0h,099h,092h,082h,0f8h ;八段管显示码db 080h,090h,088h,083h,0c6h,0a1h,086h,08ehend。
八段数码管显示实验实验一八段数码管显示实验一、实验目的:1、介绍数码管动态显示的原理。
2、介绍74ls164拓展端口的方法。
二、实验要求:利用实验仪提供更多的表明电路,动态显示一行数据。
三、实验电路:这里只是表明草图,详尽原理参看第一章的1.1.15“8155键显出模块”。
四、实验说明:1、本实验仪提供更多了8段码数码管led表明电路,学生只要按地址输入适当数据,就可以同时实现对显示器的掌控。
表明共计6十一位,使用动态方式表明。
8段数码管就是由8155的pb0、pb1经74ls164“串转并”后输入获得。
6十一位位码由8155的pa0口输入,经ua2021逆向驱动后,挑选适当表明位。
74ls164是串行输入并行输出转换电路,串行输入的数据位由8155的pb0控制,时钟位由8155的pb1控制输出。
写程序时,只要向数据位地址输出数据,然后向时钟位地址输出一高一低两个电平就可以将数据位移到74ls164中,向显示位选通地址输出高电平就可以点亮相应的显示位。
本实验仪中数据位输入地址为0e102h,时钟位输入地址为0e102h,位选通输入地址为0e101h。
本实验牵涉至了8155i0/ram拓展芯片的工作原理以及74ls164器件的工作原理。
六、实验步骤:1、将keil仿真器上40芯排线一端和实验箱上51cpu板上的40芯排针连接起来,将仿真器相连接的usb或串口线与pc机对应的usb或串口连接起来,关上实验箱电源。
2、进入keil软件界面,点击项目/打开项目在c:\keil\uv2\次1服务设施实验例程中挑选实验一,内有asm和c51两种程序,步入asm文件夹关上led项目文件进入如图所示界面页面“调试/启动/暂停调试”,步入调试界面,页面“调试/运转”可以看见8段数码管交错表明0—七、实验程序:outbitequ0e101h;位掌控口clk164equ0e102h;段控制口(接164时钟位)dat164equ0e102h;段控制口(接164数据位)inequ0e103h;键盘读入口ledbufequ60h;显示缓冲numequ70h;显示的数据delaytequ75h;org0000hljmpstartledmap:;八段管表明码db3fh,06h,5bh,4fh,66h,6dh,7dh,07hdb7fh,6fh,77h,7ch,39h,5eh,79h,71hdelay:;延时子程序movr7,#0delayloop:djnzr7,delayloopdjnzr6,delayloopretdisplayled:movr0,#ledbufmovr1,#6;共6个八段管movr2,#00100000b;从左边已经开始表明loop:movdptr,#outbitmova,#00hmovx@dptr,a;第一关所有八段管mova,@r0movb,#8;送164dlp:rlcamovr3,amovacc.0,canla,#0fdhmovdptr,#dat164movx@dptr,amovdptr,#clk164orla,# 02hmovx@dptr,aanla,#0fdhmovx@dptr,amova,r3djnzb,dlpmovdptr,#outbitmova,r2movx@dptr,a;显示一位八段管movr6,#1calldelaymova,r2;表明下一位rramovr2,aincr0djnzr1,loopmovdptr,#outbitmova,#0movx@dptr,a;关所有八段管retstart:movdptr,#0e100hmova,#03hmovx@dptr,amovsp,#40hmovnum,#0mloop:incnummova,nummovb,amovr0,#ledbuffillbuf:mova,banla,#0fhmovdptr,#ledmapmovca,@a+dptr;数字转换成显示码mov@r0,a;显示在码填入显示缓冲incr0incbcjner0,#ledbuf+6,fillbufmovdelayt,#30dispagain:calldisplayled;显示djnzdelayt,dispagainljmpmloopend。
共阴极八段数码管显示数字0到9共阴极八段数码管是一种在嵌入式系统中常用的显示设备,它由八个发光二极管组成,其中七个长条形的发光管排列成“日”字形,右下角一个点形的发光管作为显示小数点用。
要使共阴极八段数码管显示数字0到9,可以通过编程实现。
具体来说,可以定义共阴极数码管的引脚,并将数码管的8个阴极连接到8个GPIO引脚上。
然后,定义一个计数器,用于控制数码管显示的数字。
对于每个计数器的值,在代码中定义一个对应的数字显示模式,例如0的显示模式为abcdef,1的显示模式为bc,以此类推。
在每个时钟周期内,根据计数器的值,将对应的数字显示模式输出到数码管的引脚上,从而控制数码管的显示。
为了实现循环显示0-9,可以在计数器达到9时将其重置为0,从而实现循环显示的效果。
下面是一个简单的Verilog代码示例,用于更好地理解:```verilogmodule display(input clk,output reg [7:0] seg,reg [3:0] cnt;always @(posedge clk) begincase(cnt)4'h0: seg = 8'b11000000; //显示04'h1: seg = 8'b11111001; //显示14'h2: seg = 8'b10100100; //显示24'h3: seg = 8'b10110000; //显示34'h4: seg = 8'b10011001; //显示44'h5: seg = 8'b10010010; //显示54'h6: seg = 8'b10000010; //显示64'h7: seg = 8'b1111。
八段一位数码管驱动芯片
这个驱动芯片就像是数码管的指挥官。
它接收来自外部的指令,比如说我们想要显示数字“8”,它就会聪明地知道该让数码管的哪几段亮起来。
它会精确地发送信号,让数码管的a、b、c、d、e、f、g这七段,还有中间的小数点那一段(如果有的话),按照正确的组合亮起来,于是,一个清晰的数字“8”就出现在我们眼前啦。
它的工作原理其实也挺有趣的。
简单来说,它内部有一些复杂的电路和逻辑,就像是一个小小的智能大脑。
当它接收到数据信号后,会先对这些信号进行分析和处理,然后根据预先设定好的规则,把合适的电流或者电压送到数码管的相应段上,让它们发光。
比如说,它可能会通过一些高低电平的变化来控制数码管的亮灭,就像给数码管下达了一道道精确的命令。
而且啊,这个驱动芯片还挺灵活的。
它可以和各种不同类型的数码管配合使用,不管是共阳极的还是共阴极的数码管,它都能轻松应对。
就好比一个万能钥匙,能打开不同的锁一样。
这对于电子工程师们来说,可真是个好帮手,大大简化了电路设计的难度。
这个小魔法师也不是完美无缺的。
有时候,如果受到外界的干扰,比如电磁干扰或者电源不稳定,它可能会出现一些小失误,导致数码管显示不正常。
这时候,就需要工程师们像医生给病人看病一样,仔细检查电路,找出问题所在,然后对症下药,让它重新恢复正常工作。
共阴极八段数码管显示数字0到9共阴极八段数码管是一种常用的数码显示器件,广泛应用于数字显示、电子计时、计数器等电子设备中。
它由8个发光二极管(简称LED)组成,分别代表数字的不同部分,通过控制LED的亮灭来显示不同数字。
数码管的工作原理是通过对LED的正向电压加以控制,使其发光。
每个数码管有7个分段加上一个小数点,分别代表数字的不同部分。
这7个分段依次为A、B、C、D、E、F、G,小数点分段为DP。
根据不同数字需要显示的部分,根据真值表将其控制端与共阴极接通或断开,从而实现不同数字的显示。
接下来,我们将从数字0到9逐个分析,用简体中文写出其显示方式以及对应的亮灭情况。
数字0:使用的接线方式:A、B、C、D、E、F接通,G接断。
个闭合的圈。
数字1:使用的接线方式:B、C接通,A、D、E、F、G接断。
显示效果:数码管上只有B和C分段亮灭,形状为一竖线。
数字2:使用的接线方式:A、B、G、E、D接通,C、F接断。
显示效果:数码管上只有A、B、G、E、D分段亮灭,形状为一个倒“L”。
数字3:使用的接线方式:A、B、C、D、G接通,E、F接断。
显示效果:数码管上除了E、F分段,其余分段均亮灭,形状为一个“M”。
数字4:使用的接线方式:B、C、F、G接通,A、D、E接断。
为一个倒“U”。
数字5:使用的接线方式:A、C、D、F、G接通,B、E接断。
显示效果:数码管上除了B、E分段,其余分段均亮灭,形状为一个倒“N”。
数字6:使用的接线方式:A、C、D、E、F、G接通,B接断。
显示效果:数码管上除了B分段,其余分段均亮灭,形状为一个“0”。
数字7:使用的接线方式:A、B、C接通,D、E、F、G接断。
显示效果:数码管上除了D、E、F、G分段,其余分段均亮灭,形状为一个倒“L”。
数字8:使用的接线方式:A、B、C、D、E、F、G接通。
显示效果:数码管上的所有分段均亮灭,形状为一个闭合的圈。
数字9:使用的接线方式:A、B、C、D、F、G接通,E接断。
【概述】单片机是一种集成了微处理器、存储器和输入输出设备的微型计算机系统,广泛应用于电子产品中。
八段数码管是一种常见的显示器件,可以显示0-9和A-F共16个字符。
本文将以汇编语言为例,介绍如何利用单片机控制一个八段数码管循环显示0-F的过程。
【正文】1. 了解八段数码管八段数码管是由8个LED灯组成,可以显示16种不同的字符。
每个LED代表一个数码,通过控制LED的亮灭来显示相应的字符。
在汇编语言中,我们可以通过控制单片机的输出引脚来实现对八段数码管的控制。
2. 开发环境准备我们需要准备好单片机的开发环境,包括单片机开发板、编程软件等。
常用的单片机有51系列、AVR系列等,在使用之前需要熟悉其指令集和寄存器等相关知识。
3. 控制八段数码管在汇编语言中,我们可以通过对单片机的输出引脚进行控制来操作八段数码管。
具体的操作包括设置引脚状态、发送数据等。
通过编写相应的汇编语言程序,我们可以实现循环显示0-F的功能。
4. 编写汇编语言程序我们需要定义八段数码管每个数字对应的LED亮灭状态。
在主程序中编写循环语句,通过不断改变LED的状态来实现循环显示的效果。
在编写程序时,需要考虑到八段数码管的工作原理和时序要求,以确保程序的稳定性和准确性。
5. 调试和优化在编写完汇编语言程序后,我们需要进行调试和优化。
通过单步调试等手段来检查程序的运行情况,找出可能存在的问题。
可以根据实际情况对程序进行优化,提高程序的执行效率和稳定性。
6. 实际应用完成汇编语言程序的编写和调试后,我们可以将程序烧录到单片机中进行测试。
通过连接八段数码管和单片机的引脚,我们可以观察到八段数码管循环显示0-F的效果。
这个简单的实例展示了如何利用汇编语言控制八段数码管,为我们进一步深入了解单片机的应用奠定了基础。
【总结】通过本文的介绍,我们了解了如何利用汇编语言控制单片机实现八段数码管的循环显示。
汇编语言作为一种底层语言,对于理解单片机的工作原理和功能有着重要的作用。
8段数码管是一种常见的电子元件,广泛应用于数字显示领域。
在Proteus中,它的名称是什么呢?让我们深入探讨这个问题。
1. 8段数码管的基本概念在电子领域,数码管是一种用来显示数字的元件。
8段数码管由8个LED灯组成,每个LED可以显示数字0-9中的一个。
通过不同的组合,可以显示所有数字以及一些字母。
2. 8段数码管在Proteus中的定义在Proteus中,8段数码管的名称是“7段数码管”,这可能会让人感到困惑。
实际上,这是由于技术标准的不同导致的。
在实际电路设计中,8段数码管与7段数码管的功能是一致的,只是命名上略有不同。
3. 如何在Proteus中使用8段数码管在Proteus中,可以通过添加元件,选择7段数码管并进行连接,来使用8段数码管。
在电路中给数码管添加电压信号,就可以实现数字的显示。
4. 8段数码管的应用领域8段数码管广泛应用于数字显示领域,比如计时器、计数器、温度显示器等。
其显示效果清晰、直观,易于被用户理解,因而备受青睐。
5. 个人观点与理解对于我个人来说,8段数码管在Proteus中的名称虽然略有不同,但其使用方法和功能并无区别。
在实际的电路设计和仿真过程中,能够准确理解元件的定义和功能非常重要,这也是我特别关注这个问题的原因。
6. 总结与回顾通过本文的介绍,我们了解了8段数码管在Proteus中的名称和使用方法。
虽然名称略有不同,但在实际应用中并无影响。
选择合适的元件并正确连接,就能够实现数字的显示。
对于电子爱好者和工程师来说,熟悉各种元件的定义和使用方法,能够更好地进行电路设计和仿真。
在对8段数码管在Proteus中的名称和使用方法有了更深入的了解后,希望大家在实际操作中能够更加灵活和准确地使用这一元件,提高电路设计的效率和准确性。
:7. 8段数码管的特性和优势8段数码管作为一种常见的数字显示元件,具有清晰、直观的显示效果。
其使用LED灯作为显示单元,不仅能够显示数字,还可以显示一些字母和符号,具有一定的多功能性。
实验一 八段数码管显示实验一、实验目的:1、了解数码管动态显示的原理。
2、了解74LS164扩展端口的方法。
二、实验要求:利用实验仪提供的显示电路,动态显示一行数据。
三、实验电路:这里只是显示草图,详细原理参见第一章的1.1.15 “8155键显模块”。
四、实验说明:1、本实验仪提供了8段码数码管LED 显示电路,学生只要按地址输出相应数据,就可以实现对显示器的控制。
显示共有6位,采用动态方式显示。
8段数码管是由8155的PB0、PB1经74LS164“串转并”后输出得到。
6位位码由8155的PA0口输出,经uA2003反向驱动后,选择相应显示位。
74LS164是串行输入并行输出转换电路,串行输入的数据位由8155的PB0控制,时钟位由8155的PB1控制输出。
写程序时,只要向数据位地址输出数据,然后向时钟位地址输出一高一低两个电平就可以将数据位移到74LS164中,向显示位选通地址输出高电平就可以点亮相应的显示位。
本实验仪中数据位输出地址为0e102H ,时钟位输出地址为0e102H ,位选通输出地址为 0e101H 。
本实验涉及到了8155 I0/RAM 扩展芯片的工作原理以及74LS164器件的工作原理。
2六、实验步骤:1、将KEIL仿真器上40芯排线一端和实验箱上51CPU板上的40芯排针连接起来,将仿真器连接的USB或串口线与PC机对应的USB或串口连接起来,打开实验箱电源。
2、进入KEIL软件界面,点击项目/打开项目在C:\KEIL\UV2\次1配套实验例程中选择实验一,内有ASM和C51两种程序,进入ASM 文件夹打开LED项目文件进入如图所示界面点击“调试/启动/停止调试”,进入调试界面,点击“调试/运行”可看到8段数码管交替显示0—F七、实验程序:OUTBIT equ 0e101h ; 位控制口CLK164 equ 0e102h ; 段控制口(接164时钟位)DAT164 equ 0e102h ; 段控制口(接164数据位)IN equ 0e103h ; 键盘读入口LEDBuf equ 60h ; 显示缓冲Num equ 70h ; 显示的数据DelayT equ 75h ;org 0000hljmp StartLEDMAP: ; 八段管显示码db 3fh, 06h, 5bh, 4fh, 66h, 6dh, 7dh, 07hdb 7fh, 6fh, 77h, 7ch, 39h, 5eh, 79h, 71hDelay: ; 延时子程序mov r7, #0DelayLoop:djnz r7, DelayLoopdjnz r6, DelayLoopretDisplayLED:mov r0, #LEDBufmov r1, #6 ; 共6个八段管mov r2, #00100000b ; 从左边开始显示Loop:mov dptr, #OUTBITmov a, #00hmovx @dptr, a ; 关所有八段管mov a, @r0mov B, #8 ; 送164DLP:rlc amov r3, amov acc.0, cANL A, #0FDHmov dptr, #DAT164movx @dptr, amov dptr, #CLK164orl a,#02hmovx @dptr, aanl a,#0fDhmovx @dptr, amov a, r3djnz B, DLPmov dptr, #OUTBITmov a, r2movx @dptr, a ; 显示一位八段管mov r6, #1call Delaymov a, r2 ; 显示下一位rr amov r2, ainc r0djnz r1, Loopmov dptr, #OUTBITmov a, #0movx @dptr, a ; 关所有八段管retStart: mov dptr,#0e100hmov a,#03hmovx @dptr,amov sp, #40hmov Num, #0MLoop:inc Nummov a, Nummov b, amov r0, #LEDBufFillBuf:mov a, banl a, #0fhmov dptr, #LEDMapmovc a, @a+dptr ; 数字转换成显示码mov @r0,a ; 显示在码填入显示缓冲 inc r0inc bcjne r0, #LEDBuf+6, FillBuf mov DelayT,#30 DispAgain:call DisplayLED ; 显示djnz DelayT,DispAgainljmp MLoopEND。
硬件实验九八段数码管一、实验目的1、了解数码管动态显示的原理。
2、了解用总线方式控制数码管显示。
3、学习数码管静态显示和动态显示的编程方法。
二、实验内容1、在静态数码管上轮流显示数字0~9.2、在两个4位数码管上动态显示数字0~9.三、实验连线静态显示:JP10(P0)和JP3用8PIN排线连接起来动态显示:数据端口:JP10(P0)与J12用8PIN排线连接起来。
位线端口:JP8(P1口)和JP16用8PIN排线连接。
四、实验说明JP12是2个4位数码管的数据端口。
JP3是静态数码管的数据端口。
静态显示时,只需将需要显示数据的段码送到P0口,延迟一段时间,将另外一个数据的段码送到P0口即可。
动态显示时,需要设置位线。
除了上面提到的直接将IO口当作位线的方法,另一种方法是使用138的输出作为位线。
138的输出是J15,因此需要用8PIN排线将J15和J16连接起来。
而且,138的输入来自于P2.2,P2.3和P2.4,因此需要设置这三个口线的电平以便译码选择某个数码管的位线。
五、实验程序1、静态显示(本实验箱的数码管是共阳极的)://共阳极0xC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90,0X88,0X83//共阴极0X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,0X7F,0X6F#include<reg51.h>unsigned int i,j,K;void delay(){for(i=200;i>0;i--)for(j=1000;j>0;j--);}unsigned char code DAT[10]={0xC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90}; main(){for(K=0;K<=10;K++){P0=DAT[K];delay();}}2、动态显示:#include<reg51.h>unsigned char code tab[8]={0X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07}; unsigned char code tab2[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};unsigned char code tab3[8]={0,1,2,3,4,5,6,7};void delay(){unsigned int k,j;for(k=0;k<38000;k++);for(j=0;j<58000;j++);}main(){unsigned char i=0;unsigned char p;for(i=0;i<8;i++){p=tab3[i];P0=tab[p];P1=tab2[i];delay();}}六、实验结果及现象1、静态显示:显示结果为,数码管上的数字从0到9依次显示,如以下图片所显示。
8段共阴极数码管
八段共阳极数码管是一种十分常用的数字显示器件,因为它具有高清、明亮、可靠、耐用等特点,被广泛应用于电子表、电子钟、电视机等电器中。
下面,我们来分步骤深入理解八段共阳极数码管。
1. 八段共阳极数码管结构
八段共阳极数码管由8个LED和1个共阳极组成,这8个LED分别代表数字“0”~“9”和字母“A”~“F”,而共阳极则是所有LED 的正极总结点。
2. 数码管原理
当数码管所在电路通电后,通过特定方式控制共阳极的通断来分别点亮8个LED,从而实现数字或字母的显示。
3. 数码管的引脚
八段共阳极数码管有10个引脚,其中1个是共阳极,其余8个则分别对应8个LED的负极。
需要注意的是,数码管的引脚一般具有一定的编号,这样才能便于正确地连接和使用。
4. 数码管的显示模式
数码管的显示模式一般包括常规模式和多位集中显示模式。
常规模式只能显示一个数码,而多位集中显示模式则可以同时显示多位数码,这种模式通常用于计数器、计时器等设备中。
5. 数码管的应用
八段共阳极数码管的应用非常广泛,除了上述的电子表、电子钟、电视机等电器,还可以用于计数器、计时器、温度计、电压表、电子秤等测量设备中。
在实际应用中,八段共阳极数码管还需要与各类传感器、控制芯片、逻辑门等电子元件结合使用,才能发挥出最大的功能和效果。
总结起来,八段共阳极数码管是一种简单、实用、可靠的数字显示器件,它的应用领域非常广泛,特别是在测量和计量领域有着重要的地位。
希望本文对大家对八段共阳极数码管有了更深入的了解。
实验一八段数码管显示1、实验目的:(1)了解数码管动态显示的原理。
(2)了解74LS164扩展端口的方法。
2、实验要求:利用实验仪提供的显示电路,动态显示一行数据.3、实验电路图LED1LED2LED3LED4LED5LED64、实验器材:(1)超想-3000TB综合实验仪 1 台(2)超想3000仿真器 1 台(3)计算机 1 台5、实验连线无 6、实验说明:(1)本实验仪提供了8段码LED 显示电路,学生只要按地址输出相应数据,就可以实现对显示器的控制。
显示共有6位,用动态方式显示。
8段数码管是由8155的PB0、PB1经74LS164“串转并”后输出得到。
6位位码由8155的PA0口输出,经Ua2003反向驱动后,选择相应显示位。
74LS164是串行输入并行输出转换电路,串行输入的数据位由8155的PB0控制,时钟位由8155的PB1控制输出。
写程序时,只要向数据位地址输出数据,然后向时钟位地址输出一高一低两个电平就可以将数据位移到74LS164中,并且实现移位。
向显示位选通地址输出高电平就可以点亮相应的显示位。
本实验仪中数据位输出地址为0e102H ,时钟位输出地址为0e102H ,位选通输出地址为 0e101H 。
本实验涉及到了8155 I0/RAM 扩展芯片的工作原理以及74LS164器件的工作原理。
(2)七段数码管的字型代码表显示字形g f e d c b a 段码 0 0 1 1 1 1 1 1 3fh 1 0 0 0 0 1 1 0 06h2 1 0 1 1 0 1 1 6bh3 1 0 0 1 1 1 1 4fh4 1 1 0 0 1 1 0 66h5 1 1 0 1 1 0 1 6dh6 1 1 1 1 1 0 1 7dh7 0 0 0 0 1 1 1 07h8 1 1 1 1 1 1 1 7fh9 1 1 0 1 1 1 1 6fh A 1 1 1 0 1 1 1 77h B 1 1 1 1 1 0 0 7ch C 0 1 1 1 0 0 1 39h D 1 0 1 1 1 1 0 5eh E 1 1 1 1 0 0 1 79h F1111 71hab c def g dp7、程序框图8、实验步骤1.将KEIL仿真器上40芯排线一端和实验箱上51CPU板上的40芯排针连接起来,将仿真器连接的USB或串口线与PC机对应的USB或串口连接起来,打开实验箱电源。
- 1 摘要 本次课程设计主要是以单片机程序设计和需求分析和功能分析为主。单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能,集成到一块硅片上构成的一个小而完善的计算机系统。在我们的生活中,很多方面上都要用到单片机。目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。本次课程设计主要是实现八段数码管的动态显示设计,需对Keil C51软件,8155 I0/RAM扩展芯片的工作原理、74LS164器件的工作原理、延时程序的方法以及数码管动态显示的工作原理非常熟悉。
关键字:单片机;工作原理;需求分析;功能分析 - 2
目录 摘要……………………………………………………………….1 第一章 基本原理……………………………………………….. 3 1.1单片机介绍………………………………………………. 3 1.2单片机的工作过程……………………………………….. 4 1.3实验的基本原理…………………………………………….. 5 第二章 设计简介及设计方案论述………………………… 6 2.1硬件设计………………………………………………….. 6 2.2软件设计…………………………………………………… 7 2.3程序框图………………………………………………….. 10 第三章 总结………………………………………………….. 11 附录:程序代码…………………………………………….. 12 参考文献…………………………………………………….. 14 - 3
第一章 基本原理 1.1单片机介绍 单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。 单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。单片机内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也是低的,一般不超过10元即可......用它来做一些控制电器一类不是很复杂的工作足矣了。我们现在用的全自动滚筒洗衣机、排烟罩、VCD等等的家电里面都可以看到它的身影!它主要是作为控制部分的核心部件。它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机的(比如家用PC)的主要区别。单片机是靠程序运行的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费 - 4
很大力气才能做到的,有些则是花大力气也很难做到的。一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB板!但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性!
1.2单片机的工作过程
单片机自动完成赋予它的任务的过程,也就是单片机执行程序的过程,即一条条执行的指令的过程,所谓指令就是把要求单片机执行的各种操作用的命令的形式写下来,这是在设计人员赋予它的指令系统所决定的,一条指令对应着一种基本操作;单片机所能执行的全部指令,就是该单片机的指令系统,不同种类的单片机,其指令系统亦不同。为使单片机能自动完成某一特定任务,必须把要解决的问题编成一系列指令(这些指令必须是选定单片机能识别和执行的指令),这一系列指令的集合就成为程序,程序需要预先存放在具有存储功能的部件——存储器中。存储器由许多存储单元(最小的存储单位)组成,就像大楼房有许多房间组成一样,指令就存放在这些单元里,单元里的指令取出并执行就像大楼房的每个房间的被分配到了唯一一个房间号一样,每一个存储单元也必须被分配到唯一的地址号,该地址号称为存储单元的地址,这样只要知道了存储单元的地址,就可以找到这个存储单元,其中存储的指令就可以被取出,然后再被执行。 程序通常是顺序执行的,所以程序中的指令也是一条条顺序存放的,单片机在执行程序时要能把这些指令一条条取出并加以执行,必须有一个部件能追踪指令所在的地址,这一部件就是程序计数器PC(包含在CPU中),在开始执行程序时,给PC赋以程序中第一条指令所在的地址,然后取得每一条要执行的命令, - 5
PC在中的内容就会自动增加,增加量由本条指令长度决定,可能是1、2或3,以指向下一条指令的起始地址,保证指令顺序执行。 我们这次课程设计的主要目的主要是用C51语言写程序来驱动Atmel89C51单片机,并通过超想综合实验仪的8155键显模块来实现八段数码管的显示。
1.3实验的基本原理
本实验仪提供了8 段码数码管显示电路,学生只要按地址输出相应数据,就可以实现对显示器的控制。显示共有6 位,采用动态方式显示。8 段数码管是由8155 的PB0、PB1 经74LS374“串转并”后输出得到。6 位位码由8155 的PA0 口输出,选择相应显示位。74LS374 是串行输入并行输出转换电路,串行输入的数据位由8155 的PB0 控制,时钟位由8155 的PB1 控制输出。写程序时,只要向数据位地址输出数据,然后向时钟位地址输出一高一低两个电平就可以将数据位移到74LS374 中,向显示位选通地址输出高电平就可以点亮相应的显示位。本实验仪中数据位输出地址为08002h,段码输出地址为08004h。 - 6
第二章 详细设计 单片机应用系统的调试包括硬件和软件两部分,但是它们并不能完全分开。一般的方法是排除明显的硬件故障,再进行综合调试,排除可能的软硬件故障。 拿到电路板后,首先要检查加工质量,并确保没有任何方面的错误,如短路和断路,尤其要避免电源断路,元器件在安装前要逐一检查,用万用表测其数值,看是否与所用相同,若一切正常,才能讲扩展单片机连接仪器和电脑,在此检查是否能与电脑通信,然后再使用软件加载程序,最后观察实验结果。本次实验的实验结果与预期结果基本一致,能够正确显示预期的数字并进入循环。
2.1硬件设计 - 7
2.2软件设计 七段数码管的字型代码表如下表:
显示字形 g f e d c b a 段码
0 0 1 1 1 1 1 1 3fh
1 0 0 0 0 1 1 0 06h
2 1 0 1 1 0 1 1 5bh - 8
3 1 0 0 1 1 1 1 4fh
4 1 1 0 0 1 1 0 66h
5 1 1 0 1 1 0 1 6dh
6 1 1 1 1 1 0 1 7dh
7 0 0 0 0 1 1 1 07h
8 1 1 1 1 1 1 1 7fh
9 1 1 0 1 1 1 1 6fh
A 1 1 1 0 1 1 1 77h - 9
B 1 1 1 1 1 0 0 7ch
C 0 1 1 1 0 0 1 39h
D 1 0 1 1 1 1 0 5eh
E 1 1 1 1 0 0 1 79h
F 1 1 1 0 0 0 1 71h - 10
2.3程序框图 - 11
总结 通过这次实验让我们对单片机有了一定的了解,在以前,我们从来不了解单片机,更不知道单片机有什么作用。通过这次做实验我们也查了不少关于单片机的资料,对单片机有了一个全新的认识,为以后的学习奠定了基础。通过这次课程设计我发现,理论结合实际是非常重要的,在课程设计刚开始的时候,我们先是学习了一些单片机的一些基本原理,但是我们实际并不知道单片机是怎样工作的,通过实际操作,我们对单片机有了更深刻的认识,也知道了理论联合实际的重要性,也从中得到了很多书本上无法获得的知识。自己今后将会更加的把理论知识和实际应用结合起来,提高自己的能力。同时我们也要感谢老师对我们的帮助,我们虽然学的专业和这次课程设计的内容有所不同,但是多学一些对我们也有莫大的好处。