1595芯片驱动四位数码管程序

1595芯片驱动四位数码管程序
1595芯片驱动四位数码管程序

实验三 数码管显示实验

实验十九数码管显示实验 一、实验目的 1、了解数码管的显示原理; 2、掌握数码管显示的编程方法。 二、实验内容 1、编写数码管显示程序,循环显示0-F字符 三、实验设备 1、硬件: JX44B0实验板; PC机; JTAG仿真器; 2、软件: PC机操作系统(WINDOWS 2000); ARM Developer Suite v1.2; Multi-ICE V2.2.5(Build1319); 四、基础知识 1、掌握在ADS集成开发环境中编写和调试程序的基本过程。 2、了解ARM 应用程序的框架结构; 3、了解数码管的显示原理; 五、实验说明 1、LED显示原理 发光二极管数码显示器简称LED显示器。LED显示器具有耗电低、成本低、配置简单灵活、安装方便、耐震动、寿命长等优点,目前广泛应用于各类电子设备之中。 7段LED由7个发光二极管按“日”字排列。所有发光二极管的阳极连接在一起称共阳极接法,阴极连接在一起称为共阴极接法。一般共阴极可以不需要外接电阻。 其中各二极管的排列如上图在共阳极接法中,如果显示数字“5”,需要在a、c、d、f、g端加上高电压,其它加低电压。这样如果按照dp、g、fe、d、c、b、a的顺序排列的话对应的码段是:6DH。其它的字符同理可以得到。

2、数码管显示驱动 数码管的显示一般有动态显示和静态显示两大类,另外按照驱动方式又分串行驱动和并行驱动两种方式。串行驱动主要是提供串-并转换,减少控制线数量;并行驱动对每一个段提供单独的驱动,电路相对简单。这方面参看数字电路相关内容。 下面主要介绍静态显示和动态显示: 1)静态显示: LED数码管采用静态接口时,共阴极或共阳极节点连接在一起地或者接高电平。每个显示位的段选线与一个8位并行口线相连,只要在显示位上的段选位保持段码电平不变,则该位就能保持相应的显示字符。这里的8位并行口可以直接采用并行I/O口,也可以采用串行驱动。相应的电路如下: 很明显采用静态显示方式要求有较多的控制端(并行)或较复杂的电路(串行)。但是在设计中对器件的要求低。

7段数码管驱动芯片,7279原理与应用

HD7279A的原理与应用 作者:河北科技大学电气信息学院王改名赫苏敏王忠杰 摘要:详述一种专用的智能键盘和LED控制芯片HD7279A的工作原理、工作时序及其控制指令;介绍HD7279A与CPU及键盘显示器的接口电路,并给出实际接口电路的程序实例和实际应用中的注意事项。 关键词:HD7279A 接口电路接口程序 HD7279A硬件电路图HD7279A是一种管理键盘和LED显示器的专用智能控制芯片。它能对8位共阴极LED显示器或64个LED发光管进行管理和驱动,同时能对多达8×8的键盘矩阵的按键情况进行监视,具有自动消除键抖动并识别按键代码的功能,从而可以提高CPU工作的效率。HD7279A和微处理器之间采用串行接口,其接口电路和外围电路简单,占用口线少,加之它具有较高的性能价格比,因此,在微型控制器、智能仪表、控制面板和家用电器等领域中日益获得广泛的应用。 一、引脚说明与接口电路 279A的硬件电路如图1所示,它共有28个引脚。 RC引脚用于连接HD7279A的外接振荡元件,其典型值为R=1.5k?,C=15pF。RESET为复位端。该端由低电平变成高电平并保持25ms即复位结束。通常,该端接+5V即可。DIG0~DIG7分别为8个LED管的位驱动输出端。SA~SG分别为LED数码管的A段~G段的输出端。DP为小数点的驱动输出端。HD7279A片内具有驱动电路,它可以直接驱动1英吋及以下的LED数码管,使外围电路变得简单可靠。 DIG0~DIG7和SA~SG同时还分别是64键盘的列线和行线端口,完成对键盘的监视、译码和键码的识别。在8×8阵列中每个键的键码是用十六进制表示的,可用读键盘数据指令读出,其范围是00H~3FH。 HD7279与微处理器仅需4条接口线,其中CS为片选信号(低电平有效)。当微处理器访问HD7279A(读键号或写指令)时,应将片选端置为低电平。DATA为串行数据端,当向HD7279A 发送数据时,DATA为输入端;当HD7279A输出键盘代码时,DATA为输出端。CLK为数据串行传送的同步时钟输入端,时钟的上升沿表示数据有效。KEY为按键信号输出端,在无键按下时为高电平;而有键按下时此引脚变为低电平并且一直保持到键释放为止。(图1 HD7279A硬件电路图,点击下载) 二、电特性 表1所列为HD7279A的电特性。 参数符号测试条件最小值典型值最大值 电源电压Vcc/V . 4.5 5.0 5.5 工作电流Icc/mA 不接LED . 3 5 工作电流Icc/mA LED全亮, ISEG=10mA. 60 100 逻辑输入高电平Vih/V . 2.0 . 5.5 逻辑输入低电平Vil/V . 0 . 0.8 按键响应时间Tkey/ms 含去抖时间10 18 40 KEY引脚输入电流Iki/mA . . . 10 KEY引脚输出电流IKO/mA . . . 7 表 1

