共2条
1/1 1 跳转至页
msp430 请教msp430的问题
问
我用MSP430f413芯片做程序加入中断函数后,有如下的错误提示,不知识是何原因,请高手执教
Error[Pe077]: this declaration has no storage class or type specifier
Error[Pe065]: expected a ";"
Warning[Pe012]: parsing restarts here after previous syntax error
源程序如下:
//========================================//
//收藏:清风徐徐
//EMAIL:XSL88888@tom.com
//qq:78779514
//=========================================//
//BEIJING LSD MCU TECH CO.,LTD
//P1.0口做外部中断的设置,做成多任务以便扩展
// MSP430FXXX
// -----------------
// /|\| XIN|- /|\
// | | | |
// --|RST XOUT|- |
// | | 1MΩ
// | P1.0|<--|
// 0.1uF
// |
// \|/
#include <MSP430x41x.h>
unsigned char ISR_Symbol=0; //任务标志
void Iint_Port1(void); //函数声明
void main(void)
{ WDTCTL=WDTPW+WDTHOLD; //关闭看门狗
Iint_Port1(); //初始化p1.0
_EINT(); //开总中断允许
while(1)
{
LPM3; //进入低功耗模式3,I/O口中断可将其唤醒
if((ISR_Symbol&BIT0)==BIT0) {ISR_Symbol&=~BIT0;} //中断服务程序
else if((ISR_Symbol&BIT1)==BIT1) {ISR_Symbol&=~BIT1;} //其他任务
}
}
interrupt[PORT1_VECTOR] void P1_ISR(void)
{ P1IFG=0; //多源中断,需靠软件清除P1IFG
ISR_Symbol|=BIT0; //置任务标志
_BIC_SR_IRQ(LPM3_bits); //将CPU从睡眠模式唤醒
}
void Iint_Port1(void)
{ P1DIR&=~BIT0; //设置为输入方向
P1SEL&=~BIT0; //设置为普通I/O口功能
P1IES|=BIT0; //选择下降沿触发
P1IE|=BIT0; //打开中断允许
P1IFG=0; //P1IES的切换可能使P1IFG置位,需清除
} 答 1: 关键字用__interrupt参考一下ti的例子就可以
Error[Pe077]: this declaration has no storage class or type specifier
Error[Pe065]: expected a ";"
Warning[Pe012]: parsing restarts here after previous syntax error
源程序如下:
//========================================//
//收藏:清风徐徐
//EMAIL:XSL88888@tom.com
//qq:78779514
//=========================================//
//BEIJING LSD MCU TECH CO.,LTD
//P1.0口做外部中断的设置,做成多任务以便扩展
// MSP430FXXX
// -----------------
// /|\| XIN|- /|\
// | | | |
// --|RST XOUT|- |
// | | 1MΩ
// | P1.0|<--|
// 0.1uF
// |
// \|/
#include <MSP430x41x.h>
unsigned char ISR_Symbol=0; //任务标志
void Iint_Port1(void); //函数声明
void main(void)
{ WDTCTL=WDTPW+WDTHOLD; //关闭看门狗
Iint_Port1(); //初始化p1.0
_EINT(); //开总中断允许
while(1)
{
LPM3; //进入低功耗模式3,I/O口中断可将其唤醒
if((ISR_Symbol&BIT0)==BIT0) {ISR_Symbol&=~BIT0;} //中断服务程序
else if((ISR_Symbol&BIT1)==BIT1) {ISR_Symbol&=~BIT1;} //其他任务
}
}
interrupt[PORT1_VECTOR] void P1_ISR(void)
{ P1IFG=0; //多源中断,需靠软件清除P1IFG
ISR_Symbol|=BIT0; //置任务标志
_BIC_SR_IRQ(LPM3_bits); //将CPU从睡眠模式唤醒
}
void Iint_Port1(void)
{ P1DIR&=~BIT0; //设置为输入方向
P1SEL&=~BIT0; //设置为普通I/O口功能
P1IES|=BIT0; //选择下降沿触发
P1IE|=BIT0; //打开中断允许
P1IFG=0; //P1IES的切换可能使P1IFG置位,需清除
} 答 1: 关键字用__interrupt参考一下ti的例子就可以
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
vscode+cmake搭建雅特力AT32L021开发环境被打赏30分 | |
【换取逻辑分析仪】自制底板并驱动ArduinoNanoRP2040ConnectLCD扩展板被打赏47分 | |
【分享评测,赢取加热台】RISC-V GCC 内嵌汇编使用被打赏38分 | |
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 |