初级会员

- 积分
- 76
- 金钱
- 76
- 注册时间
- 2019-7-16
- 在线时间
- 17 小时
|
5金钱
原程序是ADC1一直检测并输出到串口上,现在加入PE3连GND后才打印打串口上,测试发现不写中断函数直接打印是没问题的,加上中断就不行了
中断函数和主函数是这样的
main.c
u8 touch=0;
int main(void)
{
float adc;
My_Init();
delay_init();
while(1)
{
adc=Get_Adc_Average(ADC_Channel_1,10);
if((adc>=4000)&&(touch==1)) ////
{
printf("num=%3f\r\n",adc);
touch=0;
}
delay_ms(10);
}
}
exti.c
extern u8 touch;
void EXTI3_IRQHandler(void)
{
delay_ms(10);
touch=1;
EXTI_ClearITPendingBit(EXTI_Line3);
}
附件有main.c exti.c exti.h三个的完整文件,因为adc是之前写的测试过没问题,所以就不上了
|
|