LED BLINKER SA
KOLOM PCA9551
Šema led
blinkera sa kolom PCA9551 data je na donjoj slici.

Kolo PCA9951 je I2C kolo, koje za signal SDA koristi DTR signal kao izlazni
i CTS kao ulazni, a za signal SCL
koristi signal RTS sa strane serijskog porta.
Specifikacija materijala za izradu ovog interfejsa data je u donjoj tabeli:
|
Rb. |
Komponenta |
Količina |
|
1. |
IC1 - PCA9551
|
1 kom |
|
2. |
D1, D2 - Zener diode 5V6 |
2 kom |
|
3. |
R1,R2 -
2k2 |
2 kom |
|
4. |
R3 - 10kW |
1 kom |
|
5. |
R4-R11
- 330 W |
8 kom |
|
6. |
Redna
stezaljka za štampu |
1 kom |
|
7. |
DB-9 ženski konektor za štampu |
1 kom |
Raspored pinova kola PCA9551 u SO pakovanju
prikazan je na donjoj slici.

Značenje pojedinih pinova dat je u donjoj tabeli.
|
Pin |
Opis |
|
A0, A1 i A2 |
Pinovi za formiranje adrese kola |
|
LED0 - LED3 |
Izlazi
za LED diode 0 - 3 |
|
GND |
Masa |
|
+VCC |
Napon
napajanja do 6V |
|
SDA |
I2C -
linija podataka |
|
SCL |
I2C -
linija kloka |
|
nRESET |
Reset
kola, normalno na visokom nivou |
|
LED4 - LED5 |
Izlazi
za LED diode 4 - 7 |
Unutrašnja struktura kola prikazana je na donjoj slici.

Adresni bajt ovog kola prikazan je na sledećoj clici.

Kolo PCA9551 ima adresu 1101 što je 13 decimalno, dok preostala tri
bita A2, A1, i A0 određuju hardversku adresu kola. U našem primeru
sva ova tri pina su na logičkoj jedinici pa je adresa kola 1101111. To
znači da na istoj I2C magistrali može biti uključeno maksimalno
8 ovih kola sa različitim hardverskim adresama. Bit R/nW određuje da
li se traži čitanje (kad je jednak 1) ili upis u kolo (kada je jednak
0). Drugi bajt koji se šalje na ovo kola iza bajta adrese je tzv.
Kontrolni registar i koji određuje funkcije kola, čija je struktura
data na donjoj slici.

Bit Al kada
je postavljen koristi se za serijsko čitanje registara i početni
registar mora biti različit od nule. Bitovi B0, B1 i B2 određuje koji
će od registara u donjoj tabeli biti odabran.

Ulazno-ulazni registar određuje stanja LED dioda i njegova je
struktura data na donjoj slici:

Upis u ovaj registra neće imati nikakvog efekta. Sledeći registar
je registar koji određuje periodu blinkanja LED dioda(PSC0 - FREQUENCY
PRESCALER 0) a njegova je struktura data na donjoj slici:

Perioda blinkanja određuje se po formuli:
, pa ako je npr. perioda dužine jedne sekunde
sadržaj ovog registra će biti:
. Registar PWMO određuje dužinu u toku perioda kada
će LED dioda biti isključene tj. njihov izlaz biće postavljen na
HIGH nivo, pod uslovom da je to vreme manje od upisanog u ovaj registar.
Njegova struktura prikazana je na slici:

Trajanje ciklusa isključenja LED dioda od ukupnog perioda računa
se po formuli:
, pa ako želimo da to vreme bude 50% dobićemo:
, što znači da u ovaj registar treba upisati broj
128.
Registri PSC1 i PWM1 imaju istu strukutur kao i PSC0 i PWM0, a takođe
prednohodno date formule vrede i za njih. Sledeći je registar je
LS0(LED0-3 SELECTOR) čija je struktura data na donjoj slici:

Registar LS1(LED4-7 SELECTOR) ima donju strukturu:

Zavisno od sadržaja neke od LEDx ćelije to će biti
odraženo na tu LED diodu prema tebeli:
|
Sadržaj |
Opis |
|
00 |
Izlaz će biti postavljen na LOW i
dioda će svetliti |
|
01 |
Izlaz će biti postavljen na HIGH i
dioda neće svetliti |
|
10 |
Izlaz će blinkati sa PWM0 ciklusom |
|
01 |
Izlaz će blinkati sa PWM1 ciklusom |
To znači da ciklus blinkanja za svaku LED diodu može biti ili
PWMO ili PWM1 zavisno od toga šta se odabere. Resetovanje kola vrši
se kratkim dovođenjem logičke nule na nRESET pin.
Proces upisivanja sadržaja u neki od registara prikazan je na donjoj
slici:

Iz prikazane slike se vidi da treba poslati tri bajta i to: Slave adresu
kola, sadržaj Kontrolnog registra i sadržaj registra koji je odabran
u kontrolnom registru zavisno od vrednosti bita B0, B1 i B2.
Čitanje sadržaja registara prikazan je na donjoj slici:

Iz slike se vidi da se pošalju tri bajta: Slejv adresa sa zahtevom
upisa, sadržaj Kontrolnog registra i Slejv adresa za zahtevom
čitanja. Nakon slanja trećeg bajta kolo šalje sadržaje svih
registara, kada je Al bit postavljen na 1.
Programiranje ovog kola slično je prethodno opisanim pa ga nećemo
posebno objašnjavati.
http://vojo.milanovic.org
© Copyright, 2004 Milanović Vojo
All right reserved