⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main0.c

📁 数据顺序显示
💻 C
字号:
//#include "msp430x41x.h"//"msp430xE42x.h"
#include "LCD.h"
#include "msp430xE42x.h"
#define uchar  unsigned char
unsigned char  ss[10]={char_0,char_1,char_2,char_3,char_4,char_5,char_6,char_7,char_8,char_9};
uchar lcd[3];
unsigned long hh,a=0;
unsigned long b;

void delay(unsigned int aa)
{
  unsigned int i;
  for(i=0;i<aa;i++);
}

unsigned long Hex2BcdLong(unsigned long hex)
{
    unsigned long temp;
    unsigned long ret;
    unsigned char ii;

    ret=0;
    for(ii=0;ii<8;ii++)
    {
        ret>>=4;
        temp=hex%10;
        temp<<=28;
        ret|=temp;
        hex=hex/10;
    }
    return(ret);
}

unsigned long count_add(unsigned long adda)
{
  unsigned long rs;
  adda += 1;
  rs = Hex2BcdLong(adda);
  return (rs);
}

void main(void)
{
  unsigned int i;
  WDTCTL = WDTPW + WDTHOLD;
  LCDCTL = LCDON + LCD4MUX + LCDSG0_3;
  BTCTL  = BTHOLD + BTFRFQ1;
  TACTL=TACLR+TASSEL_1+ID_3;
  TACCR0=2048;
  TACCTL0=CCIE;
  TACTL|=MC_1;
  //_BIS_SR(LPM0_bits + GIE);
  P1DIR = 0xff;
  for(i=0;i<20;i++)
  {
    LCDMEM[i] = 0x00;
  }
  b=0;
  while(1)
  {
    _EINT();
   
   if(a==1)
   {
    a=0;
    b=b+1;
    hh=count_add(b);
    lcd[0]= hh&0xff;
    lcd[1]= (hh>>8)&0x00ff;
    lcd[2]= hh>>16;
#if 0
   unsigned char *pp;
   pp = (unsigned char *)&hh;
   lcd[0] = *pp;
   lcd[1] = *(pp+1);
   lcd[2] = *(pp+2);
#endif
          LCDMEM[9] = ss[lcd[0] & 0x0F];
          LCDMEM[8] = ss[(lcd[0] >>4)&0xF];
          LCDMEM[7] = ss[lcd[1] & 0x0F];
          LCDMEM[6] = ss[(lcd[1] >>4)&0xF];
          LCDMEM[5] = ss[lcd[2] & 0x0F];
          LCDMEM[4] = ss[(lcd[2] >>4)&0xF];
          if(LCDMEM[4]==ss[0])
          {
            LCDMEM[4]=0x00;
            if(LCDMEM[5]==ss[0])
            {
              LCDMEM[5]=0x00;
              if(LCDMEM[6]==ss[0])
              {
                LCDMEM[6]=0x00;
                if(LCDMEM[7]==ss[0])
                {
                  LCDMEM[7]=0x00;
                  if(LCDMEM[8]==ss[0])
                  {
                    LCDMEM[8]=0x00;
                  }
                }
              }
            }
          }  
    P1OUT ^= BIT2;//0x08;
   }
  }
}
#pragma vector=TIMERA0_VECTOR
__interrupt void Timer_A (void)
{
 a=1;
 TAR=0;
 }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -