mikrocontroller.net

Forum: Compiler & IDEs UART geht nur bedingt


Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi.
Ich habe ein Problem.
Mein Uart geht im Echobetrieb ohne Probleme.
Also das was ich dem µC sende, kommt auch zurück.
Nur wenn ich noch etwas wie im Codebeispiel senden will dann kommt das
nicht an.
Es tut sich einfach nix am Empfänger.
Hat jemand eine Idee?

#include <avr/io.h>
#include <stdint.h>

#ifndef F_CPU
#define F_CPU 4000000
#endif
#define UART_BAUD_RATE 9600
#define UART_BAUD_CALC(UART_BAUD_RATE,F_OSC) ((F_CPU) /
((UART_BAUD_RATE)*16L)-1)

unsigned char get;

void uart_putc(uint8_t c)
{
  while (!(UCSRA & (1<<UDRE)));
  UDR = c;
}

int main(void)
{

  UCSRB |= (1<<TXEN);  //Transmitter Enabled
  UCSRC |= (1<<URSEL) | (3<<UCSZ0);  //Asynchron 8N1
  
  UCSRB |= (1<<RXEN);  //Emfpang enabled

  UBRRH=(uint8_t) (UART_BAUD_CALC(UART_BAUD_RATE,F_CPU)>>8);
  UBRRL=(uint8_t)UART_BAUD_CALC(UART_BAUD_RATE,F_CPU);

  DDRB = 0xFF;
  PORTB = 0xFF;
  
  
  while (!(UCSRA & (1<<UDRE)));
  UDR = 'h';

  while(1)
  {

    while(!(UCSRA & (1<<RXC)))
    {
      PORTB = ~get;
    }
    get = UDR;
    uart_putc(get);
    
    //WARUM SENDET ER DAS NICHT?
    uart_putc('T');
    //WARUM SENDET ER DAS NICHT?

      
  }
}

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ahh sorry mein fehler.
Hatte am anderen Rechner den falschen ComPort ausgewählt und such hier
2 Stunden lang den Fehler .........

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.