STM32:组合两个比较器输出

STM32:组合两个比较器输出,stm32,comparator,Stm32,Comparator,我有一个STM32L072KB微控制器,希望将两个模拟信号(它们代表一种占空比为50%的“正交编码信号”)组合成一个“组合数字输出信号”,该信号具有倍频(就我而言,倍频输出信号用于提供倍频精度): 我使用比较器外围设备COMP1和COMP2来检测信号边缘,可以很好地对其进行配置,使其直接将COMPX_输出中继到预定义的,但对于每个比较器,单独且固定的GPIO(无任何SW/ISR延迟): COMP1\u OUT->PA11 COMP2\u OUT->PA12 由于我的硬件布局,我想实现如下

我有一个STM32L072KB微控制器,希望将两个模拟信号(它们代表一种占空比为50%的“正交编码信号”)组合成一个“组合数字输出信号”,该信号具有倍频(就我而言,倍频输出信号用于提供倍频精度):

我使用比较器外围设备COMP1和COMP2来检测信号边缘,可以很好地对其进行配置,使其直接将COMPX_输出中继到预定义的,但对于每个比较器,单独且固定的GPIO(无任何SW/ISR延迟):

  • COMP1\u OUT->PA11
  • COMP2\u OUT->PA12
由于我的硬件布局,我想实现如下配置:

  • 康普⊕ COMP2\u OUT->PA11

  • 康普⊕ COMP2\u OUT->PA12

我还没有找到一种方法,可以在不引入SW/ISR延迟/延迟的情况下,将两个比较器输出直接连接到一个输出管脚中。我读到一些通用定时器提供所谓的“霍尔”编码器模式,支持最多3个输入信号的异或。但由于在STM32L0内核上通过DMA直接将计时器连接到GPIO似乎是不可能的,所以我不知道如何实现这一点


是否有人知道一种“硬件/快速方式”可以同时将两个COMP_输出路由/XOR到单个GPIO输出引脚(PA11或PA12),或者在这种情况下是不可避免的,要使用基于ISR的解决方案?

这是一个编程问题吗?我认为这应该是可能的,方法是正确配置uC和ST HAL,并应用一些技巧,例如使用定时器/PWM/DMA组合的技巧。。。能力?!但我只是一个编程STM32的新手,所以是的,我不是100%确定这在编程上是否可以实现,但我希望如此。你真的应该尝试一下吗?我认为electronics.stackexchange.com会更关注硬件工程部分,而不是如何通过固件正确设置带有HAL的uC?这是一个怎样的编程问题?我认为这应该是可能的,通过正确配置带有ST HAL的uC,并应用类似于使用定时器/PWM/DMA组合的技巧。。。能力?!但我只是一个编程STM32的新手,所以是的,我不是100%确定这在编程上是否可以实现,但我希望如此。你真的应该尝试一下吗?我认为electronics.stackexchange.com更关注硬件工程部分,而不是如何通过固件正确设置带有HAL的uC?