设计与开发

单片机表格 单片机控制数码管显示不同数字

小编 2024-10-05 设计与开发 23 0

单片机控制数码管显示不同数字

很多电子产品上都有用到数码管来做指示作用,比如电子秤上使用数码管来显示体重,电饭锅上面使用数码管来显示煮饭时间等等。数码管显示的数字是通过单片机控制的,本篇文章为你讲述其中的原理。

文章涉及到的电路图和程序源码大家可以私信作者获取。

想要使用单片机来控制数码管显示不同数字,那么我们先要了解数码管的内部结构以及器驱动原理。数码管可以看成是由8个发光二极管组成,我们分别给这8个数码管编号为a,b,c,d,e,f,g,SP(SP为小数点,七段数码管没有小数点),共阴极数码管就是这8个二极管的阴极连接在一起,共阳极数码管就是这8个二极管的阳极连接在一起。在控制过程中,我们把不同的二极管点亮,数码管就会给我们显示出不同的数字,例如我们把b,c两个二极管点亮,其他二极管熄灭,那么数码管显示的就是数字1;或者我们把a,b,c,d,e,f,6个数码点亮,数码管就给我们显示的是数字0.

接下来我们搭建控制电路图,添加一个7段共阴极数码管,a-g分别接单片机P2.0-P2.6.

看到电路图,我们应该就能想到,只要我们使单片机的P2口输出不同的高低电平,就可以让数码管显示不同的数字。假如我们要显示数字1,那么我们就想要点亮b,c二极管且熄灭其他二极管,所以我们需要将单片机P2.1和P2.2输出高电平,其他的输出低电平,如下图(红色代表高电平,蓝色代表低电平)。

以此类推,其他数字我们也可以显示出来,我们把P2.0-P2.7看成一个从低到高的8位数,其某一位为1则代表其对应的二极管亮,为0就代表其对应的二极管灭,那么我们就可以得到一个表格,该表格代表数码管显示0-F的值,其表格如下:

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

我们还是以1来分析,1对应表格中的数字为0x06,我们转换成二进制就是00000110(b),第2和第3位为1,其他位为0,也就是说b,c二极管会亮,其他二极管会灭,所以只要我们把这个数字赋值给P2,那么数码管就会给我显示数字1.

到这里就把共阴极数码管显示原理给大家讲解了,大家可以以此类推,得到共阳极数码管的显示表格。如有不明白的地方,可以把疑惑的地方私信给我,演示程序设有一个按键,系统上电显示0,按键每按下一次,显示的数字加1,加到最大就又回到0开始。

下面给大家讲解一下程序设计思路:定义一个变量u8SegNumber,当按键按下一次,u8SegNumber就+1,然后我们把u8SegNumber的值作为共阴数码管显示表格的下标值,最后把对应的值赋值给单片机的P2口,这样就达到了我们想要的结果。

if(pTIM_Delay(0,200)) //200ms任务

{

if(SysDataVar.u8SegNumber > 15) //防止溢出

SysDataVar.u8SegNumber = 0;

LED = SEG_ComAnodeTable[SysDataVar.u8SegNumber]; //赋值

}

if(pTIM_Delay(1,5)) //5ms任务

{

Key_Sanf(); //按键检测

}

到这里单个数码管显示数字的原理都给大家讲解清楚了,大家可以尝试显示两个数码管,其原理和显示单个数码管不太一样,我也将在下一讲为你讲解,欢迎关注作者,及时获取更新信息。

什么是单片机?单片机的原理你搞清楚了么?单片机都有哪些应用

单片机概述

单片机定义: 片半导体硅片集成:中央处理单元(CPU)、存储器(RAM、ROM)、并行I/O、串行I/O、定时器/计数器、中断系统、系统时钟电路及系统总线。用于测控领域的单片微型计算机,简称单片机。

