将 LED 连接到 PIC 的 Rx 引脚

电器工程 微控制器 图片 引领
2022-01-19 17:38:24

我需要一些方法来知道microcontroller( PIC) 是否正在接收(或传输)任何数据。所以我想保留一个单独的LED,以便在发生任何数据传输时它会闪烁。

但我需要知道如何附加这个LED可以直接将 an 连接LEDPICs Tx(和Rx)引脚吗?我的意思是它会以某种方式影响传输数据(例如通过降低电压等......)。

3个回答

(至少有些)PIC 不能驱动太多电流(*),但对于 RxD 引脚,您最好使用晶体管来驱动 LED,因为您将避免在另一端加载发射器(可能是 MAX3232 或类似的?)。

在此处输入图像描述

将输入“Q”连接到 TxD/RxD 线。一个典型的通用晶体管将具有大约 100 的增益,那么 1 mA 基极电流足以获得 20 mA 集电极电流。

对于 5 V 总线和电源:
选择 \$R_B\$ = 3.9 kΩ,则基极电流将为 (5 V - 0.7 V)/3.9 kΩ = 1.1 mA。要将集电极电流限制在 20 mA(典型 LED 指示灯)\$R\$ 应为 (5 V - 2 V)/20 mA = 150 Ω。

对于 3.3 V 总线和电源,使用相同的公式,将 5 V 替换为 3.3 V,那么您的电阻值将分别为 2.2 kΩ 和 47 Ω。



AndrejaKo这样的 MOSFET是一个不错的选择,但要确保你有一个逻辑电平门类型,最大门阈值电压略低于总线电压。(有些逻辑电平栅极 FET 可以高达 4 V,然后在 3.3 V 总线电压下您将无法获得足够的漏极电流。) FET 的真正优势在于它几乎不需要任何驱动电流,但因为我们只需要一个用于 BJT 的 mA,我们也不会有任何问题。


(*)该随机 PIC 控制器仅在 3 mA 输出电流时指定 700 mV 压降,即 230 Ω 输出电阻。由 3.3 V 输出直接驱动的 2 V LED 将仅在 4 mA 时将输出降低 1 V。大多数 LED 指示灯的额定电流为 20 mA。

不,您不想像其他人所展示的那样通过低侧开关晶体管连接 LED。在正常情况下,两条线路的空闲级别都很高,这将导致 LED 大部分时间都亮着。很难注意到它偶尔会变暗。您想要的是 LED 仅在线路处于活动状态时才亮,即低电平。这是一个简单的电路:

该晶体管用于射极跟随器配置,无需基极电阻器,并且还使用最小可能的基极电流来生成 LED 电流。当数字线变低时,发射器的电压约为 700 mV。考虑到下降约 2.1 V 的普通绿色 LED,R1 上的电压为 2.2 V。2.2V / 120Ω = 18 mA,略低于典型 T1-3/4 和许多其他常见 LED 的最大额定电流 20 mA。

在这种情况下,您希望最大化 LED 光输出,这意味着以最大电流运行它。这条线会在短时间内变低,因此您希望尽可能地让这段短时间可见。如果这不起作用,您将需要某种脉冲展宽,但请先尝试。

如果您使用 3.3 V 电源,请相应调整 R1。3.3V - 2.1V - 700mV = 500mV 跨 R1。500mV / 20mA = 25Ω。您想留出一些余量,因此 27 Ω 的标准值应该可以正常工作。3.3 V 电源大约是您希望在其中使用射极跟随器配置的最小值。

您不应该尝试将二极管直接连接到引脚,因为它肯定会影响引脚的操作。相反,请尝试使用逻辑电平 MOSFET 来驱动 LED。将 MOSFET 的栅极引脚连接到 Rx 引脚,将漏极连接到 LED 和一个电阻器。

在此处输入图像描述

忽略原理图上显示的部件号。BS170 会便宜得多,并且可以正常工作。