¿Por qué tiene que usar un divisor de voltaje con el módulo bluetooth HC-05? (Arduino) [cerrado]

-1

simular este circuito : esquema creado usando CircuitLab

Estoy tratando de conectar mi módulo bluetooth a mi Arduino pero toma 3.3 voltios (el módulo bluetooth HC-05, el Arduino mega toma 5v) y los tutoriales en línea dicen que conecte el pin RX a tierra con un divisor de voltaje .

En cambio, con un mega Arduino, pero sigue siendo lo mismo.

aquíestáeltutorialqueestoysiguiendo: enlace

No estoy seguro de cómo funciona, pero no lo entiendo porque si aprendiera algo jugando con la electrónica sería que nunca deberías conectar voltaje positivo a GND. Quiero decir que no está conectando 5v a GND pero parece una mala idea, no estoy seguro. Si alguien pudiera explicar esto sería muy útil. ¿Podría simplemente usar una resistencia desde el RX desde el Arduino hasta el HC-05, para hacerla 3.3v? ¿Se considera RX y TX voltaje positivo?

    
pregunta techset

2 respuestas

3

Creo que te faltan muchos conceptos aquí. Tenga en cuenta que el HC-05 y el mega328 en arduino utilizan diferentes niveles de voltaje para representar información

¿Qué es un nivel lógico

Los niveles lógicos son las variables físicas que representan el contenido de información en cualquier circuito digital. Supongamos que su circuito Bluetooth está intentando enviar alguna información al arduino. Esta información se codifica como un flujo de bits de 1 y 0 , por ejemplo, 1010101 esta información se envía cambiando el nivel de voltaje a través del cable HC-05 Tx entre el HC-05 permitido niveles de voltaje que son 0V para un 0 digital y 3.3V para un digital 1. Aunque los niveles lógicos de arduino son diferentes [0V para un 0 digital y 5V para un 1 digital], sería capaz de leer estos datos.

Eche un vistazo a la hoja de datos de Mega328

VIH = 0.6 * 5 = 3V esto significa que cualquier nivel de voltaje superior a 3V se traducirá como una lógica válida 1

AsíquenonecesitamosnadaenlalíneaarduinoRx.AhoraecheunvistazoalasalidadealtovoltajedelarduinoUno

VOH=4.2VestoesmásaltoqueelvoltajedeoperacióndelHC05quees3.3V.Enestecaso,unaformadereducirelvoltajeenlalíneaHC-05Txseríausarundivisordevoltaje

¿Quéesundivisordevoltaje

Redderesistenciasqueseutilizanparaescalarelvoltajeenunacantidaddeterminadaporlosvaloresdelasresistenciasenestared

donde$$V_o=V_i*\frac{R_2}{R_1+R_2}$$

AhoraimaginequeelflujodebitsquemencionéanteriormenteseenvíadesdeelarduinoalmóduloBT.

Laformadeondasuperiorrepresentalasalidadearduino,elvoltajeestácambiandoentre5Vy0Vpararepresentar1digitaly0,mientrasquelaformadeondainferiorrepresentalasalidadelareddivisora.Puedeverqueambosestánsincronizadosperolasalidadeldivisorestácambiandoentre3.3Vy0V

Esposiblequedeseeconsultar Niveles lógicos y divisores de voltaje

    
respondido por el Elbehery
3

La salida del Arduino es un nivel lógico 0V - 5V. El HC-05 necesita un nivel lógico de 0V - 3.3 voltios. Las dos resistencias dividen el nivel alto de 5V para crear un voltaje en el pin RX de $$ 2k / (2k + 1k) * 5.0V $$ o 3.3 voltios. El divisor debe estar conectado a tierra para que funcione. El Arduino podrá leer un nivel lógico de 3.3v correctamente, por lo que no es necesario hacer nada en la salida del HC-05. Consulte aquí para obtener información sobre los divisores de voltaje.

    
respondido por el BobT

Lea otras preguntas en las etiquetas