Simulator oder mein Problem mit Port.K ?

Hallo,

laut meinem Verständnis hängt doch der komplette Port K unten links auf dem Arduino Mega2560 zwischen A8 ... A15 beschriftet. Darüber ist der komplette Port F auf A0 ... A7 geschaltet.

Folgender Code funktioniert mit Port.F aber nicht mit Port.K im Simulator. Warum? Ab A10 wandert eine "graue LED" statt einer roten. Das seltsame ist aber, im Simulator sind immer noch 6 weitere LEDs in der unteren doppelten Leiste auf 0 und mit PK... beschriftet. Kann ja nicht sein mehr als 8 LED bzw. Pins.
Warum?

int LED = 1;

void setup()
{
DDRK = 255; // Port.K komplett Ausgang
PORTK = 255; // Port.K alle Ausgänge Ein
delay(200);
PORTK = 0; // Port.K alle Ausgänge Aus
delay(500);
}

void loop()
{
if (LED > 128) {LED = 1}; // Prüfung ob höchstes Bit erreicht
PORTK = LED; // Port.K wird neu gesetzt
LED = LED << 1; // Registerinhalt "von Port.K" um 1 verschieben
delay(500);
}

Welcher Simulator?
Bist Du sicher daß der Simulator 100% kompatibel mit ArduinoMega ist?
Grüße Uew

Hallo,

Du wirst lachen, ich nehm den Arduino eigenen Simulator v0.98A. Habe extra 9,70 €uro ausgegeben. :slight_smile:
Aber irgendwie scheitert er bei den einfachsten Sachen.

Wenn Du mit dem gleichen Code Port J verwendest, der sich laut Schaltplan in einem 2x3er Block unten in der Doppelreihe befindet, dann zeigt der Simluator wieder 2 falsche "Pins" von Port.K links mit an. Probiere das mal aus.

Das muß doch gehen?

Edit: ich habe den hier um genau zu sein. http://www.arduino.com.au/Simulator-for-Arduino.php
Ich glaube aber jetzt zuverstehen das der mit der Arduino µC Entwicklertruppe gar nichts zu tun hat, sondern irgendwer das Teil programmiert. Kann das sein?

Jep. Das ist kein echter Simulator. Den hat irgendwer zusammengefrickelt...

Arduino Software ist und war schon immer komplett Open-Source.

Nein, der kommt nicht vom Arduino-Team.
Grüße Uwe

Doc_Arduino:
http://www.arduino.com.au/Simulator-for-Arduino.php

Man sollte eigentlich misstrauisch werden, wenn der SImulator nicht über den ofiziellen Arduino-Store verkauft wird
und hier nicht auf der Seite erwäht wird.

Addi

Hallo,

nun gut, dann habe ich etwas Geld umsonst ausgegeben. Mit anderen Spielereien funktionierte das Teil nämlich anfangs ganz gut. Hauptgrund ist der, ich möchte mein µC durch sinnloses flashen Anfangs noch schonen wenn ich mich einarbeite.

Der Code sollte aber wie erwartet eigentlich funktionieren mit Port F, K, J oder L auf einem Mega 2560 ? Nicht das ich irgendwelche Porteigenheiten übersehe.

Doc_Arduino:
Hauptgrund ist der, ich möchte mein µC durch sinnloses flashen Anfangs noch schonen wenn ich mich einarbeite.

Der Code sollte aber wie erwartet eigentlich funktionieren mit Port F, K, J oder L auf einem Mega 2560 ? Nicht das ich irgendwelche Porteigenheiten übersehe.

Da der Simulator noch nicht der Beta-Phase entsprungen ist (V0.98), kann ruhig sein, daß solche direkte HW Programmierung noch nicht 100% implementiert ist. Lies Dir mal die "limitations" durch. Viele nicht von Arduino produzierte Bibliotheken sind nicht kompatibel und Pointer!!!! funktionieren nicht.

Limitations :

Custom Libraries, pointers, structures,classes and enums may or may not work
Other minor issues to do with complicated C++ commands
Firmata needs work
Mouse object will run but not yet implemented
Pointers are not implemented
typdef function pointers not implemented
MAC,iOS interface not implemented
<avr/include_file.h> still to be finished and tested

Da kann ich Dich beruhigen; bevor Du 10000 Uploads gemacht hast geht viel Zeit ins Land. Die Gefahr einen Arduino durch zuoft Flashen kapttzumachen besteht praktisch nicht.

Grüße Uwe

Hallo,

okay, habe verstanden. Es ist ja auch sehr schwierig einen µC nachzuprogrammieren. Der Simulator wird weiter gepflegt, habe schon eine Antwort erhalten. In späteren Versionen ...
Wegen dem flashen, na wenn er 10.000 x durch hält, dann hat er sein Geld rein ... :wink:

Danke.