共阴/共阳数码管 ----- 学习笔记

article/2025/8/21 16:09:17

一、数码管的动态显示原理

动态显示的特点是将所有数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。选亮数码管采用动态扫描显示,所谓动态扫描显示即轮流向各位数码管送出字形码和相应的选位,利用发光管的余晖和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。动态显示的亮度比静态显示的要差一些,所以在选择限电阻时应略小于静态显示电路中的。

1..1、数码管的共阴与共阳

数码管数字显示/数码管编号

dp

g

f

e

d

c

b

a

0

1

2

3

4

5

6

7

8

9

共阴极数码管

取反为共阳极数码管

数字显示

二进制

十六进制

二进制

十六进制

0

00111111

0x3F

11000000

0xC0

1

00000110

0x06

11111001

0xF9

2

01011011

0x5B

10100100

0xA4

3

01001111

0x4F

10110000

0xB0

4

01100110

0x66

10011001

0x99

5

01101101

0x6C

10010010

0x92

6

01111101

0x9B

10000010

0x82

7

00000111

0x07

11111000

0xF8

8

01111111

0x7F

10000000

0x80

9

01101111

0x6F

10010000

0x90

       

          a         b      c         d            e          f

共阴 a~f:  0x77  0x7c  0x39    0x5e     0x79      0x71

共阳 a~f:  0x88  0x83  0xa7   0xa1      0x86       0x8e

二、双P沟道增强型MOS---D74HC245芯片

特点:D74HC245是一种三态输出、八路信号收发器,主要应用于大屏显示,以及其他的消费类电子产品中增强驱动。

2.1、主要特性

  • 采用CMOS工艺
  • 宽电压工作范围:3.0V ---- 5V
  • 双向三态输出
  • 八线双向收发器
  • 封装形式:SOP20、SOP20-2、TSSOP20、DIP20,

通透:输入是高电平,输出也是高电平;输入是低电平,输出也为低电平;

双向三态

双向:可以输出,也可以输出

三态:

  • P0口高阻态输出
  • 管脚可以输出高电平,也可以输出低电平

2.2、应用领域

适用于显示器以及其他数字电路的驱动。

2.3、管脚的定义说明

符号

管脚名称

管脚号

说明

A0 --- A7

数据输入/输出

2 ---- 9

B0 ---- B7

数据输入/输出

18 ----11

——

OE

输出使能

19

DIR

方向控制

1

DIR=1,A——    B,

B  ——   A

GND

逻辑地

20

逻辑地

VDD

逻辑电源

10

电源端

三、功能真值表

输出使能

输出控制

工作状态

——

OE  (低电平有效)

DIR

L

L

Bn输入,An输出

L

H

An输入,Bn输出

H

X(输出方向DIR为任意值)

高阻态

四、译码器----D74HC138

是一种三通道输入,八通道输出译码器,主要应用于消费电子产品。

  • 采用COMS工艺
  • 低功耗
  • 工作电压3.0V ----5.0V
  • 封装形式:SOP16

4.1、应用领域

适用于数字电路中的 3—8 译码功能

4.2、管脚说明

4.3、封装形式

SOP16

代码

5.1、16进制

十六进制(简写为hex或下标16)在数学中是一种逢16进1的进位制。一般用数字0到9和字母A到F(或a~f)表示,其中:A~F表示10~15,这些称作十六进制数字。

0x后面跟随的十六进制计数,十六进制计数用a~f表示该位上取值10~15

0x3f

十六进制个位基数是1,高位=低位*16,那么3对应的位基数是16*1=16,f对应的基数是1,中包含3个16和15个1,加起来等于63

0xfc表示对应基数是16这位上取值15,对应基数是1的位上取值12,即15个16加12个1这个十进制数

5.2、ASCII码

5.3、静态数码管代码

#include "reg52.h"#include "intrins.h"typedef unsigned char u8;typedef unsigned int u16;u8 code smgduan[16] = {0X3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; //void main(){P0=~smgduan[0];while(1){}}

5.4、动态数码管代码

