74HC595驱动四位数码管

  1. 数码管编码 出处
  2. 硬件原理图 出处
  3. 驱动程序 出处

1.数码管编码介绍

它每一段是一个发光二极管,排成一个“日”字形。通过控制某几段发光二极管的发光来显示数字0~9或字母A、B、C、D…。通常有8个发光二极管,其中七个为日字型,另外一个发光二极管表示小数点。如图1所示,如a、b、g、e、d段亮显示2;f、b、e、c、g段亮显示H。注意:dp段表示右下角的小数点。

连接分为共阳极和共阴极两种接法。(1)共阳极数码管所有发光二极管阳极连在一起,接高电平。而阴极通过串联一个限流电阻接在驱动器一侧。当一段输出为低电平时,发光二极管导通而发光。(2)共阴极数码管是所有的发光二极管的阴极接在一起接地,阳极串联一个限流电阻接在驱动器一侧。当某段输出为高电平时,发光二极管导通发光。如下图2、图3。

相应得出,共阳极对应编码(小数点用最高位表示)。
unsigned char LED_0F[] =
{// 0 1 2 3 4 5 6 7 8 9 A b C d E F -
0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x8C,0xBF,0xC6,0xA1,0x86,0xFF,0xbf
};

2.硬件原理图


本设计使用了一个4位的数码管,为共阳型,为了节省单片机的IO口,使用了两片74HC595作为数码管的驱动芯片,共占用3个IO口。
与单片机相连接的三个脚分别为: HC_DAT,HC_RCK,HC_CLK。两片595采用级联方式,即U2的第9脚接到U3的第14引脚。

74HC595是8位的移位寄存器,串入并出,并具有锁存功能,被广泛的用于数码管、点阵的驱动电路中。其管脚介绍如下:
  15: 数据输出A-接数码管数据A段;
  l: 数据输出B-接数码管数据B段;
  2: 数据输出C-接数码管数据C段;
  3: 数据输出D-接数码管数据D段;
  4: 数据输出E-接数码管数据E段;
  5: 数据输出F-接数码管数据F段;
  6: 数据输出G-接数码管数据G段;
  7: 数据输出H-接数码管数据H段;
  16: 电源正脚-接电源正;
  8: 电源负脚=接电源负;
  14: 数据输入脚-接单片机管脚;
  12: 数据锁存时钟-接单片机管脚;
  11: 数据输入时钟-接单片机管脚;
  13: 使能输出脚-低电平有效,接低电平;
  10 :数据清零-不清零,接高电平;
  9:数据级联输出-接下一片595的数据输入脚
  
(1)SCK是上升沿的时候要把数据写入;(2)RCK是上升沿的时候数据才能锁存显示;(3)有数据操作的过程中RESET必须是高电平;(4)EN必须是低电平,595才能工作;
知道了以上4点就可以写程序了。其中3、4条是硬件连接上的事情(也可以用单片机的IO口来连接,这样的话可以随时控制74HC595的工作与否情况)。写程序主要靠1、2条。

电路连接图

3.驱动程序


U8 LED_0F[] =
{// 0    1    2    3    4    5    6    7    8    9    A    b    C    d    E    F    -0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x8C,0xBF,0xC6,0xA1,0x86,0xFF,0xbf
};
///********************* 数码管显示函数 *******************///
U8 LDE_NUM[4]={1,2,3,4};
void Nixie_Tube_Display (void)
{U8 *led_table;          // 查表指针U8 i;//显示数字1led_table = LED_0F + LDE_NUM[0];i = *led_table;LED_OUT(i);               LED_OUT(0x01);  //0x01显示在第一位RCLK_LOW;RCLK_HIGH;//显示数字2led_table = LED_0F + LDE_NUM[1];i = *led_table;LED_OUT(i);     LED_OUT(0x02);  //0x02显示在第二位    RCLK_LOW;RCLK_HIGH;//显示数字3led_table = LED_0F + LDE_NUM[2];i = *led_table;LED_OUT(i);         LED_OUT(0x04);  //0x04显示在第三位RCLK_LOW;RCLK_HIGH;//显示数字4led_table = LED_0F + LDE_NUM[3];i = *led_table;LED_OUT(i);         LED_OUT(0x08);  //0x08显示在第四位RCLK_LOW;RCLK_HIGH;
}void LED_OUT(U8 X)
{U8 j;for(j=8;j>=1;j--){if (X&0x80) {DIO_HIGH;}else{DIO_LOW;}X<<=1;SCLK_LOW;SCLK_HIGH;}
}

