主题中讨论的其他器件: MSP430G2452
这是能量计开发中使用的代码。 我使用能量计 ASIC 进行开发。 我需要使用 P2.2引脚的外设功能。 将使用计时器捕获功能。
#include
#include
#include
#include
#include
#include D
#include
#include
#if 已定义(mesh_NET_support)
#include "mesh_structure.h"
#endif
//#if defined (__GNU__)
void initTimer_A (void);
unsigned int presentation=0;
unsigned int lasttime=0;
unsigned int buffer=0;
unsigned char i=0;
int main (空)
{
WDTCTL = WDTPW + WDTHOLD;//停止看门狗计时器
//BCSCTL1 = CALBC1_1MHz;//将 DCO 设置为1MHz
//DCOCTL = CALDCO_1MHz;
P2DIR &= BIT2;
P2SEL |= BIT2;
TA0CTL = TACLR;
TA0CTL = tassel_1 + ID_2 + MC_2;
TA0CCTL2 = CM_2 + CCIS_0 + SCS + CAP + CCIE;
_BIS_SR (LPM0_Bits + GIE);
while (1);
}
//定时器 ISR
#pragma vector = TIMER0_A1_vector
_interrupt void Timer_A1_CCR2_ISR (void)
{
开关(TA0IV)
案例04:
{
当前时间= TA0CCR2;
Buffer = lasttime - presprestime;
printf ("period =%d"、buffer);
TA0CCTL2 &=~CCIFG;
lasttime = TA0CCR2;
}
}
我想测量给端口2的引脚2的信号的时间周期。 我使用 IAR 进行开发。 当我从代码中删除 P2SEL 行时、它会成功编译。 但当我将其包括在内时、会出现错误
错误[Pe020]:标识符"P2SEL"未定义
当我使用不同的器件型号(msp430g2452 launchpad)运行相同的代码时 、代码会成功编译。
请帮助我解决此问题。