C51单片机数码管显示数字实现
代码部分:
#include <STC15F2K60S2.H>
#include <INTRINS.H>
#define Y(n) P2=P2&0x1F|(n<<5)
unsigned char digit[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
unsigned char num[8];
void buzz_off()
{
P0=P0&~(1<<6);
Y(5);
Y(0);
}
void Delay2ms() //@12.000MHz
{
unsigned char i, j;
i = 24;
j = 85;
do
{while (--j);
} while (--i);
}
void digit2num(unsigned long n)
{
char i;
for(i=7;i>=0;i–)
{
num[i]=n%10;
n/=10;
}
}
void display()
{
static char i=0;
P0=(1<<i);
Y(6);
Y(0);
P0=digit[num[i]];
Y(7);
Y(0);if(++i==8)i=0;
}
int main()
{
unsigned long n=12345678UL;
buzz_off(); while(1)
{ digit2num(n--);display();Delay2ms(); }
}
C51单片机数码管显示数字实现相关推荐
- c51数码管显示汇编语言,单片机数码管显示数字加减汇编程序
用7SEG-MPX6-CA六位数码管显示 晶振=12MHZ,缓冲单元=30H,31H,32H,一个加一键减一键!没用31,32. MOV R7,#89H MOV DPTR,#TAB MOV 32H,# ...
- 【51单片机快速入门指南】2.2:任意位/任意长度数码管显示数字、小数
目录 源码 Tube.c Tube.h main.c 效果 8位数码管 正整数 负整数 正小数 负小数 6位数码管 正整数 负整数 正小数 负小数 4位数码管 正整数 负整数 正小数 负小数 普中51 ...
- 基于51单片机数码管显示
基于51单片机数码管显示 ## 数码管显示原理 数码管(LED Segment Displays)由多个发光二极管封装在一起组成"8"字型的器件,引线已在内部连接完成,只需引出它们 ...
- 仿真软件proteus构建七段数码管显示数字0-9实验
七段数码管显示原理研究在前一篇博客中已经阐述过,就是利用7个数码管构建一个"8"字形,然后利用数字的形状特点,依次点亮某一些段,就可以显示数字了. 七段数码管显示数字还是二极管发光 ...
- 加一计时器——每隔1s六位数码管显示数字加1,直至999999,之后归零,重新开始。
加一计时器 2021-01-23,51单片机学习笔记 每隔1s六位数码管显示数字加1,直至999999,之后归零,重新开始. 代码: #include <reg52.h> #define ...
- 单片机c语言数码管显示5,51单片机数码管显示实验报告(5页)-原创力文档
51单片机数码管显示实验 实验内容: 编写程序让8只数码管初始显示0,每隔大约1s加1显示(可以用延时函数实现),到数码管显示9后,再从0开始显示,如此循环反复. C语言程序 #include #de ...
- c51单片机数码管的控制
电路图 注:实际中,我单片机的74HC573电路接法与P0端接反了 138译码器资料:https://pan.baidu.com/s/1COTcutsnMxMSc8tq0M2yVw 密码:1jww 1 ...
- 用VBA模拟7段数码管显示数字
上次在PPT中用VBA编制了一个计时器,实现了倒计时功能,但是我觉得这个计时器不够酷炫,如果采用7段数码管显示数字,那就够COOL了.为了实现这个功能,我把任务进行了分解,今天先完成第一步,如何用VB ...
- c语言共阴极数码管数字6,共阴数码管 显示数字 C语言程序
共阴数码管显示数字C语言程序#include void Delay(unsigned char a) { unsigned char i; while( --a != 0) { for(i = 0; ...
- 51单片机数码管显示60秒倒计时(C语言)
51单片机数码管显示60秒倒计时(C语言) 基于普中51单片机开发板,运用定时器/计数器0和1,实现60秒的倒计时和LED灯0.5s间隔闪烁 文章目录 51单片机数码管显示60秒倒计时(C语言) 前言 ...
最新文章
- html优化网站的方法,利用HTML优化加快网页速度方法介绍
- c盘users的用户名怎么改_iphone备份太大,严重挤占C盘空间怎么办?不用额外软件将备份放在C盘之外的教程...
- Redis中的Sentinel故障转移
- 美团外卖客户端高可用建设体系
- Google 被祭天了!
- Linux常用文件拷贝方式:scp,rsync,expect
- mysql explain ref列_mysql explain中的列
- 强制更新LYNC客户端的地址簿
- 图像处理(MATLAB及FPGA)实现基础原理(持续更新)
- ctags的如何生成tags文件
- 为什么红黑树的时间复杂度为lgn——渐进边界的证明
- 复杂性思维中文第二版 五、细胞自动机
- 美国服务器托管机房如何选择?
- 互动让综艺再进化,「黑科技」如何让这届年轻人身临其境做戏精?
- [django]从前端返回字符串,后端转换为字典,执行数据添加操作
- 【李宏毅《机器学习》2022】作业1:COVID 19 Cases Prediction (Regression)
- how do java play sql_讲解:Invadem、Java、Java、game mechanicsSQL|Processing
- python quit函数_在Python中启用quit函数的问题
- 微课录屏软件哪个好?小白也能快速上手
- VLAN的作用 与 基本原理
热门文章
- 读书笔记 - 自控力
- GitHub打不开解决方案
- 高德地图导航,不显示地图只有语音
- VBA 字典 键值为二维数组并不断增加行
- 域管理电脑自动锁屏html,简单两步让windows实现关闭屏幕时自动锁定电脑
- ubuntu 虚拟机复制粘贴文件(文本) windows
- MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型
- 最全的搜索引擎入口和分类目录入口
- 纳韦斯托克斯方程的推导_什么是纳维-斯托克斯方程?
- while 循环导致 IndentationError: unexpected unindent错误