Um wirklich beim RDS-Temperatur-Sender auf 5€ zu kommen kann man einen Arduino-Pro-Mini für 1,94€ bei ebay auf 3,3V/12Mhz umbauen.
Benötigt mit Kosten:
1,94€ Arduino Pro Mini (Braune Platine)
1€ DS18B20
0,50€ Spannungsregler 3,3V max. Vin 11V, 12MHz Quarz
1,45€ MMR-70
Zur Spannungswandlung unter 11V empfiehlt sich ein 12V-USB Zigarettenanzünderadapter für 1,30€.
Das ganze benötigt 4 Schritte:
1. Bootloader kompilieren
2. Arduino IDE anpassen
3. Bootloader installieren
4. Spannungswandler und Quarz tauschen
1.
Als erstes muss man im Ordner C:\Programme(x86)\Arduino/hardware/bootloader/optiboot/ das MAKEFILE mit einer neuen Konfiguration ergänzen.
Dann kann man über die Eingabeaufforderung in diesem Verzeichnis mit dem Befehl „omake atmega328_12“ einen neuen Bootloader erstellen.
Das bedeutet das der Bootloader und die Fuse-Settings für 115200Baud, 12MHz Takt und 3,3V eingestellt werden.
atmega328_12: TARGET = atmega328 atmega328_12: MCU_TARGET = atmega328p atmega328_12: CFLAGS += '-DLED_START_FLASHES=3' '-DBAUD_RATE=115200' atmega328_12: AVR_FREQ = 12000000L atmega328_12: LDSECTIONS = -Wl,--section-start=.text=0x7e00 -Wl,--section-start=.version=0x7ffe atmega328_12: $(PROGRAM)_atmega328_12.hex atmega328_12: $(PROGRAM)_atmega328_12.lst atmega328_12_isp: atmega328 atmega328_12_isp: TARGET = atmega328 atmega328_12_isp: MCU_TARGET = atmega328p # 512 byte boot, SPIEN atmega328_12_isp: HFUSE = DE # Low power xtal (12MHz) 16KCK/14CK+65ms atmega328_12_isp: LFUSE = FF # 2.7V brownout atmega328_12_isp: EFUSE = 05 atmega328_12_isp: isp
2. Die Arduino IDE muss jetzt nur noch angepasst werden, das heisst das ein neues Board mit 12Mhz,115200Baud und atmega_328_12.hex Bootloader in der C:\Program Files (x86)\Arduino\hardware\arduino\boards.txt eingefügt werden muss.
############################################################## atmega328bb12.name=ATmega328 12MHz crystal atmega328bb12.upload.protocol=arduino atmega328bb12.upload.maximum_size=32256 atmega328bb12.upload.speed=115200 atmega328bb12.bootloader.low_fuses=0xff atmega328bb12.bootloader.high_fuses=0xde atmega328bb12.bootloader.extended_fuses=0x05 atmega328bb12.bootloader.path=optiboot atmega328bb12.bootloader.file=optiboot_atmega328_12.hex atmega328bb12.bootloader.unlock_bits=0x3F atmega328bb12.bootloader.lock_bits=0x0F atmega328bb12.build.mcu=atmega328p atmega328bb12.build.f_cpu=12000000L atmega328bb12.build.core=arduino atmega328bb12.build.variant=standard
3. Wenn alles geklappt hat kann man jetzt das Board über einen Serial-USB-Adapter und der Option „Bootloader Installieren“ neu flashen.
Bei mir hat das nicht so einfach funktioniert, war dann aber über 4 Pins und einen USBASP Adapter oder via ISP over Arduino möglich.
4. Jetzt muss man nur noch den Quarz und Spannungswandler tauschen damit alles wie immer funktioniert. Anbei 2 Bilder wie ich das mit einem LF33-DPAK gelöst habe.