驱动大尺寸数码管的方法与电路

驱动大尺寸数码管的方法与电路 相信大家都见过数码管,数码管上面有abcdefg七个笔画,构成一个“日”字,一般还有一个小数点dp。 数码管的外形有不同的大小,其度量标准是其中“日”字的高度,单位一般都是英寸。 市场上数码管的尺寸范围一般为0.25~8 英寸。 图片链接:https://www.360docs.net/doc/2010004316.html,/%D7%F6%B6%F8%C2%DB%B5%C0/album/驱动大尺寸数码管 在实验室中,常见的数码管是0.5 英寸的,它的高和宽分别为0.7 英寸和0.5 英寸。 这种数码管,每个笔画的内部,仅仅含有一个LED,驱动一个笔画,和驱动一个普通的发光二极管无异。 在大厅或者户外,就要使用大尺寸的数码管。 做而论道用过最大的数码管是8 英寸的。 8 英寸数码管中的每个笔画内部,都含有8 个LED,它们之间是两两并联后再串联;小数点dp的内部,仅仅用了两个LED 进行串联。

8 英寸共阳数码管内部的简图如下: 8 英寸数码管也有多种颜色,一般的工作参数如下: 每个笔段的导通电压约为8~10V;静态电流10~15mA;动态时,1/8动态扫描时,平均电流为8~10mA,峰值电流60~80mA。 小数点的电压、电流酌减,视亮度均衡情况而定。 要想驱动8 英寸数码管,显然不能用单片机本身的+5V电源,通常都是使用+12V。 想要驱动+12V的共阳数码管,电路设计,就是一个典型的电子线路方面的问题。 很多搞单片机的,编编软件还可以,设计电路时,明显暴露出不足。 很多搞电子的,并不明白单片机有高电平的输出能力问题,设计的电路结构,以及限流电阻、上拉电阻都不尽合理,呵呵 下面说说做而论道的设计思路。 对于+12V 到数码管之间的通断控制,显然应该用PNP 型的晶体管,用8550 最好。 为了控制8550 的截止与饱和,在其基极约要有+12V 的电压才行,单片机最大只能输出+5V,这就需要有电平转换电路。 +5V 到+12V 的转换,方法很多了: 可以使用NPN 型的晶体管,用8050 就可以; 可以使用集成电路74LS07,它是六同相OC输出的驱动门电路,输出端最大可以外接+30V;可以使用集成电路ULN2803(或ULN2003),它是八(七)反相OC输出的驱动门电路。这几种电路,做而论道都进行过实验和应用,都是成功的,安全性、可靠性均为100%。 下面看一段网络对话,即可看到大尺寸数码管的驱动电路与应用效果。 ===============================================

数码管显示程序(汇编语言)

实验三数码显示 一、实验目的 了解LED数码管动态显示的工作原理及编程方法。 二、实验内容 编制程序,使数码管显示“DJ--88”字样。 三、实验程序框图 四、实验步骤 联机模式: (1)在PC机和实验系统联机状态下,运行该实验程序,可用鼠标左键单击菜单栏“文件”或工具栏“打开图标”,弹出“打开文件”的对话框,然后打开598K8ASM

