pic数码管动态扫描显示程序
扫描二维码
随时随地手机看文章
#include
__CONFIG(0x1832);
//芯片配置字,看门狗关,上电延时开,掉电检测关,低压编程关,加密,4M晶体HS振荡
voiddelay();//delay函数申明
voidinit();//I/O口初始化函数申明
constcharTABLE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92};//定义常数0-5的数据表格
voidmain()//主函数
{
while(1)//死循环,让数码管持续点亮
{
init();//调用初始化函数
PORTD=TABLE[0];//D口输出数据表格第1个数据0
PORTA=0X3E;//点亮第1位数码管
delay();//延时一定时间,保证数码管亮度
PORTD=TABLE[1];//显示数据1(同数据0)
PORTA=0X3d;
delay();
PORTD=TABLE[2];//显示数据2(同数据0)
PORTA=0X3b;
delay();
PORTD=TABLE[3];//显示数据3(同数据0)
PORTA=0X37;
delay();
PORTD=TABLE[4];//显示数据4(同数据0)
PORTA=0X2f;
delay();
PORTD=TABLE[5];//显示数据5(同数据0)
PORTA=0X1f;
delay();
}
}
voidinit()//I/O口初始化函数
{
TRISA=0X00;//设置A0输出,其他输入
TRISD=0X00;//设置D口输出
ADCON1=0X07;//设置A口为普通I/O口
PORTA=0xff;
PORTD=0xff;//先熄灭所有显示
}
voiddelay()//延时程序
{
inti;//定义整形变量
for(i=0x100;i--;);//延时
}