单片机体积小、成本低,嵌入到工业控制单元、机器人、智能仪器仪表、汽车电子系统、武器系统、家用电器、办公自动化设备、金融电子系统、玩具、个人信息终端及通讯产品中。

单片机分类:

(1)通用型单片机就是其内部可开发的资源(如存储器、I/O等各种外围功能部件等)可以全部提供给用户。

用户根据需要,设计一个以通用单片机芯片为核心,再配以外围接口电路及其它外围设备,并编写相应的软件来满足各种不同需要的测控系统。通常所说的和本书介绍的是指通用型单片机。

(2)专用型单片机是专门针对某些产品的特定用途而制作的单片机。

30页内容详细介绍单片机(文末有获取)

1000G机械必备设计资料内容详情

这1000G资料涉及的范围很广,具体来说包括机械设计、机械原理、模具、机械加工、材料类、电气行业、各种零件模型和非标等等领域,具体内容有:上千份文档类(各类机械设计手册、液压类手册、自动化类手册等等,所有历史文章的PPT源文件等)、常用的设计工具(一些自动计算表格)以及各类视频教程类,我相信这1000G资料对于提升你的能力一定会有很大的帮助。同时在你工作中遇到相关问题的时候,这些资料也能提供很好的指导作用。

获取方式

相关问答

单片机 中如何定义 表格 ?

数组前不加“code”或“data”,则默认将数组存放在程序存储器中;code指定数据是存储在代码区,数据是在编程的时候跟代码一起写入代码存储器,运行过程中不能...

MCS-51 单片机 查表程序?

16和7是查表指令时的PC与数据表格之间的字节数MOVA,@R0;取R0指向的地址中的数据到AANLA,#0FH;高四位清零ADDA,#16;加16MOVCA,@...OR...

用51 单片机 产生正弦波的查表方法?

单相的从正弦涵数中从0度到90度范围中均匀取出n个数再用256的模转换成表格数。三相的只需从0度到30度取,可这会n要是三的公倍数。后在运行中按你的频率的不同...

单片机 怎么跟电脑实现无线传输数据-ZOL问答

如果买不到,也可以自己做,但这就需要较高的电路水平才可以做到,涉及到调制解调,无线电的发射和接收电路,发射频率的选择,再加上单片机和电脑的通信程序编写,一个...

单片机 p0口默认高电平,默认p0口都是1吗?按钮按下p0口变成0?-...

单片机复位后,所有IO口都为“1”,所以P0口的值当然是FFH,都为高电平。至于按键按下P0口是否变成0,要看原理图。有用(0)回复skyzhou616单片机p0口默认高电平...

STC 单片机 EEPROM数据存储?

程序文件.HEX和数据文件.hex,一起下载就可以了。可以用表格形式来编译数据文件。程序文件.HEX和数据文件.hex,一起下载就可以了。可以用表格形式...

单片机 与手机如何实现远距离通信?

单片机与手机实现远距离通信,有很多种可实施的方案。例举其中两个方案进行讲解:一:2G/4G移动通信方案器件选型1,单片机选用Cortex-M3内核,国产兆易创新...单...

单片机 的按键开启和复位电路图-ZOL问答

单片机的复位有上电复位和按钮手动复位两种。如图(a)所示为上电复位电路,图(b)所示为上电按键复位电路。上电复位是利用电容充电来实现的,即上电瞬间RST端的电...

有谁能给我推荐一下! 单片机 的设计?, 单片机 设计如何选??

[回答]还不错的,他们专业承接设计电路板,以前朋友在那做了,还批量生产了。还不错的,他们专业承接单片机解决方案,以前朋友在那做了,还批量生产了开发过产...

单片机 ,电路设计,电路模拟,需要怎么样的电脑配置?-ZOL问答

WPS表格打不开尾缀是xlsb的文件,来自怎么解决?1629浏览4回答1.3万浏览3回答朋友的华为手机wifi开关打不开怎么处理?2667浏览电脑主板上有个小显示屏...

猜你喜欢