Mahogny & mässing nixie klocka (med IR och UART kontroll) (2 / 9 steg)
Steg 2: Klockan krets
Om banan, callibrating information
Klockan styrs med ATmega168P med hjälp av inre RC-oscillator. Det ligger 8 MHz eftersom nixies' anoder är multiplexerade. För detta använde jag typiska HV växling kretsar (SMBTA42 och PMBTA92 på scheman). Katoder styrs av 4028 (BCD till binära dekoder) som driver SMBTA42 transistorer. I-12 nixies kräver om 150V ska fungera - jag använder typisk applikation av MC34063 byter regulator. Medan IRFR220N växlar, belastning levereras med hög spänning som kan vara justerade (150-170V) med HVC0 och HVC1 ingångar. När R41 och R42 är fortfarande unsoldered, driva kretsen och använder R34 potentiometer för att kalibrera tillsynsmyndigheten (det bör ge om 164V).
RTC kretsen är en typisk tillämpning av PCF8563. Det använder ett 3V CRC2032 batteri, som fortfarande kommer att driva RTC vid makt leverans olycka. C4 används för att kalibrera räknaren och du måste välja dess värde experimentellt. Det beror på att det beror på många saker, men du kan börja med 44pF. Innan du kalibrera kretsen, måste du att löda koppar shieldingsna (den stora en för att koppla regulator, de små plattorna under styrelsen). När du är klar bör du också löda strålskyddet för RTC krets. Jag behövde desolder den (och inte löd den tillbaka), vilket gör några problem nu: +-4s per dag är inte ett bästa resultat. Det ger 24 minuter per år, och det är alldeles för mycket. Jag behöver löd den tillbaka en dag;).
Hur som helst, det finns också en liten PCB monterad på framsidan av höljet. Den innehåller en fototransistor som används för att automatiskt sänka spänningen på natten. Dessutom kan nixies' ljusstyrka justeras med fjärrkontroll. Du kan behöva ändra R29 värdet (standard 270k) om du använder andra fototransistor. Dessutom finns det 2 små lökar som beskrivs tidigare. De styrs med PWM, så deras ljusstyrka ändras med nixies spänning. Det finns också en TSOP2236 - används för att ta emot IR-fjärrkontrollen signal. Det fungerar bäst med 36kHz bärare, men det bör fungera tillräckligt bra med 34-38kHz. Du ska löda alla här delar grundligt, annars kan det vara ett problem med montering med laminat och fanér.
Viktigt notera om UART socket
På en av sidoväggar finns det en UART socket. Den har en GND linje och RX, eftersom TX linje för att växla anoder (klockan själv inte skickar data, så det är ok). Det var ett problem, eftersom jag behövde för att genomföra en UART bootloader för att enkelt uppgradera firmware; och startprogrammet måste kommunicera på båda sätten. Jag använde en lösning som presenteras här (du kan läsa om principen om drift): http://nerdralph.blogspot.ca/2014/01/avr-half-dup... Så, i en normal drift, jag kan använda min UART socket som en vanlig RX signal, men när jag vill köra en bootloader, jag bara ansluta ett litet kretskort och då den kan användas som en standard TX/RX UART. Fångsten är, när jag behöver skicka några data från AVR, jag måste konfigurera om PIN-koden som en GPIO, då programmatiskt skicka data, och igen konfigurera PIN-koden för RX-avbrott. Men jag ska beskriva det i ytterligare ett steg.
Här kan du ladda ner alla nödvändiga filer:
- clock_Kicad.rar: scheman och PCB i KiCad (version 2013-07-07)
- clock_partlist.lst: partlist genereras för detta projekt
- clock_firmware.rar:
- fusebits.png - programmera dessa värden innan du skickar filen HEX
- Complete.hex - både ansökan och bootloader kod, redo att använda lösning
- Application.hex - bara programkod
- bootloader.hex - du kan programmera bootloader bara och sedan skicka application.hex via UART