文件夹,点击S6.ASM文件,单击“确定”即可装入源文件,再单击工具栏中编译装载,即可完成源文件自动编译、装载目标代码功能,再单击“调试”中“连续运行”或工具图标运行,即开始运行程序。 (2)数码管显示“DJ--88”字样。 脱机模式: 1、在P.态下,按SCAL键,输入2DF0,按EXEC键。 2、数码管显示“DJ--88”字样。 五、实验程序清单 CODE SEGMENT ;S6.ASM display "DJ--88" ASSUME CS:CODE ORG 2DF0H START: JMP START0 PA EQU 0FF20H ;字位口 PB EQU 0FF21H ;字形口 PC EQU 0FF22H ;键入口 BUF DB ?,?,?,?,?,? data1: db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0 c6h,0a1h db 86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FH,0F0H START0: CALL BUF1 CON1: CALL DISP JMP CON1 DISP: MOV AL,0FFH ;00H MOV DX,PA OUT DX,AL MOV CL,0DFH ;显示子程序 ,5ms MOV BX,OFFSET BUF DIS1: MOV AL,[BX] MOV AH,00H PUSH BX MOV BX,OFFSET DATA1 ADD BX,AX MOV AL,[BX] POP BX MOV DX,PB

细说多位数码管的驱动方法

细说多位数码管的驱动方法 我们在制作项目时,会遇到多位数码管的显示问题.如何尽量减少硬件的使用数量和加快全部显示一轮的时间,是需要精心规划与安排的. 例如: 做万年历,就有年月日,时分,星期等内容需要显示,数码管数量多达 13 位以上.如果再带上秒,温度,农历什么的,位数就更多了. 例如: 做多功能电力仪表,显示位数也往往多达十几位以上. 尽管有专门用于这种多位显示的专门芯片可供选择,但是,往往一只这种芯片成本可能比使用的单片机本身还要高!例如市场上的 CH451 等 ,高达 6~8 元呢! 于是,可以考虑串行到并行的一些芯片,例如 HC164,HC595 等等,驱动也仅仅就二线制,但是,这么一来,外挂芯片也不少. 还有,可以使用一些 4 线到 7 线的驱动芯片,例如:CD4511,74LS247,CD4543 等等,它们除了节省一些源驱动引脚之外,使用数量恐怕也让人头痛! 类似于 HC373,HC374,HC573,HC574 的芯片,可以减少很多源驱动引脚,但是,芯片使用数量仍然太多! 还有一个附带问题,许多仪器仪表,往往是主印刷版与前面的显示/按键板是分离的,有些商品仪表,主板到前面板的引线就多达几十根,无论 如何,都会让人感觉又乱有多又不可靠,生产调试等都增加了困难. 说了那么多,我们就是希望:使用尽量少的硬件芯片,尽量少的过渡引线,尽量短的显示周期时间,尽量低的元器件费用!----当然,需要保证可靠性不能降低! 我们举例说明: 一个 2 * 4 位的仪器显示电路,有 8 位数码管,完全依靠单片机本身的端口来驱动,就有 2 种方案考虑:

图 1 的方法需要使用 22 个单片机端口. 图 2 方法需要使用 16 个单片机端口. 图 2 全部数码管显示一次的时间比图 1 长一半时间. 从仪器 2 个板子分离的情况来看,图 1 从主板到前面显示板的引线就相当多了!图 2 虽然少了一些,但是,加上供电,按键等,数量也不算少,很可能还会有发光管指示灯什么的,需要考虑的麻烦事就更多了! 从单片机端口的使用数量来看,它也大大影响到单片机的封装选择,引脚不是越大越好的,对焊接,成本,调试等都会有影响. 如果芯片带有 RS232 硬件功能,当然可以考虑使用串行驱动,虽然不过分影响单片机分时工作的速率,但是,上面提到过,串行芯片的数量也 是相当可观的. 数码管这种显示还要保证每秒不能少于 50 次以上,否则会有显示闪烁的感觉! 针对上面提及的问题,这里推荐一种比较好的方法:就是增加一只廉价的单片机,专门负责显示,主功能单片机与显示用途单片机仅仅 2 根引线就可以正常传送信号,这么一来,带来的后果是利大于弊! 我们这么做,还会最大限度地节省 2 个分离印刷板的引线,节省印刷板的布线难度,减少主单片机的引脚数量,加快系统的运行速率.对显示 用途的单片机的内部资源没有什么要求,完全可以使用最普通功能的单片机来担任显示任务! 这样就需要解决 2 个单片机之间的通信问题,这完全可以借鉴现成的一些 2 线制串行通信方式方法.也可以根据自己的情况自定义自己的 通信方法. 通常,主单片机只要保证每秒时间给显示单片机送入 4 次以上的数据,那么,对数码管显示的实时性来说就已经足够了!----当然,你就是增 加一倍二倍的传送次数,对主单片机来说,也是可以非常轻易做到了!因为,它犯不上去操心每秒显示 50 次以上的工作量了! 而对于显示单片机来说,则要求保证每秒时间内,完成全部数码管的 50 次以上的分时扫描显示..... 而对于显示单片机来说,则要求保证每秒时间内,完成全部数码管的 50 次以上的分时扫描显示..... 下面通过一个具体例子来说明. 图3 电路使用 SN8P2624 芯片,它与 EM78P447,PIC16C57 等芯片引脚排列兼容!而且价格低廉. 图3 电路除了预留 2 个端口作为数据通信之外,其余全部端口都用于数码管的显示.可以驱动 2*6 位数码管.笔段使用并行方式驱动,速度是最快的!

