Comunicación en serie USB Atmega328P FTDI 5V

Estoy trabajando con un cable USB Atmega328P y FTDI 5V para obtener una comunicación en serie entre el microcontrolador y la PC. Estoy usando Tera Term para recibir desde el microcontrolador.

Estoy usando un cable USB FTDI 5V con 6 pines.

Tengo las siguientes conexiones como

  • FTDI------->ATmega328P
  • VCC-------->Potencia
  • TIERRA------->Tierra
  • RX--------->Pin3

Estoy usando el siguiente código:

int main(void)
{

    UBRR0H = (BRC >> 8);
    UBRR0L = BRC;

    UCSR0B = (1 << TXEN0);
    UCSR0C = (1 << UCSZ01) | (1 << UCSZ00);

    while(1)
    {
        UDR0 = '8';
        _delay_ms(1000);

    }
}

Pero no obtengo ningún valor en mi pantalla de Tera Term. He realizado la configuración adecuada con mi Tera Term para serie.
Estoy un poco atascado con esto desde hace algún tiempo. Por favor, ¿alguien puede decirme si estoy haciendo algo mal?

Respuestas (1)

Probablemente necesite involucrar un osciloscopio para que pueda ver los niveles de la señal y si aparecen señales en serie reales.

Tenga en cuenta que el error número uno que se comete al conectar puertos serie como este es cruzar las señales Tx y Rx. El cable FTDI estará etiquetado con Tx siendo su pin de señal de salida en el pin 4 (cable naranja) y su Rx siendo su señal de entrada en el pin 5 (cable amarillo).

ingrese la descripción de la imagen aquí

Debe conectar el pin Tx del cable FTDI al pin Rx en el AVR. De igual manera debe conectar el pin Tx del cable FTDI al pin Tx del AVR.

El gran error que se comete a menudo es que la gente conecta las dos señales Tx juntas y las dos señales Rx juntas.