共2条
1/1 1 跳转至页
uCOS 在uCOS下开中断的问题!
问
在uCOS下开中断步骤如下:
1、在IQR.S添加语句:IRQ_Eint1_Handler HANDLER IRQ_Eint1
2.在主函数作了生明: extern void IRQ_Eint1_Handler(void)
3.定义中断服务函数:
void IRQ_Eint1(void)
{
unsigned char i, count0;
count0=0;
for(i=0;i<10;i++)
if(EXTINT & 0X02 !=1)count0++;
if(count0>6)
Lcoding+=1;
EXTINT=0X02;//清除EINT1中断标志
VICVectAddr=0x00;
}
4.在uCOS中的任务设置:
void TaskC(void *pdata)
{
pdata=pdata;
PINSEL0=PINSEL0 & 0x0fffffff;
PINSEL0=PINSEL0 | 0x20000000;//P0.14连接EINT1,P0.15连接GPIO
IODIR = IODIR & 0xffff7fff; //P0.15设置为输入的方式
VICIntSelect=0x00000000;
VICVectCntl0=0x2F;
VICVectAddr1=(uint32)IRQ_Eint1_Handler;
VICIntEnable=0x00008000;
EXTMODE=0X02; //EINT1使用边沿触发
EXTPOLAR =0x00; //EINT1下降沿有效
EXTINT = 0x02;
for (;;) {
OSTimeDly(100); /* Delay 100 clock tick */
}
现在的中断服务不好用,不知是哪里有问题,起动时其它任务还是正常的,过一会就死掉了,可能是进入了中断.请大帮忙看一下,谢谢! 答 1: 是不是芯片本身有问题下面的这两条语句,书上没有实例作介绍,问题会不会出在里:
EXTMODE=0X02; //EINT1使用边沿触发
EXTPOLAR =0x00; //EINT1下降沿有效
在uCOS下开中断步骤如下:
1、在IQR.S添加语句:IRQ_Eint1_Handler HANDLER IRQ_Eint1
2.在主函数作了生明: extern void IRQ_Eint1_Handler(void)
3.定义中断服务函数:
void IRQ_Eint1(void)
{
unsigned char i, count0;
count0=0;
for(i=0;i<10;i++)
if(EXTINT & 0X02 !=1)count0++;
if(count0>6)
Lcoding+=1;
EXTINT=0X02;//清除EINT1中断标志
VICVectAddr=0x00;
}
4.在uCOS中的任务设置:
void TaskC(void *pdata)
{
pdata=pdata;
PINSEL0=PINSEL0 & 0x0fffffff;
PINSEL0=PINSEL0 | 0x20000000;//P0.14连接EINT1,P0.15连接GPIO
IODIR = IODIR & 0xffff7fff; //P0.15设置为输入的方式
VICIntSelect=0x00000000;
VICVectCntl0=0x2F;
VICVectAddr1=(uint32)IRQ_Eint1_Handler;
VICIntEnable=0x00008000;
EXTMODE=0X02; //EINT1使用边沿触发
EXTPOLAR =0x00; //EINT1下降沿有效
EXTINT = 0x02;
for (;;) {
OSTimeDly(100); /* Delay 100 clock tick */
}
现在的中断服务不好用,不知是哪里有问题,起动时其它任务还是正常的,过一会就死掉了,可能是进入了中断.请大帮忙看一下,谢谢! 答 1: 是不是芯片本身有问题下面的这两条语句,书上没有实例作介绍,问题会不会出在里:
EXTMODE=0X02; //EINT1使用边沿触发
EXTPOLAR =0x00; //EINT1下降沿有效
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
与电子爱好者谈读图二被打赏50分 | |
【FRDM-MCXN947评测】Core1适配运行FreeRtos被打赏50分 | |
【FRDM-MCXN947评测】双核调试被打赏50分 | |
【CPKCORRA8D1B评测】---移植CoreMark被打赏50分 | |
【CPKCORRA8D1B评测】---打开硬件定时器被打赏50分 | |
【FRDM-MCXA156评测】4、CAN loopback模式测试被打赏50分 | |
【CPKcorRA8D1评测】--搭建初始环境被打赏50分 | |
【FRDM-MCXA156评测】3、使用FlexIO模拟UART被打赏50分 | |
【FRDM-MCXA156评测】2、rt-thread MCXA156 BSP制作被打赏50分 | |
【FRDM-MCXN947评测】核间通信MUTEX被打赏50分 |