STM32F103程序移植到F105上,中断不能及时响应问题求助~!
遇到一个奇怪的问题,现在开发系统,对时间要求比较严格,每60us管脚会接收一个外部中断,中断函数里调用SPI的DMA传输出固定数组,
之前使用STM32F103RFT6没有问题
现在换到STM32F405RGT6, 在仅打开外部中断和DMA、SPI时候是工作正常的,
但是!一旦打开了TIM中断(2ms执行一次ADC)或者打开了串口,就发现外部中断响应会不及时,,外部中断不能被及时响应,总会有2-3us左右的延迟
除了中断优先级还有哪里可以解决这个问题吗:'(
DMA、SPI、外部管脚中断优先级和抢占优先级都已经是最高为0(其余外设优先级在1以上)
那么为什么F103可以及时响应中断,F405在外设运行时无法及时响应外部中断呢?
奇怪的是,如果把(Optimize for time)选上、把优化级别由0改为2,延迟会明显少一些,但是仍然会有1us左右延迟。。
执行外设工作(ADC、串口)不能及时响应外部中断这种情况有人遇到过吗?求解决思路谢谢~~~
建议你看一下时钟配置。F103的系统默认外部高速晶振是8M,而F105/107是互联型的默认外部晶振的25M 3111272 发表于 2019-3-13 08:40
建议你看一下时钟配置。F103的系统默认外部高速晶振是8M,而F105/107是互联型的默认外部晶振的25M ...
谢谢回复,晶振是正常的,串口波特率和spi波特率都正常,,,,,F105已经设置成168Mhz的主频了哈,只是在有外设工作起来,无法快速被响应 楼主表达的内容是不是F103R上的程序移植到F405上就出现问题了,排除硬件问题,这两个芯片的内核是不同的,F105不能设置成168MHZ,只有F405才能设置成168MHZ,还有看看手册吧,F1移植到F4的注意事项。
可以看下这个 AN4649-5. 应用笔记(L4+)-意法半导体STM32/STM8技术社区 https://www.stmcu.org.cn/document/detail/index/id-216233,虽然是移植到L4的,接近F4。
在资料下载,ST MCU实战经验里面搜索“移植”把各种型号之间的移植到打开看看。 五哥1 发表于 2019-3-25 13:12
楼主表达的内容是不是F103R上的程序移植到F405上就出现问题了,排除硬件问题,这两个芯片的内核是不同的,F ...
你好,是移植出问题,不是工作频率的问题,而是串口波特率和SPI波特率都能正常工作,而在串口工作起来。。外部中断不能快速响应
感觉就像F405圧栈稍微慢了2us的样子
我现在在研究圧栈深度是不是影响了响应速度。。各种看资料无果啊。。
aceking1123 发表于 2019-3-25 17:17
你好,是移植出问题,不是工作频率的问题,而是串口波特率和SPI波特率都能正常工作,而在串口工作起来。 ...
我说,要论移植性,用CUBEMX就体现优势了。HAL库的最初设计是不是就为了移植呐。
页:
[1]