74HC595驱动四位数码管相关推荐

  1. MicroPython-On-ESP8266——数码管的使用,2片HC595驱动四位数码管

    MicroPython-On-ESP8266--数码管的使用,2片HC595驱动四位数码管 1. 背景 前面在使用四位数码管时,需要用来12个GPIO接口,结果咱micropython能驱动的esp8 ...

  2. Arduino Uno驱动四位数码管

    Arduino Uno驱动四位数码管 我用的是 四位共阳极数码管 型号是5461BS-1数码管 接线方法 UNO引脚 数据码 3 1 4 2 5 3 6 4 7 A 8 B 9 C 10 D 11 E ...

  3. 74HC595/四位按键 驱动四位数码管

    一.主要元器件和原理 GD32F303RCT6 74HC595 共阳数码管 按键(图片数码管名字有误) 风中凌乱的笔记: A1A2A3A4下拉工作模式.给A1A2A3A4一个低电平.当abcdefg来 ...

  4. FPGA学习日志——74hc595驱动的数码管静态显示seg_595_static

    文章目录 数码管静态显示seg_595_static 实验原理 74HC595 实验框图.波形图与代码原理 数码管静态显示seg_595_static 数码管是一种半导体发光器件,其基本单元是发光二极 ...

  5. TM1650芯片驱动四位数码管

    文章目录 自言自语 一.芯片图 二.通讯协议 开始信号 终止信号 发送一字节数据 获取TM1650的应答 三.TM1650的各个功能 数码管显示 数码管关闭 数码管显示数字 自言自语 今天上班被丢了块 ...

  6. 树莓派模块化编程之TM1637驱动四位数码管

    一.驱动TM1637的时序图 二.代码实现 #encoding:utf-8 import RPi.GPIO as GPIO import time GPIO.setwarnings(False) GP ...

  7. STM32 经过TM1637驱动四位数码管

    产品简介 代码 TM1637.H ```c#ifndef __TM1637_H #define __TM1637_H #include "sys.h"#define GPIO_CL ...

  8. 【K210+micropython】驱动HS420561k-32四位数码管显示数字

    [K210+micropython]使用HS420561k-32四位数码管显示数字 文章目录 [K210+micropython]使用HS420561k-32四位数码管显示数字 相关知识准备 一.四位 ...

  9. Arduino基础入门篇17—四位数码管的驱动

    本篇介绍四位数码管的使用,通过数码管库驱动四位数码管从0开始累加显示数字. 1. 四位数码管介绍 根据实际需要,把多个一位数码管封装在一起就成了多位数码管.常见的有两位.三位.四位.五位.六位等. 数 ...

最新文章

  1. 块代码编程---开始使用块代码
  2. 活动报名 | 上交大副教授谢伟迪:视频自监督学习
  3. 乐视手机权限开启方法
  4. 第六章 6.1 6.2 无限脉冲响应滤波器
  5. 无监督学习和半监督学习
  6. PingingLab传世经典系列《CCNA完全配置宝典》-3.4 Trunk进阶配置
  7. 2017.10.9 找相同字符 失败总结
  8. linux文件移出目录命令_linux命令大全_文件目录操作命令
  9. 转正答辩ppt_如何顺利完成转正答辩?
  10. Ubuntu 14 中给 APACHE2安装 SSL 模块 Enable SSL site on Ubuntu 14 LTS, Apache 2.4.7:
  11. php redis 事务应用,redis事务有什么用
  12. Neo4j(一):Neo4j的下载与安装
  13. SketchUp2020下载SketchUp2020下载安装SketchUp草图大师2020下载安装详细教程
  14. 用JAVA做一个简单的画图软件
  15. js限制input的输入字符的长度,区分中英文
  16. 从周易六十四卦看软件架构真好懂!女朋友这下不用担心我的学习了【程序员编程】
  17. MySQL默认数据库介绍
  18. 摩托车新手驾驶教程[3]
  19. 阿里AI天池大赛-新闻文本分类-TF-IDF特征+LightGBM模型
  20. Allegro使用总结-查看Layout基本操作:

热门文章

  1. 计算机图形学-光线追踪学习
  2. 联想台式电脑一键恢复后桌面没有计算机了,桌面上的一键恢复快捷图标没有了怎么办?...
  3. python AES中EBC模式加密
  4. before和after怎么区分_before的用法和如何判断其时态,before和after区别
  5. 微信上的文件怎样用计算机打出来,微信上的文件传到电脑上怎么打印出来
  6. 什么是Mysql的next-key、插入缓冲、二次写、自适应哈希索引和预读
  7. 传奇M2server用到的文件一些txt或Ini文件解释说明(整理中……)
  8. 三维坐标系介绍与转换
  9. java课程 数独 文库_JAVA课程设计九宫格数独.pdf
  10. 淘宝滑块的解决方法和api接口