四位数码管动态显示c语言程序

//这就是一个四位数码管动态显示c语言程序,每隔一秒加一,直至加到9999为止//使用时需采用锁存器 #include #include"stdio、h" unsigned char code LED[]={0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80, 0x90}; unsigned char LEDbuff[]={0xff,0xff,0xff,0xff}; //定义数码管的位选段 sbit SEG_bit_1 = P0^1; sbit SEG_bit_2 = P0^2; sbit SEG_bit_3 = P0^3; sbit SEG_bit_4 = P0^4; unsigned int cnt=0; unsigned int sec =0; unsigned int mini=0; unsigned int hour=0; unsigned char i=0; /*void delay(unsigned int z ) { unsigned int x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } */ void interrupttimer0() interrupt 1 /*设置中断函数*/ { TH0=0xfc; TL0=0x18; cnt++; //P1=0x80; //delay(1); switch(i) { case 0: SEG_bit_1 = 0;SEG_bit_4 = 1;P1=LEDbuff[0];i++;break; case 1: SEG_bit_4 = 0;SEG_bit_3 = 1;P1=LEDbuff[1];i++;break; case 2: SEG_bit_3 = 0;SEG_bit_2 = 1;P1=LEDbuff[2]&;i++;break; case 3: SEG_bit_2 = 0;SEG_bit_1 = 1;P1=LEDbuff[3];i=0;break; default:break; } } /************************************************ void serial_init() { //TMOD = 0x20; //定时器T/C1工作方式2 SCON = 0x50; //串口工作方式1,允许串口接收(SCON = 0x40 时禁止串口接收)

DS1302数码管显示程序

/************************************************************************/ // huaqinMCU DS1302 实验程序数码管显示时钟设置说明 // "8键"为时钟设置、时分切换、保存"0键"为加"4键"为减 /************************************************************************/ #include #define uchar unsigned char #define uint unsigned int //===以下IO定义请根据您硬件的连接修改=== sbit T_RST=P3^5;//ds1302-5 sbit T_IO=P3^4;//ds1302-6 sbit T_CLK=P3^6;//ds1302-7 sbit ACC0=ACC^0; sbit ACC7=ACC^7;//累加器A 51单片机原理中有介绍 sbit up=P3^1; sbit down=P3^2; sbit set=P3^0; uchar a,b,clock_ss,clock_sg,clock_fs,clock_fg,clock_ms,clock_mg; int hour,mie,sei; uchar clk_time[3]; //秒,分,时寄存器初始值 code uchar ledmap[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x40}; //数码管段码 /******************DS1302:写入操作(上升沿)*********************/ void write_byte(uchar da) { uchar i; ACC=da; for(i=8;i>0;i--) { T_IO=ACC0; T_CLK=0; T_CLK=1; ACC=ACC>>1; } } /******************DS1302:读取操作(下降沿)*****************/ uchar read_byte(void) { uchar i;

51单片机并行口驱动LED数码管显示电路及程序

