关于 #int_ext 中断
关于RB0的pullup,为什么在程序一开始,#int_ext 中断就执行了呢?我已经port_b_pullups(TRUE);
并且 配置了:
ext_int_edge(0, H_TO_L);
enable_interrupts(int_ext);
按道理来说,只有RB0为低压时候才发生中断啊? 请大侠帮忙。万分感谢!
souce code:
#int_ext
void extInt_RB0(void) {
//start timer1:
//output_high(PIN_A2);
set_timer1(0);
setup_timer_1(T1_INTERNAL);
enable_interrupts(int_timer1);
disable_interrupts(int_ext);
flag_B0 = T;
//output_low(PIN_A2);
}
void main( ) {
port_b_pullups(TRUE);
。。。 mcu自身设计原因造成
根据对ME片的观察,INTCON,RBIF,在复位的时候,基本不能复位到0,DATASHEET上也说的很明白,复位时候该位为X,即不确定。所以RBCHANGE,一开始就执行一次是很正常的。
页:
[1]