-> [SW flag]


[UK/US flag]
Axotron ------

Mjukt rinnande ljus med PIC-processor

Här beskrivs en onödig krets jag byggde för att den skulle blinka på ett häftigt sätt. Det är ett rinnande ljus med åtta lysdioder som har den extra finessen att lysdioder som nyss lyst inte slocknar helt på direkten utan tonar ned i intensitet.

Kopplingsschemat är inte mycket att orda över. Det visas i figuren nedan.

Schematics

Figur 1: Schemat för det rinnande ljuset.

Mikrokontrollern PIC16F84 driver de åtta lysdioderna via varsin IO-pinne. Tricket för att kunna styra intensiteten på dioderna är att de pulsbreddsmoduleras av en interruptrutin i PIC-processorn.

Kristallen kan bytas mot en keramsik resonator för att minska kostnaden något. Matningsspänningen bör vara 3,5-6V. Beroende på spänning, lysdioder och personliga preferenser kan man behöva byta värdet på förkopplingsmotstånden till något annat än 330Ω. Om man använder vita eller blå lysdioder som har spänningsfall runt 4V så bör man naturligtvis välja en matningsspänning som är tillräckligt hög för att de ska lysa (5-6V är nog lämpligt).

Kretsen har ett par bonusfunktioner som styrs via ingångar på processorn:

  • "STILL" som gör att rinnande ljuset fryser om ingången går hög.
  • "OFF" som släcker dioderna om ingången går hög.
  • "SPEED" som sänker farten på ljuset om ingången går hög.

Det mesta av funktionen i kretsen ligger alltså i mjukvaran. Denna kan laddas ned via nedanstående länk. Jag har kommenterat koden ganska väl och förhoppningsvis kan den tjäna som instruerande exempel på PIC-programmering.

Vill man ha 10 lysdioder istället för åtta bör det vara en smal sak att modifiera mjukvaran så att även RA3 och RA4 kan användas för att driva lysdioder.

------
Senast uppdaterad: 2016-12-11, 14:28:24  Sida för utskrift