- Labornetzteil AliExpress         
Ergebnis 1 bis 5 von 5

Thema: Anpassung einer Atmel AppNote an GCC

  1. #1
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803

    Anpassung einer Atmel AppNote an GCC

    Anzeige

    Praxistest und DIY Projekte
    Hallo Leute,

    bei der Anpassung einer Atmel AppNote (C-Code mit IAR EWAAVR 4.11A Compiler) an AVR-GCC habe ich 2 Fragen:

    1. Es wird die <inavr.h> includiert. Ist das in GCC die <avr/interrupt.h> ?

    2. Als Compiler-Anweisungen kommen solche vor:
    #if defined(abc) | defined(def) | defined(ghi)
    In GCC kenne ich nur:
    #ifdef(abc) und das ODER scheint da nicht zu gehen, oder gibt's da etwas anderes?

    Gruß Dirk

  2. #2
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672
    1. Es wird die <inavr.h> includiert. Ist das in GCC die <avr/interrupt.h> ?
    Ich kenne den IAR nicht, es würde mich aber schon sehr wundern, wenn es bei den Header-Dateien immer 1:1-Entsprechungen gäbe. Portiere den Code und inkludiere dann das, was du für den neuen Code brauchst. Werden dort Interrupts verwendet, dann inkludiere <avr/interrupt.h>. Wenn nicht, dann nicht.

    2. Als Compiler-Anweisungen kommen solche vor:
    #if defined(abc) | defined(def) | defined(ghi)
    Die Zeile funktioniert genau so auch mit dem gcc.
    MfG
    Stefan

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.802

    Re: Anpassung einer Atmel AppNote an GCC

    Zitat Zitat von Dirk
    Hallo Leute,

    2. Als Compiler-Anweisungen kommen solche vor:
    #if defined(abc) | defined(def) | defined(ghi)
    In GCC kenne ich nur:
    #ifdef(abc) und das ODER scheint da nicht zu gehen, oder gibt's da etwas anderes?

    Gruß Dirk
    im Zweifelsfalle
    Code:
    #if defined(abc) || defined(def) || defined(ghi)
    Ebenso gehen ! und && und runde Klammern
    Disclaimer: none. Sue me.

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803
    @Stefan:
    Portiere den Code und inkludiere dann das, was du für den neuen Code brauchst.
    Ok, werde ich versuchen. Aktuell fehlen mir die USI-Register. Gibt's die nur in der uC-Def-Datei (z.B. beim ATtiny 26) oder auch allgemein in einer (nicht uC-spezifischen) Lib?

    @SprinterSB:
    Danke, habs hingekriegt.

    Gruß Dirk

  5. #5
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672
    Ok, werde ich versuchen. Aktuell fehlen mir die USI-Register. Gibt's die nur in der uC-Def-Datei (z.B. beim ATtiny 26) oder auch allgemein in einer (nicht uC-spezifischen) Lib?
    Spezifische Registerdefinitionen sind nur in den Header-Dateien derjenigen µCs, die diese Register auch haben. Du bindest die aber nicht selber direkt ein, sondern immer nur <avr/io.h> und setzt mcu passend.
    MfG
    Stefan

Berechtigungen

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

12V Akku bauen