Vintage stijl watergeest Wandklok (7 / 21 stap)

Stap 7: de software


Als software maakte ik enkele wijzigingen aan de code die wordt gebruikt voor mijn eerste klok (overgenomen uit het open bronmateriaal beschikbaar op de website van de Arduinix ). Die code is slechts één watergeest als stuurprogramma wilt gebruiken in plaats van twee, aangezien ik niet nodig om meer dan 6 cijfers, en ik geef de voorkeur te slaan van stuurprogramma's gewijzigd... Ik heb geüpload de code naar de IC van de Atmega8 met behulp van een Arduino board, is het eenvoudiger manier naar mijn mening, maar merk op dat u waarschijnlijk nood voor brandwond de bootloader op de nieuwe IC te kunnen gebruiken in de Arduino, ik gebruik een USBtinyISP programmeur.

NB: Ik moet hebben de code uitgevoerd met RTC functie. Helaas een probleem gerezen en mij ben having sommige zorg te laten werken. Een knop moet verhogen de uren, en schrijven nieuwe uur in RTC-module, andere knop hetzelfde ding maar voor enkele minuten. Ik hoop dat sommigen van u meer ervaren dan ik (niet moeilijk te zijn) zal helpmenu.

Arduinix 6 Bulb - ondersteunt ook uur en Min. tijd instellen. / / Deze code wordt uitgevoerd een zes lamp setup en verschijnt een prototype klok setup. Opmerking: de vertraging is opstelling voor IN-17 watergeest bollen. / / oorspronkelijke code door Jeremy Howa / / www.robotpirate.com / / www.arduinix.com / / 2008-2009 / / code gewijzigd door Andrea Biffi www.andreabiffi.com om te werken met slechts één SN74141 / / / / laatst bewerkt Nov 2013 / / / / SN74141: True tabel //D C B A # //L,L,L,L 0 //L,L,L,H 1 //L,L,H,L 2 //L,L,H,H 3 //L,H,L,L 4 //L,H,L,H 5 //L , H, H, L 6 //L,H,H,H 7 //H,L,L,L 8 //H,L,L,H 9 #define DEBUG_ON valse / / SN74141 int ledPin_0_a = 2; int ledPin_0_b = 3; int ledPin_0_c = 4; int ledPin_0_d = 5; anod pinnen int ledPin_a_1 = 8; int ledPin_a_2 = 9; int ledPin_a_3 = 10; int ledPin_a_4 = 11; int ledPin_a_5 = 12; int ledPin_a_6 = 13; void setup {pinMode (ledPin_0_a, OUTPUT); pinMode (ledPin_0_b, OUTPUT); pinMode (ledPin_0_c, OUTPUT); pinMode (ledPin_0_d, OUTPUT); pinMode (ledPin_a_1, OUTPUT); pinMode (ledPin_a_2, OUTPUT); pinMode (ledPin_a_3, OUTPUT); pinMode (ledPin_a_4, OUTPUT); pinMode (ledPin_a_5, OUTPUT); pinMode (ledPin_a_6, OUTPUT); / / Opmerking: / / aarden op analog0 pinnen en analoge ingang 1 zal stellen de uur en min. pinMode (A0 INGANG); instellen van de analog0 van de virtuele pin (pin 0 op de analoge "inputs") digitalWrite (A0, hoge); pincode analoge ingang 0 als een pull up weerstand instellen. pinMode (A1, INPUT); set de virtuele pin analoge ingang 1 (pin 1 op de analoge "inputs") digitalWrite (A1, hoge); pincode analoge ingang 1 als een pull up weerstand instellen. Als (DEBUG_ON) {Serial.begin(9600);}} / / / / DisplayNumberSet / / gebruik: nummer van de anod van de passerende en nummer voor lamp, deze functie / / de waarheidstabel opgezocht en opent u de juiste outs via de arduino / / aan het licht van de cijfers gegeven aan dit funciton. Op een 6 watergeest lamp setup. / / / void DisplayNumberSet (int anod, int num1) {int anodPin; int a, b, c, d; / / set standaardwaarden. een = 0; b = 0, c = 0; d = 0; / / verschijnt een nul. anodPin = ledPin_a_1; / / standaard op eerste anod. / / selecteert u welke anod naar brand. switch (anod) {geval 0: anodPin = ledPin_a_1; break; case 1: anodPin = ledPin_a_2; break; case 2: anodPin = ledPin_a_3; break; case 3 : anodPin = ledPin_a_4; breken; geval 4: anodPin = ledPin_a_5; breken; geval 5: anodPin = ledPin_a_6; breken; } / / Laden de a, b, c, d om te verzenden naar de switch SN74141 IC (1) (num1) {0 kast: een = 0; b = 0, c = 0; d = 0; break; case 1: een = 1; b = 0; c = 0; d = 0; break; case 2: een = 0; b = 1; c = 0; d = 0; break; case 3: een = 1; b = 1; c = 0; d = 0; break; case 4 : een = 0; b = 0, c = 1, d = 0; break; geval 5: een = 1, b = 0, c = 1; d = 0; break; kast 6: een = 0; b = 1; c = 1, d = 0; break; geval 7: een = 1, b = 1; c = 1; d = 0; break; geval 8: een = 0; b = 0, c = 0, d = 1; break; kast 9: een = 1, b = 0, c = 0; d = 1; break; } / / Schrijf aan output pinnen. digitalWrite (ledPin_0_d, d); digitalWrite (ledPin_0_c, c); digitalWrite (ledPin_0_b, b); digitalWrite(ledPin_0_a, a); Dit anod inschakelen. digitalWrite (anodPin, hoge); Vertraging / / Let op: met het verschil in Nixie bollen u wellicht wijzigen / / dit vertragen om de snelheid van de update van de bollen. Als u / / wacht niet lang genoeg de lamp zal worden lichter kleuren of licht niet helemaal / / u wilt instellen van deze vertraging precies goed zodat u / / nice helder output nog snel genoeg is zodat u kunt multiplex met / / meer bollen (2ms is standaard). delay(2); Deze anod afgesloten. digitalWrite (anodPin, laag); } / / / / / / / DisplayNumberString / / gebruik: het passeren van een matrix die is 6 elementen lang zal het weergeven van getallen / / op een 6 watergeest lamp setup. / / / void DisplayNumberString (int * array) {/ / bank 1 (bol 1) DisplayNumberSet(0,array[0]); / / bank 2 (bol 2) DisplayNumberSet(1,array[1]); / / bank 3 (lamp 3) DisplayNumberSet(2,array[2]); / / bank 4 (lamp 4) DisplayNumberSet(3,array[3]); / / 5 (bol 5) bank DisplayNumberSet(4,array[4]); / / 6 (bol 6) bank DisplayNumberSet(5,array[5]);} / / definieert lange minuten = 60; 60 seconden in een Min. lange uren = 60 * minuten; 60 minuten in een uur. lange dagen = 24 * uur; 24 uur in een dag. > Opmerking: de 24 tot en met een 12 voor niet millitary tijd wijzigen. lange runTime = 0; Tijd van toen we begonnen. Verstekwaarde inschakelvertraging wordt ingesteld. klok begint om 12:59:00 / / Opmerking: We beginnen seconden op 0, dus we niet een klok hoeven instellen / / de waarden die u hier ziet zou wat u veranderen / / als u een klok instellen-ingangen aan de Raad hebt toegevoegd. lange clockHourSet = 12; lange clockMinSet = 59; int HourButtonPressed = false; int MinButtonPressed = false; / / / / / / / void loop {/ / Get milliseconden. runTime = millis(); / / Get tijd in seconden
. lange tijd = (runTime) / 1000; Deze waarde omzetten in snelheid omhoog of vertragen van de klok, ingesteld op een kleiner getal zoals 10, 1 of 100 voor foutopsporing int hourInput = digitalRead(14); int minInput = digitalRead(15); Als (DEBUG_ON) Serial.println (hourInput); Als (hourInput == 0) HourButtonPressed = true; Als (minInput == 0) MinButtonPressed = true; Als (HourButtonPressed == true & & hourInput == 1) {clockHourSet ++; HourButtonPressed = false; } Als (MinButtonPressed == true & & minInput == 1) {clockMinSet ++; MinButtonPressed = false; } / / Tijd gebaseerd op offset instellen... lange hbump = 60 * 60 * clockHourSet; lange mbump = 60 * clockMinSet; tijd += mbump + hbump; Convert tijd voor dagen, uren, minuten, seconden lange dagen = tijd / dagen; -= dagen tijd * dagen; lange uren = tijd / uren; -= uur tijd * uur; lange minuten = tijd / min; -= minuten tijd * minuten; seconden lang = tijd; De volgorde van hoge en lage waarden voor uren, minuten, seconden krijgen. int lowerHours = uur % 10; int upperHours = uren - lowerHours; int lowerMins = minuten % 10; int upperMins = minuten - lowerMins; int lowerSeconds = seconden % 10; int upperSeconds = seconden - lowerSeconds; Als (upperSeconds > = 10) upperSeconds = upperSeconds / 10; Als (upperMins > = 10) upperMins = upperMins / 10; Als (upperHours > = 10) upperHours = upperHours / 10; Vul het nummer array gebruikt om weer te geven op de buizen. int NumberArray [6] = {0,0,0,0,0,0}; NumberArray [0] = upperHours; NumberArray [1] = lowerHours; NumberArray [2] = upperMins; NumberArray [3] = lowerMins; NumberArray [4] = upperSeconds; NumberArray [5] = lowerSeconds; Display. DisplayNumberString (NumberArray); }

