Sida 2 av 2

Postat: 7 mars 2005, 12:53:57
av Redtroll
Hmm...27 dygn.....
Månfas, saltvattensakvarie....har jag rätt?
Helt rätt!
Det är kanske inte nödvändigt, men att ha ett litet projekt för att lära sig något nytt är alltid kul.
Man kan lösa det på andra sätt, men detta verkar vara kul utmaning.
Men jag har inte lyckats förstå mig på PWM ännu...
En variant skulle vara att sätta 4 olika motstånd på portarna och få 4*4 steg i intensiteten, men det känns lite som en genväg.
PWM verkar vara en bättre lösning på problemet, om jag bara kunde förstå mig på Assembler. :?

Postat: 7 mars 2005, 14:01:07
av Icecap
Ta PWM.

Det är ganska enkelt faktisk:
Man väljer någon grundfrekvens och ställer in timern i rätt läge, detta brukar ta lite klurande med manualen i hand (eller .PDF).

Sen har du i grova drag 2 olika registre: I det ena skriver du ett värde som bestämmer hur lång tid LED:n ska vara tänd och i ett annat hur lång tid de ska vara släckta.

Detta förhållande kommer automatisk att upprepa sig, hastigheten beror på "grundinställningen" av timern, kristallklockan osv.

Man kan ju t.ex. göra så att man laddar in ett värde i Reg-On ("Till" tidens register) och sen subtraherar detta värde från ett annat (t.ex. 256) och fyller i Reg-Off ("Av" tidens register), då blir det så att ett högt värde i Reg-On ger hög ljusstyrka och vice-versa.

Det krångliga blir nog att få PIC:en att lugna sig så den kan köra en cyklus på 27 dagar men det ska nog gå, det är alltid lättare att få en MCU att lugna sig än att få den att köra snabbare.

Postat: 28 mars 2005, 10:21:49
av Redtroll
Jag tror att jag har missförstått något fundamentalt här...
Hur kan man få en LED att fada?
Jag menar, PWM skickar ju bara ut en etta eller nollla på en bestämd port med viss periodisitet.
Antingen 5 Volt eller inte...
Hur skulle man styra intensiteten då?

Postat: 28 mars 2005, 10:30:43
av karlstedt
PWM innebär att du blinkar lysdioden tillräckligt fort så att ögat/hjärnan inte hinner med så den ser ut att lysa hela tiden.
Genom att minska pulsvidden(tiden då signalen är hög) kommer även ljusstyrkan att minska i takt med att Vrms minskar.

Bild

Postat: 29 mars 2005, 07:51:35
av Redtroll
Då förstår jag!
Jag hade uppfatningen av att PWM skulle ändra spänningen ut.

Postat: 29 mars 2005, 08:04:07
av karlstedt
Jao, men det gör den. Medelspänningen ändras, som är den orangefärgade linjen i bilden ovan.

Postat: 31 mars 2005, 10:50:56
av Loterus
heh en dum fråga men börjar inte ljusdioden i detta fall blinka när pulsen blir glesare innan den släcks...... ? :oops:

Postat: 31 mars 2005, 10:55:22
av $tiff
>> Loterus

Blinka gör den hela tiden, men har man bara tillräckligt hög frekvens (över 100 Hz räcker) så hinner inte ögat uppfatta att det blinkar utan registrerar det istället som ett konstant sken.

Postat: 31 mars 2005, 13:59:13
av Hedis
Man sänker aldrig frekvensen. Men tillslut så lyser den bara kanske 2% utav tiden och "blinkar" med tex 100hz. Men detta ser inte ökat.