Okej. Kan ju säga att ja inte fattar något om microprocceser, o annat som ni skriver om. Ja som novis tänkte att de bara var att lägs ihop lite smått o gott. Men de blev bra mycket mer intressant när de inte var som ja trodde. Ja ska försöka studera detta till helgen. Finns de några bra sidor på nätet som man titta på?
Mvh Micke
Klocka med lysdioder som visar vad klockan är?
Re: Klocka med lysdioder som visar vad klockan är?
kanske denna sida om shiftregister:
Serial-in, parallel-out shift register
Varje utgång (Q) kan kopplas till en lysdiod via ett motstånd.
Shiftregistren kan kopplas i en lång serie så du kan i princip ha hur många som helst.
De styrs huvudsakligen av två signaler: data, klocka och reset.
för att generera signalen till data och klocka behövs ett par saker:
1) en oscillator som har en noggrannt bestämd frekvens. t.ex 32768 Hz
2) en frekvensdelare (räknare) som sänker frekvensen till ett "tick" var 15:e minut.
Reset behöver kanske få en puls en gång per dygn för att tända eller släcka alla samtidigt.
Här en länk om räknare:
Counting Circuits

Eller en (bättre?) länk om räknare:
Binary count sequence
Räknare kan bara dela frekvensen med multiplar av 2. dvs 2,4,8,16,32,64,128... osv...
Därför är det speciellt uträknat varför man använder en kristall som svänger 32768 gågner per sekund. För delar du det talet med 2 exakt 15 gånger så får du exakt en sekund mellan pulserna.
och om oscillatorer:
Det finns färdiga att köpa med inbyggd kristall, eller så bygger man en av t.ex CMOS-kretsar.
32.768 KHz oscillator using a watch crystal
3) ytterligare en funktion som sätter om lysdioderna ska tändas eller släckas.... beroende på hur sekvensen ser ut kan detta bli extremt enkelt... om alla lysdioder ska tändas vid ett visst klockslag och sedan släcks de en och en så behöver dataingången bara kopplas till +5V och så använder man shiftregistrens reset-ingång en gång per dygn för att släcka alla.
Eftersom de vanligaste oscillatorkristallerna ligger på 32768 Hz så blir det lite svårt att lösa snyggt med bara hårdvara... det blir på 15 minuter = 29 491 200 svängningar. Med en räknare som delar frekvensen 17 gånger får man en puls var fjärde sekund. Sedan blir det svårare. Nästa steg är att räkna 900 sekunder, dvs 225 sådana 4-sekunders-pulser. Detta kan man göra genom att ta en räkanare som kan räkna upp till 256... när den kommer till 225 så står utgångarna binärt på 11100001. Precis då ska en signal ges till shiftregistren att tända/släcka en lysdiod, samtidigt som räknaren ska börja om på noll. Detta kan utföras med hjälp av ett nät av logiska grindar.
Så får man göra om man inte vill blanda in en microprocessor.
Med en processor är det superenkelt: shiftregistren ska du fortfarande ha, men processorn ersätter både räknare och oscillator. Man kopplar en kristall till processorn som går på lämplig frekvens (t.ex. 3.6468 MHz) och låter sedan programmet räkna ut när en puls ska skickas. Med processorn kan även extra funktioner programmeras in så du i princip kan skapa vilka mönster du vill med lysdioderna. Fördelen är att du inte blir låts vid en viss funktion, utan du kan modifiera programmet. Helt klart rekommenderar jag en liten attiny45.
Serial-in, parallel-out shift register
Varje utgång (Q) kan kopplas till en lysdiod via ett motstånd.
Shiftregistren kan kopplas i en lång serie så du kan i princip ha hur många som helst.
De styrs huvudsakligen av två signaler: data, klocka och reset.
för att generera signalen till data och klocka behövs ett par saker:
1) en oscillator som har en noggrannt bestämd frekvens. t.ex 32768 Hz
2) en frekvensdelare (räknare) som sänker frekvensen till ett "tick" var 15:e minut.
Reset behöver kanske få en puls en gång per dygn för att tända eller släcka alla samtidigt.
Här en länk om räknare:
Counting Circuits

Eller en (bättre?) länk om räknare:
Binary count sequence
Räknare kan bara dela frekvensen med multiplar av 2. dvs 2,4,8,16,32,64,128... osv...
Därför är det speciellt uträknat varför man använder en kristall som svänger 32768 gågner per sekund. För delar du det talet med 2 exakt 15 gånger så får du exakt en sekund mellan pulserna.
och om oscillatorer:
Det finns färdiga att köpa med inbyggd kristall, eller så bygger man en av t.ex CMOS-kretsar.
32.768 KHz oscillator using a watch crystal
3) ytterligare en funktion som sätter om lysdioderna ska tändas eller släckas.... beroende på hur sekvensen ser ut kan detta bli extremt enkelt... om alla lysdioder ska tändas vid ett visst klockslag och sedan släcks de en och en så behöver dataingången bara kopplas till +5V och så använder man shiftregistrens reset-ingång en gång per dygn för att släcka alla.
Eftersom de vanligaste oscillatorkristallerna ligger på 32768 Hz så blir det lite svårt att lösa snyggt med bara hårdvara... det blir på 15 minuter = 29 491 200 svängningar. Med en räknare som delar frekvensen 17 gånger får man en puls var fjärde sekund. Sedan blir det svårare. Nästa steg är att räkna 900 sekunder, dvs 225 sådana 4-sekunders-pulser. Detta kan man göra genom att ta en räkanare som kan räkna upp till 256... när den kommer till 225 så står utgångarna binärt på 11100001. Precis då ska en signal ges till shiftregistren att tända/släcka en lysdiod, samtidigt som räknaren ska börja om på noll. Detta kan utföras med hjälp av ett nät av logiska grindar.
Så får man göra om man inte vill blanda in en microprocessor.
Med en processor är det superenkelt: shiftregistren ska du fortfarande ha, men processorn ersätter både räknare och oscillator. Man kopplar en kristall till processorn som går på lämplig frekvens (t.ex. 3.6468 MHz) och låter sedan programmet räkna ut när en puls ska skickas. Med processorn kan även extra funktioner programmeras in så du i princip kan skapa vilka mönster du vill med lysdioderna. Fördelen är att du inte blir låts vid en viss funktion, utan du kan modifiera programmet. Helt klart rekommenderar jag en liten attiny45.