该单片机晶振频率11.0592MHZ
写了延时函数,使用unsigned int 作为参数类型时,不到两秒数码管显示完0-F,换成unsigned long int 约4秒显示一个数。
由于csdn无法上传视频,截两张图:
使用unsigned int :
使用unsigned long int :
代码:
#include <REGX52.H>
#define TUBE P0
typedef unsigned long int uint;
typedef unsigned char uchar;
uchar gNumArr[16] = {0X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,
0X7F,0X6F,0X77,0X7C,0X39,0X5E,0X79,0X71};
void delay_ms(uint ms_time){
uint us10_time = ms_time * 100;
while(us10_time--);
}
void main(){
uchar i = 0;
while(1){
for(i = 0; i < 16; i++){
TUBE = gNumArr[i];
delay_ms(1000);
}
}
}
你的代码发给我看一下啊