Tabla de contenido:

¡Conversión del puerto USB de las placas basadas en SAMD21 en un puerto serie de hardware !: 3 pasos
¡Conversión del puerto USB de las placas basadas en SAMD21 en un puerto serie de hardware !: 3 pasos

Video: ¡Conversión del puerto USB de las placas basadas en SAMD21 en un puerto serie de hardware !: 3 pasos

Video: ¡Conversión del puerto USB de las placas basadas en SAMD21 en un puerto serie de hardware !: 3 pasos
Video: MicroPython beta for SAMD21 Feather M0 & Arduino Zero with Tony D! @micropython 2024, Mes de julio
Anonim
Image
Image
Crear dispositivo serie con conector USB
Crear dispositivo serie con conector USB

Hoy en día es estándar usar un puerto USB de placa Arduino (o cualquier otro compatible) como puerto serie emulado. Esto es muy útil para depurar, enviar y recibir datos de nuestros adorables tableros.

Estaba trabajando en uChip cuando, revisando la hoja de datos de su MCU (SAMD21), noté que el USB gpio PORTA 24 y 25 (que son D- / D + respectivamente) también se puede usar como SERCOM (PAD 2 y 3).

Después de notar esto en la hoja de datos, pensé que a veces sería bastante útil conectar un dispositivo serial de hardware directamente al puerto USB en lugar de conectar cables voladores en una placa de pruebas o soldarlos directamente a la placa.

Por lo tanto, aquí hay un tutorial rápido que le muestra cómo configurar su placa de manera que pueda usar su USB como puerto serie de hardware.

En este tutorial específico, el dispositivo en serie conectado es un adaptador en serie Bluetooth HC-06. Sin embargo, puede adaptar el código a cualquier otro dispositivo en serie, siempre que suelde un adaptador de cable USB al dispositivo en serie.

Lista de materiales

uChipx 1

Adaptador micro-USB a USB / A x 1 (enlace)

Módulo HC-06 BT x 1

Cable USB reciclado x 1

Batería (3V3 <VBAT <5) x 1

Paso 1: Cree un dispositivo serie con conector USB

Despegue el cable USB y suelde sus cables al dispositivo serie como se muestra en el esquema y se escribe a continuación.

- Cable USB negro -> GND

- Cable USB rojo -> VCC (Alimentación)

- Cable USB (D-) blanco -> RX

- Cable USB (D +) verde -> TX

Paso 2: Programa UChip

Programa UChip
Programa UChip

Conecte uChip a su computadora y cargue el boceto "HWSerialUSB.ino" en la placa. Luego, desconecte uChip para continuar con los siguientes pasos.

SUGERENCIA: ¿Cómo funciona el código? ¿Por qué mi puerto USB es diferente ahora?

Aquí se describe en resumen el truco que estoy haciendo en el código.

Básicamente, estoy creando una nueva instancia de “SerialUSB_HW” usando el GPIO que actualmente está asignado para trabajar como D- y D +.

En Setup () habilito la funcionalidad SERCOM para los pines USB, usando la función “pinPeripherial ()” dada en el encabezado “cableado_private.h” incluido al principio del código.

Ahora, puedo usar la instancia “SerialUSB_HW” así como el estándar Serial o SerialUSB, recibiendo y enviando datos a mi dispositivo serial HC-06.

Paso 3: Ensamblar - Conectar - Experimentar

Ensamblar - Conectar - Experimentar
Ensamblar - Conectar - Experimentar

Conecte la batería a uChip

- pin_8 -> VBAT--

- pin_16 -> VBAT +

Inserte el adaptador OTG y luego el dispositivo serial con su nuevo puerto USB y … eso es todo, ¡el hardware está listo!

Después de emparejarlo con el módulo HC-06 (la contraseña estándar es 1234), conéctese al dispositivo BT usando su teléfono o interfaz BT. Ahora debería recibir el estado del LED integrado.

Envíe el carácter "o" para encender el LED, o cualquier otro carácter para apagarlo.

Experimente y pruebe otros dispositivos seriales. ¡Ahora sabe cómo utilizar el puerto USB como puerto serie de hardware!

SUGERENCIA: Hay un #define en el código, que le permite cambiar entre usar el puerto USB como serie emulada o como serie de hardware. ¡Experimente y verifique que el dispositivo serial adjunto (HC-06) no se comunica a menos que obliguemos al USB a funcionar como hardware serial!

Recomendado: