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

📄 msp430f247buhuozijia.c

📁 msp430f247的捕获功能实现自加
💻 C
字号:
#include "msp430x24x.h"
#define  Latch_addr_H    P5OUT|=0x10
#define  Latch_addr_L    P5OUT&=0xef
#define  Latch_data_H    P5OUT|=0x20
#define  Latch_data_L    P5OUT&=0xdf
#define  uchar      unsigned char
unsigned   int  frequent=0;
unsigned  int p[4];

const  uchar tab[]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09,0xfe};
void LED_Disp(uchar pos,uchar value);
void delay(unsigned int i);
void  xianshi(void);

void main(void)
{
  WDTCTL=WDTPW+WDTHOLD;
  unsigned int i;
  for(i=0;i<2000;i++);
  
 /* BCSCTL1|=XTS;
  do{
    IFG1&=~OFIFG;
    for(i=0xff;i>0;i--);
  }
  while(IFG1&OFIFG);
  BCSCTL2|=SELM_3;*/
P1DIR=0x80;

P1SEL=0x02;
 // P1IES|=BIT1;
 // P1IFG=0x00;
  
  P5DIR |= 0x30;                        // Set P5.0 to output direction
  P4DIR |= 0xff;
 /* CCR0=32768;
  CCTL0=CCIE;
  TACTL=TASSEL_1+MC_1;*/
  CCTL0=CM_2+SCS+CCIS_0+CAP+CCIE;
  TACTL=TASSEL_2+MC_2;
  _EINT();
 
while(1)
{   xianshi();



}  

}
 #pragma  vector=TIMERA0_VECTOR
__interrupt  void TimerA0(void)
{  frequent++;

   P1OUT^=BIT7;
  
}  
   
/* #pragma vector=PORT1_VECTOR
__interrupt  void port1(void)
{  
  a++;
}  
*/
void delay(unsigned int i)
{ 
   while(i--);
  }
void LED_Disp(uchar pos,uchar value) //数码管显示
{
  
  P5OUT=0x00; 
  P4OUT=0x10<<(pos-1);//数码管位选 
  Latch_addr_H;//片选U1
  Latch_addr_L;//反选
    
  if( value<=9)
  {
    P4OUT=tab[value];
    Latch_data_H;//片选U2
    Latch_data_L;//反选
  }
}
void xianshi(void)
{ 
   
   

   p[0]=frequent/1000;
   p[1]=frequent%1000/100;
   p[2]=frequent%100/10;
   p[3]=frequent%10;
   LED_Disp(1,p[3]);
   delay(800);
   LED_Disp(2,p[2]);
   delay(800);
   LED_Disp(3,p[1]);
   delay(800);
   LED_Disp(4,p[0]); 
   delay(800);   
}

⌨️ 快捷键说明

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