【51单片机-数码管】:用51单片机写一个八个数码管中选用任意相邻两个数码管,用来循环显示0-99之间的数据,数据显示间隔为0.5s

这篇具有很好参考价值的文章主要介绍了【51单片机-数码管】:用51单片机写一个八个数码管中选用任意相邻两个数码管,用来循环显示0-99之间的数据,数据显示间隔为0.5s。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

51单片机八段数码管显示数字,单片机与疑难杂症,51单片机,嵌入式硬件,单片机


学习目标:

51单片机八段数码管显示数字,单片机与疑难杂症,51单片机,嵌入式硬件,单片机

        用普中51单片机写一个八个数码管中选用任意相邻两个数码管,用来循环显示0-99之间的数据,数据显示间隔为0.5s。


学习内容:

        随机数码管 00-99  循环0.5s  显示。

       数码管是一种数字显示器件,它由多个发光二极管(LED)组成,可以显示数字、字母、符号等。数码管的原理是利用LED的发光特性,通过控制LED的亮灭来显示数字等信息。数码管通常有共阳极和共阴极两种类型,其中共阳极的数码管的所有LED的阳极都连接在一起,而共阴极的数码管的所有LED的阴极都连接在一起。在使用数码管时,需要根据具体的型号和类型来确定引脚的使用方式,一般来说,数码管的引脚包括电源引脚、控制引脚和数据引脚等。其中电源引脚用于连接电源,控制引脚用于控制数码管的亮灭和显示内容,数据引脚用于传输显示的数字等信息。在使用数码管时,需要根据具体的引脚定义和使用方式来进行连接和控制。

51单片机八段数码管显示数字,单片机与疑难杂症,51单片机,嵌入式硬件,单片机


延时的方式完成:

        简单用延时完成!

#include <reg52.h>

#define uint unsigned int
#define uchar unsigned char

sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;

uchar code table[]={
    0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f
};

void delay(uint z) {
    uint x,y;
    for(x=z;x>0;x--)
        for(y=110;y>0;y--);
}

void led_q(int i)
{
	int j;
	for(j=0;j<2;j++)
	{
		LSA=0; 
		LSB=0; 
		LSC=0; 	
	}
	P0=table[i%10];
	delay(10);

	for(j=0;j<2;j++)
	{
		LSA=1; 
		LSB=0; 
		LSC=0; 	
	}
	P0=table[i/10];
	delay(10);
	P0 = 0x00;
}

void main()
{
    uchar i=0,j=0;
    while(1)
    {
	
		for(j=0;j<25;j++)
		{
			led_q(i);
		}	
		i++;
		if(i == 100)
			i=0;
    }
}

定时器的方式完成:

        代码如下:文章来源地址https://www.toymoban.com/news/detail-724703.html



#include <reg52.h>

#define uint unsigned int
#define uchar unsigned char

sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;

uchar code table[]={
    0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f
};

void delay(uint z) {
    uint x,y;
    for(x=z;x>0;x--)
        for(y=110;y>0;y--);
}

void led_q(int i)
{
	int j;
	for(j=0;j<2;j++)
	{
		LSA=0; 
		LSB=0; 
		LSC=0; 	
	}
	P0=table[i%10];
	delay(10);

	for(j=0;j<2;j++)
	{
		LSA=1; 
		LSB=0; 
		LSC=0; 	
	}
	P0=table[i/10];
	delay(10);
	P0 = 0x00;
}

void main()
{
    uchar i=0,j=0;
    TMOD = 0x01; //设置定时器0为模式1
    TH0 = 0xFC; //给定时器赋初值,定时1ms
    TL0 = 0x67;
    TR0 = 1; //启动定时器0
    while(1)
    {
        if(TF0 == 1) //判断定时器是否溢出
        {
            TF0 = 0; //清除TF0标志
            TH0 = 0xFC; //给定时器赋初值,定时1ms
            TL0 = 0x67;
            for(j=0;j<25;j++)
            {
                led_q(i);
            }   
            i++;
            if(i == 100)
                i=0;
        }
    }
}

成功就是一把梯子,双手插在口袋的人是爬不上去的。