51单片机并行口驱动LED数码管显示电路及程序 介绍利用51单片机的一个并行口实现多个LED数码管显示的方法,给出了利用此方法设计的多路LED显示系统的硬件电路结构原理图和软件程序流程,同时给出了采用51汇编语言编写程序。 1 硬件电路 多位LED显示时,常将所有位的段选线并联在一起,由一个8位I/O口控制,而共阴极点或共阳极点分别由另一个8位I/O口控制;也可采用并行扩展口构成显示电路,通常,需要扩展器件管脚的较多,价格较高。本文将介绍一种利用单片机的一个并行I/O口实现多个LED显示的简单方法,图1所示是该电路的硬件原理图。其中,74LS138是3线-8线译码器,74LS164是8位并行输出门控串行输入移位寄存器,LED采用L05F型共阴极数码管。 显示时,其显示数据以串行方式从89C52的P12口输出送往移位寄存器74LS164的A、B 端,然后将变成的并行数据从输出端Q0~Q7输出,以控制开关管WT1~WT8的集电极,然后再将输出的LED段选码同时送往数码管LED1~LED8。位选码由89C52的P14~P16口输出并经译码器74LS138送往开关管Y1~Y8的基极,以对数码管LED1~LED8进行位选控制,这样,8个数码管便以100ms的时间间隔轮流显示。由于人眼的残留效应,这8个数码管看上去几乎是同时显示。

<51单片机并行口驱动LED数码管显示电路> 2 软件编程 该系统的软件编程采用MCS-51系列单片机汇编语言完成,并把显示程序作为一个子程序,从而使主程序对其进行方便的调用。图2所示是其流程图。具体的程序代码如下:

<51单片机并行口驱动LED数码管显示程序>

51单片机(四位数码管的显示)程序[1]

51单片机(四位数码管的显示)程序 基于单片机V1或V2实验系统,编写一个程序,实现以下功能:1)首先在数码管 上显示P ”个字符;2)等待按键,如按了任何一个键,则将这 4个字符清除, 改为显示0000”个字符(为数字的0)。 E3最佳答案 下面这个程序是4x4距阵键盘丄ED 数码管显示,一共可以到0-F 显示,你可以稍微 改一下就可以实现你的功能了,如还有问题请发信息,希望能帮上你! #i nclude un sig ned char code Dig[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1 ,0x86,0x8e}; //gongyang 数码管 0-F 代码 void key_delay(void) { int t; for(t=0;t<500;t++); } un sig ned char k; //设置全局变量k 为键盘的键值 键盘延时函数 键盘扫描函数 ***************************** */ //延时函数

void keyscan(void) //键盘初始化 //有键按下? //延时 //确认真的有键按下? //使行线 P2.4 为低电平,其余行为高电平 //a 作为缓存 //开始执行行列扫描 { case 0xee:k=15;break; case 0xde:k=11;break; case 0xbe:k=7;break; case 0x7e:k=3;break; default:P2 = 0xfd; //使行线 P2.5 为低电平,其余行为高电平 a = P2; switch (a)//键盘扫描函数 { unsigned char a; P2 = 0xf0; if(P2!=0xf0) { key_delay(); if(P2!=0xf0) { P2 = 0xfe; key_delay(); a = P2; switch (a)

数码管驱动芯片TM1620『官方最新版』

LED 驱动控制专用电路
一、 概述
TM1620
TM1620 是一种带键盘扫描接口的LED(发光二极管显示器)驱动控制专用电路,内 部集成有MCU 数字接口、数据锁存器、LED 高压驱动、键盘扫描等电路。本产品性能优 良,质量可靠。主要应用于VCR、VCD、DVD 及家庭影院等产品的显示屏驱动。
二、 特性说明
? 采用功率CMOS 工艺 ?显示模式(8 段×6 位) ? 辉度调节电路(占空比8 级可调) ? 串行接口(CLK,STB,DIN) ? 振荡方式:内置RC 振荡(450KHz+5%) ? 内置上电复位电路 ? 封装形式:SOP20
三、管脚定义:
https://www.360docs.net/doc/2010004316.html,
-1-

LED 驱动控制专用电路
四、管脚功能定义
符号 DIN 管脚名称 数据输入 说明 在时钟上升沿输入串行数据,从低位开始
TM1620
STB
片选
在上升或下降沿初始化串行接口,随后等待接收指 令。STB 为低后的第一个字节作为指令,当处理指 令时, 当前其它处理被终止。 当STB 为高时, CLK 被 忽略 在上升沿读取串行数据,下降沿输出数据 段输出(也用作键扫描),p管开漏输出 位输出,N管开漏输出 5V±10% 接系统地
CLK Seg1~Seg8 Grid1~ Grid6 VDD GND
时钟输入 输出(段) 输出(位) 逻辑电源 逻辑地
▲ 注意:DIO口输出数据时为N管开漏输出,在读键的时候需要外接1K-10K的上拉电阻。本公司推
荐10K的上拉电阻。 DIO在时钟的下降沿控制N管的动作, 此时读数时不稳定, 你可以参考图 (6) , 在时钟的上升沿读数才时稳定。
VCC
芯片内部 电路
10K
DIO
CT
GND
图(1)
五、 显示寄存器地址和显示模式:
该寄存器存储通过串行接口从外部器件传送到TM1620的数据,地址从00H-0AH共11字节单元, 分别与芯片SGE和GRID管脚所接的LED灯对应,分配如下图:
https://www.360docs.net/doc/2010004316.html,
-2-

