使用stm32 的io直接驱动光耦,参照datasheet使用下面的电路:
mcu管脚采用灌电流的方式。
可是板子出来以后,调试发现 输入端电平变化时,输出一只保持在高电平。感觉很奇怪,手册中的各种特性都是在If=3mA的时候得出的。
初步判断可能由于去掉电流不足,于是减小Rif,变为220欧姆,发现还是不能输出。于是继续减小电阻,索性直接变为120欧,这次竟然有输出波形了。
可是此时If已经很高了,有15mA了。虽然没有超出极限值,可是毕竟和自己想的情况有出入。请问对这个有研究的大神帮忙讲一讲可能哪里出了问题。
或者 哪位讲一讲使用光耦做数字应用的时候,是怎样确定外围电阻值的。
我一直是认为是这样一个计算过程: 首先使用手册要去的IF,和VF,得出输入的限流电阻阻值。然后根据在CTR允许的范围内,得到输出电流,再由此得到输出的电阻值。
|