Sida 1 av 3

Binär klocka

Postat: 18 november 2006, 17:51:27
av pheer
En arbetskamrat berättade att han sett ett armbandsur med binär
visning. Det inspirerade mig till att göra en egen binär klocka men i bords-
format. Här är resultatet:

En pic18f1320 får sköta all logik och drivning av lysdioderna. Tiden fås av
klockkristallen+den interna oscillatorn. Dioderna PWMas. Med två
tangentbordsströmställare på baksidan ställer man tiden och brightnes
(64 steg).
Bild

Så här blev det. Först hade jag tänkte spraymåla plåtbiten mattsvart. Men
naturell blev rätt snyggt med de svart lysdiodshållaren. Krestskortet
tjänstgör även som stativ
Bild

Närbild i en mörkare omgivning. Lysdioderna har en spridningsvinkel på
+-60 grader. Hoppas att det inte är någon bugg i mjukvaran för då måste
jag löda bort alla lysdioder.
Bild

Postat: 18 november 2006, 18:23:21
av v-g
Fruktansvärt dum fråga känns det som men är den övre raden timme och den undre minuter? Eller hur är den delad?

Dvs är klockan på den nedre bilden 17:11?

Postat: 18 november 2006, 18:45:13
av jack
Bra jobbat!

Jag tar gärna del av schema och kod. Om du känner för att släppa det :)

Postat: 18 november 2006, 20:11:39
av ragnwald
Nice, men den blir ju fasen så mycket lättare att läsa av med BCD-kod :)

Postat: 18 november 2006, 21:41:39
av bengt-re
Du behöver väl ingen 18F monster för detta ? Bygg den med en 4004 istället ;)

Postat: 18 november 2006, 21:46:29
av Mindmapper
Bengt-re: Är inte 4004 dyrare :?:

Postat: 18 november 2006, 21:54:28
av MNorrgren
skulle mer än gärna ta del av denna kod samt schema om du vill släppa det,...

Postat: 18 november 2006, 22:03:47
av bengt-re
;) jo idag, men tänkte just på retrostilen så skulle en 60-tals processor vara lite coolare... Varför inte rörlogik när man ändå är på G `;)


Nej, coolt bygge ändå,

Postat: 18 november 2006, 23:30:24
av JimmyAndersson
Coolt! :)

Jag tycker en PIC18F1320 passar fint. Det ar den PIC-kretsen som jag oftast anvander i mina projekt. Nr2: PIC12F675, nr3: PIC18LF2320. (Vardelost vetande iofs..) :)

(Sitter vid en Linux-burk utan svenska tecken....) :roll:

Postat: 19 november 2006, 00:32:09
av pheer
Tack för responsen :)

vg: helt dum är den inte men om man funderar lite på antal lysdioder,
minuter/timma och timmar/dygn så går det att lura ut.

bengt-re: det är ju faktiskt sant att denna pic är ett riktigt performance-
monster i detta sammanhang, tyvärr kan jag inget om rör men det var en
cool ide. Eller det kanske går åt lite väl många rör när jag tänker efter lite.
Några för syns skulle kanske.

jimmy: jag tycker också att det är en trevlig allround-krets. Jag använde
den till dörrklockloggern också.

Jag lägger upp koden imorgon. Designen i övrigt är riktigt simpel.
Strömbegränsningsmotstånd till lysdioderna, pull-down motstånd till
knapparn och några kondingar för avkoppling och glättning. Man kan ju om
man vill även lägga spänningsagget på kortet men jag lägger det utanför
nånstans, förmodligen köper jag eller återanvänder något, mobilladdare
kanske.

Postat: 19 november 2006, 13:42:08
av pheer
Här är koden. Något schema finns inte. Minut-lysdioderna är
kopplade till port b i "rätt" ordning d.v.s. led 1 till RB0, led 2 till RB1 o.s.v.
Samma för tim-lysdioderna men till port a istället. Klockkristallen är
kopplad enligt databladet, s.105.

Postat: 20 november 2006, 22:39:45
av bengt-re
Coolt projekt hur som helst. man kanske skulle bränna av koden och sätta upp en på jobbet ;)

Postat: 21 november 2006, 01:47:00
av JimmyAndersson
pheer (och andra som är vana vid såna här klockor) : Går det fort att läsa av vad klockan är, eller måste man räkna ?

Postat: 21 november 2006, 18:15:59
av pheer
bengt-re: det tycker jag! Jag gjorde det idag :)

jimmy: det återstår att se, nu måste jag räkna men jag antar att man lär
sig med tiden. precis som man gjorde med visar- och digitalklockan när man var liten.

På tal om det har jag en plan på en uppföljare där alla 11 lysdioder sitter
på rad(eller i kolumn) och anger antal minuter sedan midnatt. Den kommer
att bli lite svårare att lära sig läsa av snabbt. :wacko:

Här kommer version 1.1 av koden, fixade två små buggar som har med
inställningen av brightness att göra, första var att tim-lysdioderna inte
tändes utan släcktes, den andra gjorde så att man var tvungen att släppa
knapp 2 före knapp 1 för att inte avsluta brightness-inställningen.
v1.1

Version två av mjukvaran är påbörjad och innehåller automatisk justering
av sommar- och normaltid. Sen tänkte jag fixa läge för am/pm, inställning
av brightness för lysdioder som är av (för att underlätta avläsning på lite
avstånd).

Postat: 24 november 2006, 11:09:21
av Brander
Snyggt projekt! Tack för att du dela med dig av koden!
Jag försöker lära mig programmera pic så jag satt och spanade lite i koden och det var lärorikt, dock var det en liten detalj angående tidmätningen jag inte blir klok på:

Klockan i 8 MHz

Kod: Markera allt

// Set internal oscillator to 8MHz
OSCCONbits.IRCF2 = 1;
OSCCONbits.IRCF1 = 1;
OSCCONbits.IRCF0 = 1;
Räknaren sätts till noll (16-bitars räknare?)

Kod: Markera allt

TMR1L = 0;				//reset timer
TMR1H = 0;
Visst genereras ett interrupt när timern är full dvs TMR1L = 0xff && TMR1H = 0xff ? dvs när den räknat till 65536.
Vad jag ser i koden används ingen prescaler för timern.
Så om jag förstår det hela rätt borde ett ett interrupt genereras varje 65536/8000000 = 0.008192s dvs lite mer än var 8:e ms. Men vid varje interrupt räknar du upp två sekunder

Kod: Markera allt

clkS += 2;
Vad missar jag för någon enkel detalj?