Archiv des Autors: Bernd

Endlich wieder Urlaub nach Corna

Anbei ein paar Bilder von Cala Marçal und den verschiedenen Orten die wir besucht haben.

Veröffentlicht unter Reisen | Schreib einen Kommentar

Wochenend-Projekt: Tasmota Firmware auf eine Gosund Steckdose

Ursprünglich wollte ich die Tasmota Firmware mit dem Arduino aufspielen. Leider habe ich es mit der neuen Arduino IDE nicht hin bekommen. Mit Arduino wäre es natürlich super gewesen, denn dann hätte ich mir keine FTDI232 Schnittstelle besorgen müssen. Vorne … Weiterlesen

Veröffentlicht unter Allgemein, Elektronik, Microcontroller, Wochenend Projekte | Schreib einen Kommentar

Halbjahres-Projekt

diese Jahr war das große Projekt unseren Garten zu machen. Viele Leute haben uns geholfen. Meine Frau war „Projektleiterin“ 🙂 Hier und da sind noch ein paar Verbesserungen nötig, aber im Großen und Ganzen sind wir fertig.   Vorher:   … Weiterlesen

Veröffentlicht unter Allgemein, Wochenend Projekte | Schreib einen Kommentar

Wochenend-Projekt: Einschlaflicht v01.06 Prototype

