Mal eine Frage andersherum, und dann glaube ich sollte wir Schluss machen, sonst geht das Thema zu sehr Offtopic.
Wie würde so eine einfach Schleife für Atmel aussehen?
Das ist Basic von der C-Control
Gruß Eddie
__________________________________________________ ___________________
Habe keine Angst davor, etwas Neues auszuprobieren, ein Amateur hat die Arche gebaut, Profis die Titanic!
Mal eine Frage andersherum, und dann glaube ich sollte wir Schluss machen, sonst geht das Thema zu sehr Offtopic.
Wie würde so eine einfach Schleife für Atmel aussehen?
Gruß Eddie
__________________________________________________ ___________________
Habe keine Angst davor, etwas Neues auszuprobieren, ein Amateur hat die Arche gebaut, Profis die Titanic!
also, man kann einen µC in warteschleifen shcicken und diesen dann halt 5 minuten warten lassen, sprich er dreht dann 5 minuten lang die daumen und macht einfach nix mehr, keine tastenabfrage, temperaturfühler etc.
oder man benutzt z.B. timer mit interrupts. auf das rn-board kann man nen mega16 draufstöpseln oder auch nen mega32. beide haben 16-bit timer drauf und mit entsprechendem vorteiler kann man da locker nen sekundentakt erzeugen. alternativ kann man nen uhrenquarz mit dranklatschen und mit dem 8-bit timer ebenfalls nen sekundenzähler programmieren. in beiden fällen laufen diese zähler in hardware, sprich der µC schreibt beispielsweise was aufs lcd, lässt leds leuchten oder was auch immer, bis eben eine sekunde abgelaufen ist. in dem moment wird der programmablauf unterbrochen, egal an welcher stelle im programm er gerade steht, und die sog. interruptroutine abgearbeitet. im einfachsten fall ist dass dan einfach wieder ein zähler, der ne variable hochzählt, sprich die uhr eine sekunde weiter schiebt. wenn der µC nun weiß, bei wievielen sekunden 5 minuten rum sind kann er dann problemlos irgendwas auslösen, z.b. die pumpe wieder einschalten oder so.
genau so gehts auch mit der uart, sprich der seriellen kommunikation per rs232. auch hier können programmunterbrechungen programmiert werden die entweder auf ein empfangenes zeichen oder auf ein gesendetes zeichen reagieren. bei zeichenempfang kann man z.b. auf ein bestimmtes zeichen hin die uhr auf null setzen. im fall eines interrupts vom gesendeten zeichen kann man z.b. die aktion ausführen, dass das nächste zeichen übertragen wird. die übertragung eines zeichens per UART ist für nen µC ne halbe ewigkeit und er muss da nicht unbedingt drauf warten.
die einfachste schleife eines atmel µC in der mainloop währe dann
do
loop
Vor den Erfolg haben die Götter den Schweiß gesetzt
aber wie sieht so ein interrupt im quellcode aus? ic raff das noch nicht ganz.
Gruß Eddie
__________________________________________________ ___________________
Habe keine Angst davor, etwas Neues auszuprobieren, ein Amateur hat die Arche gebaut, Profis die Titanic!
der interrupthandler ist n kleiner kodeschnipsel, der bei dem entsprechenden event ausgeführt wird. ist "ganz normaler code". die interruptquelle wird erst definiert, z.b. timer. der timer an sich läuft programmunabhängig.
erst z.b. bei timer überlauf wird per hardware der interrupt ausgelöst, der µC schaut nach, welcher codeschnipsel in dem bestimmten fall ausgeführt werden soll, springt da hin, führt diesen speziellen code aus und springt dann an die programmstelle zuück wo er vor eintreten dieses events war ... thats all.
Vor den Erfolg haben die Götter den Schweiß gesetzt
Alles klar, danke
Gruß Eddie
__________________________________________________ ___________________
Habe keine Angst davor, etwas Neues auszuprobieren, ein Amateur hat die Arche gebaut, Profis die Titanic!
Lesezeichen