- LiFePO4 Speicher Test         
Seite 2 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 11 bis 20 von 38

Thema: Linux-AVR Programmierung

  1. #11
    Erfahrener Benutzer Roboter Genie Avatar von oderlachs
    Registriert seit
    17.05.2010
    Ort
    Oderberg
    Alter
    74
    Beiträge
    1.175
    Blog-Einträge
    1
    Anzeige

    Powerstation Test
    Mein erster Test endete gleich mit nem Fehler, wär auch zu schön wenns gleich geht...
    gerhard@ubuntu12:~/avr_code$ make Led
    cc Led.c -o Led
    Led.c:8:20: schwerwiegender Fehler: avr/io.h: Datei oder Verzeichnis nicht gefunden
    Kompilierung beendet.
    make: *** [Led] Fehler 1
    ich habe nur eine C Datei im VZ die Led.c
    /* Sample program for Olimex AVR-P40-USB with ATMega16 processor
    * Blink Led
    * Compile with AVRStudio+WinAVR (gcc version 3.4.6) */

    // Verwendete CPU = ATmega_1284p
    #define F_CPU 16000000UL
    #include <avr/io.h>
    #include <util/delay.h>
    #include <stdlib.h>

    void PORT_Init()
    {
    PORTB = 0b00000000;
    DDRB = 0b00000001; //set Led as output
    }

    int main()
    {

    PORT_Init();
    while (1)
    {
    PORTB = PORTB | 0b00000001;
    _delay_ms(500);
    PORTB = PORTB & 0b11111110;
    _delay_ms(500);
    }
    }
    und die "umgestrickte make.txt":

    CC=avr-gcc
    RM=rm -f
    OBJCOPY=avr-objcopy
    AVRDUDE=sudo avrdude -p m1284 -c avrisp -P USB -e -U flash:w:
    AVRSIZE=avr-size
    MCU=atmega168p
    F_CPU=16000000
    CFLAGS=-g -DF_CPU=$(F_CPU) -Wall -Os -mcall-prologues
    OBJ = Led.o
    BIN = Led.bin
    HEX = Led.hex
    MAP = Led.map
    .phony: all
    all:
    $(OBJ)
    $(RM) $(HEX) $(BIN) $(MAP)
    $(CC) -mmcu=$(MCU) $(CFLAGS) -o $(BIN) -Wl,-Map,$(MAP) $(OBJ)
    $(OBJCOPY) -R .eeprom -O ihex $(BIN) $(HEX)
    %.o: %.c
    $(CC) -mmcu=$(MCU) $(CFLAGS) -c $<
    clean:
    $(RM) $(OBJ) $(BIN) $(HEX) $(MAP)
    flash: $(OBJ)
    $(AVRDUDE)$(HEX)
    size:
    $(BIN)
    $(AVRSIZE) -C --mcu=$(MCU) $(BIN)
    Arduinos, STK-500(AVR), EasyPIC-40, PICKIT 3 & MPLABX-IDE , Linux Mint

  2. #12
    Erfahrener Benutzer Roboter-Spezialist Avatar von schorsch_76
    Registriert seit
    25.03.2012
    Ort
    Kurz vor Neuschwanstein
    Alter
    48
    Beiträge
    456
    Bitte noch die MCU anpassen auf deinen Atmega 1284

    MCU=atmega1284p

    und einfach nur

    make all

    Und wichtig: Die Tabs aus dem obigen Makefile müssen erhalten bleiben!!!

    - - - Aktualisiert - - -

    Habs hochgeladen, dann tust du dir leichter.

    Makefile.txt

    Musst nur die txt Endung wegmachen sonst gings nicht.

  3. #13
    Erfahrener Benutzer Roboter Genie Avatar von oderlachs
    Registriert seit
    17.05.2010
    Ort
    Oderberg
    Alter
    74
    Beiträge
    1.175
    Blog-Einträge
    1
    Ich denke das es mit den Pfaden nicht klappt, weil ja avr/io.h nicht gefunden wird. Es ist aber alles unter "usr/lib/avr/include/avr/io.h" usw.. zu finden. habe da keine kennung wo ich das eintragen muss das dieser Pfad zu den Umgebungsvariablen hizugeführt wird
    Arduinos, STK-500(AVR), EasyPIC-40, PICKIT 3 & MPLABX-IDE , Linux Mint

  4. #14
    Erfahrener Benutzer Roboter-Spezialist Avatar von schorsch_76
    Registriert seit
    25.03.2012
    Ort
    Kurz vor Neuschwanstein
    Alter
    48
    Beiträge
    456
    Bei der AVR build chain, muss die mcu stimmen. Die Kameraden haben teils unterschiedliche Verzeichnisse.

    Habe deine main.c in mein Verzeichnis kopiert und es klappt soweit ...

  5. #15
    Erfahrener Benutzer Roboter Genie Avatar von oderlachs
    Registriert seit
    17.05.2010
    Ort
    Oderberg
    Alter
    74
    Beiträge
    1.175
    Blog-Einträge
    1
    ich habe nach wie vor fehler über nicht gefundedene dateien...es muss doch sowas wie eine config geben wo man das einstellen kann...dann habe ich den ganzen pfad angegeben :
    #include <usr/lib/avr/include/avr/io.h>
    dann wird über eine andere nicht aufgefundene Datei gemeckert, die dann von der io.h wohl aufgerufen wird oder ähnlich. Ich muss mal sehen ob ich irgendwo noch was in sachen installation dafür finde. ich kann Dich ja nicht mit meinem ganzen Ärger hier "bombardieren" .
    Ich war jetzt auch ein paar Jahre raus aus Linux...habe nur win gemacht...muss auch wieder in linux reinfinden, weil mir das eigendlich gut gefällt.

    Meine source liegt in einem verz. avr_code im home Verzeichnis aufrufen tue ich damit : make Led.c

    ist das so ok ??

    Danke
    Gerhard
    Arduinos, STK-500(AVR), EasyPIC-40, PICKIT 3 & MPLABX-IDE , Linux Mint

  6. #16
    Erfahrener Benutzer Roboter-Spezialist Avatar von schorsch_76
    Registriert seit
    25.03.2012
    Ort
    Kurz vor Neuschwanstein
    Alter
    48
    Beiträge
    456
    Falls er es nicht findet kannst du die CFLAGS anpassen mit
    Code:
    -I/usr/lib/avr/include/
    ergänzen

    - - - Aktualisiert - - -

    So sieht es bei mir aus:

    Code:
    georg@gentoo-machariel ~/IR/Programm $ ls
    Makefile  main.c
    georg@gentoo-machariel ~/IR/Programm $ make all
    avr-gcc -mmcu=atmega1284p -g -DF_CPU=16000000 -Wall -Os -mcall-prologues -c main.c
    rm -f ir.hex ir.bin ir.map
    avr-gcc -mmcu=atmega1284p -g -DF_CPU=16000000 -Wall -Os -mcall-prologues -o ir.bin -Wl,-Map,ir.map main.o 
    avr-objcopy -R .eeprom -O ihex ir.bin ir.hex
    georg@gentoo-machariel ~/IR/Programm $ make flash
    sudo avrdude -p m1284p -c avrisp -P USB -e -U flash:w:ir.hex	
    Password:
    einfach nur
    Code:
    make all
    den Rest soll das Makefile machen. Das ist seine Aufgabe

  7. #17
    Erfahrener Benutzer Roboter Genie Avatar von oderlachs
    Registriert seit
    17.05.2010
    Ort
    Oderberg
    Alter
    74
    Beiträge
    1.175
    Blog-Einträge
    1
    Etwas besser ist es schon, aber noch nicht so ganz...werde mal den code umschreiben....
    gerhard@ubuntu12:~$ cd avr_code
    gerhard@ubuntu12:~/avr_code$ make all
    avr-gcc -g -DF_CPU=16000000 -Wall -Os -mcall-prologues -c -o Led.o Led.c
    Led.c:7:0: warning: »F_CPU« redefiniert
    <command-line>:0:0: note: dies ist die Stelle der vorherigen Definition
    In file included from Led.c:8:0:
    /usr/lib/avr/include/avr/io.h:428:6: warning: #warning "device type not defined"
    In file included from Led.c:9:0:
    /usr/lib/avr/include/util/delay.h: In function ‘_delay_ms’:
    /usr/lib/avr/include/util/delay.h:135:11: warning: unused variable ‘__ticks’
    /usr/lib/avr/include/util/delay.h: In function ‘_delay_us’:
    /usr/lib/avr/include/util/delay.h:212:10: warning: unused variable ‘__ticks’
    Led.c: In function ‘PORT_Init’:
    Led.c:14:2: error: ‘PORTB’ undeclared (first use in this function)
    Led.c:14:2: note: each undeclared identifier is reported only once for each function it appears in
    Led.c:15:2: error: ‘DDRB’ undeclared (first use in this function)
    Led.c: In function ‘main’:
    Led.c:24:3: error: ‘PORTB’ undeclared (first use in this function)
    make: *** [Led.o] Fehler 1
    gerhard@ubuntu12:~/avr_code$
    habe erst mal besten Dank, Georg das hat mir sehr viel geholfen, ich werde später weiter probieren, mir kribbeln schon die Tippfinger vor Aufregung ob es doch noch gehen wird
    Arduinos, STK-500(AVR), EasyPIC-40, PICKIT 3 & MPLABX-IDE , Linux Mint

  8. #18
    Erfahrener Benutzer Roboter-Spezialist Avatar von schorsch_76
    Registriert seit
    25.03.2012
    Ort
    Kurz vor Neuschwanstein
    Alter
    48
    Beiträge
    456
    Das ist jetzt in der main.c muss das F_CPU raus.

    Led.c:7:0: warning: »F_CPU« redefiniert

    Hier nimm bitte mein Makefile, da passt die mcu und die Tabs.
    /usr/lib/avr/include/avr/io.h:428:6: warning: #warning "device type not defined"

    Untersched:
    avr-gcc -g -DF_CPU=16000000 -Wall -Os -mcall-prologues -c -o Led.o Led.c
    avr-gcc -mmcu=atmega1284p -g -DF_CPU=16000000 -Wall -Os -mcall-prologues -c main.c

    Viel Erfolg!
    Gruß
    Georg

  9. #19
    Erfahrener Benutzer Roboter Genie Avatar von oderlachs
    Registriert seit
    17.05.2010
    Ort
    Oderberg
    Alter
    74
    Beiträge
    1.175
    Blog-Einträge
    1
    So bis aufs Flashen geht alles weil der USB port nicht gefunden wird ..werde ich bestimmt noch hinbekommen, es freut mich riesig hier eine solche Hilfe zu erfahren .
    Danke Georg !!

    Gerhard
    Arduinos, STK-500(AVR), EasyPIC-40, PICKIT 3 & MPLABX-IDE , Linux Mint

  10. #20
    Erfahrener Benutzer Roboter Genie Avatar von oderlachs
    Registriert seit
    17.05.2010
    Ort
    Oderberg
    Alter
    74
    Beiträge
    1.175
    Blog-Einträge
    1
    Also mit meinem AVRISP habe ich Probleme beim Flaschen....es fehlt ein Returnwert vom AVRISP, mit dem USBASP läuft alles ohne Fehleranzeige, nur wird das Programm im Chip nicht geändert...???
    Was das nun sein soll ist mir ein neues Rätsel...

    Ich arbeite weiter an der Fehlersuche, zum anderen stelle ich mir die Frage wie ich unterlinux die Fuse auslesen/programmieren kann, dafür wird es doch wohl auch ein Prog geben..wenn man schon für Linux "Teewecker" programmiert..
    Arduinos, STK-500(AVR), EasyPIC-40, PICKIT 3 & MPLABX-IDE , Linux Mint

Seite 2 von 4 ErsteErste 1234 LetzteLetzte

Ähnliche Themen

  1. Welches Linux für AVR , Asuro.....Linux überhaupt?
    Von oderlachs im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 10
    Letzter Beitrag: 09.01.2012, 12:23
  2. AVR STK600 + Kubuntu Linux + AVR Dude
    Von Nitromechanik im Forum AVR Hardwarethemen
    Antworten: 11
    Letzter Beitrag: 25.11.2010, 09:06
  3. AVR-Programmierung mit ISP Dongle unter AVR Studio 4
    Von Earnie im Forum C - Programmierung (GCC u.a.)
    Antworten: 3
    Letzter Beitrag: 23.09.2008, 18:57
  4. [solved] AVR Programmierung utner Linux
    Von epic im Forum C - Programmierung (GCC u.a.)
    Antworten: 5
    Letzter Beitrag: 29.06.2008, 21:29
  5. ATMega32 programmierung unter Linux
    Von stormracer im Forum C - Programmierung (GCC u.a.)
    Antworten: 4
    Letzter Beitrag: 13.11.2006, 14:53

Berechtigungen

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

12V Akku bauen