Wenn ein Signal auf der seriellen Leitung der Steckerleiste des Raspi gesendet wird und ich dies sehen möchte, dann schalte ich einfach während des Sendens der Daten über einen GPIO Port eine LED ein. Bei kurzen Aktivitäten sieht man das Aufleuchten der LED aber nur sehr schlecht. Bei einem gewöhnlichen uC würde ich in einer ISR die Einschaltzeit der LED verlängern - denn ein einfaches delay() im Hauptprogramm wäre eine schlechte Lösung da dies den Programmablauf anhält. Wie kann man das auf dem Raspi realisieren? Bietet time.h hierfür eine Lösung (Timer im Hintergrund starten... ) an? Ich habe keine Erfahrung wie man eine ISR auf nem Raspi realisiert oder ob das auf so einem System überhaupt einen Sinn macht.
Warum machst du nicht einfach einen printf auf die Console? Das, was einem Interrupt am nächsten kommt, sind Signals. Du kannst z.B. mittels "signal/sigaction" und "alarm/setitimer" so ein Signal nach einer angegebenen Zeit auslösen. Signal-Handler haben allerdings so einige Stolperfallen (insbesondere welche Funktionen dort überhaupt nur benutzt werden dürfen), so dass ich das einem Anfänger nicht unbedingt empfehlen würde. Die einfachste Debug-Methode unter Unix/Linux ist mMn wirklich ein popeliges printf.
Nö, ne Hardware-Lösung kommt nicht infrage mir geht's bei dem Projekt
vordergründig um den Lernaspekt.
>Warum machst du nicht einfach einen printf auf die Console?
Um quasi Zeit zu erzeugen?
Weiß nich...
Ich bin kein besonderer Freund von Linux, wohl aber vom Programmieren in
C. Die Lösung mittels Signal-Handler werde ich mit mal anschauen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.