完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
1.使用ADC1的中断模式,采集完成触发中断。但是仿真发现,程序会莫名其妙的跑飞,但是把那个使能中断的函数屏蔽掉,所有的程序就可以正常执行了,不知道什么原因,有没有大佬知道的或者碰到过这种问题,下边是源码,使用IAR开发环境:
u16 Power_Vol_ADC_SINGLE_Configuration(void) { u16 temp_data=0; // u8 i=0; // CLK_PeripheralClockConfig(CLK_PERIPHERAL_ADC,ENABLE); ADC1_Init(ADC1_CONVERSIONMODE_SINGLE,ADC1_CHANNEL_1,ADC1_PRESSEL_FCPU_D18, ADC1_EXTTRIG_TIM,DISABLE,ADC1_ALIGN_RIGHT, ADC1_SCHMITTTRIG_CHANNEL1,DISABLE); delay_ms(10); ADC1_ITConfig(ADC1_IT_EOCIE,ENABLE);//中断使能 // ADC1_Cmd(ENABLE);//转换器使能 ADC1_StartConversion();//开始转换 while(ADC1_GetFlagStatus(ADC1_FLAG_EOC)==RESET); // while((!Adc_Flag)&&(i<250))//等待转换完成 // i++; // Adc_Flag=0; temp_data=ADC1_GetConversionValue();//获得转换结果 Power_Vol=(u16)((5.0/1023)*temp_data*143.3); return Power_Vol; } INTERRUPT_HANDLER(ADC1_IRQHandler, 22) { //Adc_Flag=1; ADC1_ClearITPendingBit(ADC1_IT_EOCIE);//清除ADC1中断标志函数 } |
|
相关推荐
|
|
你正在撰写讨论
如果你是对讨论或其他讨论精选点评或询问,请使用“评论”功能。
1187 浏览 0 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
1122 浏览 2 评论
2223 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
1311 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
1735 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-27 23:36 , Processed in 0.552593 second(s), Total 58, Slave 44 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号