#include <reg52.h>
#include<intrins.h>
typedef unsigned char u8;	      // 预处理数据类型
typedef unsigned int  u16;		  // 预处理数据类型// 138译码器管脚定义
sbit LSA = 	P2^2;
sbit LSB =  P2^3;
sbit LSC =  P2^4;// 延迟函数
void delay(u16 i){while(i--);
}// 数组
/**********************************
数码管显示真值表   共阳0		1	  2		3	 4	    5
0xc0  0xf9  0xa4  0xb0  0x99  0x92 6		 7	  8		9	 a		b
0x82  0xf8  0x80  0x90  0x88  0x83c		d	  e		f
0xa7  0xa1  0x86  0x8e
*************************************
数码管显示数字的真值表*/
u8 code smgduan[16]={0X3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};	  //共阴void DigDisplay(){u8 i;  //for(i=0;i<8;i++){switch(i){case(0):LSA = 0;LSB=0;LSC=0;break;case(1):LSA = 1;LSB=0;LSC=0;break;case(2):LSA = 0;LSB=1;LSC=0;break;case(3):LSA = 1;LSB=1;LSC=0;break;case(4):LSA = 0;LSB=0;LSC=1;break;case(5):LSA = 1;LSB=0;LSC=1;break;case(6):LSA = 0;LSB=1;LSC=1;break;case(7):LSA = 1;LSB=1;LSC=1;break;}P0 = smgduan[i];delay(100);//P0= 0X00;}}void main(){P0=~smgduan[0];while(1){DigDisplay();}
}		     

六、报错

*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS

    SEGMENT: ?PR?DIGDISPLAY?MAIN

未调用已定义的函数


http://chatgpt.dhexx.cn/article/DFY2aw2s.shtml

相关文章

LED 数码管共阴共阳的区别+静态/动态显示

51单片机——数码管动态显示 1、共阴共阳定义 LED 共阴极指的是LED共同的接点是GND&#xff08;接地&#xff09;&#xff0c;而共阳极指的是LED共同的接点是电源。LED亮灯的条件是两端有电势差。 最后一段h/dp小数点在高位&#xff0c;第一段a在低位 hgfedcbaxxxxxxxx 1.共…

python单例模式selenium driver实现单例

一、使用装饰器实现单例 def Singleton(cls):_instance {}def _singleton(*args, **kargs):if cls not in _instance:_instance[cls] cls(*args, **kargs)return _instance[cls]return _singletonSingleton class A(object):a 1def __init__(self, x0):self.x xa1 A(2) a2…

python单例模式有什么用_python单例模式是什么

在python中&#xff0c;单例模式是一种常用的软件设计模式&#xff0c;该模式的主要目的是确保某一个类在内存中只能有一个实例对象&#xff1b;通过单例模式的方法创建的类在当前进程中只有一个实例对象。单例模式分为&#xff1a;1、懒汉式&#xff0c;类一加载就创建对象&am…

Python设计模式-单例模式

设计思想 通过上面的介绍&#xff0c;我们可以知道单例模式最重要的就是要保证一个类只有一个实例并且这个类易于被访问&#xff0c;那么要怎么做才能保证一个类具有一个实例呢&#xff1f;一个全局变量使得一个对象可以被访问&#xff0c;但是这样做却不能防止你实例化多个对…

redis常用命令

redis常用命令 服务端客户端 服务端 1.使用help查看帮助文档 redis-server --help2.启动redis服务 sudo service redis start3.停止redis服务 sudo service redis stop4.重启redis服务 sudo service redis restart如果上面命令不行&#xff0c;用下面的命令&#xff1a; …

运维维护服务器redis常用命令

查看服务器是否有redis ps -ef | grep redis知道有redis存在了&#xff0c;查看下redis状态 systemctl status redis知道redis状态是运行态和只能本机访问后&#xff0c;想查看redis配置文件位置 cat /etc/systemd/system/redis.service知道redis配置在哪里&#xff0c;修改…

redis启动,停止,重启

1、查看redis是否在运行&#xff1a; ps aux | grep redis 2、启动redis&#xff1a; /etc/init.d/redis start 3、关闭redis&#xff1a;redis-cli shutdown 4、当设置密码后&#xff0c; 上面的关闭命令无效&#xff1a;带密码输入&#xff1a;redis-cli -a [password] 回…

centos中常用与redis相关的命令

该篇指令只针对完全不懂Linux&#xff0c;但是却不得不配置redis的同学&#xff08;没错就是我&#xff09; 安装过程就不阐述了&#xff0c;默认都安好了嗷。 启动redis 首先进入到redis安装位置的bin目录下&#xff0c;路径因人而异&#xff0c;这里用本人的路径作为示例 …

