- 3D-Druck Einstieg und Tipps         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 19

Thema: Einfache Port-Zuweisung -> Fehlermeldung

  1. #1
    Erfahrener Benutzer Begeisterter Techniker Avatar von Jacob2
    Registriert seit
    26.05.2007
    Ort
    Berlin
    Beiträge
    345

    Einfache Port-Zuweisung -> Fehlermeldung

    Anzeige

    Powerstation Test
    Hi,
    ich compiliere mit dem avrgcc und wollte damit für den ATmega8535 folgenden Code compilieren:
    Code:
    #include <io.h>
    #include "..\lib\mydefs.h"
    #include "..\lib\lcd.h"
    #include "..\lib\stepper.h"
    #include "..\lib\rc5.h"
    #include "..\lib\uart.h"
    #include "..\lib\sensor.h"
    
    int main(void)
    {
    
    	//hier eigenen Programmcode einfügen
        DDRA = 0xff;
        PORTA = 0x00;
    	return 0;
    }
    Ich wollte PortA komplett auf Ausgang schalten und dann alle auf 0. Was hab ich falsch gemacht? Ich erhalte für beide Zeilen "invalid lvalue in assignment". Kann gut sein, dass ich einen Fehler gemacht habe, ist mein erstes mal "so" zu programmieren (vorher vorgefertigte funktionen).
    Roboter, CNC Fräse, Elektronik und Basteleien stelle ich auf meiner Website vor...

  2. #2
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672
    Und über die erste Zeile meckert er nicht?
    Es muss <avr/io.h> heißen.
    MfG
    Stefan

  3. #3
    Erfahrener Benutzer Begeisterter Techniker Avatar von Jacob2
    Registriert seit
    26.05.2007
    Ort
    Berlin
    Beiträge
    345
    Wenn ich den "#include-Pfad" so ändere beschwert er sich darüber, die anderen Meldungen ändern sich aber auch(siehe Bild).
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken gcc-meldung.gif  
    Roboter, CNC Fräse, Elektronik und Basteleien stelle ich auf meiner Website vor...

  4. #4
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672
    Dann stimmt etwas mit deiner avr-gcc-Installation nicht.
    Du hast nicht zufällig selber an der Ordnerstruktur was geändert?
    Such mal nach io.h und io8535.h. Wie lauten deren Pfade relativ zum Installationsordner von avr-gcc?

    Ach, noch was:
    In deinem ersten Post steht ATmega8535, wieso dann mcu=at90s8535?
    MfG
    Stefan

  5. #5
    Erfahrener Benutzer Begeisterter Techniker Avatar von Jacob2
    Registriert seit
    26.05.2007
    Ort
    Berlin
    Beiträge
    345
    io.h ist 2x vorhanden: C:\avrgcc\avr\include
    C:\avrgcc\lib\avr-libc-20011029\include
    io8535.h ist auch in den selben Ordnern jeweils 1x vorhanden

    es wurde lediglich unter c:\avrgcc\ ein neuer Ordner mit Unterordnern angelegt.
    Roboter, CNC Fräse, Elektronik und Basteleien stelle ich auf meiner Website vor...

  6. #6
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672
    avr-libc-20011029??? Soll das ein Scherz sein, oder hast du dich da vertippt?
    Aber auch C:\avrgcc\avr\include stimmt schlicht nicht. Sie müssten in C:\avrgcc\avr\include\avr liegen. Hast du avr-gcc und avr-libc selber compiliert?
    MfG
    Stefan

  7. #7
    Erfahrener Benutzer Begeisterter Techniker Avatar von Jacob2
    Registriert seit
    26.05.2007
    Ort
    Berlin
    Beiträge
    345
    nee, hab ich nicht. den avrgcc hab ich von AATiS weis nicht ob die da was geändert haben, glaubs aber nicht.
    avr-libc-20011029 ist kein scherz und kein verschreiber!
    Roboter, CNC Fräse, Elektronik und Basteleien stelle ich auf meiner Website vor...

  8. #8
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    24.02.2006
    Ort
    3. Planet eines kleinen Sonnensystems in einem Seitenarm der Milchstraße
    Alter
    69
    Beiträge
    622
    Hallo Jacob2,

    Zitat Zitat von Jacob2
    ...avr-libc-20011029 ist kein scherz und kein verschreiber!
    dann also kein Verschreiber, aber doch ein bisschen ältlich... Versuche es mal mit einer der Versionen von Dezember 2007 (siehe http://www.mikrocontroller.net/articles/WinAVR ) -- oder evtl. (Achtung: umstritten!) auch mit einer 2008er Version, mit der ich selbst keine Erfahrung habe: http://winavr.sourceforge.net/ .

    Gruß

    Fred
    Only entropy comes easy. - Anton Checkhov

  9. #9
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672
    Meiner Meinung nach kannst du einfach die neueste WinAVR-Version nehmen. Ich persönlich habe darin noch keinen Fehler gefunden, und es ist auch allgemein noch nichts Gravierendes gefunden worden.

    Und noch zwei Tipps:
    1) Such dir für deine eigenen Sachen ein anderes lauschiges Plätzchen. Packe es nicht mit in den Installationsordner.
    2) Verwende für mcu genau den Typ, den du auch benutzt, nicht irgendetwas ähnliches.
    MfG
    Stefan

  10. #10
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    39
    Beiträge
    3.416
    in der neuesten version sind ein paar registerbezeichungen geändert worden und "nur" die alte schreibweise wurde entfernt, also include <io.h> geht garnichtmehr ... in dem vorgänger hat er automatisch auf <avr/io.H> umgeleitet und ne warnung beim compilieren gemacht das geht nu nich mehr

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress