七段数码管机器驱动七段数码管机器驱动七段数码管机器驱动
- 格式:doc
- 大小:1.40 MB
- 文档页数:45
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为输出端。
班级_08网络__ 学号20080611052______ 姓名_袁晓洋__七段数码管驱动实验[实验目的]深入理解单片机IO口编程原理掌握七段数码管的原理和驱动方法掌握7段数码显示编码的方法[实验内容]采用单片机的IO驱动共阳极七段数码管,采用灌电流的方式使对应的LED 发光,并采用代码延时的方式实现七段数码管循环显示从0-9的数字,数字变化的间隔大约为1秒钟。
[实验步骤]在此填写在proteus中的操作步骤,并附绘制的电路图在此填写keil C51代码并附详细注释这是一个共阳极七段数码管将端口接至单片机P0 在共阳极接一个电源!及可实现;#include <reg51.h> //添加头文件#define SEG P0 //定义七段数码管LED连接P0Char code TAB[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x83,0xf8,0x80,0x98};//定义数字数组 0--9void delay(int); //声明delay函数main() //主函数{unsigned char i;while(1) 不停地循环for(i=0;i<10;i++){SEG=TAB[i]; 显示数字delay(1000); 延时1秒}}void delay(int x) //延时X*1ms{int i,j;for(i=0;i<x;i++)for(j=0;j<120;j++);}[实验总结]总结试验中遇到的问题和问题的解决方法。
刚开始接触单片机和数码管对电路图和代码不明白,不知道什么是共阳极和共阴极,有什么区别,后来通过反复的看代码,看书和老师的指导对其进行了了解,掌握!。
共阴极七段数码管的驱动共阴极七段数码管是一种常见的显示器件,在各行业中广泛应用。
其原理是通过对不同的阴极进行通断控制,使显示器显示出不同的数字或字母。
本文将介绍如何驱动共阴极七段数码管。
第一步:基本部件准备驱动共阴极七段数码管需要一些基本的部件,其中包括Arduino 开发板、面包板、七段数码管、电阻等。
要进行正确的驱动,首先需要按照电路图连接好这些部件。
第二步:代码编写在连接好以上部件之后,需要写出相应的代码来驱动七段数码管。
以下代码可以实现数字0~9的显示。
```void setup(){pinMode(2, OUTPUT);pinMode(3, OUTPUT);pinMode(4, OUTPUT);pinMode(5, OUTPUT);pinMode(6, OUTPUT);pinMode(7, OUTPUT);pinMode(8, OUTPUT);}void loop(){digitalWrite(2, LOW);digitalWrite(3, LOW);digitalWrite(4, LOW);digitalWrite(5, LOW);digitalWrite(7, LOW);digitalWrite(8, LOW);digitalWrite(2, HIGH); digitalWrite(3, HIGH);digitalWrite(4, HIGH);digitalWrite(5, HIGH);digitalWrite(6, HIGH);digitalWrite(7, HIGH);digitalWrite(8, HIGH);// 显示数字0digitalWrite(2, LOW);digitalWrite(3, LOW);digitalWrite(4, LOW);digitalWrite(5, LOW);digitalWrite(6, LOW);digitalWrite(7, LOW);digitalWrite(8, HIGH);delay(2000);// 显示数字1digitalWrite(2, HIGH);digitalWrite(3, LOW);digitalWrite(4, LOW);digitalWrite(5, HIGH);digitalWrite(6, HIGH);digitalWrite(7, HIGH);digitalWrite(8, HIGH);delay(2000);// 显示数字2digitalWrite(2, LOW);digitalWrite(3, LOW);digitalWrite(5, LOW); digitalWrite(6, LOW); digitalWrite(7, HIGH); digitalWrite(8, LOW);delay(2000);// 显示数字3digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(6, HIGH); digitalWrite(7, HIGH); digitalWrite(8, LOW);delay(2000);// 显示数字4digitalWrite(2, HIGH); digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(5, HIGH); digitalWrite(6, HIGH); digitalWrite(7, LOW); digitalWrite(8, LOW);delay(2000);// 显示数字5digitalWrite(2, LOW); digitalWrite(3, HIGH); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(6, HIGH); digitalWrite(7, LOW);delay(2000);// 显示数字6digitalWrite(2, LOW); digitalWrite(3, HIGH); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(6, LOW); digitalWrite(7, LOW); digitalWrite(8, LOW);delay(2000);// 显示数字7digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(5, HIGH); digitalWrite(6, HIGH); digitalWrite(7, HIGH); digitalWrite(8, HIGH);delay(2000);// 显示数字8digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(6, LOW); digitalWrite(7, LOW); digitalWrite(8, LOW);delay(2000);// 显示数字9digitalWrite(2, LOW);digitalWrite(4, LOW);digitalWrite(5, HIGH);digitalWrite(6, HIGH);digitalWrite(7, LOW);digitalWrite(8, LOW);delay(2000);}```第三步:运行测试将写好的代码上传到Arduino开发板,让其运行,可以看到七段数码管上显示数字0~9,每个数字停留2秒钟。
7段数码管显⽰驱动代码数码管显⽰进⾏简单的介绍,数码管显⽰原理在数电中已经给出了⽐较详细的介绍,我就不赘述了,因为我们⽤的是⾄芯的开发板,其上的数码管显⽰模块采⽤的是共阳极的数码管,为低电平有效,0-F的显⽰码依次为:数码管的输⼊有3个位选和8个段选给出,位选信号sel来控制哪个数码管先亮,段选信号seg来控制数码管显⽰什么,位选本来应该是有6个的但是为了节约资源,采⽤了3-8译码器将6根线减少到3根,节约了FPGA的引脚资源。
因为⼈眼有⼀个视觉载留,所以60HZ来扫描的时候,数码管会让⼈眼觉得是同时点亮,所以时钟要⼤于60hz下⾯是具体的代码实现:module scan_led(input wire clk_1k,input wire rst_n,input wire [31:0] d,output wire [2:0] dig,//seloutput wire [7:0] seg);reg [7:0] seg_r;reg [2:0] dig_r;reg [3:0] disp_dat;reg [2:0] count;assign dig =dig_r;assign seg =sig_r;// 时钟不能直接接全局时钟,这⾥的时钟驱动给的是1k的always @(posedge clk_1k or negedge rst_n)beginif(!rst_n)count <=3'b000;else if(count == 3'd5)count <=3'b000;elsecount <=count +1'b1;endalways @(posedge clk_1k or negedge rst_n)begincase (count)3'd0:disp_dat = d[31:28];3'd1:disp_dat = d[27:24];3'd2:disp_dat = d[23:20];3'd3:disp_dat = d[19:16];3'd4:disp_dat = d[15:12];3'd5:disp_dat = d[11:8];3'd6:disp_dat = d[7:4];3'd7:disp_dat = d[3:0];endcasecase (count)3'd0:dig_r = 3'd0;3'd1:dig_r = 3'd1;3'd2:dig_r = 3'd2;3'd3:dig_r = 3'd3;3'd4:dig_r = 3'd4;3'd5:dig_r = 3'd5;3'd6:dig_r = 3'd6;3'd7:dig_r = 3'd7;endcaseendalways @(disp_dat)begincase(disp_dat)4'h0:seg_r = 8'hc0;4'h1:seg_r = 8'hf9;4'h2:seg_r = 8'ha4;4'h3:seg_r = 8'hb0;4'h4:seg_r = 8'h99;4'h5:seg_r = 8'h92;4'h6:seg_r = 8'h82;4'h7:seg_r = 8'hf8;4'h8:seg_r = 8'h80;4'h9:seg_r = 8'h90;4'ha:seg_r = 8'h88;4'hb:seg_r = 8'h83;4'hc:seg_r = 8'hc6;4'hd:seg_r = 8'ha1;4'he:seg_r = 8'h86;4'hf:seg_r = 8'h8e;endcaseendendmodule另⼀种写法:module display1 (clk, rst_n , sel, seg);input clk;input rst_n;//两个输出,位选sel和段选segoutput reg [2:0] sel;output reg [7:0] seg;//数码管扫描需要⼀个慢时钟 clk_slow,⽽产⽣慢时钟则需要⼀个计数器 cntreg [15:0] cnt;reg clk_slow;//这个always块⽤来产⽣慢时钟clk_slowalways @ (posedge clk)beginif(!rst_n)begincnt <= 0;clk_slow <= 1; //复位时clk_slow静⽌不动endelsebegincnt <= cnt + 1; //复位结束后cnt开始计数clk_slow <= cnt[12]; //扫描没有必要⾮得是60Hz整,⼤于60Hz即可endend//下⾯这个always块⽤于扫描数码管,也就是sel循环地变化,//时钟每⼀次上升沿sel变化⼀次,所以在括号⾥写上时钟上升沿作为触发条件always @ (posedge clk_slow or negedge rst_n)beginif(!rst_n)beginsel <= 0; //复位时sel静⽌endelsebeginsel <= sel + 1; //复位后sel开始扫描if(sel >= 5)sel <= 0; //因为只有6个数码管,所以让sel在0-5之间循环endendalways @ (*)beginif(!rst_n)seg <= 8'b11111111; //按下复位键时让数码管熄灭,共阳极数码管0亮1灭elsebegincase(sel)0: seg <= 8'b11111001; //右起第1个数码管上显⽰11: seg <= 8'b10100100; //右起第2个数码管上显⽰22: seg <= 8'b10110000;3: seg <= 8'b10011001;4: seg <= 8'b10010010;5: seg <= 8'b10000010; //右起第6个数码管上显⽰6default: seg <= 8'b11111111;endcaseendendendmodule。
实验一、组合电路——7段数码管显示驱动电路设计一、实验目的了解EDA实验箱7位八段数码管显示模块的工作原理,设计标准扫描驱动电路模块,以备后面实验用。
二、硬件要求主芯片为Cyclone V E,型号为EP4CE22F17C8,7位八段数码管显示器,四位拨码开关。
三、实验内容用四位拨码开关产生8421BCD码,用CPLD分别产生7段数码管扫描驱动电路,然后进行仿真,观察波形,正确后编程下载实验测试。
四、实验原理1、72、动信号a,b,c,d,e,f,g。
通过调节四位拨码开关的状态,数码管应显示与之对应的字符。
五、实验连线输入:将芯片管角a0~a3分别接4个拨码开关;输出:将芯片管角led7s0~7分别接到数码管7段驱动信号a、b、c、d、e、f、g上。
六、实验源程序:decl7s.vhdlibrary ieee;use ieee.std_logic_1164.all;entity decl7s isport(a:in std_logic_vector(3 downto 0);led7s:out std_logic_vector(6 downto 0));end;architecture one of decl7s isbeginprocess(a)begincase a iswhen "0000" => led7s<="0111111"; when "0001" => led7s<="0000110"; when "0010" => led7s<="1011011"; when "0011" => led7s<="1001111"; when "0100" => led7s<="1100110"; when "0101" => led7s<="1101101"; when "0110" => led7s<="1111101"; when "0111" => led7s<="0000111"; when "1000" => led7s<="1111111"; when "1001" => led7s<="1101111"; when "1010" => led7s<="1110111"; when "1011" => led7s<="1111100"; when "1100" => led7s<="0111001"; when "1101" => led7s<="1011110"; when "1110" => led7s<="1111001"; when "1111" => led7s<="1110001"; when others => null;end case;end process;end;七、波形仿真结果。
最简单的七段数码管驱动电路
使用数码管时经常遇到驱动的问题,笔者之前就用过三极管来或集成块来驱动数码管,但这样一来不仅增加了成本而且增加了布线难度、功耗大,带来了很多问题。
平时设计电路的时候,要求亮度是不很高的情况下,比如用来显示温度、频率等通常要求的亮度并不是很高,这个时候我们可以不用任何驱动电路,直接把数码管和单片机连接起来,别不单片机没试过,但增用过AT89S52单片机和数码直接连起来,数码管亮度中等。
完全满足普通的显示,之前设计电路的时候,看到网上说的要加驱动什么的,非常麻烦。
然而现在事实证明,不用驱动电路已经能够满足我们的要求。
实践才是硬道理,下面的电路图是经过实际测试的。
提示:单击图片可放大
(按此电路图设计的真实硬件已经测试成功,亮度中等)
图中:左边是51单片机,P0口接七段数码管的段码,并接上拉电阻(排阻)。
电源共用单片机40脚的电源(用USB供电就可以了),位选是P2口。
使用的数码管是共阴数码管。
可以是单个数码管或4个一组的数码管。
电路图中的数码是4个一组的数码管。
共12引脚、8个段码与4个位选。
注:排阻有9个引脚,其中一脚接电源。
此电路图使用Protel 99 SE
测试时:排阻为4.7k 如果选更小的亮度会更好。
第五节数码管的使用5.1 数码管简介同学们!相信你的流水灯也做的不错了吧,现在能玩出几种花样了?但是工程师们设计这么一个单片机,并不是只为了让它做流水灯的,那样也太浪费点了吧... ^_^ 。
数码管的一种是半导体发光器件,7段LED数码管是利用7个LED(发光二极管)外加一个小数点的LED组合而成的显示设备,可以显示0~9等10个数字和小数点,使用非常广泛,数码管可以分为一位和多位它的外观如图5-1所示。
图5-15.2 数码管的显示原理数码管可以分为共阳极与共阴极两种,共阳极就是把所有LED的阳极连接到共同接点com,使用时com接正5伏电源,而每个LED的阴极分别为a、b、c、d、e、f、g及dp(小数点);共阴极则是把所有LED的阴极连接到共同接点com,使用时com要将其接地。
而每个LED的阳极分别为a、b、c、d、e、f、g及dp(小数点),8个LED的分布方式如图5-2所示。
图中的8个LED分别与上面那个图中的A~DP各段相对应,通过控制各个LED 的亮灭来显示数字。
那么,实际的数码管的引脚是怎样排列的呢?对于单个数码管来说,从它的正面看进去,左下角那个脚为1脚,以逆时针方向依次为1~10脚,左上角那个脚便是10脚了,上面两个图中的数字分别与这10个管脚一一对应。
注意,3脚和8脚是连通的,这两个都是公共脚。
它对应的引脚分布为图5-3所示。
图5-2 图5-3数码管的8段,对应一个字节的8位,a对应最低位,dp(小数点)对应最高位。
所以如果想让数码管显示数字0,那么共阴数码管的字符编码为00111111,即0x3f;共阳数码管的字符编码为11000000,即0xc0。
可以看出两个编码的各位正好相反。
如图5-4所示。
图5-4那么,一位数码管要显示字符0~F,则对应的编码如表2所示。
一个八段数码管称为一位,多个数码管并列在一起可构成多位数码管,它们的段选线(即a,b,c,d,e,f,g,dp)连在一起,而各自的公共端称为位选线。
BCD七段数码管显示译码器电路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段数码管可根据实际情况来选取限流电阻及电阻的瓦数!发光二极管(LED)由特殊的半导体材料砷化镓、磷砷化镓等制成,可以单独使用,也可以组装成分段式或点阵式LED显示器件(半导体显示器)。
分段式显示器(LED数码管)由7条线段围成8型,每一段包含一个发光二极管。
外加正向电压时二极管导通,发出清晰的光,有红、黄、绿等色。
只要按规律控制各发光段的亮、灭,就可以显示各种字形或符号。
图4 - 17(a)是共阴式LED数码管的原理图,图4-17(b)是其表示符号。
使用时,公共阴极接地,7个阳极a~g由相应的BCD七段译码器来驱动(控制),如图4 - 17(c)所示。
BCD七段译码器的输入是一位BCD码(以D、C、B、A表示),输出是数码管各段的驱动信号(以F a~F g表示),也称4—7译码器。
共阴极7段数码管LED数码管根据LED的接法不同分为共阴和共阳两类,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。
图1是共阴和共阳极数码管的内部电路,它们的发光原理是一样的,只是它们的电源极性不同而已。
将多只LED的阴极连在一起即为共阴式,而将多只LED的阳极连在一起即为共阳式。
以共阴式为例,如把阴极接地,在相应段的阳极接上正电源,该段即会发光。
当然,LED的电流通常较小,一般均需在回路中接上限流电阻。
假如我们将"b"和"c"段接上正电源,其它端接地或悬空,那么"b"和"c"段发光,此时,数码管显示将显示数字“1”。
而将"a"、"b"、"d"、"e"和"g"段都接上正电源,其它引脚悬空,此时数码管将显示“2”。
其它字符的显示原理类同,读者自行分析即可。
共阳极7段数码管LED数码管根据LED的接法不同分为共阴和共阳两类,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。
图1是共阴和共阳极数码管的内部电路,它们的发光原理是一样的,只是它们的电源极性不同而已。
将多只LED的阴极连在一起即为共阴式,而将多只LED的阳极连在一起即为共阳式。
以共阴式为例,如把阴极接地,在相应段的阳极接上正电源,该段即会发光。
当然,LED的电流通常较小,一般均需在回路中接上限流电阻。
假如我们将"b"和"c"段接上正电源,其它端接地或悬空,那么"b"和"c"段发光,此时,数码管显示将显示数字“1”。
而将"a"、"b"、"d"、"e"和"g"段都接上正电源,其它引脚悬空,此时数码管将显示“2”。
[转]7段数码管管脚顺序及译码驱动集成电路74LS47,487段数码管管脚顺序及译码驱动集成电路74LS47,48 这里介绍一下7段数码管见下图7段数码管又分共阴和共阳两种显示方式。
如果把7段数码管的每一段都等效成发光二极管的正负两个极,那共阴就是把abcdefg这7个发光二极管的负极连接在一起并接地;它们的7个正极接到7段译码驱动电路74LS48的相对应的驱动端上(也是a bcdefg)!此时若显示数字1,那么译码驱动电路输出段bc为高电平,其他段扫描输出端为低电平,以此类推。
如果7段数码管是共阳显示电路,那就需要选用74LS47译码驱动集成电路。
共阳就是把ab cdefg的7个发光二极管的正极连接在一起并接到5V电源上,其余的7个负极接到74LS47相应的abcdefg输出端上。
无论共阴共阳7段显示电路,都需要加限流电阻,否则通电后就把7段译码管烧坏了!限流电阻的选取是:5V电源电压减去发光二极管的工作电压除上10 ma到15ma得数即为限流电阻的值。
发光二极管的工作电压一般在,为计算方便,通常选2V即可!发光二极管的工作电流选取在10-20m a,电流选小了,7段数码管不太亮,选大了工作时间长了发光管易烧坏!对于大功率7段数码管可根据实际情况来选取限流电阻及电阻的瓦数! 74ls48引脚图管脚功能表 74LS48芯片是一种常用的七段数码管译码器驱动器,常用在各种数字电路和单片机系统的显示系统中,下面我就给大家介绍一下这个元件的一些参数与应用技术等资料。
74ls48引脚功能表—七段译码驱动器功能表 74LS47引脚图管脚功能表:共阳数码管管脚图三位共阳数码管管脚图以及封装尺寸四位数码管引脚图以及封装尺寸六位数码管引脚图门电路逻辑符号大全(三态门,同或门,异或门,或非门,与或非门, 传输门,全加器,半加器等)常用集成门电路的逻辑符号对照表三态门,同或门,异或门,或非门,与或非门,传输门,全加器,半加器,基本rs触发器,同步rs触发器,jk触发器,d触发器7段数码管管脚顺序及驱动集成电路这里介绍一下7段数码管见下图7段数码管又分共阴和共阳两种显示方式。
如果把7段数码管的每一段都等效成发光二极管的正负两个极,那共阴就是把abcdefg这7个发光二极管的负极连接在一起并接地;它们的7个正极接到7段译码驱动电路74LS48的相对应的驱动端上(也是abcdefg)!此时若显示数字1,那么译码驱动电路输出段bc为高电平,其他段扫描输出端为低电平,以此类推。
如果7段数码管是共阳显示电路,那就需要选用74LS47译码驱动集成电路。
共阳就是把abcdefg的7个发光二极管的正极连接在一起并接到5V电源上,其余的7个负极接到74LS47相应的abc defg输出端上。
无论共阴共阳7段显示电路,都需要加限流电阻,否则通电后就把7段译码管烧坏了!限流电阻的选取是:5V电源电压减去发光二极管的工作电压除上10ma到15ma得数即为限流电阻的值。
发光二极管的工作电压一般在,为计算方便,通常选2V即可!发光二极管的工作电流选取在10-20ma,电流选小了,7段数码管不太亮,选大了工作时间长了发光管易烧坏!对于大功率7段数码管可根据实际情况来选取限流电阻及电阻的瓦数! 74ls48引脚图管脚功能表 74LS48芯片是一种常用的七段数码管译码器驱动器,常用在各种数字电路和单片机系统的显示系统中,下面我就给大家介绍一下这个元件的一些参数与应用技术等资料。
74 ls48引脚功能表—七段译码驱动器功能表 74LS47引脚图管脚功能表:共阳数码管管脚图三位共阳数码管管脚图以及封装尺寸四位数码管引脚图以及封装尺寸六位数码管引脚图7段数码管译码驱动和计数器构成24小时计时器这里介绍一下7段数码管见下图7段数码管又分共阴和共阳两种显示方式。
如果把7段数码管的每一段都等效成发光二极管的正负两个极,那共阴就是把abcdefg这7个发光二极管的负极连接在一起并接地;它们的7个正极接到7段译码驱动电路74LS4 8的相对应的驱动端上(也是abcdefg)!此时若显示数字1,那么译码驱动电路输出段bc为高电平,其他段扫描输出端为低电平,以此类推。
如果7段数码管是共阳显示电路,那就需要选用74LS47译码驱动集成电路。
共阳就是把abcdefg的7个发光二极管的正极连接在一起并接到5V电源上,其余的7个负极接到74LS47相应的abcde fg输出端上。
无论共阴共阳7段显示电路,都需要加限流电阻,否则通电后就把7段译码管烧坏了!限流电阻的选取是:5V电源电压减去发光二极管的工作电压除上10ma到15ma得数即为限流电阻的值。
发光二极管的工作电压一般在,为计算方便,通常选2V即可!发光二极管的工作电流选取在10-20ma,电流选小了,7段数码管不太亮,选大了工作时间长了发光管易烧坏!对于大功率7段数码管可根据实际情况来选取限流电阻及电阻的瓦数! 74ls48引脚图管脚功能表 74LS48芯片是一种常用的七段数码管译码器驱动器,常用在各种数字电路和单片机系统的显示系统中,下面我就给大家介绍一下这个元件的一些参数与应用技术等资料。
74ls 48引脚功能表—七段译码驱动器功能表 74LS47引脚图管脚功能表:共阳数码管管脚图三位共阳数码管管脚图以及封装尺寸四位数码管引脚图以及封装尺寸六位数码管引脚图74ls48引脚图管脚功能表作者:来源:本站原创点击数:3965 更新时间:2007年12月20日 74LS48芯片是一种常用的七段数码管译码器驱动器,常用在各种数字电路和单片机系统的显示系统中,下面我就给大家介绍一下这个元件的一些参数与应用技术等资料。
<74ls48引脚图> 74ls48引脚功能表—七段译码驱动器功能表十进数或功能输入 BI/RBO 输出备注 LT RB I D C B A a b c d e f g 0 H H 0 0 0 0 H 1 1 1 1 1 1 0 1 1 H x 0 0 0 1 H 0 1 1 0 0 0 0 2 H x 0 0 1 0 H 1 1 0 1 1 0 1 3 H x 0 0 1 1 H 1 1 1 1 0 0 1 4 H x 0 1 0 0 H 0 1 1 0 0 1 1 5H x 0 1 0 1 H 1 0 1 1 0 1 1 6 H x 0 1 1 0 H 0 0 1 1 1 1 17 H x 0 1 1 1 H 1 1 1 0 0 0 0 8 H x 1 0 0 0 H 1 1 1 1 1 1 1 9 H x 1 0 0 1 H 1 1 1 0 0 1 1 10 H x 1 0 1 0 H 0 0 0 1 1 0 1 11 H x 1 0 1 1 H 0 0 1 1 0 0 1 12 H x 1 1 0 0 H 0 1 0 00 1 1 13 H x 1 1 0 1 H 1 0 0 1 0 1 1 14 H x 1 1 1 0 H 0 0 01 1 1 1 15 H x 1 1 1 1 H 0 0 0 0 0 0 0 BI x x x x x x L 0 0 0 0 0 0 02 RBI H L 0 0 0 0 L 0 0 0 0 0 0 03 LT L x x x x x H 1 1 1 1 1 1 14 为什么把74LS90叫2-5-10进制计数器 74 LS90有四个输出端,分别为Qa,Qb,Qc,Qd,为了讨论方便,我们把它分成两部分,Qa为一部分,QbQcQd为一部分.从CP0加入一个时钟脉冲,Qa的输出端为1(原态Qn=0时),再加一个时钟脉冲,它的输出端又变回到0.如果加入奇数个脉冲,它的输出总是1;加入偶数个脉冲,它的输出总是0.也就是说.加入连续脉冲后,它的输出总是在0和1之间变化,我们把这种计数方式叫模二. 再看模五的工作方式:此时QbQcQ d(每一位的位权分别是1,2,4,)构成一个五进制计数器,从CP1输入一个时钟脉冲时,Qb为1,表示记录了一个脉冲,(Qb的位权是1),加入2个时钟脉冲,Qb为0,Qc为1(Qc的位权为2),表示记录了两个数,来了3个时钟脉冲时,Qb,Qc是高电平1(Qb+Qc=3),表示记录了3个脉冲,当第4个时钟脉冲来时,Qd=1,表示记录了4个脉冲.来第5个脉冲时,计数器自动清零,准备下一次的计数.从000,001,010,011,100共有五种状态,因此,把它叫模五计数器. 如何构成5421码的输出仍然把时钟脉冲从CP1加入,同时将Qd的输出端与CP0接到一起,此时Qa QdQcQb每一位的位权分别是5421.来1个脉冲时,Qb=1,其它=0,来2个脉冲时,Qc=1,其它=0,来3个脉冲时,Qb=1,Qc=1,当第(Qb+QC=1+2),表示记录了3个时钟脉冲,来4个脉冲时,Qd=1,其它=0,表示记录了4个脉冲,同时由于Qd与CP0连在一起,此时CP0也是高电平,当第5个脉冲来时,QdQcQb=0,Qd从1到0,产生一个下降沿,正好作为CP0的时钟脉冲,使输出端Qa=1,表示记录了5个时钟脉冲!QaQdQcQb=1000,在继续记录:输出端按5421码的规律:1001=5+1,1010=5+2,1011=5+3,1 100=5+4,在来一个时钟脉冲,输出端变为0000. 如何构成十进制计数器把模二的输出端Qa与模五的时钟脉冲输入端CP1连接,就构成了十进制计数器,CP0为计数器的时钟脉冲输入端.输出端QdQcQbQa的位权分别是8421。
来1个cp,Qa=1;2CP,Qb=1;3CP,QaQb=1;(Qa+Qb=3); 4CP,Qc=1;5CP,QaQc=1;(Qa+Qc=5),6CP,QbQc=1;(Qc+Qb=6),7CP,QaQb Qc=1 异步计数器74LS90引管脚图及功能表真值表 74LS90为中规模TTL集成计数器,可实现二分频、五分频和十分频等功能,它由一个二进制计数器和一个五进制计数器构成。
如果把二者级联后,就构成十进制计数器。
其输出端输出端输出8421码。
其引脚排列图和功能表如下所示:异步计数器74LS90引管脚图及功能表真值表 74ls 90是常用的二-五-十进制异步计数器,做八进制的就先把74ls90接成十进制的(CP1与Q0接,以CP0做输入,Q3做输出就是十进制的),然后用异步置数跳过一个状态达到八进制计数. 74ls90 pdf 资料下载:以从000计到111为例.先接成加法计数状态,从下图中的74LS90功能表可知,在输出为1000时(既Q4为高电平时)把Q 4输出接到R01和R02脚上(即异步置0),这个时候当计数到1000时则立刻置0,重新从0开始计.1000的状态为瞬时状态.状态转化图中是0000到0111是有效状态,1000是瞬时状态,跳转从这个状态跳回到0000的状态.把74LS90计数器,74LS48译码驱动电路和7段译码显示器(共阴)组合到一起,就很方便的构成计数译码显示电路。