Linux重启 Redis自动启动

今天又要维护新的服务器了&#xff0c;翻了一下网上Redis自动启动&#xff0c;结果配置一大堆&#xff0c;其实很多没什么用&#xff0c;也不好理解&#xff0c;所以干脆把我自己的记录给写这里给大家参考。 第一步&#xff1a;创建Redis启动服务 在系统开机启动项目录 /lib/…

windows 重启redis的方法

目录 打开本地的文件夹 选中文件的路径输入cmd 在cmd命令窗口中输入以下的指令 指令的内容以及对应的命令含义 前言&#xff1a; 最近在本地搭建redis环境&#xff0c;突然发现本地的redis启动失败了&#xff0c;使用reids的启动命令也不行&#xff0c;于是找了不少的方法&…

redis linux 重启命令行,redis 如何重启? linux下请输入命令不要用kill 的方式

噜噜哒 1、如果是用apt-get或者yum install安装的redis&#xff0c;可以直接通过下面的命令停止/启动/重启redis&#xff1a;/etc/init.d/redis-server stop/etc/init.d/redis-server start/etc/init.d/redis-server restart2、如果是通过源码安装的redis&#xff0c;则可以通过…

redis重启命令Linux,Redis启动、配置 及 常用命令-Go语言中文社区

启动 Redis 服务 src/redis-server或者src/redis-server redis.conf 注:src/redis-server 会不加载redis.conf配置文件,提示: Warning: no config file specified, using the default config. 标题 而:src/redis-server redis.conf 为载入redis.conf配置的启动方式 标题 sr…

Windows环境下redis重启

在redis安装的目录下打开cmd窗口 输入以下命令打开启动redis redis-server redis.windows.conf 如果提示 Creating Server TCP listening socket *:6379: bind: No error&#xff0c;需要重启redis 一、重启步骤&#xff1a; 1、依次输入以下指令 redis-cli -h 127.0.0.1…

如何停止/重启/启动Redis服务

如何停止/重启/启动Redis服务 一、命令行直接启动/停止/重启redis1、启动redis服务及验证2、停止redis服务及验证3、重启redis服务及验证 二、通过redis的相关配置信息关闭/启动redis1.关闭 redis服务及验证2.启动redis服务及验证 叮嘟&#xff01;最近做项目学习用到了Redis&a…

如何停止重启启动Redis服务

如何停止/重启/启动Redis服务 一、命令行直接启动/停止/重启redis 1、启动redis服务及验证2、停止redis服务及验证3、重启redis服务及验证 二、通过redis的相关配置信息关闭/启动redis 1.关闭 redis服务及验证2.启动redis服务及验证 叮嘟&#xff01;最近做项目学习用到了Re…

语音识别,标注数据

切割音频文件 from pydub import AudioSegment from pydub.silence import split_on_silence import ossound AudioSegment.from_mp3("E:/data/AcsData/zfBX/hw202003301111246_23401.wav") loudness sound.dBFS outputPath "E:/data/AcsData/zfBX/output/&…

音频标注工具

ASR音频标注工具 前言一、音频标注工具二、使用环境总结 前言 为了方便查看音频标注质量&#xff0c;使用图形化音频标注工具可以更方便的对音频文本内容进行编辑。 下载链接&#xff1a; https://download.csdn.net/download/weixin_54971024/85426511 一、音频标注工具 主页…

数据标注工具、平台、类型

华为云ModelArts标注工具&#xff0c;支持的标注类型有&#xff1a; 图片&#xff1a; imgClassify 图像分类&#xff1a;识别一张图片中是否包含某种物体 objDetect 物体检测&#xff1a;识别出图片中每个物体的位置及类别 imgSevering 图像分割&#xff1a;根据图片中的物体…

Python-实现语音识别并批处理标注(重命名)文件

由于我的测试经常需要对音频文件内容标注&#xff08;根据语音的内容用拼音标注&#xff09;&#xff0c;一个一个人工标注很费时费力&#xff01;那有没有简单点的方法&#xff0c;答案是有&#xff01;&#xff01;&#xff01;一起学习吧~ 1.在百度AI开发平台获取AppID、AP…