完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
代码: // tiM4更新中断服务函数@far @interrupt void TIM4_UPD_OVF_IRQHandler(void){ //int g_counter =0; //g_counter++; UART1_SendByte('E'); TIM4_SR = 0x00;// 清零更新中断标志位}// TIM4初始化void TIM4_INIT(void){ // 设置TIM4预分频系数,64 TIM4_PSCR = 0x06; // 设置TIM4计数最大值 TIM4_ARR = 0xFA; // 使能TIM4更新中断 TIM4_IER = 0x01; // 设置TIM4计数器初始值 TIM4_CNTR = 0xFA;}int main(void){ int i = 0; CLK_INIT(); UART1_INIT(); TIM4_INIT(); _asm("rim"); UART1_SendByte('b'); TIM4_CR1 |= 0x01;// 使能TIM4 i = 2 * 6; i += 5; UART1_SendByte('E');}// TIM4更新中断服务函数@far @interrupt void TIM4_UPD_OVF_IRQHandler(void){ UART1_SendByte('E'); TIM4_SR = 0x00;// 清零更新中断标志位}程序执行会一直输出b。执行完TIM4_CR1 |= 0x01,执行i = 2 * 6会跳到0x3f4地址,而不是顺序执行下去,这是什么原因导致的? |
|
相关推荐
1个回答
|
|
你的向量表地址为什么会改成0x9000呢? STM8 的复位后向量固定在0x8000, 除非你前面有IAP的代码。 否则发生中断后,PC跑到0x8000到0X8080区间对应的入口找到不正确的地址就会跑飞。 如果没有IAP应用,不要改变向量表的地址哦。
|
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1713 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1600 浏览 1 评论
1038 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
715 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1651 浏览 2 评论
1903浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
694浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
546浏览 3评论
567浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
535浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-12 11:28 , Processed in 1.300686 second(s), Total 79, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号