完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
想用N76E003 P1.1低电平做为外部中断源,调试好久没成功,有哪位大神指点一二的?
#include "N76E003.h" #include "SFR_Macro.h" #include "Function_define.h" #include "Common.h" #include "Delay.h" void PinInterrupt_ISR (void) interrupt 7 { if(PIF == 0x02) { PIF = 0x00; //clear interrupt flag } } /****************************************************************************** The main C function. Program execution starts here after stack initialization. ******************************************************************************/ void main (void) { P11_Input_Mode; Enable_INT_Port1; Enable_BIT1_LowLevel_Trig; set_EPI; // Enable pin interrupt set_EA; // global enable bit while(1) } |
|
相关推荐
1个回答
|
|
首先,请确保您的硬件电路连接正确,P1.1引脚通过一个按钮或开关连接到GND,确保按钮或开关在断开状态时,P1.1引脚为高电平,按下时为低电平。
其次,请检查您的代码中是否有以下问题: 1. 您是否正确地设置P1.1引脚为输入模式,可以使用以下代码进行设置: P1M1 &= ~0x02; P1M2 &= ~0x02; 2. 您是否正确地打开外部中断功能,可以使用以下代码进行设置: IE |= 0x02; // 打开P1.1外部中断功能 3. 您是否正确地清除中断标志位PIF,在中断处理程序中,需要使用以下代码进行清除: PIF &= ~0x02; // 清除P1.1中断标志位 4. 您的主程序中是否有一个死循环,否则程序会在中断处理程序结束后立即退出。可以在主程序中添加一个死循环,例如: while(1); 如果这些都没有解决问题,请提供更多的细节和代码,以便我们更好地帮助您解决问题。 |
|
|
|
只有小组成员才能发言,加入小组>>
3000 浏览 9 评论
2714 浏览 16 评论
3231 浏览 1 评论
8495 浏览 16 评论
3802 浏览 18 评论
9398浏览 3评论
646浏览 3评论
10599浏览 2评论
337浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
339浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-5-15 21:49 , Processed in 0.783275 second(s), Total 79, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号