标题:
msp430f1611红外遥控
[打印本页]
作者:
wahaha2018
时间:
2018-7-12 18:56
标题:
msp430f1611红外遥控
#include<msp430f1611.h>
unsigned int new_cap=0;
unsigned int old_cap=0;
unsigned int chazhi=0;
unsigned int diff_array[32]; // RAM array for differences
unsigned int capture_array[32]; // RAM array for captures
unsigned int bu[32];
unsigned char index=0;
unsigned char count = 0;
unsigned int i,k,value;
void main( void )
{
// Stop watchdog timer to prevent time out reset
WDTCTL = WDTPW + WDTHOLD;
P1DIR&=~0X02;
P1SEL=0X02; //P1.1设置为Timer A 输入
P2DIR=0X01;
P2SEL|=0X01;
BCSCTL1 |= DIVA_3; // ACLK 8分频
CCTL0 = CM_3 + SCS + CCIS_0 + CAP + CCIE; // 捕获模式,上升沿捕获,同步捕获,选择Timer A作为捕获事件输入源,中断允许
TACTL = TASSEL_2 + MC_2+TAIE;; //TACLK=SMCLK 连续计数模式
__bis_SR_register(LPM0_bits + GIE);
_EINT();
while(1)
{
for(i=0;i<33;i++)
{
if(diff_array[i]>55)
{
bu[i]=1;
}
else
{
bu[i]=0;
}
for(i=0;i<=7;i++)
{
value+=bu[16+i]<<(7-k);
}
}
}
}
#pragma vector=TIMERA0_VECTOR
__interrupt void TimerA0(void)
{
new_cap=TACCR0;
chazhi=new_cap-old_cap;
diff_array[index]=chazhi;
capture_array[index]=new_cap;
index++;
old_cap=new_cap;
}
#include<msp430f1611.h>
unsigned int new_cap=0;
unsigned int old_cap=0;
unsigned int chazhi=0;
unsigned int diff_array[32]; // RAM array for differences
unsigned int capture_array[32]; // RAM array for captures
unsigned int bu[32];
unsigned char index=0;
unsigned char count = 0;
unsigned int i,k,value;
void main( void )
{
// Stop watchdog timer to prevent time out reset
WDTCTL = WDTPW + WDTHOLD;
P1DIR&=~0X02;
P1SEL=0X02; //P1.1设置为Timer A 输入
P2DIR=0X01;
P2SEL|=0X01;
BCSCTL1 |= DIVA_3; // ACLK 8分频
CCTL0 = CM_3 + SCS + CCIS_0 + CAP + CCIE; // 捕获模式,上升沿捕获,同步捕获,选择Timer A作为捕获事件输入源,中断允许
TACTL = TASSEL_2 + MC_2+TAIE;; //TACLK=SMCLK 连续计数模式
__bis_SR_register(LPM0_bits + GIE);
_EINT();
while(1)
{
for(i=0;i<33;i++)
{
if(diff_array[i]>55)
{
bu[i]=1;
}
else
{
bu[i]=0;
}
for(i=0;i<=7;i++)
{
value+=bu[16+i]<<(7-k);
}
}
}
}
#pragma vector=TIMERA0_VECTOR
__interrupt void TimerA0(void)
{
new_cap=TACCR0;
chazhi=new_cap-old_cap;
diff_array[index]=chazhi;
capture_array[index]=new_cap;
index++;
old_cap=new_cap;
}
复制代码
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1