完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我目前正在研究 eTPU - AN4907 引擎控制演示。在 etpuc_fuel.c(FUEL 函数)中,有两个线程(UPDATE_0 和 UPDATE_1)以根据最新的 injection_time 和 injection_end_angle 值刷新和驱动喷射信号。
我很难理解红色圆圈代码的工作原理?(见下文) 我曾经在ASH WARE eTPU2+ Development Tool中模拟运行这一段代码。不幸的是,无论我做什么,我都无法运行这个部分。我添加了额外的垃圾 while 循环以延长设置 MRLA 的时间,以便在设置 MRLA 时发送 HSR。 下面是发生的情况:UPDATE_1 线程正在等待 PULSE_START 线程得到服务。因此,当 UPDATE_1 线程正在服务时,MRLA 已经清除。因此,红色圆圈代码(如果部分)不起作用。 正常吗?如果它不起作用(也许我们可以说它是一个死代码?)为什么我们将这个 if 部分放入 UPDATE_0 和 UPDATE_1 线程? 注意: SPARK 函数中也存在相同的设计 |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
1897个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36304 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
4372 浏览 0 评论
6027 浏览 1 评论
6746 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4194 浏览 0 评论
603浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
597浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
587浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
675浏览 2评论
770浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-5 14:27 , Processed in 1.076940 second(s), Total 74, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号