protues8.6基于51单片机数码管的静态显示仿真图及程序
单片机源程序如下:
- #include<reg51.h>
- #include<intrins.h>
- #define uchar unsigned char
- #define ulong unsigned long
- #define uint unsigned int //宏定义
- uchar code DSY_CODE[]={0xf9,0x90,0x90,0x80,0xc0,0xb0,0xa4,0x82};//数码管段选数字依次为19980326
- uchar Digits[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//数码管位选决定哪一个数码管亮
- void delay(uint xms)//延时函数可通过修改下面delay()中的数值修改延时时间
- {
- uint i,j;
- for(i=xms;i>0;i--)
- for(j=50;j>0;j--);
- }
- void main()
- {
- uchar i;
- while(1)
- {
- for(i=0;i<8;i++)//循环1到8位数码管依次显示0到7
- {
- P2=Digits[i];
- P0=DSY_CODE[i];
- delay(17);
- P2=0x00;//关闭位选,实物操作时无需写这句,但仿真读取速率很高,所以要加。
- }
-
- }
- }
复制代码
所有资料51hei提供下载:
数码管仿真.zip
(84.41 KB, 下载次数: 40)
|