51单片机_动态数码管显示
动态数码管显示(延时函数)
编程原理
利用延迟函数,每秒钟数码管加1显示,一直加到250。延时函数精度不高,最好使用定时器中断。
数码管动态显示原理
动态数码管显示有段选和位选。段选是单个数码管显示的数字,位选是哪一个数码管亮。利用人眼的视觉效应,只要数码管切换的足够快,人眼就无法分辨出来,就会认为数码管一直保持亮,一般为20ms。
全部代码
#include <reg52.h>
#define uint unsigned int //宏定义
#define uchar unsigned charuchar number;
uint j,k;
uint y;void delay(uint x); //延迟函数声明
void init(); //初始化函数声明
void display_init(); //显示初始化函数声明
void display(uchar z); //显示函数声明//共阴极数码管编码
uchar code shumaguan[]= {
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f};sbit s0=P1^0; //位选0
sbit s1=P1^1; //位选1
sbit s2=P1^2; //位选2void main()
{init(); //初始化display_init(); //显示初始化while(1){for(j=y;j>0;j--) //一秒钟个位数字+1{display(number);}number++;if(number>250){number=0;} }
}void delay(uint x) //延迟函数定义
{uint m,n;for(m=x;m>0;m--){for(n=110;n>0;n--);}
}void init() //初始化函数定义
{y=95;number=0;
}void display_init() //显示初始化函数定义
{s0=0;P0=0x3f;s1=1;s2=1;delay(5);s1=0;P0=0x3f;s0=1;s2=1;delay(5);s2=0;P0=0x3f; s0=1;s1=1;delay(5);
}void display(uchar z) 显示函数定义
{s0=0; //打开位选0s1=1;s2=1;P0=shumaguan[z/100]; //百位delay(5);s1=0; //打开位选1s0=1;s2=1;P0=shumaguan[z%100/10]; //十位delay(5);s2=0; //打开位选2s0=1;s1=1;P0=shumaguan[z%10]; //个位delay(5);
}
51单片机_动态数码管显示相关推荐
- 51单片机入门——动态数码管显示详解
51单片机:动态数码管显示 - 模块图 - 显示原理 – 消抖 静态数码管技术 + 人眼视觉停留 显示原理类似于以前的 胶片机放影视,也就是只要我切换的速度足够快你就看不出来其实我是一次次显示的(滑稽 ...
- 51单片机静态动态数码管显示
51单片机静态动态数码管显示 通过此实训了解动态数码管的显示原理,掌握编码方法.共阴极和其阴极数码管的不同之处及常用设计方法. 实训设备 这里使用的377锁存器模块控制的数码管下面就是电路图 显示内容 ...
- 51单片机c语言显示hello,51单片机控制动态数码管显示12345和HELLO字样的设
1.实验任务 如图4.13.1所示,P0端口接动态数码管的字形码笔段,P2端口接动态数码管的数位选择端,P1.7接一个开关,当开关接高电平时,显示"12345"字样:当开关接低电平 ...
- 51单片机定时器动态数码管显示0-999999
注意事项: 1.数码管真值表是共阳还是共阴,需要看你自己所接的原理图定. 2.原理图1处的E1E2E3,你可以接在两个端口上(这样你在代码6.7行就需要把端口赋值给ADDR3和ENLED)也可以像我一 ...
- 单片机入门——动态数码管显示
前言 在实际应用中通常都需要显示多位数值,如果采用静态数码管显示就不够好,因此就需要采用另外一种显示方式,即数码管动态显示.开发板上板载2 个四位一体的共阴数码管,接下来我们就来介绍下如何使用51 单 ...
- 【51单片机】七段数码管显示实验+详细讲解
[51单片机]七段数码管显示实验 前言 一.兵马未动,粮草先行--认识七段数码管 1.关于显示器 2.七段数码管 3.七段数码管的结构 4.数码管显示方法 二.数码管显示程序 1.静态显示 效果 2. ...
- 单片机学习笔记————51单片机实现带数码管显示的象棋比赛专用计时器
一.使用proteus绘制简单的电路图,用于后续仿真 二.编写程序 /***************************************************************** ...
- 单片机学习笔记————51单片机实现带数码管显示的加法简易计算器
一.使用proteus绘制简单的电路图,用于后续仿真 二.编写程序 /***************************************************************** ...
- 51单片机:动态数码管
51单片机:动态数码管 目录 51单片机:动态数码管 一.显示原理 1.简介 2.静态显示与动态显示 二.原件使用 1. 74HC138芯片 2. 74HC245芯片 三.硬件连接 四.程序设计 五. ...
最新文章
- 使用 Docker 部署 Grafana + Prometheus 监控 MySQL 数据库
- h3c防火墙u200配置命令_网络设备配置——H3C命令行基本操作【分级】
- 400 bad request 原因_煤气柜腐蚀原因及防腐措施
- Java成神之路——一文搞懂CAS
- django.template.exceptions.TemplateSyntaxError: ‘staticfiles‘ is not a registered tag library. Must
- 《美团机器学习实践》—— 读后总结
- 当心:您可能会使用免费的Web辅助功能插件获得不需要付费的东西
- Microsoft Visual C++ 9.0 is required Unable to find vcvarsall.bat 解决办法
- openssl 加密解密
- Qt调用工业相机之映美精相机
- openCV python 颜色识别
- 庄子 独与天地精神往来,而不敖倪于万物
- oracle nav函数,WordPress函数wp_nav_menu()怎样用_CMS体系建站教程
- github精选awsome
- Html基本标签(斜体em、空格nbsp、段落p、标题h1、换行br、大于号gt、小于号lt、引号quot、版权符号copy、图片img、水平线hr)
- SRE Google运维解密——第二章Goolgle的生成环境介绍
- Java三兄弟之继承
- java怎么运行安卓程序_在安卓手机上怎么运行java的应用程序
- Python编程PTA题解——换硬币
- 三星手机拍照后 图片翻转