主题中讨论的其他器件:HALCOGEN
您好!
我在 项目中使用 AUTOSAR_MCAL_TMS570LSx-05.40.00软件包。
我已经为 ICU 配置了 NHET 引脚、用于 PWM 输入信号测量。
如果输入频率高于100Hz、ICU 驱动器将读取正确的频率和占空比。
对于低于100Hz 的频率、ICU 驱动器测量的占空比和频率在0和 PWM 输入设定值之间切换。 此行为不正确。 请提供此问题的修复方法。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
我在 项目中使用 AUTOSAR_MCAL_TMS570LSx-05.40.00软件包。
我已经为 ICU 配置了 NHET 引脚、用于 PWM 输入信号测量。
如果输入频率高于100Hz、ICU 驱动器将读取正确的频率和占空比。
对于低于100Hz 的频率、ICU 驱动器测量的占空比和频率在0和 PWM 输入设定值之间切换。 此行为不正确。 请提供此问题的修复方法。
您好!
使用 N2HET PCNT 指令测量占空比和周期。 对于 FALL2FALL 和 RISE2RISE、如果在 HET_ON 之前启用了中断、用户应始终丢弃第一个中断。 对于这两种类型、复位边沿和捕捉边沿 是相同的、中断在捕捉边沿上触发。
一旦执行单元被启用、第一个边沿生成一个中断、但是计数器的值是无效的、因为这不是2个边沿之间的周期。 因此、打开 N2HET 后的第一个边沿主要用于复位计数器并开始周期计数。
计数器的长度为25位(PCNT 控制域 C24:C0)、并由边沿复位。 我认为该计数器不会溢出。
您好!
由于我们正在集成和使用 TI 提供的 AUTOSAR MCAL 包、我相信所有这些中断处理都在 MCAL 驱动程序层进行。 作为应用开发人员、我们仅配置 ICU NHET 引脚。
我正在开发需要读取输入频率和占空比的应用程序代码。因此, 我调用 API ICU_GetDutyCycleValues()以每10ms 获取周期和活动时间。 此 API 的结果不正确、当输入频率小于100Hz 时、在0和实际值之间切换。
请告诉我们这是否是 MCAL 封装中 ICU 驱动程序的限制。
以下是 ICU/PWM 驱动器的限制:
限制:
请参阅 MCAL 驱动程序 ICU 文件夹下的用户指南。
您好!
配置良好。 调用 API 时、您是否在两次 API 调用之间添加了一些延迟? 由于输入信号非常慢(100Hz)、您需要留出一些时间让 NHET 捕获输入信号的上升/下降沿。 例如、100Hz 输入信号需要至少10ms 的延迟。
ICU_StartSignalMeasurement (通道);
延迟(..) --轮询模式下肩大于10ms
ICU_StopSignalMeasurement (通道);