完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我们正在通过 LIN 控制直流电动机。 我们使用 " BDRV_EMO_DC_LIN_EXAMPLE_TLE986X 软件包作为基础"。
我们还在测量通过CSA的电流。 SOC 由 timer3 OF 中断触发。 此外,我们需要使用一些 ADC 通道来读取一些外部传感器信号。 尽管当我们启用 ADC 通道的中断时,其他 CPU 任务(如 LIN)会受到影响。 LIN 完全停止了。 看来 CPU 总是陷入 ADC 中断状态。 我们尝试更改ADC时钟和采样时间,但没有成功。 |
|
相关推荐
1个回答
|
|
根据您的描述,当您启用ADC信道中断后,TLE9869 LIN任务和其他任务会被阻止。这可能是因为ADC中断在优先级上高于其他任务。在处理器上,中断具有不同的优先级,当一个中断正在处理时,更高优先级的中断会阻断低优先级的中断。因此,当ADC中断被触发时,它可能会优先处理,从而阻断其他任务的执行。
解决这个问题的一种方法是调整中断优先级。您可以尝试将ADC中断的优先级设置为较低的优先级,以确保它不会阻断其他任务的执行。这可以通过配置中断控制器或外设来完成。具体的步骤可能会因为您所使用的开发环境和硬件而有所不同,您可以参考相关文档或手册来了解如何设置中断优先级。 另一个可能的原因是,ADC中断需要较长的处理时间,从而导致其他任务被阻塞。在处理ADC中断时,确保尽可能快地完成处理,并尽量避免在中断服务程序中执行复杂的操作。如果处理时间过长,可以考虑使用DMA(直接内存访问)来减少CPU的负载,从而提高系统的响应性能。 同时,您还提到尝试更改ADC时钟和采样时间,但没有成功。在调整这些参数时,确保它们在合理的范围内,并满足所需的系统性能要求。如果不确定如何正确配置这些参数,可以参考相关的文档或咨询芯片厂商的技术支持。 总之,要解决TLE9869 LIN和其他任务被阻止的问题,您可以尝试调整ADC中断的优先级,优化ADC中断的处理时间,并确保正确配置ADC的时钟和采样时间。 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
503 浏览 0 评论
求助一下关于51系列单片机的Timer0的计时问题,TH0、TL0+1的时间是怎么算的?
1756 浏览 1 评论
【RA-Eco-RA4E2-64PIN-V1.0开发板试用】开箱+Keil环境搭建+点灯+点亮OLED
1183 浏览 0 评论
【敏矽微ME32G070开发板免费体验】使用coremark测试敏矽微ME32G070 跑分
1053 浏览 0 评论
【敏矽微ME32G070开发板免费体验】开箱+点灯+点亮OLED
1287 浏览 2 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12022 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 21:59 , Processed in 0.810812 second(s), Total 69, Slave 53 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号