单片机Day05---静态数码管

目录

一、原理图:​编辑

二、思路梳理:

三:一些说明:

1.点亮方式:

2.数组:

3.数字与段码对应:

四:程序实现:


一、原理图:

二、思路梳理:

注意注意本实验静态数码管,一开始只联系让第一个位置亮数字。

三:一些说明:

1.点亮方式:

LED灯给0是点亮。

数码管给1是点亮。并且顺序是dp,g,f,e,d,c,b,a

0x3F 为例,它的二进制是 0011 1111,表示 abcdef 段为高电平(亮),gdp 段为低电平(灭),从而显示数字 0

2.数组:

首先数码管的点亮可以用数组表示,数组从第一位到最后就是从数字0到数字15,如果你想让某一位显示数字几,就把这个数字对应的数组元素赋给那个位置。

3.数字与段码对应:

数组索引 段码值 二进制 显示内容
0 0x3f 0011 1111 0
1 0x06 0000 0110 1
2 0x5b 0101 1011 2
3 0x4f 0100 1111 3
4 0x66 0110 0110 4
5 0x6d 0110 1101 5
6 0x7d 0111 1101 6
7 0x07 0000 0111 7
8 0x7f 0111 1111 8
9 0x6f 0110 1111 9
10 0x77 0111 0111 A
11 0x7c 0111 1100 B
12 0x39 0011 1001 C
13 0x5e 0101 1110 D
14 0x79 0111 1001 E
15 0x71 0111 0001 F

四:程序实现:

#include <REGX51.H>

typedef unsigned u16;

typedef unsigned u8;

#define LED P0

u8 light[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};

void main()

{

LED=light[5];

while(1)

{

}

}

相关推荐
云知谷4 小时前
【C++基本功】C++适合做什么,哪些领域适合哪些领域不适合?
c语言·开发语言·c++·人工智能·团队开发
deng-c-f7 小时前
Linux C/C++ 学习日记(28):KCP协议(四):如何实现更复杂的业务:将连接状态的管理进行封装,用户只需实现发送、接收、断开的处理逻辑。
学习·网络编程·kcp
hazy1k7 小时前
51单片机基础-步进电机控制
stm32·单片机·嵌入式硬件·51单片机
清风6666667 小时前
基于单片机的智能收银机模拟系统设计
数据库·单片机·毕业设计·nosql·课程设计
从孑开始7 小时前
ManySpeech.MoonshineAsr 使用指南
人工智能·ai·c#·.net·私有化部署·语音识别·onnx·asr·moonshine
YuanlongWang8 小时前
C# 中,依赖注入(DI)的实现方式
c#
第二层皮-合肥8 小时前
RTC时钟原理
单片机·嵌入式硬件
SmartSoftHelp开发辅助优化9 小时前
C# WinForm 编程高手:程序,进程,线程。程序,窗体,UI,后台。是如何协调工作的?深度解析>SmartSoftHelp魔法精灵工作室
microsoft·ui·c#
.小小陈.10 小时前
数据结构2:单链表
c语言·开发语言·数据结构·笔记·学习方法
立志成为大牛的小牛10 小时前
数据结构——二十三、并查集的终极优化(王道408)
开发语言·数据结构·笔记·学习·程序人生·考研