1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
本帖最后由 yu305053463 于 2014-4-9 15:37 编辑
从串口输入数据,通过中断方式接收,并且根据接收的数字决定LED的闪烁情况。问题:我未输入的情况下,主程序正常进行循环(已用LED测试), 一旦我从串口输入数据后,循环立即终止,而且不进入到串口中断服务函数中,请问这是为什么? 下面是部分代码: void __irq UART0_RxInt(){ char a; INTMSK=0xffffffff; a=UTXH0; if(a==1) { GPFDAT=0; delay(1000); GPFDAT=0xff; delay(1000); } ClearPending(BIT_UART0); ClearSubPending(BIT_SUB_RXD0); EnableIrq(BIT_UART0); EnableSubIrq(BIT_SUB_RXD0); } void Initint() { ClearPending(BIT_UART0); ClearPending(BIT_SUB_RXD0); EnableIrq(BIT_UART0); EnableSubIrq(BIT_SUB_RXD0); pISR_UART0=(unsigned)UART0_RxInt; } int main() { GPFCON=0x5500; GPFUP=0; GPFDAT=0xff; ULCON0=0x03; UFCON0=0x06; UMCON0=0x00; UCON0=0x05; UBRDIV0=26; InitInt(); while(1) { } return 0; } |
|
相关推荐
2个回答
|
|
好乱……本想帮你看看的……没仔细看、、、
|
|
|
|
我拷代码的时候还很正常,不知道为什么会乱了!我再给你试试 void __irq UART0_RxInt() { char a; INTMSK=0xffffffff; a=UTXH0; if(a==1) { GPFDAT=0; delay(1000); GPFDAT=0xff; delay(1000); } ClearPending(BIT_UART0); ClearSubPending(BIT_SUB_RXD0); EnableIrq(BIT_UART0); EnableSubIrq(BIT_SUB_RXD0);} void InitInt() { ClearPending(BIT_UART0); ClearPending(BIT_SUB_RXD0); EnableIrq(BIT_UART0); EnableSubIrq(BIT_SUB_RXD0); pISR_UART0=(unsigned)UART0_RxInt; } int main() { GPFCON=0x5500; GPFUP=0; GPFDAT=0xff; ULCON0=0x03; UFCON0=0x06; UMCON0=0x00; //高电平触发 UCON0=0x05; UBRDIV0=26; InitInt(); while(1) { } return 0; } 问题是:
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
飞凌嵌入式-ELFBOARD 硬件知识分享-ELF 2电源电路讲解
361 浏览 0 评论
1378 浏览 0 评论
飞凌嵌入式ElfBoard ELF 1板卡-mfgtools烧录流程介绍之烧写所需镜像
1312 浏览 0 评论
飞凌嵌入式ElfBoard ELF 1板卡-mfgtools烧录流程之烧写方法
743 浏览 0 评论
飞凌嵌入式ElfBoard ELF 1板卡-内核编译之初次编译
1139 浏览 0 评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 00:16 , Processed in 0.490920 second(s), Total 77, Slave 60 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号