ZHCAB74D September 2018 – March 2022 AFE030 , AFE031 , TMS320F28075 , TMS320F28075-Q1 , TMS320F28076 , TMS320F28374D , TMS320F28374S , TMS320F28375D , TMS320F28375S , TMS320F28375S-Q1 , TMS320F28376D , TMS320F28376S , TMS320F28377D , TMS320F28377D-EP , TMS320F28377D-Q1 , TMS320F28377S , TMS320F28377S-Q1 , TMS320F28379D , TMS320F28379D-Q1 , TMS320F28379S
以这些预定频率运行的 ISR 执行接收器解决方案的主要功能。示例程序利用 C2000 的 EPwm 和 CPU 计时器来触发必要的中断。
由 EPwm1 配置的 ADC 采样 ISR 被设置为以 300kHz 输入信号采样频率触发。ISR 函数对 ADC 进行采样,对采样值进行调节,并将经调节的值传递给库函数以进行信号处理。
由 EPwm2 配置的位判定 ISR 被设置为以 585.92Hz 的频率进行触发。该频率非常接近于该 EPwm 模块可以达到的所需频率,即 585.9375Hz。ISR 函数接受先前 ADC 采样 ISR 的信号处理工作,并检查是否检测到标记位或空间位。如果检测到标记位或空间位,则将检测到的位放入接收消息缓冲区。一旦消息缓冲区已满,将设置一个标志以表示已收到完整的数据包。
由 CPU 计时器 2 配置的消息超时 ISR 被设置为在接收时达到用户指定的时间限制时触发。默认情况下,该时间限制由 RX_MESSAGE_TIMEOUT #define 设置为 3 秒。计时器恰好在系统开始接收之前启动,并在收到数据包时重置。如果在指定的时间限制内没有接收到数据包,则 ISR 将触发并导致系统停止接收。