- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 3 von 3

Thema: UART-Receive

  1. #1

    UART-Receive

    Anzeige

    Powerstation Test
    Hallo,

    ich habe eigentlich ein ganz simples Problem. Ich möchte das per UART eingelesene Byte auf mein LED-Array ausgeben.

    Code:
    unsigned char UART1_Receive( void )
    {
        while ( !(UCSR1A & (1<<RXC1)) )
        ; // wait for Receive Complete
        return UDR1;
    }
    und im Hauptprogramm
    Code:
    PORTC = UART1_Receive;
    PORTC sind die LEDs. Bei Kompilieren (avr-gcc) bekomme ich folgende Meldung:
    warning: assignment makes integer from pointer without a cast
    Warum? UDR1 ist doch ein Register in dem das Byte steht. Und UART1_Receive gibt den Wert des Registers zurück. Warum sollte ich da irgendwas casten oder dereferenzieren?

    Viele Grüße
    Jakob

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Du hast die Klammer vergessen.
    PORTC = UART1_Receive();


    UART1_Receive alleine ist tatsächlich ein integer (nämlich die adresse von der funktion), da hat de GCC schon recht.
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  3. #3
    Oh mann, danke, manchmal ist man auch zu doof.

    Jakob

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad