数码管的十位静态显示和动态显示
来源:互联网 发布:淘宝答题红包有限制 编辑:程序博客网 时间:2024/05/21 09:55
#include<reg52.h>
sbit DTube_OneP=P1^0;
sbit DTube_TenP=P1^1;
sbit DTube_HundredP=P1^2;
sbit DTube_KiloP=P1^3;
sbit SPK=P1^5;
void main()
{
SPK=1;
DTube_KiloP=0;
DTube_HundredP=0;
DTube_TenP=1;
DTube_OneP=0;
P0=0x80;
while(1);
}
这段代码显示的是数码管十位上的静态显示。写这个程序的目的,主要是为了重视命名的规范。让人看程序一目了然。
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
//编码
uchar code table[]=
{0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
sbit SMG_G=P1^0;
sbit SMG_S=P1^1;
sbit SMG_B=P1^2;
sbit SMG_Q=P1^3;
void delay(uint smx);
void main()
{
uchar num;
while(1)
{
SMG_G=1; //位选;
SMG_S=1;
SMG_B=1;
SMG_Q=1;
for(num=0;num<10;num++) //段选;
{
P0=table[num];
delay(500); //延时;
}
}
}
void delay(uint smx)
{
uint i,j;
for(i=smx;i>0;i--)
{
for(j=110;j>0;j--);
}
}
四个数码管同时点亮,依次显示0-9,时间间隔0.5s,循环下去。
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
//编码
uchar code table[]=
{0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
sbit SMG_G=P1^3;
sbit SMG_S=P1^2;
sbit SMG_B=P1^1;
sbit SMG_Q=P1^0;
uchar SMG_No=0;
void delay(uint smx);
void main()
{
//uchar num;
while(1)
{
SMG_G=0; //位选初始化;
SMG_S=0;
SMG_B=0;
SMG_Q=0;
SMG_No=1;
P0=0xff;
SMG_G=1; //位选;
P0=table[SMG_No];
delay(1);
SMG_No++;
SMG_G=0;
SMG_S=1;
P0=table[SMG_No];
delay(1);
SMG_No++;
SMG_S=0;
SMG_B=1;
P0=table[SMG_No];
delay(1);
SMG_No++;
SMG_B=0;
SMG_Q=1;
P0=table[SMG_No];
delay(1);
SMG_No++;
SMG_Q=0;
}
}
void delay(uint smx)
{
uint i,j;
for(i=smx;i>0;i--)
{
for(j=110;j>0;j--);
}
}
这个程序是用来动态显示数码管的。其中变量的初始化很重要,如果不设置,那么显示的时候会出现一些乱的显示。另外这里面,有个概念要注意:P0=oxff,专业名称叫消影;
- 数码管的十位静态显示和动态显示
- 51单片机 数码管的静态显示和动态显示
- 数码管的静态显示
- 5.7 数码管的静态显示
- 6.4 数码管的动态显示
- 静态数码管显示
- 静态数码管显示
- 数码管静态显示
- 外部中断和数码管动态显示的应用
- 数码管的显示和发光二极管
- 数码管动态显示字符
- 单片机数码管动态显示
- 动态数码管显示
- 动态数码管显示
- 数码管动态显示
- 数码管动态显示
- 数码管动态显示
- 数码管动态显示123456
- win7 virtualbox4.2.18 vdi 克隆 导入
- Java多线程同步问题的探究
- maven 与 eclipse 结合运用 创建web项目
- 常见面试题
- java笔试题---杂记
- 数码管的十位静态显示和动态显示
- cxGrid入门级教程
- POJ 1753 Flip Game
- Linux 下MySQL的基本命令
- 7.0
- 博客要搬家了
- hadoop细节---Mapreduce过程详解
- .模拟状态为active的日志损坏的数据恢复实验(不完全恢复)
- [light oj 1032]Fast Bit Calculations[数位DP]