[pastacode lang=“c“ manual=“%2F*%0A%20*%20Attiny13_Einschlaflampe_v01_06_final.c%0A%20*%0A%20*%20Created%3A%2025.06.2018%2008%3A00%3A00%0A%20*%20Author%20%3A%20Bernd%0A%20*%0A%20*%0A%20*%20Chip%20type%3A%20Attiny13a%0A%20*%20Clock%20frequency%3A%20SUT_CKSEL%20auf%20INTRCoSC_128KHZ_14CK_64MS%20(128kHz%20%2F%208%20%3D%2016kHz)%0A%20*%0A%20*%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2B——–%2B%0A%20*%20%20%20%20%20%20%20%20%5B%20%20%20%20%20%20%20%20(PB5)%20%7C1*%20%20%20%20%208%7C%20(VCC)%20%20Power%20%20%20%20%20%5D%0A%20*%20%20%20%20%20%20%20%20%5B%20%20%20%20%20%20%20%20(PB3)%20%7C2%20%20%20%20%20%207%7C%20(PB2)%20%20%20%20%20%20%20%20%20%20%20%20%5D%0A%20*%20%20%20%20%20%20%20%20%5B%20%20%20%20%20%20%20%20(PB4)%20%7C3%20%20%20%20%20%206%7C%20(PB1)%20%20Button%20%20%20%20%5D%0A%20*%20%20%20%20%20%20%20%20%5B%20Ground%20(GND)%20%7C4%20%20%20%20%20%205%7C%20(PB0)%20%20LED%20White%20%5D%0A%20*%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2B——–%2B%0A%20*%0A%20*%0A%20*%20Kurze%20Beschreibung%3A%0A%20*%20——————-%0A%20*%20%20-%20Die%20Lampe%20geht%20beim%20bet%C3%A4tigen%20des%20Tasters%20an%20PB1%20an%20(LED%20PB0%20Leuchtet)%0A%20*%20%20-%20Ohne%20weiteres%20Dr%C3%BCcken%20leuchtet%20sie%20etwa%2020%20Sekunden%0A%20*%20%20-%20Ein%20kurzes%20dr%C3%BCcken%20schaltet%20die%20Lampe%20aus%20oder%20an%0A%20*%09-%20Durch%20langes%20Dr%C3%BCcken%20kommt%20man%20in%20den%20Auswahl-Modus%0A%20*%09%09Es%20gibt%20drei%20Moden%20je%20nachdem%20wann%20man%20die%20Taste%20wieder%20los%20l%C3%A4sst%0A%20*%09-Moduswechsel%20durch%20langes%20Dr%C3%BCcken%20des%20Tasters%0A%20*%09%09%09Modus%201%20LED%20Blinkt%20langsam%20-%20hier%20wenn%20los%20gelassen%20wird%20leuchtet%20die%20Lampe%20etwa%205%20min.%0A%20*%09%09%09Modus%202%20LED%20Blinkt%20mittel%20%20-%20hier%20wenn%20los%20gelassen%20wird%20leuchtet%20die%20Lampe%20etwa%2010%20min.%0A%20*%09%09%09Modus%203%20LED%20Blinkt%20schnell%20-%20hier%20wenn%20los%20gelassen%20wird%20leuchtet%20die%20Lampe%20etwa%2015%20min.%0A%20*%20%0A%20*%2F%0A%0A%2F%2F%20%23define%20F_CPU%209600000UL%20%20%2F%2FDelay%20anpassen%20wegen%20Fusebit%0A%23define%20F_CPU%20128000UL%20%20%2F%2FDelay%20anpassen%20wegen%20Fusebit%0A%0A%23define%20LED_PIN%20PB0%20%20%20%20%20%20%20%2F%2F%20PB0%20as%20a%20LED%20pin%0A%23define%20Taster%09PB1%0A%23define%20AN%09%091%0A%23define%20AUS%09%090%0A%20%0A%23include%20%3Cavr%2Fwdt.h%3E%0A%23include%20%3Cstdint.h%3E%0A%23include%20%3Cutil%2Fdelay.h%3E%0A%23include%20%3Cavr%2Fio.h%3E%0A%23include%20%3Cavr%2Finterrupt.h%3E%0A%23include%20%3Cavr%2Fpower.h%3E%0A%23include%20%3Cavr%2Fsleep.h%3E%0A%0A%2F%2F%20Leere%20Interrupt-Routine%0AISR(PCINT0_vect)%0A%7B%0A%7D%0A%0Aint%20main%20(void)%0A%7B%0A%09%2F%2FWatchdog%20ausschalten!%0A%09MCUSR%20%26%3D%20~(1%3C%3CWDRF)%3B%0A%09WDTCR%20%7C%3D%20(1%3C%3CWDCE)%20%7C%20(1%3C%3CWDE)%3B%0A%09WDTCR%20%3D%200×00%3B%0A%09%0A%09DDRB%20%20%7C%3D%20(1%3C%3CLED_PIN)%3B%20%20%20%20%20%2F%2F%20Auf%20Ausgang%20schalten%0A%09PORTB%20%7C%3D%20(1%3C%3CTaster)%3B%20%20%20%20%20%2F%2F%20PullUp%20einschalten%0A%09%0A%09PORTB%20%7C%3D%20(1%3C%3CLED_PIN)%3B%20%2F%2F%20LED%20einschalten%0A%09_delay_ms(400)%3B%20%2F%2F%20Kurzes%20Entprellen%20vom%20Watchdog%20auffachen%20(Tastendruck)%0A%09%0A%09int%20iLeuchtdauer%3D80%3B%20%2F%2FStandard%20Wert%20f%C3%BCr%20Leuchten%20%22iLeuchtdauer%20%2F%204%20%3D%20etwa%20Leuchtzeit%20in%20Sekunden%09%0A%09int%20iTimer%3D0%3B%0A%09int%20i%20%3D%200%3B%0A%09%0A%09while%20(1)%0A%09%7B%0A%09%09if%20(!(PINB%20%26%20(1%3C%3CTaster)))%20%2F%2F%20Pr%C3%BCfen%20auf%20Tastendruck%20-%20Bei%20Druck%20Befehl%20ausf%C3%BChren%0A%09%09%7B%0A%09%09%09_delay_ms(500)%3B%20%2F%2F%20kurze%20Pause%0A%09%09%09if%20(!(PINB%20%26%20(1%3C%3CTaster)))%20%2F%2F%20Pr%C3%BCfen%20auf%20Tastendruck%20-%20Bei%20Druck%20Befehl%20ausf%C3%BChren%0A%09%09%09%7B%0A%09%09%09%09iTimer%2B%2B%3B%20%2F%2F%20Z%C3%A4hler%20f%C3%BCr%20Auswahl%20erh%C3%B6hen%0A%09%09%09%09if%20(iTimer%3D%3D5)%0A%09%09%09%09%7B%0A%09%09%09%09%09for%20(i%3D0%3Bi%3C%3D10%3B%20i%2B%2B)%0A%09%09%09%09%09%7B%0A%09%09%09%09%09%09PORTB%20%5E%3D%20(1%3C%3CLED_PIN)%3B%20%2F%2FToggl%0A%09%09%09%09%09%09_delay_ms(250)%3B%0A%09%09%09%09%09%7D%0A%09%09%09%09%09%2F%2FNach%20Toggle%20die%20LED%20einschalten%20und%20die%20Leuchtdauer%20setzen%0A%09%09%09%09%09PORTB%20%7C%3D%20(1%3C%3CLED_PIN)%3B%20%2F%2F%20LED%20einschalten%0A%09%09%09%09%09iLeuchtdauer%20%3D%205*60*4%3B%20%2F%2F%20etwa%205%20Minuten%20Leuchtzeit%0A%09%09%09%09%09%0A%09%09%09%09%7D%0A%09%09%09%09else%20if%20(iTimer%3D%3D10)%0A%09%09%09%09%7B%0A%09%09%09%09%09for%20(i%3D0%3Bi%3C%3D14%3B%20i%2B%2B)%0A%09%09%09%09%09%7B%0A%09%09%09%09%09%09PORTB%20%5E%3D%20(1%3C%3CLED_PIN)%3B%20%2F%2FToggl%0A%09%09%09%09%09%09_delay_ms(150)%3B%0A%09%09%09%09%09%7D%0A%09%09%09%09%09%2F%2FNach%20Toggle%20die%20LED%20einschalten%20und%20die%20Leuchtdauer%20setzen%0A%09%09%09%09%09PORTB%20%7C%3D%20(1%3C%3CLED_PIN)%3B%20%2F%2F%20LED%20einschalten%0A%09%09%09%09%09iLeuchtdauer%20%3D%2010*60*4%3B%20%2F%2F%20etwa%2010%20Minuten%20Leuchtzeit%0A%09%09%09%09%09%0A%09%09%09%09%7D%0A%09%09%09%09else%20if%20(iTimer%3D%3D15)%0A%09%09%09%09%7B%0A%09%09%09%09%09for%20(i%3D0%3Bi%3C%3D18%3B%20i%2B%2B)%0A%09%09%09%09%09%7B%0A%09%09%09%09%09%09PORTB%20%5E%3D%20(1%3C%3CLED_PIN)%3B%20%2F%2FToggl%0A%09%09%09%09%09%09_delay_ms(100)%3B%0A%09%09%09%09%09%7D%0A%09%09%09%09%09%2F%2FNach%20Toggle%20die%20LED%20einschalten%20und%20die%20Leuchtdauer%20setzen%0A%09%09%09%09%09PORTB%20%7C%3D%20(1%3C%3CLED_PIN)%3B%20%2F%2F%20LED%20einschalten%0A%09%09%09%09%09iLeuchtdauer%20%3D%2015*60*4%3B%20%2F%2F%20etwa%2015%20Minuten%20Leuchtzeit%0A%09%09%09%09%09%0A%09%09%09%09%7D%0A%09%09%09%7D%0A%09%09%09else%0A%09%09%09%7B%0A%09%09%09%09PORTB%20%5E%3D%20(1%3C%3CLED_PIN)%3B%09%2F%2FToggl%0A%09%09%09%09iLeuchtdauer%3D80%3B%20%2F%2F%20Leuchtdauer%20wieder%20auf%20Default%20setzen%0A%09%09%09%09_delay_ms(500)%3B%0A%09%09%09%7D%0A%09%0A%09%09%7D%20%0A%09%09else%20%0A%09%09%7B%0A%09%09%09iTimer%3D0%3B%20%2F%2F%20Z%C3%A4hler%20f%C3%BCr%20Auswahl%20auf%20Null%20setzen%20-Nicht%20sch%C3%B6n%20hier%0A%09%09%09%0A%09%09%09%2F%2F%20Taste%20wurde%20nicht%20gedr%C3%BCckt%20counter%20wird%20weiter%20herunter%20gerechnet%0A%09%09%09%2F%2F%20bis%200%20dann%20wird%20geschlafen%0A%09%09%09if%20(iLeuchtdauer%20%3E%3D%200)%20%0A%09%09%09%7B%0A%09%09%09%09iLeuchtdauer–%3B%0A%09%09%09%09_delay_ms(250)%3B%0A%09%09%09%7D%0A%09%09%09else%0A%09%09%09%7B%0A%09%09%09%09PORTB%20%26%3D%20~(1%3C%3CLED_PIN)%3B%20%2F%2F%20LED%20aus%0A%09%09%09%09%2F%2F%0A%09%09%09%09%2F%2F%20Schlafen%20%0A%09%09%09%09%2F%2F%0A%09%09%09%09%2F%2F%0A%09%09%09%09%2F%2F%20Den%20ADC%20deaktivieren%2C%20brauchen%20wir%20nicht%20m%C3%BCsste%20aber%20pre%20Default%20aus%20sein.%0A%09%09%09%09power_adc_disable()%3B%0A%09%09%09%09%0A%09%09%09%09%2F%2F%20Pin-Change%20Interrupt%20f%C3%BCr%20die%204%20Taster%20erlauben%0A%09%09%09%09GIMSK%20%3D%20(1%3C%3CPCIE)%3B%0A%09%09%09%09PCMSK%20%7C%3D%20(1%3C%3CPB1)%3B%0A%09%09%09%09%0A%09%09%09%09sei()%3B%0A%09%09%09%09%0A%09%09%09%09set_sleep_mode(SLEEP_MODE_PWR_DOWN)%3B%0A%09%09%09%09sleep_mode()%3B%0A%09%09%09%09%0A%09%09%09%09%2F%2F%20iLeuchtdauer%3D80%3B%20%2F%2F%20Unn%C3%B6tig%20wurde%20nur%20zum%20Test%20ohne%20Watchdog%20ben%C3%B6tigt%0A%09%09%09%09%0A%09%09%09%09%2F%2F%20****************%20Aufwachen%20und%20alles%20f%C3%BCr%20den%20Reset%20%C3%BCber%20Watchdog%20vorbereiten%20******%0A%09%09%09%09wdt_enable(WDTO_1S)%3B%20%2F%2F%201s%20Sekunden%09Watchdog%20einstellen%0A%09%09%09%09wdt_enable(WDTO_30MS)%3B%20%2F%2F%2030ms%20Sekunden%09Watchdog%20einstellen%0A%09%09%09%09%0A%09%09%09%09%2F%2Ftu%20nix%20und%20warte%20auf%20den%20Biss%20des%20Wachhundes%0A%09%09%09%09_delay_ms(5000)%3B%20%2F%2F%20Der%20Wachhund%20ist%20auf%20eine%20Sek%20gestellt.%20Im%20Delay%20sind%20es%205%20Sekunden.%20-%20Also%20Reset%0A%09%09%09%09%2F%2F%20wdt_reset()%3B%0A%09%09%09%7D%0A%09%09%7D%0A%09%09%0A%09%7D%0A%7D%0A%09%09%09%09%0A%0A%0A%09%09%09%2F%2FPORTB%20%5E%3D%20(1%3C%3CLED_PIN)%3B%09%2F%2FToggl%0A%09%09%09%2F%2FPORTB%20%26%3D%20~(1%3C%3CLED_PIN)%3B%09%2F%2F%20LED%20aus%0A%09%09%09%2F%2FPORTB%20%7C%3D%20(1%3C%3CLED_PIN)%3B%09%2F%2F%20LED%20einschalten“ message=“Attiny13_Einschlaflampe_v01_06_final.c“ highlight=““ provider=“manual“/] Hier die akuellen Bilder zum Prototyp der Einschlaflampe. Die verfeinerungen am Code habe ich noch nicht in Angriff genommen.

