基于MSP430F149的软时钟.docxVIP

  • 2
  • 0
  • 约1.98千字
  • 约 4页
  • 2018-03-08 发布于河南
  • 举报
基于MSP430F149的软时钟

#include msp430x14x.htypedef unsigned char uchar;typedef unsigned char uint;uchar miao,fen,shi,pmiao,pfen,pshi,miao1,miao2,fen1,fen2,shi1,shi2;#define wei_h P5OUT|= BIT5#define wei_l P5OUT= ~BIT5#define duan_l P6OUT = ~BIT6#define duan_h P6OUT |= BIT6#define SetTime(S,F,M) {shi=S;fen=F;miao=M;}uchar table[16] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};void display();void delay(uint);void main(void){ P6DIR |= BIT2;P6OUT |= BIT2; P5DIR = 0xff; P4DIR = 0xff; P6DIR=0XFF; P5OUT = 0x00; P4OUT = 0xff; WDTCTL = WDTPW + WDTHOLD; CCR0=32768-1; TACTL=TASSEL_1+MC_1; CCTL0|=CCIE; _EINT();SetTime(12,59,50); while(1) {display(); }} #pragma vector=TIMERA0_VECTOR__interrupt void TimerA(void){miao++;if(miao==60) {miao=0;fen++;if(fen==60) {fen=0;shi++;if(shi==24)shi=0; } }}void display(){ //ucharshi,ge;duan_h; P4OUT = 0x40;duan_l; P4OUT=0XFF; wei_h; P4OUT = 0Xdf; wei_l;delay(5);duan_h; P4OUT = 0x40;duan_l; P4OUT=0XFF; wei_h; P4OUT = 0Xfb; wei_l;delay(5);if(pmiao!=miao) {pmiao=miao; miao1=miao/10; miao2=miao%10; }duan_h; P4OUT = table[miao1]; duan_l; P4OUT=0XFF; wei_h; P4OUT = 0xBF;wei_l;delay(5);duan_h; P4OUT = table[miao2];duan_l; P4OUT=0XFF; wei_h; P4OUT = 0X7F; wei_l;delay(5);if(pfen!=fen) {pfen=fen; fen1=fen/10; fen2=fen%10; }duan_h; P4OUT = table[fen1]; duan_l; P4OUT=0XFF; wei_h; P4OUT = 0xf7;wei_l;delay(5);duan_h; P4OUT = table[fen2];duan_l; P4OUT=0XFF; wei_h; P4OUT = 0xef; wei_l;delay(5);if(pshi!=shi) {pshi=shi; shi1=shi/10; shi2=shi%10; }duan_h; P4OUT = table[shi1]; duan_l; P4OUT=0XFF; wei_h; P4OUT = 0xfe;wei_l;delay(5);duan_h; P4OUT = table[shi2];duan_l; P4OUT=0XFF; wei_h; P4OUT = 0Xfd; wei_l;delay(5);}void delay(uintxms){uinti,j;for(i=xms;i0;i--)for(j=110;j0;j--);}

文档评论(0)

1亿VIP精品文档

相关文档