Vet inte riktigt om det blev ett miniprojekt i slutändan. Men det började som en tanke när jag kör till jobbet på morgonen och det är mörkt.
-Vore det inte fränt om en av granarna i skogen en bit från vägen långt från alla hus hade julbelysning?
Så löd min tanke. Stod sedan på Ekohallen och tittade på en LED-slinga för 24 Volt med många små LED:ar så jag slog till och bollen var i rullning.
Tog ett gammalt kretskort för att styra länspumpen i båten, lödde på processor, mosfet och lite annat småkrafs. UART var utdragen till pin-header.
På jobbet räddade jag gamla D-size SAFT-celler från att slängas Lithium engångsbatterier på 3.6V ca 10Ah. Köpte batterihållare från Svebry för 4 sådana batterier. Den passade nästan perfekt i en liten tät låda jag köpt på ETA's auktion häromåret. Där i fick även kretskort, blåtandsmodul och step-up-konverter plats (för 24V till LED-slingan).
Så. Nu har en gran en fin ljusslinga på sig. Den ska gå på 05:30, av 09:10, på igen vid 15 och av vid midnatt. '
Det fina är att det räcker att stanna bredvid den för att få kontakt via blåtand.
Råkade överimplementera en ganska avancerad kommando-tolk och fick som ett litet kommando-skal. Att lägga in nya kommandon är bara att skapa en funktion som tar (char **argv, int argc), stoppa in (en pekare till) den i en array tillsammans med kommandot som sträng och en hjälptext.
Så nu kan jag slå på/av slingan, kolla klockan, sätta klockan samt kontrollera de fyra time:rarna för av/på/disabled samt klockslag. Kan även spara/ladda time:rarna till eeprom och kolla spänningen på batteriet.
Ska lägga upp en video där jag använder kommando-interface:et sen
Edit:
Led-slingan drar ca 50-60mA på 24V och ca 100mA från batterierna via stepup-convertern.
Blåtandsmodulen och processorn drar ca 35mA från batteriet i snitt när den inte är ansluten,
icke helt försumbart alltså. Har en linjärregulator till 5V för CPU och blåtand.
Valde en ATmega8 så RAM är lite tajt på 1k, men det går. Använt kanske 5k flash av 8k.
Hoppas batteriet räcker några dagar. Just nu är det kallt också.
Tanken från början var att gräva ner ett blybatteri i en låda.
Ett problem jag ser nu är att klockan släpar efter ca 20 minuter på 5 timmar. Koden är nog rätt, men helt säker kan man aldrig vara. Går på en 4MHz-kristall. Neddelad internt till timer-modulen med /64.
Så 62500 tick per sekund. 20ms blir då 1250 tick vilket jag satt som värde på mitt capture-compare-register.
Efter 50 tick räknar jag upp en sekund. Här finns ju potential för fel, speciellt off-by-one. Men jag tycker jag tänkt rätt och även om det var off-by-one i något led borde det inte ge så mycket fel om jag räknat rätt. Får kyla en kristall att sakta in? Fast är det inte väldigt lite?