1、0 和 1 的电平输入的话,一般会先将红外信号的输出通过一个 HC7414 滞回比较器,接到单片机。 2、红外的信号有可能处在非0 非1 的中间电压,如果不接一个滞回较器,单片机将无法识别其是0是1, 更重要的是,这时候可能会引起0和1来回无序跳变。 3、如果在程序里以这种非0非1的状态进行过滤一上,不要7414也是可以的。 如果采用外部中断的方式的话,是一定不能省这个滞回比较器的。 4、三极管的基射极饱和电压为0.6V,所以这里计算应该是(24v-0.6v)/20k,这就是基极电阻上的电流,而100k是为了在没有输入24v时,把基极拉低使得三极管截至。你也可以把这个电阻放在20k电阻的另一端。