数码管显示程序

数码管显示程序 一、程序X1 1、程序X1的功能:最右边的数码管显示“0” 2、程序: ORG 0 LJMP STR ORG 0100H STR: MOV P3, #0FEH ;送最低位有效的位码 MOV P0, #0C0H ;送“0”的段码“0C0H” SJMP STR END 二、程序X2: 用查表方式显示某个显示缓冲器中的数字 1、查表显示的预备知识 设从右到左各显示器对应的显示缓冲器为片内RAM79H~7EH

3、 实例: 例:已知(79H )= 0 7H , 查段码表在最右边的数码管显示79H 中的 “7”; 注:共阳极的段码表: TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H DB 88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,0DEH 若:(A )= 0XH 则数字“X ”对应的段码在段码表中的表地址 = TAB + X ORG 0 LJMP STR ORG 0100H ① 各显示器与显示缓冲器地址对应关系 显示缓冲器: 7EH 7DH 7CH 7BH 7AH 79H 对应显示 器: ② 显示缓冲器的值与显示数字的关系: 显示缓冲器中的值 对应段码表地址 显示的数字 0XH 表首址+OXH X

STR: MOV P3, #11111110B ;送最低位有效的位码 MOV 79H , #07H ;送要显示的数据到显示缓冲器 MOV A , 79H ;显示缓冲器的数作为查表变址送A MOV DPTR , #TAB ;表首址送DPTR MOVC A , @A+ DPTR ;查表将数字转换为对应段码MOV P0, A ; 段码送段码口(P0) SJMP STR TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H DB 88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,0DEH END 例2:. 查段码表在最右边的数码管循环显示“0”~“F” ORG 0 LJMP STR ORG 0100H STR: MOV P3, #11111110B ;送最低位有效的位码 LP0: MOV 79H , #0H ;送要显示的数据的初值到显示缓冲器MOV R3 , #6 ; 送要显示的数据的个数 LP: MOV A , 79H ;显示缓冲器的数作为查表变址送A MOV DPTR , #TAB ;表首址送DPTR MOVC A , @A+ DPTR ;查表将数字转换为对应段码MOV P0, A ; 段码送段码口(P0)

数码管显示

数码管显示 第3讲数码管显示 第3讲数码管显示 一、数码管显示原理 我们最常用的是七段式和八段式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。可以看出两个编码的各位正好相反。如下图。

二、点亮一个数码管 下面以七段共阴数码管为例讲述如何点亮一个数码管。 l 51系列单片机的P0口没有上拉电阻(其他端口有),所以如果直接接数码管的段选线,那么不能将其点亮。我们需要为其加上220欧姆的上拉电阻,注意,上拉电阻阻值不能过大。实验原理图如下。 其中,7SEG-COM-CAT-GRN为七段共阴数码管,显示为绿色。RES为电阻。查找电阻时,需要选中下面的Resistors,如下图。

LED数码管结构及工作原理

