Inteligentny sterownik LED PCA9633 (NXP) w aplikacji z LED-RGB mocy z serii P5-II firmy Seoul Semiconductor
Podstawowe cechy i parametry układu PCA9633:
|
Zastosowane w projekcie źródła prądowe MBI1801 (produkowane przez tajwańską firmę Macroblock) wyposażono w bezpiecznik termiczny, który zapobiega przegrzaniu struktury w wyniku niekorzystnych warunków zasilania: odłącza on obciążenie w przypadku przekroczenia wewnątrz obudowy temperatury progowej 165°C. Schemat blokowy układu MBI1801 pokazano na rysunku 7.
Źródła prądowe wbudowane w układy MBI1801 są typu sink co oznacza, że przyjmują one prąd do wejścia (od plusa zasilania). Sygnały PWM generowane przez układ PCA9633 są podawane na wejścia #OE źródeł prądowych co powoduje, że przez zasilane z nich LED płynie prąd impulsowy o współczynniku wypełnienia zgodnym z ustalonym przez mikrokontroler w odpowiednich rejestrach układu PCA9633. Maksymalne natężenie prądu wyjściowego jest ustalane za pomocą rezystorów R7…9 (na schemacie z rysunku 6), a przybliżoną charakterystykę pozwalającą dobrać wartości tych rezystorów dla innych LED pokazano na rysunku 8.
Rys. 7. Schemat blokowy programowanego źródła prądowego MBI1801
Rys. 8. Przybliżona krzywa ilustrująca zależność pomiędzy wydajnością prądową układu MBI1801 i wartością rezystancji programującej
Układy MBI1801 są w prezentowanym projekcie zasilane napięciem 5V, którego wartość jest zgodna z zalecaną w katalogu. Wyjścia układów MBI1801 (typu otwarty dren z programowanym ogranicznikiem prądowym) są przystosowane do zasilania napięciem o wartości do 17 V, a maksymalny prąd obciążenia nie może być większy niż 1,2 A. Tradycyjnie: maksymalna moc jest zależna od warunków chłodzenia układu, należy także brać pod uwagę, że maksymalna moc strat w strukturze układu nie może przekraczać 1,6 W.
Fragment programu sterującego pracą sterownika (fragment przykładu demonstracyjnego dla ZL15AVR), odpowiedzialny za zapisywanie danych do rejestrów pokazano na listingu poniżej.
int PCA9633_WriteRegister(unsigned char addr, unsigned char data) { int result, ret; i2c_init(); // init I2C interface if ( i2c_start((PCA9633<<1)+I2C_WRITE) ) return 0; if ( i2c_write(addr) ) return 0; // write register address if ( i2c_write(data) ) return 0; // write data i2c_stop(); // set stop conditon = release bus return 1; }
Kolejny fragment programu sterującego (listing poniżej) pokazuje sposób płynnego, samoczynnego wygaszania jednego z kanałów LED.
// Fade in blue for (i=0; i<0xFF; i++) { PCA9633_WriteRegister(PCA9633_PWM1_REG, i); _delay_ms(5); }
Fot. 9. Widok zmontowanego zestawu testowego z LED mocy RGB F50360 (Seoul Semiconductor), sterownikiem PCA9633 (NXP) i driverami prądowymi MBI1801 (Macroblock)
Widok zmontowanego układu testowego pokazano na fotografii 9. Ustawienie zworek na liniach adresowych odpowiada programowi demonstracyjnemu. Zasilanie zestawu (5 VDC) powinno być dostarczane poprzez złącze Con5 (I2C), należy pamiętać o zapewnieniu odpowiedniej wydajności prądowej zasilacza sieciowego (prezentowany moduł pobiera prąd impulsowo o natężeniu do 1 A). Dioda F50360 zamontowana na płytce star została przykręcona do płytki drukowanej zestawu testowego (dokumentacja Gerber+NC Drill do pobrania poniżej) za pomocą dwóch śrub 3 mm z nakrętkami. Poszczególne LED dołączono do płytki z zamontowanymi złączami ARK2 za pomocą par przewodów.