Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| elektronik:mini-programme-fuer-attiny13 [22.07.2025 12:09] – angelegt Martin Fitzel | elektronik:mini-programme-fuer-attiny13 [Unbekanntes Datum] (aktuell) – Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1 | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== Mini-Programme für ATtiny13 ====== | ||
| + | |||
| + | |||
| + | ===== LED-Blinker: | ||
| + | <code bascomavr [enable_line_numbers=" | ||
| + | ' | ||
| + | $regfile = " | ||
| + | $crystal = 1200000 | ||
| + | $hwstack = 8 | ||
| + | $swstack = 4 | ||
| + | $framesize = 4 | ||
| + | Config Portb = Output | ||
| + | |||
| + | Do | ||
| + | Portb.3 = 1 | ||
| + | Toggle Portb.4 | ||
| + | Waitms 500 | ||
| + | Loop | ||
| + | |||
| + | End | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ===== Zeitschalter ATtiny13 ===== | ||
| + | |||
| + | <code bascomavr [enable_line_numbers=" | ||
| + | 'Timer 60 s | ||
| + | $regfile = " | ||
| + | $crystal = 1200000 | ||
| + | $hwstack = 8 | ||
| + | $swstack = 4 | ||
| + | $framesize = 4 | ||
| + | |||
| + | Config Portb.4 = Output | ||
| + | Portb.3 = 1 ' | ||
| + | |||
| + | Do | ||
| + | Do | ||
| + | Loop Until Pinb.3 = 0 | ||
| + | Portb.4 = 1 | ||
| + | Waitms 60000 | ||
| + | Portb.4 = 0 | ||
| + | Loop | ||
| + | |||
| + | End | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Weicher LED-Blinker ===== | ||
| + | |||
| + | <code bascomavr [enable_line_numbers=" | ||
| + | 'LED soft flasher | ||
| + | $regfile = " | ||
| + | $crystal = 1200000 | ||
| + | $hwstack = 8 | ||
| + | $swstack = 4 | ||
| + | $framesize = 4 | ||
| + | Dim I As Byte | ||
| + | Dim D As Integer | ||
| + | |||
| + | Config Portb = Output | ||
| + | Config Timer0 = Pwm , Prescale = 1 , Compare A Pwm = Clear Down | ||
| + | |||
| + | Do | ||
| + | For I = 40 To 215 | ||
| + | If I < 128 Then | ||
| + | D = I | ||
| + | D = D * D | ||
| + | End If | ||
| + | If I > 127 Then | ||
| + | D = 255 - I | ||
| + | D = D * D | ||
| + | End If | ||
| + | D = D / 64 | ||
| + | Pwm0a = D | ||
| + | | ||
| + | Next I | ||
| + | | ||
| + | Loop | ||
| + | End | ||
| + | </ | ||
| + | |||
| + | ===== Dämmerungsschalter ATtiny13 ===== | ||
| + | |||
| + | <code bascomavr [enable_line_numbers=" | ||
| + | ' | ||
| + | $regfile = " | ||
| + | $crystal = 1200000 | ||
| + | $hwstack = 8 | ||
| + | $swstack = 4 | ||
| + | $framesize = 4 | ||
| + | |||
| + | Dim U As Word | ||
| + | Config Adc = Single , Prescaler = Auto | ||
| + | Start Adc | ||
| + | Config Portb = 1 ' | ||
| + | |||
| + | Do | ||
| + | U = Getadc(3) | ||
| + | If U < 400 Then Portb.0 = 0 | ||
| + | If U > 600 Then Portb.0 = 1 | ||
| + | Waitms 1000 | ||
| + | Loop | ||
| + | End | ||
| + | </ | ||
| + | |||
| + | ===== Dreiphasen-Blinklicht ATiny13 ===== | ||
| + | |||
| + | <code bascomavr [enable_line_numbers=" | ||
| + | ' | ||
| + | $regfile = " | ||
| + | $crystal = 1200000 | ||
| + | $hwstack = 8 | ||
| + | $swstack = 4 | ||
| + | $framesize = 4 | ||
| + | Config Portb = Output | ||
| + | |||
| + | Do | ||
| + | Portb.0 = 1 | ||
| + | Waitms 250 | ||
| + | Portb.3 = 0 | ||
| + | Waitms 250 | ||
| + | Portb.4 = 1 | ||
| + | Waitms 250 | ||
| + | Portb.0 = 0 | ||
| + | Waitms 250 | ||
| + | Portb.3 = 1 | ||
| + | Waitms 250 | ||
| + | Portb.4 = 0 | ||
| + | Waitms 250 | ||
| + | Loop | ||
| + | End | ||
| + | </ | ||