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

{

}

}

相关推荐
_Kayo_2 小时前
node.js 学习笔记3 HTTP
笔记·学习
我好喜欢你~3 小时前
C#---StopWatch类
开发语言·c#
CCCC13101635 小时前
嵌入式学习(day 28)线程
jvm·学习
星星火柴9366 小时前
关于“双指针法“的总结
数据结构·c++·笔记·学习·算法
小狗爱吃黄桃罐头6 小时前
正点原子【第四期】Linux之驱动开发篇学习笔记-1.1 Linux驱动开发与裸机开发的区别
linux·驱动开发·学习
fengfuyao9856 小时前
STM32如何定位HardFault错误,一种实用方法
stm32·单片机·嵌入式硬件
爱学习的颖颖7 小时前
EXTI外部中断的执行逻辑|以对射式红外传感器计次为例
单片机·嵌入式硬件·exti中断
艾莉丝努力练剑7 小时前
【洛谷刷题】用C语言和C++做一些入门题,练习洛谷IDE模式:分支机构(一)
c语言·开发语言·数据结构·c++·学习·算法
一阵没来由的风7 小时前
拒绝造轮子(C#篇)ZLG CAN卡驱动封装应用
c#·can·封装·zlg·基础封装·轮子
keer_zu8 小时前
STM32L051 RTC闹钟配置详解
stm32·嵌入式硬件