【51单片机】动态数码管

这篇具有很好参考价值的文章主要介绍了【51单片机】动态数码管。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

0、前言
参考:
普中51单片机开发攻略–A2.pdf
【51单片机】动态数码管,STC51单片机,51单片机,嵌入式硬件,单片机

1、数码管介绍

上一章我们主要是介绍一位数码管的内部结构及控制原理。下面我们再来介 绍下多位数码管及动态显示原理的相关知识。

1.1 多位数码管简介

【51单片机】动态数码管,STC51单片机,51单片机,嵌入式硬件,单片机

2、74HC245 和 74HC138 芯片介绍

【51单片机】动态数码管,STC51单片机,51单片机,嵌入式硬件,单片机

2.1 74HC245 芯片简介

【51单片机】动态数码管,STC51单片机,51单片机,嵌入式硬件,单片机
【51单片机】动态数码管,STC51单片机,51单片机,嵌入式硬件,单片机

2.2 74HC138 芯片简介

【51单片机】动态数码管,STC51单片机,51单片机,嵌入式硬件,单片机
【51单片机】动态数码管,STC51单片机,51单片机,嵌入式硬件,单片机
【51单片机】动态数码管,STC51单片机,51单片机,嵌入式硬件,单片机

3、硬件设计

【51单片机】动态数码管,STC51单片机,51单片机,嵌入式硬件,单片机
【51单片机】动态数码管,STC51单片机,51单片机,嵌入式硬件,单片机

4、软件设计

本章所要实现的功能是:控制动态数码管从左至右显示数字 0-7。

为了正规点,工程弄个正规文件夹:
https://blog.csdn.net/qq_43625266/article/details/122095932

【51单片机】动态数码管,STC51单片机,51单片机,嵌入式硬件,单片机文章来源地址https://www.toymoban.com/news/detail-811298.html

main.c

#include <reg52.h>
#include <intrins.h>
#include "delayms.h"

typedef unsigned int u16; //对数据类型进行声明定义 
typedef unsigned char u8; 
sbit LSA=P2^2; 
sbit LSB=P2^3; 
sbit LSC=P2^4; 

u8 code smgduan[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};// 显 示 0~F 的值 
/*************** * 函 数 名 : delay * 函数功能 : 延时函数,i=1 时,大约延时 10us **************/ 

/*************** * 函 数 名 : DigDisplay * 函数功能 : 数码管动态扫描函数,循环扫描 8 个数码管显示 **************/ 
void DigDisplay() { u8 i; for(i=0;i<8;i++) { switch(i) //位选,选择点亮的数码管, 
	{ case(0): 
			LSA=1;LSB=1;LSC=1; break;//显示第 0 位 
		case(1): 
			LSA=0;LSB=1;LSC=1; break;//显示第 1 位 
		case(2): 
			LSA=1;LSB=0;LSC=1; break;//显示第 2 位 
		case(3):
			LSA=0;LSB=0;LSC=1; break;//显示第 3 位 
		case(4): 
			LSA=1;LSB=1;LSC=0; break;//显示第 4 位 
		case(5): 
			LSA=0;LSB=1;LSC=0; break;//显示第 5 位 
		case(6): 
			LSA=1;LSB=0;LSC=0; break;//显示第 6 位 
		case(7): 
			LSA=0;LSB=0;LSC=0; break;//显示第 7 位 
	} 
	P0=smgduan[i];//发送段码 
	delayms(1); //间隔一段时间扫描 
	P0=0x00;//消隐 
	} 
} 
/************ * 函 数 名 : main * 函数功能 : 主函数 *输 入 :无 *输 出 :无*********************/ 
void main() 
	{ 
		while(1) 
		{ 
			DigDisplay(); //数码管显示函数 
			} 
	}

delayms.c

#include "delayms.h"

void delayms(unsigned int xms) //delay x ms
{
	unsigned int x,y;
	for(x=xms;x>0;x--)
		for(y=124;y>0;y--);
}

delayms.h

#ifndef _DELAYMS_h_
#define _DELAYMS_h_

void delayms(unsigned int xms); //delay x ms

#endif

到了这里,关于【51单片机】动态数码管的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 【51单片机】数码管的静态与动态显示(含消影)

    数码管在现实生活里是非常常见的设备,例如 这些数字的显示都是数码管的应用。 注意 :数码管有 共阴 和 共阳 的区分。 在自己设计电路时,应当选用一种数码管时需要选用相应的译码器(共阴配共阴,共阳同理) 数码管的使用: 数码管其实就是一段一段LED构成的,51单

    2024年01月19日
    浏览(41)
  • 学习笔记|小数点控制原理|数码管动态显示|段码跟位码|STC32G单片机视频开发教程(冲哥)|第十集:数码管动态显示

    上述图片引用自:51单片机初学2-数码管动态扫描 用一排端口来控制段码,需要显示哪几个就点亮哪几个段,和看电影一样,一个一个的打开,关闭,一个个的画面,组成动画。 具体的控制的流程如图所示,N表示有几个数码管! 其中需要注意每个延时不能太短,我们这边程

    2024年02月07日
    浏览(44)
  • C51单片机-共阳极数码管循环显示数字0至9,共阴极数码管循环显示5201314(动态)

    keil uVision4界面: proteus仿真界面:

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

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

    2024年01月21日
    浏览(49)
  • 二、51单片机控制数码管

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

    2023年04月09日
    浏览(52)
  • 51单片机入门————数码管显示

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

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

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

    2024年02月05日
    浏览(50)
  • 51单片机静态数码管显示

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

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

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

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

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

    2024年02月11日
    浏览(55)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包