MSP430数码管动态显示程序

时间:2014-08-11 06:00:18
【文件属性】:

文件名称:MSP430数码管动态显示程序

文件大小:2KB

文件格式:C

更新时间:2014-08-11 06:00:18

MSP430 数码管 动态显示

MSP430数码管动态显示程序 //数码管显示 1234 2011,7,21 #include /************************** P4.0----data P5.0----data_qian P5.1----data_bai P5.2----data_shi P5.3----data_ge ****************************/ #define DATADIR P4DIR //方向控制寄存器 #define DATAOUT P4OUT //输出控制寄存器 #define WEIDIR P5DIR //方向控制寄存器 #define WEIOUT P5OUT //输出控制寄存器 #define uchar unsigned char #define uint unsigned int uchar segment[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x67}; uint data=6789; //送给显示函数的要显示的变量 void delay() //延时。 { unsigned char m,n; for(m=0;m<30;m++) for(n=0;n<20;n++); } display(data) //数码管控制 { WEIOUT=0xFE; //控制显示段位,千 DATAOUT=segment[data/1000]; delay(); //延时,利用人眼的视觉延时达到显示 DATAOUT=0; //清屏 WEIOUT=0xff; //恢复原始状态 WEIOUT=0xFD;//百 DATAOUT=segment[data%1000/100]; delay(); DATAOUT=0; WEIOUT=0xff; WEIOUT=0xFB;//十 DATAOUT=segment[data%100/10]; delay(); DATAOUT=0; WEIOUT=0xff; WEIOUT=0xF7;//个 DATAOUT=segment[data%10]; delay(); DATAOUT=0; WEIOUT=0xff; } void main(void) { WDTCTL = WDTPW + WDTHOLD; //关闭看门狗 WEIDIR=0XFF; //设置寄存器方向,1为输出,0为输入。 WEIOUT=0X00; //段位初值为0 DATADIR=0xff; DATAOUT=0x00; while(1) //循环 display(data); //显示 }


网友评论