-diese Library dient zum ansteuern eine RGBW-LED
von einem externen Modul das mit 4 Pins an die CPU angeschlossen ist.
(z.B. das Modul von myAVR “myColorLED AddOn”)
-Die Library wird komplett über eine globale Struktur gesteuert
Beispiel :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | //----------------------------------------------------------------------------- // Title : bsp_ub028_mk3_ext_cled //----------------------------------------------------------------------------- // Funktion : Externes Modul : RGB Color-LED // Schaltung : myAVR MK3 + myAVR myColor LED Add-On //----------------------------------------------------------------------------- // Prozessor : ATMega2560 // Takt : 16 MHz // Sprache : C // Date : 24.07.2011 // Version : 1.1 // Autor : UB //----------------------------------------------------------------------------- #define F_CPU 16000000 #include <avr/io.h> #include <UB_EXT_MODULE/EXT_MOD_CLED.h> #include <UB_MK3_2560/MK3_2560_ADC.h> //----------------------------------------------------------------------------- // Hinweis : // > externes Modul (myAVR myColor LED Add-On) // muss am Stecker rechts unten angeschlossen sein // > 4 Patchkabel einbauen : // Port-L0 (PWM_ROT) muss zum myColor LED Add-On (R) // Port-L1 (PWM_GRUEN) muss zum myColor LED Add-On (G) // Port-L2 (PWM_BLAU) muss zum myColor LED Add-On (B) // Port-L3 (PWM_WEISS) muss zum myColor LED Add-On (W) // - Eine Leitung von Poti-3 nach Port-F0 muss eingebaut sein // - Eine Leitung von Poti-2 nach Port-F1 muss eingebaut sein // - Eine Leitung von Poti-1 nach Port-F2 muss eingebaut sein // - das Programm gibt die Poti-Stellungen als Farbmischung aus //----------------------------------------------------------------------------- int main (void) { unsigned int ad_wert=0; unsigned char cled_wert=0; EXT_INIT_CLED(); // init vom Color-LED-Modul MK3_INIT_ADC(); // MODE = User-Color einstellen EXT_CLED.mode=USER_COLOR; while (true) { // Farbe ROT per ADC-0 ad_wert=MK3_ADC_READ_CH(ADC0); cled_wert=(ad_wert/4); EXT_CLED.RED=cled_wert; // Farbe GRUEN per ADC-1 ad_wert=MK3_ADC_READ_CH(ADC1); cled_wert=(ad_wert/4); EXT_CLED.GREEN=cled_wert; // Farbe BLAU per ADC-2 ad_wert=MK3_ADC_READ_CH(ADC2); cled_wert=(ad_wert/4); EXT_CLED.BLUE=cled_wert; } return 0; } |
Hier die Library zum download :