Forum: Mikrocontroller und Digitale Elektronik Arduino => Zugriff auf ISR´s // vom Framework genutzte µC Resourcen


von Chefkoch (Gast)


Lesenswert?

Mahlzeit,

ich habe jetzt zum ersten Mal mit Arduinos zu tun, genauer mit einem 
Nano.
Bisher habe ich die Megas immer blanko ohne ein Framework betrieben.

Jetzt gibt es zwei Dinge, die mich interessieren:

1.) Zugriff auf ISR´s
Z.B. in der Serial Classe wird die ISR für empfangene UART Daten 
verwendet.
Ich möchte jetzt selbst einen Handler schreiben. Habe ich dafür eine 
sinnvolle und vorgesehene Möglichkeit?

Ich könnte in den Classfiles rumschreiben, was ich im Sinne der 
Codepflege nicht gut fände, weil jeder der den Sketchcode dann nutzten 
will erstmal die selben Änderungen sicherstellen muss. Auf dem Wege 
könnte ich entweder die Verwendung der ISR auskommentieren, damit ich 
sie im Sketch nutzten kann ohne das der Compiler eine Doppeldeutigkeit 
feststellt, oder ich müsste die seriel Klasse von einem Interface 
ableiten, welches mir das Einrichten eines Notifierpatterns ermöglicht.


2.) Genutzte Resourcesn des Ardu-Frameworks
Weiß jemand, ob es für die Boards Listen gibt, in denen drinsteht, 
welche Hardware des jeweiligen µC genutzt werden?
Wenn ich z.B. den Nano habe und Timer_1 verwenden will, woher weiß ich, 
ob das Framework den nicht für irgendwas nutzt und ich dieses bei einer 
Registerinitialisierung im Sketch dann crashe?
Was mir sonst noch einfällt ist die jeweiligen Kontrollregister einer 
Hardware darauf zu prüfen, ob ihr Inhalt den Resetzuständen entspricht.

gez., der Chefkoch

von Arduino (Gast)


Lesenswert?


von Ulrich F. (Gast)


Lesenswert?

In der Regel nutzt Arduino nur Timer0 für seine Systemzeit 
(millis(),delay()usw)
Und den Seriellen Interrupt.


Abschalten kannst du beides auf einen Schlag, wenn du die setup() und 
loop() Funktion weg lässt, und stattdessen eine main() anlegst.

Wie man dann allerdings die mitgelieferten <avr/io.h> usw. einbindet 
kann ich dir nicht sagen.

von Chefkoch (Gast)


Lesenswert?

>>Abschalten kannst du beides auf einen Schlag, wenn du die setup() und
>>loop() Funktion weg lässt, und stattdessen eine main() anlegst.

Damit knocke ich im Grunde das Ardu-Framework aus, oder?

Außerdem klingt das für mich etwas was ich schon im Verdacht hatte, oder 
eigentlich sogar nur als Idee da war:

Wird dieses SketchFile von einem hostgestütztem Programm zunächst 
eingelesen und auf bestimmte Keywords hin untersucht?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.