单片机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)

{

}

}

相关推荐
好奇龙猫几秒前
【AI学习-comfyUI学习-第三十节-第三十一节-FLUX-SD放大工作流+FLUX图生图工作流-各个部分学习】
人工智能·学习
saoys8 分钟前
Opencv 学习笔记:图像掩膜操作(精准提取指定区域像素)
笔记·opencv·学习
玩泥巴的44 分钟前
飞书 .NET SDK 事件处理的幂等性与去重机制
c#·.net·二次开发·飞书
在路上看风景1 小时前
3.2 FileStream
c#
zwm2698888151 小时前
6号楼 部分声光24v电压达不到,显示11v
c#
电子小白1231 小时前
第13期PCB layout工程师初级培训-1-EDA软件的通用设置
笔记·嵌入式硬件·学习·pcb·layout
清风6666661 小时前
基于单片机的多传感器智能云梯逃生控制器设计
单片机·嵌入式硬件·毕业设计·智能家居·课程设计
小何code1 小时前
STM32入门教程,第10课(上),OLED显示屏
stm32·单片机·嵌入式硬件
来自晴朗的明天1 小时前
高速画板-USB模块的PCB设计5-USB2.0/3.0布局布线要求
单片机·嵌入式硬件·硬件工程
唯情于酒2 小时前
Docker学习
学习·docker·容器