我一直很幸运地尝试让Raspberry Pi与Arduino对话。我正在使用3.3 V至5 V转换器来交换电压。我确实在UART TX引脚上放了一个LED,看起来好像在反转数据。如果是这样,我需要什么电路才能使其与Arduino通信?
我正在使用Cool Components Logic Level Converter。它是用于3.3 V至5 V的晶体管和用于5 V至3.3 V的电阻器。
我一直很幸运地尝试让Raspberry Pi与Arduino对话。我正在使用3.3 V至5 V转换器来交换电压。我确实在UART TX引脚上放了一个LED,看起来好像在反转数据。如果是这样,我需要什么电路才能使其与Arduino通信?
我正在使用Cool Components Logic Level Converter。它是用于3.3 V至5 V的晶体管和用于5 V至3.3 V的电阻器。
Answers:
Raspberry Pi的GPIO为3.3 V,并且不能承受5V。这意味着,如果向它们驱动5 V电源,则可能会中断输入。http://elinux.org/RPi_Low-level_peripherals具有有关引脚的信息。
您可以使用以下板之一:
http://store.nkcelectronics.com/5v-to-33v-logic-level-shifter-bo.html
如果周围有少数几个引脚,则还可以为每个引脚使用单个n沟道增强MOSFET。请参见具有不同电压的Raspberry Pi和I2C器件,或I²C总线规范中的第43页。由于您只需要两个针脚,因此可以为您解决问题。
我正在使用CD4050进行从5V到3.3V的电平转换,并且还用作保护Raspberry Pi的缓冲器。Arduino应该将3.3V视为逻辑高电平,因此您无需从3.3V转换为5V(我在这里得到纠正,根据Arduino网站的说法,任何3V以上的电压都被视为逻辑高电平)。
我在这里整理了一个使用CD4050,Raspberry Pi GPIO UART和Arduino的简单示例:http ://www.andremiller.net/content/raspberry-pi-and-arduino-via-gpio-uart
欢迎任何评论,它正在运行,但是我可能做错了:)