到了这里,关于【51单片机-数码管】:用51单片机写一个八个数码管中选用任意相邻两个数码管,用来循环显示0-99之间的数据,数据显示间隔为0.5s的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 二、51单片机控制数码管

    (1)数码管的外观: 数码管可分为单个的,联排的(2位、4位、8位) (2)数码管的作用: 数码管是显示器件,是用来显示数字的。 (1)数码管的亮灭是由内部的照明LED的亮灭实现的。 (2)一位数码管内部有八颗LED灯,利用内部的LED灯的亮和灭让数码管显示不同的数字。 (1)驱动方法的

    2023年04月09日
    浏览(45)
  • 51单片机静态数码管显示

    51单片机静态数码管显示 数码管是一种简单、廉价的显示器,是由多个发光二极管封装在一起组成“8”字型的器件。   数码管从上右下左中有ABCDEFGDP,共10个引脚,其中3、8号引脚是连接到所有二极管的阴极,A二级管对应7号和38号引脚,B二极管对应6号和38号引脚。所有阴极

    2024年02月08日
    浏览(66)
  • 51单片机数码管显示(三)

    目录 一、静态数码管显示 1、一位数码管 (1)LED数码管各段名称 (2)数码管引脚定义 (3) 共阴极(89C52RC单片机LED数码管采用共阴极方式) (4)共阳极 2、四位一体数码管 (1)四位一体数码管引脚定义 (2)上面共阴极和下面共阳极  3、数码管模块原理图详解 4、编写

    2024年02月08日
    浏览(39)
  • 51单片机入门————数码管显示

    我们在马路上看到的红绿灯,就是由数码管来实现的,就是其中可能加入了一些延时和转换 数码管是通过控制138译码器与74HC245来控制数码管的亮灭与数字的显示 我们先讨论一个数码管 数码管有共阳极和共阴极,我们现在使用的STC89C52是共阴极的,说明数码管共用阴极 上面是

    2024年02月13日
    浏览(42)
  • 51单片机(数码管可调时钟)

    1.数码管(共阴极)如何显示数字:位选+段选(单个) 位选:138译码器通过P22、P23、P24三个端口输入二进制数(011、000等)来选择连同译码器右边的哪一条线,而这些线又分别连着数码管的LED12345678、决定选择哪一个来显示数字 段选:决定输出什么数字,数码管下方又连着一

    2024年02月05日
    浏览(45)
  • 51单片机控制数码管动态显示

    首先打开proteus,导入8位数码管和89c51。 然后如图连线,分清断码和位码, 断码就是一个数码管的7个LED灯。 位码:就是第几位显示,由于是共阴极,所以哪位接地就显示哪位。 下面通过改变位码的接线就可以看出不同的效果 下面就编写程序,从第1位到第8位显示从0到7的八

    2023年04月21日
    浏览(43)
  • 51单片机:数码管和矩阵按键

    目录 一:动态数码管模块 1:介绍  2:共阴极和共阳极 A:共阴极 B:共阳极 C:转化表  3:74HC138译码器 4:74HC138译码器控制动态数码管(位选) 5:数码管显示完整代码 6:74HC573锁存器 A:基本点 B:原理图介绍 c:74HC573控制数码管代码 二:矩阵按键模块 1:介绍 2:原理图  3:矩阵按键代码       

    2024年02月15日
    浏览(46)
  • 51单片机矩阵键盘——数码管显示

    当我们熟悉了数码管的位选与段选,并了解的矩阵键盘的扫描之后就可以编写程序了。 按下矩阵键盘S1并松开,数码管第一位(LED8)显示0;按下矩阵键盘S2并松开,数码管第一位显示1;...按下矩阵键盘S16并松开,数码管第一位显示F; 矩阵键盘扫描(输入扫描)     原理:

    2024年02月11日
    浏览(52)
  • 51单片机数码管显示0-9

    初级代码:使用延时函数,延时; 进阶代码:使用定时器,延时:51单片机定时器控制数码管显示_学习笔记吧的博客-CSDN博客 初级代码: 电路接线图:  

    2024年02月12日
    浏览(39)
  • 51单片机动态数码管显示自己学号

    实验题目:使用51单片机实现动态数码管显示自己8位学号,例如20220018 在此原理图又分两种连接方式: 第一种是8位数码管接38译码器来减少端口使用。 第二种是,没有端口要求接好就可以那就是,把位选端接P3口,段选端接P0口,这样占用端口多,一般实验都是使用第一种接

    2024年02月13日
    浏览(55)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包