利用单片机实现数码管依次显示数字0到9以及0到F

这篇具有很好参考价值的文章主要介绍了利用单片机实现数码管依次显示数字0到9以及0到F。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本次暂时只写了共阴极数码管的实现。

一、显示数字从0-9。

利用单片机实现数码管依次显示数字0到9以及0到F

(注:图片有点问题,之前写的时候·没注意,现在下边的代码已经更正了。代码是正确的。)

锁存器。锁存器就是把当前的状态锁存起来,使CPU 送出的数据在接口电路的输出端保持一段时间锁存后状态不再发生变化,直到解除锁定。

#include "reg52.h"
#include "intrins.h"
#define DWM P0

typedef unsigned int u8;
typedef unsigned char u16;

sbit P2_2=P2^2;


u16 code Duanma[]={0x3f,0x06,0x56,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
//段码



void delay(u8 t)      //延时函数
{
	while(--t);
}

void main()
{
	u8 i;
	i=0;
	while(1)
	{
		DWM =  Duanma[i];  //取段码
		P2_2 = 1;
		
		delay(200);
		j++;
		
        if(j==10)
            j=0;
	}
}

二、显示0到F的实现

这个跟上边的0到9的差别只是,数码管的段码加上了A到F的BCD码。

利用单片机实现数码管依次显示数字0到9以及0到F

(注:图片有点问题,之前写的时候·没注意,现在下边的代码已经更正了。代码是正确的。) 

动态扫描。由于任一时刻只能显示一种数字,当需要多位数码管显示多位数据的时候就需要动态扫描。动态扫描时间上执行的是动态显示,由于动态速度很快,人眼分辨不出,所以看上去是静态显示。(因为这次用的是是·一位数码管,自然也没有用到动态扫描了,浅凑一下篇幅)文章来源地址https://www.toymoban.com/news/detail-510340.html

#include "reg52.h"
#include "intrins.h"
#define DWM P0

typedef unsigned int u8;
typedef unsigned char u16;

sbit P2_2=P2^2;


u16 code Duanma[]={0x3f,0x06,0x56,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0X77,0X7c,0X39,0X5e,0x79,0x71};
//段码



void delay(u8 t)      //延时函数
{
	while(--t);
}

void main()
{
	u8 i;
	i=0;
	while(1)
	{
		DWM =  Duanma[i];  //取段码
		P2_2 = 1;
		
		delay(200);
		j++;
		
        if(j==16)
            j=0;
	}
}

到了这里,关于利用单片机实现数码管依次显示数字0到9以及0到F的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 51单片机实现矩阵键盘密码锁,数码管显示

    板子是普中的,按键按下10为0,按键11为确认,按键12为取消。 输入密码正确时LED D8闪烁(正确密码为5555) #include REGX52.H//头文件定义 unsigned char nixie[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//数码管显示的段码 unsigned int Code = 0;//用于保存密码的变量 void Tim_int(void);//定时器初

    2024年02月02日
    浏览(51)
  • 【单片机】【数码管】数码管显示

      1. 数码管的显示器及其接口 单片机系统中 常用的显示器有: 发光二极管LED显示器、液晶LCD显示器、TFT液晶显示器。本文主要是关于LED显示器的说明。 LED显示器有两种显示结构:段显示(7段、米字型等)和点阵显示(5x8、8x8点阵等)。 LED数码管根据接法可以分为共阴和共

    2024年02月08日
    浏览(54)
  • 学习笔记|认识数码管|控制原理|数码管实现0-9的显示|段码跟位码|STC32G单片机视频开发教程(冲哥)|第九集:数码管静态显示

    数码管按段数可分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元,也就是多一个小数点(DP)这个小数点可以更的表示数码管想要显示的内容;按能显示多少个(8)可分为1位、2位、3位、4位、5位、6位、7位等数码管。 按发光二极管单元连接方

    2024年02月10日
    浏览(53)
  • 单片机数码管

    LED数码管(LED Segment Displays)是由8个发光二极管构成,并按照一定的图形及排列封转在一起的显示器件。其中7个LED构成7笔字形,1个LED构成小数点(固有时成为八段数码管)。 LED数码管有两大类,一类是共阴极接法,另一类是共阳极接法。 共阴极:公共端为阴极,加阳极数

    2024年02月15日
    浏览(87)
  • 51单片机(四)静态数码管和动态数码管显示

    ❤️ 专栏简介:本专栏记录了从零学习单片机的过程,其中包括51单片机和STM32单片机两部分;建议先学习51单片机,其是STM32等高级单片机的基础;这样再学习STM32时才能融会贯通。 ☀️ 专栏适用人群 :适用于想要从零基础开始学习入门单片机,且有一定C语言基础的的童鞋

    2024年02月09日
    浏览(47)
  • 51单片机数码管

    51单片机的数码管是一种常用的数字显示设备,用于在嵌入式系统中显示数字和一些特定的符号。数码管通常由七段LED组成,每个LED段可以显示数字0到9以及一些字母和符号。通过控制每个LED段的亮灭,可以显示不同的数字和字符。 在51单片机中,数码管通常连接到GPIO(通用

    2024年01月21日
    浏览(49)
  • 【单片机】08数码管

    以八段管为例介绍其字段,八段数码管其实是由八个LED灯组成的8字型,如图8.2所示,这八个灯按逆时针方向分别为:a,b,c,d,e,f,g,h。如果要显示“7”字,只需要将a,b,c三个灯点亮即可,如图8.3所示: 这样来理解的话,要点亮一个数码管很容易,其实就是点亮相应的LED灯,就能

    2024年02月06日
    浏览(33)
  • 单片机——数码管显示

    LED数码管:数码管是一种简单、廉价的显示器,是由多个发光二极管封装在一起组成“ 8” 字型的器件 一位数码管 八段LED各有名字,八位 引脚定义;和下图序号相对应  阴极连接在同一个端口上——阴极连接    我们单片机上的数码管引脚连接方式是阴极连接,假使要在数

    2024年02月04日
    浏览(59)
  • 三、51单片机 使用Proteus仿真实现8位数码管滚动显示(仿真及代码)

    1,目标         使用51单片机控制8位数码管,分别滚动显示单个数字0~7,程序运行之后,单片机先控制最左边的第一位数码管显示0,其他的熄灭,延时一段时间之后,控制左边第二个数码管显示1,其它熄灭,以此类推,反复循环上述过程。 2,设计方式         使用P0输出

    2024年02月13日
    浏览(51)
  • 单片机——数码管动态显示

    1.头文件和定义,代码还使用了 sbit 定义来声明了两个变量 duan 和 wei,它们实际上是 P2.6 和 P2.7 端口的别名,用于控制数码管的段选和位选信号。这种方法可以使代码更具可读性,并提高代码的可维护性。定义无符号整数便于后面应用。 2.使用一个 16 个元素的数组 table,该数

    2024年02月11日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包