Arduino IO-File Problem

Gast #5037297
Hallo liebe Mikrocontrollerliebhaber,

ich versuche gerade meinen Arduino Mega zum Laufen zu bekommen und 
wollte dafür an Port E einfach eine '1' ausgeben.

Leider schimpft die Arduino IDE, dass ich versuchen würde, mehr als eine 
IO-Headerdatei einzubinden.

Die Meldung kommt von der Datei iomxx0_1.h in der eigentlich die Ports 
definiert sind.

Wie werde ich das Problem los?

Viele Grüße
MC
Gast #5037329
Ich möchte auch nicht mit den Arduino Funktionen arbeiten, daher alles 
in C.


Ich wollte eigentlich alle Ports genauso nutzen können, wie beim Arduino 
Uno zuvor.

Mein Problem ist, dass er sämtliche Ports außer Port A, B nicht kennt.

Der Arduino Mega hat aber Port A bis H.

Wie krieg ich denn die Umgebung dazu, dass er die anderen Ports auch 
akzeptiert.
Die IO-Files sind alle in den Ordnern, ich krieg ihn nur nicht dazu, 
dass er akzeptiert, jetzt einen ATmega 2560 zu haben.

Grüße
MC
Gast #5037334
MC schrieb:
> Anbei der Arduino Sketch

Nicht jede Datei mit der Extension "ino" ist ein Arduino Sketch.

Das Arduino Framework erwartet in der Sketch-Datei eine Funktion namens 
setup() und eine namens loop().
#5037348
>Ich möchte auch nicht mit den Arduino Funktionen arbeiten, daher alles
>in C.

Du kannst nicht die Arduino-Entwicklungsumgebung starten und gleich 
gegen die Grundsätze der Arduino-Programmierung (Programmstruktur) 
verstoßen.

Der Umkehrschluss meines vorherigen Posts lautet: Die 
Arduino-Entwicklungsumgebung ist KEIN 08/15 "C"-Compiler.
#5037377
Hallo,

@ Wolfgang (Gast) und  Sebastian S. (amateur):

das ist so falsch.
Ohne setup() und loop() ist es ein (fast) normaler AVR-GCC bzw. die C++ 
Version, die aufgerufen wird.
Es gibt ein paar Fallstricke, das sind aber verblüffend wenige. Ich habe 
auch schon alte Sourcen einfach in die IDE geworfen.

Sein Sketch mit Boardeinstellung Arduino Mega 2560 und diesen includes
1
//#define __AVR_ATmega2560__
2
#include <avr/io.h>
3
//#include <avr/iomxx0_1.h>
4
#include <stdio.h>
5
#include <stdlib.h>
6
#include <stdint.h>         //definiert den Datentyp uint8_t   
7

8
#include <avr/wdt.h>

compiliert völlig problemlos ohne Fehler und Warnungen.

Gruß aus Berlin
Michael

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 9 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.