Veröffentlicht unter Allgemein | Schreib einen Kommentar

Wochenend-Projekt: Einschlaflicht v01.02

Ich dachte mir es wäre doch toll, wenn man ein kleine Lampe hat, die solange leuchtet bis man eingeschlafen ist und dann ausgeht. Die Lampe an der ich baue Leucht soll nach dem einschalten (Wenn man den Knopf drückt) etwa … Weiterlesen

Veröffentlicht unter Elektronik, Microcontroller, Wochenend Projekte | Schreib einen Kommentar

Wochenend-Projekt: elektronischer Würfel v1.06

Die Firmware vom Würfel habe ich optimiert. Nun fällt er in den Schlafmodus wenn er nicht gebraucht wird und verbraucht dann nur noch 0.06 µA. Nach dem Tastendruck wacht er wieder auf und wird vom Watchdog resetet. [pastacode lang=“c“ manual=“%2F*%0A%20*%20Wuerfel_V01_06.c%0A%20*%0A%20*%20Created%3A%2015.04.2018%2020%3A57%3A00%0A%20*%20Author%20%3A%20Bernd%0A%20*%0A%20*%0A%20*%20Chip%20type%3A%20Attiny13a%0A%20*%20Clock%20frequency%3A%20SUT_CKSEL%20auf%20INTRCoSC_128KHZ_14CK_64MS%20(128kHz%20%2F%208%20%3D%2016kHz)%0A%20*%0A%20*%09%09%09%09%09%09%09%09%09%09%09%09%09%20%20%2B——–%2B%0A%20*%20%20%20%20%20%20%20%20%5B%20rest%20(leer)%09%09%09%09%09%09%09(PB5)%20%7C1*%20%20%20%20%208%7C%20(VCC)%20%20Power%09%09%09%09%09%09%09%09%5D%0A%20*%20%20%20%20%20%20%20%20%5B%20Taster%09%09%09%09%09%09%09%09(PB3)%20%7C2%20%20%20%20%20%207%7C%20(PB2)%20%20LEDs%20-%20links%20unten%20%7C%20rechts%20oben%09%5D%0A%20*%20%20%20%20%20%20%20%20%5B%20LEDs%20-%20rechts%20unten%20%7C%20links%20oben%09(PB4)%20%7C3%20%20%20%20%20%206%7C%20(PB1)%20%20LEDs%20-%20mitte%20links%20%7C%20mitte%20rechts%09%5D%0A%20*%20%20%20%20%20%20%20%20%5B%20Ground%09%09%09%09%09%09%09%09(GND)%20%7C4%20%20%20%20%20%205%7C%20(PB0)%20%20LED1%09%09%09%09%09%09%09%09%5D%0A%20*%09%09%09%09%09%09%09%09%09%09%09%09%09%20%20%2B——–%2B%0A%20*%0A%20*%2F%20%0A%0A%23define%20F_CPU%2012800UL%20%2F%2FDalay%20anpassen%20wegen%20Fusebit%0A%2F%2F%23define%20F_CPU%20960000UL%20%2F%2FDalay%20anpassen%20wegen%20Fusebit%0A%0A%23define%20LED1_PIN%20%20%20%20%20%20%20%20PB0%0A%23define%20Taster%09%09%09PB3%0A%23define%20DELAY_MAX%20%20%20%20%20%20%20(512)%0A%23define%20DELAY_MIN%20%20%20%20%20%20%20(0)%0A%0A%23include%20%3Cavr%2Fwdt.h%3E%0A%23include%20%3Cstdint.h%3E%20%0A%23include%20%3Cutil%2Fdelay.h%3E%20%0A%23include%20%3Cavr%2Fio.h%3E%20%0A%23include%20%3Cavr%2Finterrupt.h%3E%20%0A%23include%20%3Cavr%2Fpower.h%3E%20%0A%23include%20%3Cavr%2Fsleep.h%3E%0A%0Aint%20Augenanzahl%20%3D%200%3B%20%2F%2F%20einfacher%20Z%C3%A4hler%20f%C3%BCr%20W%C3%BCrfel%20Augenanzahl%0Auint16_t%20min%2C%20sek%3B%0A%0Aint%20StartStopAni(int%20AnzahlBlinken)%3B%0A%0A%2F%2F%20Leere%20Interrupt-Routine%0AISR(PCINT0_vect)%0A%7B%0A%7D%0A%0A%09%0A%0Aint%20main(void)%0A%7B%0A%0A%09%2F%2FWatchdog%20ausschalten!%0A%09MCUSR%20%26%3D%20~(1%3C%3CWDRF)%3B%0A%09WDTCR%20%7C%3D%20(1%3C%3CWDCE)%20%7C%20(1%3C%3CWDE)%3B%0A%09WDTCR%20%3D%200×00%3B%0A%09%09%0A%09DDRB%20%3D((1%3C%3CLED1_PIN)%20%7C%20(1%3C%3CPB1)%20%7C%20(1%3C%3CPB2)%20%7C%20(1%3C%3CPB4))%3B%20%2F%2F%20Ports%20auf%20Ausgang%0A%09DDRB%3D%20~(1%3C%3CTaster)%3B%09%09%09%09%09%09%09%09%09%09%2F%2F%20Port%20auf%20Eingang%0A%09PORTB%20%7C%3D%20(1%3C%3CTaster)%3B%09%09%09%09%09%09%09%09%09%2F%2F%20Pullup%20f%C3%BCr%20Eingang%0A%09%0A%09StartStopAni(30)%3B%0A%09%0A%09PORTB%20%3D0b00001000%3B%0A%09%0A%09while%20(1)%20%2F%2F%20Endlos%20Schleife%0A%09%7B%20%0A%09%09for%20(min%3D10%3B%20min%3E%3D1%3B%20min–)%20%20%2F%2FSchleifen-konstruckt%2C%20wegen%20Zeit%20bis%20zum%20einschlafen%0A%09%09%7B%0A%09%09%09for%20(sek%3D1500%3B%20sek%3E%3D1%3B%20sek–)%0A%09%09%09%7B%0A%09%09%09%09_delay_ms(50)%3B%0A%09%09%09%09%09%09%09%09%0A%09%09%09%09if%20(!(PINB%20%26%20(1%3C%3CTaster)))%09%2F%2F%20Abfrage%20ob%20Switch%20gedr%C3%BCckt%0A%09%09%09%09%7B%0A%09%09%09%09%09%2F%2F%20Schleifenwerte%20nach%20bet%C3%A4tigen%20der%20Taste%20wieder%20hoch%20setzen%0A%09%09%09%09%09min%3D10%3B%20%0A%09%09%09%09%09sek%3D1500%3B%20%0A%09%09%09%09%09%0A%09%09%09%09%09PORTB%20%3D0b00001000%3B%0A%09%09%09%09%09_delay_ms(500)%3B%09%20%2F%2F%20kurze%20Pause%20-%20alle%20LEDs%20kurz%20aus%2C%20damit%20man%20sieht%20der%20W%C3%BCrfel%20w%C3%BCrfelt.%0A%09%09%09%09%09%0A%09%09%09%09%09switch(Augenanzahl)%09%2F%2F%20i%20Auswerten%0A%09%09%09%09%09%7B%0A%09%09%09%09%09%09case%200%3A%0A%09%09%09%09%09%09%7B%0A%09%09%09%09%09%09%09%2F%2F%20Zahl%201%20–%3E%20i%3D0%0A%09%09%09%09%09%09%09PORTB%20%3D0b00000001%3B%0A%09%09%09%09%09%09%09break%3B%0A%09%09%09%09%09%09%7D%0A%09%09%09%09%09%09case%201%3A%0A%09%09%09%09%09%09%7B%0A%09%09%09%09%09%09%09%2F%2F%20Zahl%202%20–%3E%20i%3D1%0A%09%09%09%09%09%09%09PORTB%20%3D0b00000100%3B%0A%09%09%09%09%09%09%09break%3B%0A%09%09%09%09%09%09%7D%0A%09%09%09%09%09%09case%202%3A%0A%09%09%09%09%09%09%7B%0A%09%09%09%09%09%09%09%2F%2F%20Zahl%203%20–%3E%20i%3D2%0A%09%09%09%09%09%09%09PORTB%20%3D0b00000101%3B%0A%09%09%09%09%09%09%09break%3B%0A%09%09%09%09%09%09%7D%0A%09%09%09%09%09%09case%203%3A%0A%09%09%09%09%09%09%7B%0A%09%09%09%09%09%09%09%2F%2F%20Zahl%204%20–%3E%20i%3D3%0A%09%09%09%09%09%09%09PORTB%20%3D0b00010100%3B%0A%09%09%09%09%09%09%09break%3B%0A%09%09%09%09%09%09%7D%0A%09%09%09%09%09%09case%204%3A%0A%09%09%09%09%09%09%7B%0A%09%09%09%09%09%09%09%2F%2F%20Zahl%205%20–%3E%20i%3D4%0A%09%09%09%09%09%09%09PORTB%20%3D0b00010101%3B%0A%09%09%09%09%09%09%09break%3B%0A%09%09%09%09%09%09%7D%0A%09%09%09%09%09%09case%205%3A%0A%09%09%09%09%09%09%7B%0A%09%09%09%09%09%09%09%2F%2FZahl%206%20–%3E%20i%3D5%0A%09%09%09%09%09%09%09PORTB%20%3D0b00010110%3B%0A%09%09%09%09%09%09%09break%3B%0A%09%09%09%09%09%09%7D%0A%09%09%09%09%09%7D%0A%09%09%09%09%09%0A%09%09%09%09%09%2F%2F%20Port%20wieder%20auf%20Eingang%20setzen%20(Pullup)%0A%09%09%09%09%20%20%20%20PORTB%20%7C%3D%20(1%3C%3CTaster)%3B%0A%0A%09%09%09%09%7D%0A%09%09%09%09Augenanzahl%2B%2B%3B%09%2F%2F%20bei%20jedem%20Schleifendurchlauf%20i%20Erh%C3%B6hen%0A%09%09%09%09if%20(Augenanzahl%3D%3D6)%20%2F%2F%20Wenn%20i%20%3D%206%20dann%20i%20wieder%20auf%200%20setzen%0A%09%09%09%09%7B%0A%09%09%09%09%09Augenanzahl%3D0%3B%0A%09%09%09%09%7D%0A%09%09%09%7D%0A%09%09%09%0A%09%09%09StartStopAni(30)%3B%0A%0A%09%09%09%2F%2F%20Den%20ADC%20deaktivieren%2C%20brauchen%20wir%20nicht%20m%C3%BCsste%20aber%20pre%20Default%20aus%20sein.%0A%09%09%09power_adc_disable()%3B%0A%09%09%09%09%0A%09%09%09%2F%2F%20Pin-Change%20Interrupt%20f%C3%BCr%20die%204%20Taster%20erlauben%0A%09%09%09GIMSK%20%3D%20(1%3C%3CPCIE)%3B%0A%09%09%09PCMSK%20%7C%3D%20(1%3C%3CPB3)%3B%0A%09%09%0A%09%09%09sei()%3B%0A%09%09%09%0A%09%09%09PORTB%20%3D0b00001000%3B%20%2F%2F%20Sollten%20LEDs%20noch%20Leuchten%20vor%20Schlafen%20ausschalten.%0A%09%09%09%09%0A%09%09%09set_sleep_mode(SLEEP_MODE_PWR_DOWN)%3B%0A%09%09%09sleep_mode()%3B%0A%09%09%09%09%0A%09%09%09%2F%2F%20****************%20Aufwachen%20und%20alles%20f%C3%BCr%20den%20Reset%20%C3%BCber%20Watchdog%20vorbereiten%20******%0A%09%09%09wdt_enable(WDTO_1S)%3B%20%2F%2F%201s%20Sekunden%09Watchdog%20einstellen%09%0A%09%09%09wdt_enable(WDTO_30MS)%3B%20%2F%2F%2030ms%20Sekunden%09Watchdog%20einstellen%09%09%09%09%0A%09%09%09%09%09%09%09%09%09%09%0A%09%09%09%09%2F%2Ftu%20nix%20und%20warte%20auf%20den%20Biss%20des%20Wachhundes%0A%09%09%09%09_delay_ms(5000)%3B%20%2F%2F%20Der%20Wachhund%20ist%20auf%20eine%20Sek%20gestellt.%20Im%20Delay%20sind%20es%205%20Sekunden.%20-%20Also%20Reset%0A%09%09%09%09%2F%2F%20wdt_reset()%3B%0A%09%09%7D%0A%09%09%0A%09%7D%0A%09return%20(0)%3B%0A%7D%0A%0A%0A%0A%0Aint%20StartStopAni(int%20AnzahlBlinken)%0A%7B%0A%09for%20(int%20blink%3D0%3B%20blink!%3DAnzahlBlinken%3B%20blink%2B%2B)%20%2F%2F%20Blinken%20bis%20der%20Watchdog%20dem%20Spuk%20ein%20Ende%20macht%20oder%20die%20AnzahlBlinken%20erreicht%20ist%0A%09%7B%0A%09%09PORTB%20%5E%3D%20(1%3C%3CLED1_PIN)%3B%20%2F%2FToogle%20(Ein-%2C%20Ausschalten%20der%20LED%0A%09%09_delay_ms(50)%3B%20%2F%2F%20Warten%20damit%20LED%20eine%20Change%20hat%20zu%20blinken%0A%09%7D%0Areturn%20(0)%3B%09%0A%7D%0A%0A%0A%0A%0A%09%09%2F%2F%20wdt_reset()%3B%0A%0A%0A“ … Weiterlesen

Veröffentlicht unter Elektronik, Microcontroller, Wochenend Projekte | Schreib einen Kommentar

Wochenend-Projekt: elektronischer Würfel v1.01

Das Krippenlicht muss warten. Nachdem mein Board so gut funktioniert hat, wollte ich ein lange von mir geplantes Projekt starten, – einen elektronischen Würfel. Das Programm und die Platine sind recht trivial und meinen Elektronik- und Programmierkenntnissen entsprechend. Aber er … Weiterlesen

Veröffentlicht unter Elektronik, Microcontroller, Wochenend Projekte | Schreib einen Kommentar

Wochenend-Projekt: Entwicklungsboard für AtTiny13

Vor einigen Jahren hatte ich für unsere Weihnachtskrippe eine „Kerzenlicht Simulation“ mit einem ATtiny13 und einer LED gebaut. Meine Tochter und ich fanden das Licht letztes Weihnachten zu dunkel und wir wollten mit einer helleren LED das ganze Projekt noch … Weiterlesen

Veröffentlicht unter Elektronik, Microcontroller, Wochenend Projekte | Schreib einen Kommentar

Wartungsarbeiten

Heute wieder ein wenig die Seite auf Vordermann gebracht. Bilder vom Event hinzugefügt.  

Veröffentlicht unter Allgemein, Wartungsarbeiten | Schreib einen Kommentar

Wartungsarbeiten

Heute die Seite wieder etwas auf Vordermann gebracht.

Veröffentlicht unter Wartungsarbeiten | Schreib einen Kommentar