Kommentierte Programmierbeispiele für Arduino Uno                                          

1) Programm: LED blinkt - Clip:

pr blinke13

;LED 13 blinkt

setze "Port "com12                                                                    ; Com-Portanschluss wird festgelegt (vgl. Gerätemanager und Arduino-Steuerprogramm)

setze "led 13                                                                               ; Led-Variable wird mit dem digitalen Pin 13 belegt

modusPin :led "output                                                                ; digitaler Pin 13 wird auf den Modus Signalausgang vorbereitet

andauernd [schreibeDigital :led "on warte 30 schreibeDigital :led "off warte 30] ; LED 13 wird ständig ein- und ausgeschaltet

ende

2) Programm: Helligkeit der LED wird gesteuert  - Clip:

pr PulsLED9

setze "port "com12                          ; Com-Portanschluss wird festgelegt (vgl. Gerätemanager und Arduino-Steuerprogramm)

setze "led 9                                       ; Led-Variable wird mit dem digitalen Pin 9 belegt

setze "schritte 15                              ; Schrittzahl der Helligkeitsstufe wird gesetzt

modusPin :led "output                      ; digitaler Pin 9 wird auf den Modus Signalausgang vorbereitet

pulsiere 255                                       ; höchster Helligkeitswert 255 wird an die Prozedur pulsiere übergeben

ende

pr pulsiere :helligkeit

schreibeAnalog :led :helligkeit                                                                                ; LED 9 wird mit der entsprechenden Helligkeitsstufe über die PWM-Ausgabe angesteuert bzw. aktiviert

warte 10                                                                                                                     ; Warteschleife

wenn eines? (:helligkeit = 255)(:helligkeit = 0) [setze "schritte :schritte * (-1)]   ; falls die Helligkeitsstufe 255 oder 0 beträgt, wird die Schrittzahl im Vorzeichen verändert

pulsiere :helligkeit + :schritte                                                                                   ; nächste erhöhte bzw. abgesenkte Helligkeitsstufe wird an den Prozedurenkopf übergeben

ende

3) Programm: LED blinkt mit Ton - Clip1:  Clip2:

pr blinkeTon

;LED 4 blinkt

setze "Port "com6            ; Com-Portanschluss wird festgelegt (vgl. Gerätemanager und Arduino-Steuerprogramm)

setze "led 4                       ; LED-Variable wird mit dem digitalen Pin 4 belegt

setze "pieps 5                   ; Pieps-Variable wird mit dem digitalen Pin 5 belegt

modusPin :led "output      ; digitaler Pin 4 wird auf den Modus Signalausgang vorbereitet

modusPin :pieps "output  ; digitaler Pin 5 wird auf den Modus Signalausgang vorbereitet

andauernd [schreibeDigital :led "on schreibeDigital :pieps "on warte 60 ~

schreibeDigital :led "off schreibeDigital :pieps "off warte 30] ; LED 4 und Lautsprecher werden stets ein- und ausgeschaltet

ende

4) Programm: LED wird über einen Bildschirmbutton gesteuert - Clip:

pr ButtonLED

setze "Port "com6                              ; Com-Portanschluss wird festgelegt (vgl. Gerätemanager und Arduino-Steuerprogramm)

setze "led 13                                       ; LED-Variable wird mit dem digitalen Pin 13 belegt

modusPin :led "output                        ; digitaler Pin 4 wird auf den Modus Signalausgang vorbereitet

setfocus[FMSLogo]

mausan [ButtonLinks ] [sh][ ] [ ] [ ]    ; linke Maustaste wird aktiviert

vi sh aufxy -400 150 sa                        ; Position des Button wird festgelegt

stiftfarbe "schwarz                               ; Stiftfarbe wird festgelegt

wh 4 [ vw 50 re 90] sh                           ; quadratischer Button wird gezeichnet

ende

pr buttonlinks

setze "x element 1 mausort  

setze "y element 2 mausort

aufxy :x :y                    ; Ort des Mauszeigers wird bestimmt

wenn alle? (alle? :x < - 350 :x > -400) (alle? :y < 200 :y > 150) [ ~

wennsonst (liesdigital :led) = "off [ füllfarbe "gelb aufxy :x :y fülle schreibedigital :led "on rk] [füllfarbe "weiß aufxy -395 155 fülle schreibedigital :led "off rk]

]                                    ; falls der Mauszeiger im Bereich des Buttons angeklickt wird, gilt: weißer Button, falls LED "off" sonst gelber Button

ende

5) Programm: Temperaturmessung mittels LM35 - Clip:

pr temp

setze "port "com6                        ; Festlegung des Com-Portanschlusses

setze "LM35 "A0                        ; Wert des analogen Anschlusses A0 wird der Variablen LM35 übergeben

moduspin :LM35 "input              ; LM35 wird auf Signaleingang vorbereitet

setze "t 20                                    ; Festlegung der Messabstände

referenzanalog "Intern

vi

andauernd [setze "sensorwert liesanalog :LM35 dz :sensorwert setze "temperatur skaliere :sensorwert 0 307 0 150 ~      ; Temperatur wird gemessen und skaliert

                   wenn :temperatur > 30 [hg "rot] ~                                                                                                                              ; bei Temperatur > 30° C wechselt die Hintergrundfarbe auf rot

                   wenn :temperatur < 11 [hg "blau] ~                                                                                                                            ; bei Temperaturen < 11° C wechselt die Hintergrundfarbe auf blau

                   wenn alle? (:temperatur > 10)(:temperatur < 31) [hg "grün] ~                                                                                  ; bei Temperatur zwischen 10° C und 31°C wechselt die Hintergrundfarbe auf grün

                  ak 90 it liste form :temperatur 4 1 "Grad warte :t                                                                                                       ; Gradzahl wird auf dem Grafikschirm gedruckt

                ]

ende

Weiterführendes Programm: Morsegenerator - Clip:

(rote LED: kurzes Signal; grüne LED: langes Signal; gelbe LED: Wortende, 3-mal blinkend für Ende)