标题: 怎么用单片机实现滞回比较器 [打印本页]

作者: goldwings    时间: 2023-12-31 11:28
标题: 怎么用单片机实现滞回比较器
要求用单片机实现滞回比较器的功能,电压大于一定值时,启动开关;电压小于另一值时,关闭开关。程序该怎么写呢?滞回比较中,需要判断电压变大或变小的趋势,这个变大或变小的趋势,用程序怎么表示?请大神们帮帮忙,小弟感激不尽!

作者: Hephaestus    时间: 2023-12-31 12:17
如果是低电平那么电压要上升到上阈值才认为是高电平如果是高电平那么电压要下降到低阈值才认为是低电平注意高阈值电压比低阈值电压高就是滞回比较器
作者: 大IGBT    时间: 2023-12-31 15:26
直接比较啊!if(V>AH)  OUT=1;
作者: 大IGBT    时间: 2023-12-31 15:37
如果上下限是独立的值
if(v>ah) out=1;
if (a<al)  out=0;
如果只是要个回差,动作值一个,就
if(v>ah)  out=1;
if(v<(ah-val)) out=0;

作者: wpppmlah    时间: 2023-12-31 21:52
用ADC来测量电压值,然后用判断语句来控制输出.
作者: goldwings    时间: 2024-1-1 10:23
感谢楼上的各位!
还有个问题,因为有两个门槛值,变大时的门槛值和变小时的门槛值不一样,怎么判断电压变大或变小的趋势呢?
作者: Hephaestus    时间: 2024-1-1 22:15
大IGBT 发表于 2023-12-31 15:26
直接比较啊!if(V>AH)  OUT=1;

out为1或者0的时候,比较值是不一样的,这就是回差。
作者: wulin    时间: 2024-1-2 07:45
goldwings 发表于 2024-1-1 10:23
感谢楼上的各位!
还有个问题,因为有两个门槛值,变大时的门槛值和变小时的门槛值不一样,怎么判断电压变 ...

以AD值255为例 ,假设以一半为翻转基准,滞回范围±10.
if(AD>138) OUT=0;
if(AD<118) OUT=1;
119~137范围就会保持原状,就是滞回范围。

作者: 治世逍遥    时间: 2024-1-3 12:23
goldwings 发表于 2024-1-1 10:23
感谢楼上的各位!
还有个问题,因为有两个门槛值,变大时的门槛值和变小时的门槛值不一样,怎么判断电压变 ...

设一个标志位,用于标定上一次是开还是关。切换开关状态之后同步把标志位也改一下。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1