L E D数码管结构及工作原理-标准化文件发布号:(9556-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

LED数码管的结构及工作原理 沈红卫 LED数码管(LED Segment Displays)是由多个发光二极管封装在一起组成“8”字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极。LED数码管常用段数一般为7段有的另加一个小数点,还有一种是类似于3位“+1”型。位数有半位,1,2,3,4,5,6,8,10位等等....,LED数码管根据LED的接法不同分为共阴和共阳两类,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。图2是共阴和共阳极数码管的内部电路,它们的发光原理是一样的,只是它们的电源极性不同而已。颜色有红,绿,蓝,黄等几种。LED数码管广泛用于仪表,时钟,车站,家电等场合。选用时要注意产品尺寸颜色,功耗,亮度,波长等。下面将介绍常用LED数码管内部引脚图。 图1 这是一个7段两位带小数点 10引脚的LED数码管 图2 引脚定义 每一笔划都是对应一个字母表示 DP是小数点. 数码管分为共阳极的LED数码管、共阴极的LED数码管两种。下图例举的是共阳极的LED数码管,共阳就是7段的显示字码共用一个电源的正。led 数码管原理图示意:

图3 引脚示意图 从上图可以看出,要是数码管显示数字,有两个条件:1、是要在VT端(3/8脚)加正电源;2、要使(a,b,c,d,e,f,g,dp)端接低电平或“0”电平。这样才能显示的。 共阳极LED数码管的内部结构原理图图4: 图4 共阳极LED数码管的内部结构原理图共阴极LED数码管的内部结构原理图: 图5 共阴极LED数码管的内部结构原理图

七段数码管机器驱动七段数码管机器驱动七段数码管机器驱动

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得数即为限流电阻的值。发光二极管的工作电压一般在,为计算方便,通常选2V即可!发光二极管的工作电流选取在10-20ma,电流选小了,7段数码管不太亮,选大了工作时间长了发光管易烧坏!对于大功率7段数码管可根据实际情况来选取限流电阻及电阻的瓦数! 74ls48引脚图管脚功能表 74LS48芯 片是一种常用的七段数码管译码器驱动器,常用在各种数字电路和单片机系统的显示系统中,下面我就给大家介绍一下这个元件的一些参数与应用技术等资料。 74ls48引脚功能表—七段译码驱动器功能表 74LS47引脚图管脚功能表:共阳数码管管脚图三位共阳数码管管脚图以及封装尺寸四位数码管引脚图以及封装尺寸六位数码管引脚图门电路逻辑符号大全(三态门,同或门,异或门,或非门,与或非门, 传输门,全加器,半加器等) 常用集成门电路的逻辑符号对照表三态门,同或门,异或门,或非门,与或非门, 传输门,全加器,半加器,基本r s触发器,同步rs触发器,jk触发器,d触发器 7段数码管管脚顺序及驱动集成电路这里介绍一下7段数码管见下图 7段数码管又分共阴和共阳两种显示方式。如果把7段数码管的每一段都等效成发光二极管的正负两个极,那共阴就是把abcdefg这7个发光二极管的负极连接在一起

数码管按键驱动芯片

//***************************************************************************** *************************************************** //TM1639.h //数码管和按键驱动芯片TM1639函数借口和芯片操作相关宏定义 //***************************************************************************** *************************************************** #ifndef _TM1639_H #define _TM1639_H //位使能 #define DIG0 0xc0 #define DIG1 0xc2 #define DIG2 0xc4 #define DIG3 0xc6 #define DIG4 0xc8 #define DIG5 0xca #define DIG6 0xcc #define DIG7 0xce //显示亮度级别 #define LEVEL_OFF 0x80 #define LEVEL_1 0x88 #define LEVEL_2 0x89 #define LEVEL_4 0x8a #define LEVEL_10 0x8b #define LEVEL_11 0x8c #define LEVEL_12 0x8d #define LEVEL_13 0x8e #define LEVEL_14 0x8f //初始化IC端口 void InitTM1639(); //连续传送多个数据 void SeriesInData (unsigned char starAddr,unsigned char *data,unsigned char loop,unsigned char level); //传送一个数据(本质是连续模式) void OneByteInData(unsigned char starAddr,unsigned char *data,unsigned char level); //清楚所有显示数据 void ClearAll(); //读取按键键值 void KeyRead(int *key); //测试模式,内部使用,检验硬件完整性

LED数码管的识别与检测方法-使用常识

LED数码管也称半导体数码管,它是将若干发光二极管按一定图形排列并封装在一起的最 常用的数码显示器件之一。LED数码管具有发光显示清晰、响应速度快、耗电省、体积小、寿命长、耐冲击、易与各种驱动电路连接等优点,在各种数显仪器仪表、数字控制设备中 得到广泛应用。 LED数码管种类很多,品种五花八门,这里仅向初学者介绍最常用的小型“8”字形LED数 码管的识别与使用方法。 如何识别LED数码管 1.结构及特点 目前,常用的小型LED数码管多为“8”字形数码管,它内部由8个发光二极管组成,其中 7个发光二极管(a~g)作为7段笔画组成“8”字结构(故也称7 段LED数码管),剩 下的1个发光二极管(h或dp)组成小数点,如图1(a)所示。各发光二极管按照共阴 极或共阳极的方法连接,即把所有发光二极管的负极(阴极)或正极(阳极)连接在一起,作为公共引脚;而每个发光二极管对应的正极或者负极分别作为独立引脚(称“笔段电极”),其引脚名称分别与图 1(a)中的发光二极管相对应,即a、b、c、d、e、f、g 脚及h脚(小数点),如图1(b)所示。若按规定使某些笔段上的发光二极管发光,就 能够显示出图1(c)所示的“0~9”10个数字和“A~F”6个字母,还能够显示小数点, 可用于2进制、10进制以及16进制数字的显示,使用非常广泛。

(a)结构图 (b)电路图 (c)显示符 常用小型LED数码管是以印制电路板为基板焊固发光二极管,并装入带有显示窗口的塑料外壳,最后在底部引脚面用环氧树脂封装而成。由于LED数码管的笔段是由发光二极管组成的,所以其特性与发光二极管相同。LED数码管的主要特点:能在低电压、小电流条件下驱动发光,并能与CMOS、TTL电路兼容;它不仅发光响应时间极短(<0.1μs)、高

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

实验四八位七段数码管 动态显示电路的设计 Document serial number【KK89K-LLS98YT-SS8CB-SSUT-SST108】

八位七段数码管动态显示电路的设计 一、实验目的 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。

单片机原理数码管动态显示实验-单片机原理-实验报告

宁德师范学院计算机系 实验报告 (2014— 2015学年 第2学期) 实验名称 数码管动态显示实验 业计算机科学与技术(非师范) 2012 指导教师 实验日期学号 B47 姓名 王秋 课程名称 单片机原理 杨烈君

实验目的: 实验要求: 1. 在Proteus 软件中画好51单片机最小核心电路,包括复位电路和晶振电路 2. 在电路中增加八位 7段数码管(共阳/共阴自选),将P2 口作数据输出口与 7段数码管数据 引脚相连,P3引脚输出位选控制信号 实现类似时钟的效果,如“ 13-23-25 ” 13时23分25秒 扩展要求: 结合LED 显示,实现带数码显示的交通灯 实验设备(环境): 1 .计算机 2. Proteus ISIS 7 Professional 3. Keil 应用程序 实验内容: 数码管动态显示技术要求实现: 1?动态显示法,实现数码管分别显示数字 1-8 ; 2 ?实现指定数值的显示 (可使用缓存数值) (); 3 .实现类似时钟的效果,如“ 13-23-25 ” 13时23分25秒; 4 ?实现时钟的自动计时; 扩展要求: 结合LED 显示,实现带数码显示的交通灯; 1. 巩固Proteus 软件和Keil 软件的使用方法 2. 学习端口输入输出的高级应用 3. 掌握7段数码管的连接方式和动态显示法 4. 掌握查表程序和延时等子程序的设计 3. 在Keil 软件中编写程序,采用动态显示法,实现数码管分别显示数字 1-8 4. 实现指定数值的显示 (可使用缓存数值) 5. 6. 实现时钟的自动计时 7. 应用程序

实验步骤、实验结果及分析: 1实验步骤: 1、使用Proteus ISIS 7 Professional 应用程序,建立一个.DSN文件 2、在“库”下拉菜单中,选中“拾取元件”(快捷键P),分别选择以下元件:AT89C51CAPCA P-ELEC CRYSTAL RES PACK-8 3、构建仿真电路: 连接图 显示1-8 显示

数码管_引脚图_驱动芯片

数码管的使用方法 一、工作原理 数码管是一种半导体发光器件,其基本单元是发光二极管。能显示4位数字的叫四位数码管,当然也有多位和只有一位的数码管,他们的电气原理相同。数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。

万联芯城-电子元器件采购网https://www.360docs.net/doc/2010004316.html,一直秉承着以良心做好良芯的服务理念,为广大客户提供一站式的电子元器件配单服务,客户行业涉及电子电工,智能工控,自动化,医疗安防等多个相关研发生产领域,所售电子元器件均为原厂渠道进货的原装现货库存。只需提交BOM表,即可为您报价。万联芯城同时为长电,顺络,先科ST等知名原厂的指定授权代理商,采购代理品牌电子元器件价格更有优势,欢迎广大客户咨询,点击进入万联芯城。

二、电气特性 单位数码管有十个管脚,其中有8根是用来点亮a,b,c,d,e,f,dp 共8个发光二极管(原理中有介绍),3,8两个管脚为公共COM脚,它们相连通且作用相同,可 接任意一根。为了更清楚介绍,贴图如下:

相关文档
最新文档