Forum: Mikrocontroller und Digitale Elektronik Atmega32 - USART


von _Gast_ (Gast)


Lesenswert?

Guten Tag,

Ich habe einen Atmega32 sowie ein USB-Serial TTL Converter.
Nun möchte ich Daten vom yC an den PC senden.
Dafür habe ich das USB-Serial-Kabel folgendermaßen verbunden:
- GND -> GND meiner Schaltung
- VCC -> Nichts
- CTS -> Nichts
- TXD -> PD1 vom yC
- RXD -> PD0 vom yC
- RTS -> Nichts

Am PC verwende ich HTerm um die gesendeten Daten sichtbar zu machen.
Leider kommt allerdings nichts an, Treiber sind korrekt, Code folgt:
1
#define F_CPU 16000000UL
2
#define UART_BAUDRATE  1200
3
#define UART_SETTING  ((F_CPU/16L/UART_BAUDRATE)-1)
4
#include <avr/io.h>
5
#include <util/delay.h>
6
7
void USART_Init(unsigned int baud)
8
{
9
  UBRRH = (unsigned char)(baud>>8);
10
  UBRRL = (unsigned char)baud;
11
  UCSRB = (1<<RXEN)|(1<<TXEN);
12
  UCSRC = (1<<URSEL)|(1<<USBS)|(3<<UCSZ0);
13
}
14
void USART_Transmit( unsigned char data )
15
{
16
  while ( !( UCSRA & (1<<UDRE)) );
17
  UDR = data;
18
}
19
int main(void)
20
{
21
    USART_Init(UART_SETTING);
22
  
23
    while(1)
24
  {
25
    USART_Transmit('x');
26
    _delay_ms(500);
27
    }
28
}

Den Code habe ich größtenteils aus dem Atmega32 Datasheet...
Gruß

von Timmo H. (masterfx)


Lesenswert?

_Gast_ schrieb:
> Guten Tag,
> - TXD -> PD1 vom yC
> - RXD -> PD0 vom yC
Wenn TXD und RXD die Beschriftung am USB UART/TTL Converter ist, dann 
solltest du RXD und TXD tauschen. Denn das was der Converter sendet geht 
über TXD raus und muss beim Atmega an RXD gehen (PD0). RXD vom Converter 
muss daher an PD1 (TXT vom µC)

von Juergen G. (jup)


Lesenswert?

- TXD -> PD1 vom yC
- RXD -> PD0 vom yC

Tausch die beiden mal. das was von Deinem Konverter gesendet wird, also 
auf TX commt muss im uC auf RX rein und umgekehrt.

Ju

von _Gast_ (Gast)


Lesenswert?

Klingt logisch, ist logisch, funktioniert, ich bedanke mich vielmals!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.