Gerelateerde Artikelen

Hoe om te naaien een Vintage stijl High-Waist Bikini

Hoe om te naaien een Vintage stijl High-Waist Bikini

ik denk dat vintage high-taille bikinis zijn stijlvolle, comfortabele en schattig! Maar ze kosten heel veel geld als u ze in de winkel kopen (en ze moeilijk zijn te vinden ook) - en er is geen garantie dat zij zullen u behoorlijk passen. Het is zeer
Vintage stijl noodlijdende display plank (easy-modus)

Vintage stijl noodlijdende display plank (easy-modus)

Mijn vrouw en ik vond deze grote vintage stijl plank bij een tweedehands winkel, en besloot er nog een aan. (Degene met baby's eerste zwaard en schild is de kopie). Het is heel eenvoudig gemaakt met behulp van brad nagels, 1 x 4 planken en een gerold
Vintage-stijl koningin Throne stoel opnieuw!

Vintage-stijl koningin Throne stoel opnieuw!

Hier is mijn laatste meubels opnieuw...Een vaste stoel vonden we aan de kant van de weg.U leest het goed... het was gratis!Dit heeft me zo lang geduurd, maar ik hou van hoe het bleek!De perfecte foto prop vintage stijl gesneden koningin troon!Stap 1:
Hoe om te naaien een Vintage stijl hoofd-wrap sjaal

Hoe om te naaien een Vintage stijl hoofd-wrap sjaal

Deze vintage-stijl chique sjaal kan gedragen worden op verschillende manieren - als een licht-gewicht-sjaal of als een schattige hoofd-wrap! Ik heb niet gezien deze stijlen van sjaals verkocht rond, waar ik woon en het is zo goedkoop (62 cent voor mi
Naai een Vintage stijl Head Wrap sjaal

Naai een Vintage stijl Head Wrap sjaal

Maak dit schattige vormige vintage stijl hoofd wrap voor uzelf of als cadeau! Hebt u een fan van de Rosie de Riveter-look zullen zeker deze gift plezier!Stap 1: Wat moet je...1/4 werf leuke stofSchaarMeetlintDraad aanIjzerNaaimachine, of gewoon oude
Vintage stijl fiets aanhangwagen

Vintage stijl fiets aanhangwagen

Dit is een eenvoudig te maken kleine aanhangwagen te verpakken tot 40 pond van lading rond en heeft een nette vintage look.Stap 1: Materialen en gereedschappen. Materialen:2 wielen. 10 in luchtbanden komt te staanMultiplex deelvenster. (hoe mooier ho
Persoonlijke Tips & Tricks, en Vintage stijl Editing Tutorial

Persoonlijke Tips & Tricks, en Vintage stijl Editing Tutorial

hier zijn enkele fotografie tips en trucs van mij persoonlijk voor het vastleggen van wat u ziet, hoe je wilt, met wat je hebt, terwijl tonen uw persoonlijkheid gooide uw foto's.Stap 1: Persoonlijke Tips en trucsProfiteren van elk moment van je leven
Vintage stijl fiets zadeltas voor uw Fixie of Single Speed

Vintage stijl fiets zadeltas voor uw Fixie of Single Speed

na wordt teleurgesteld met eBays slecht bereik van zadel tassen heb ik besloten om mijn eigen. Ik wilde iets vaag vintage op zoek dus heb ik besloten om uit elkaar trekken van een oude leger canvas tas. Ik gebruikte veel van de reeds bestaande functi
Vintage stijl tuin spel statief

Vintage stijl tuin spel statief

Ik wilde een passende statief om te gaan met mijn Vintage Camera Lamp.Helaas kon ik niets lokaal die passen bij wat ik wilde vinden. Het enige wat die ik kon vinden waren antiek dat voor honderden dollars verkopen waren. Sinds mijn doeleinden puur de
Vintage stijl fiets zadeltas

Vintage stijl fiets zadeltas

Ik wilde een om de dingen die ik het meest nodig hebt, zoals een buis, hendels en een patch kit, uit mijn pendelen tas aan de fiets. Echter deze fiets heeft een soort van vintage look, (het is een 80s Fuji) met een thema black and tan, en de moderne
Vintage stijl Lace Jam pot Kaarsenbakjes

Vintage stijl Lace Jam pot Kaarsenbakjes

ik ben trouwen in een paar weken en we hebben een vintage / dorp eerlijke type thema.Mijn verloofde gezocht sommige kaarsen rond de plaats, dus dit wat we kwamen is met...Datum gemaakt: Kan 2013Approx kosten: £10 voor 20Approx tijd: 2 uur voor 20Moei
Vintage stijl koffer Amp

Vintage stijl koffer Amp

Het project was het ontwerpen van een gereedschapskist voor de organisatie. Wat me onmiddellijk opkwam probeerde om een manier vinden om een of andere manier dit jaren 1960 koffer amp ding te integreren in de vouw. Ik had willen bouwen van een opname
Vintage stijl HTPC

Vintage stijl HTPC

Ik ben het invoeren van dit in de "Littlebits Tech wedstrijd." Indien gekozen is voor de hoofdprijs zou ik het doneren van de makerbot en littlebits kit om de middelbare school dat mijn zoon woont. Please vote voor mijn instructable, zodat midde
Vintage stijl opslag vakken w / Splines maken

Vintage stijl opslag vakken w / Splines maken

Ik wilde bouwen een paar echt leuk uitziende vakken die ik kon gebruiken voor het ordenen en opslaan van sommige art supplies. Voor de vakken besloten heb ik te gebruiken van cederhout, evenals esdoorn voor koppelstukken. Ik gebruikte ook sommige kaa