请问 ADC 可以同时对多个输入通道进行阈值监测比较吗?
使用 HC32L136 开发产品,有10个模拟量输入。需要这10个模拟量,任何一个超过了下阈值,就产生中断,能不能实现呢?我看手册里面adc可以对输入通道进行阈值监测,输入到达阈值则产生中断。现在是需要同时对10个通道进行阈值监测,可不可以实现呢?
要看内部有几个ADC控制器,如果只有一个ADC外设同一时刻只能采集一路。 本帖最后由 re9527 于 2023-4-20 15:52 编辑
天,终于有人回帖了。
HC32L136有30个管脚可以配置成 AI输入。手册里说一次可对16个管脚按顺序获取模拟输入读数,应该采用的轮询方式。
可以对多个管脚轮询读数,按说也可以对多个管脚轮询进行阈值比较。想问下能不能实现。手册这块描述不是很清楚,官方技术支持也不知工资被拖欠没有,问了也石沉大海。
原厂忙的很,你怎么不找代理商呢,你没有代理商服务你吗?
用户手册上有介绍,写的很明白,只是你没看懂,没想明白而已。
请看我的截图,管理阈值通道的只有bit3~bit7。也就是最多32个通道。L130用了0~29
假设这个寄存器的值设的是3(B00011),那就是设置通道3为阈值比较。
如果按照你的需求,他应该是通道0和通道1为阈值比较。跟手册表述的不符,所以,你的想法是错误的 wubangmi 发表于 2023-4-20 16:15
原厂忙的很,你怎么不找代理商呢,你没有代理商服务你吗?
用户手册上有介绍,写的很明白,只是你没看懂, ...
谢谢回复,我测试过,照手册设置是只能对一个通道进行阈值监测。
我在想,有没办法实现对多个通道进行阈值监测呢,不然就只能在main函数里不断查询,太费电了。 这应该不太行吧 如果有多个ADC外设的话,可以实现同步采样。 HC32L136 的确只能对于一个配置的通道进行模拟阈值比较,不方便客户的使用。
后续设计,开放了一组寄存器来进行模拟阈值比较通道的配置,就非常方便客户应用了。 MCU内部ADC都是顺序采样的 应该是可以实现这种功能的 你的中断是ADC中断么?还是那个? 一般阈值判断之后,可以给中断标记位置1,这样就好了 没研究过,但是感觉应该可以 你要是阈值超出了,就给个标记不就行了么,还要进中断干啥? 你这是要在中断里做数据处理? 我觉得用个标记位就好,没必要用中断处理 这种阈值检测可以用比较器实现吧,比ADC省事儿点? 倒是可以实现的,就是看你用哪个中断了 没啥问题,你可以先ADC实现这个功能,然后再实现阈值判断和中断响应的问题
页:
[1]