图1 PCA9633引脚及内部结构示意图 从图1我们可以看到,每一路LED都是由一个单独的8bit/256阶的PWM来控制,且由于PWM足够快,使其理论上可以通过它所驱动的四个LED混出任意颜色的光。除了每一路单独的PWM,PCA9633还提供了一个GroupPWM,通过它我们可以用来控制所调混色光的亮度及频率,弥补了只调单个PWM不能实现的一些功能。那么PCA9633究竟如何来实现调光呢?秘密还是在PWM上面。如果不使用PWM,那么它只能完成开和关的动作;低速的PWM只能实现LED闪烁,并不足以达到混色的目的;高速的PWM就可以实现RGB混色;如果PWM速度可控,那么就可以实现闪烁和混色的双重功能。而且通过可控的8bit/256阶PWM,加大了色阶提升了色彩的层次感(见图2)。
图2 混色原理 知道了混色的原理,那么一个具体的色彩又是如何产生的呢?我们知道人眼对色彩的感知是各种色彩亮度均值的叠加,我们可以通过控制PCA9633每个PWM的占空比,去控制所驱动LED的亮度。根据三基色原理,如果我们驱动的是RGB(或者RGBA)LED,那么通过调节这三个LED的不同光亮,就可以得到所要的色彩。图3是PCA9633控制RGB三个LED来调粉色光的例子。
图3 PCA9633控制RGB三个LED来调粉色光