連接好 NXP PCA9685 16通道驅動板模塊接口至 Microchip PIC24FJ64GA008 處理器,便可以開始編程,第一個 NXP PCA9685 的程式是簡單驅動 LED 閃爍,首先是初始化 Microchip PIC24FJ64GA008 處理器的 I2C 和 NXP PCA9685 的 MODE1 和 MODE2,然後再將寫入 LED0 的寄存器(LEDx_ON_L、LEDx_ON_H、LEDx_OFF_L、LEDx_OFF_H),LED0 便會閃爍。
NXP PCA9685 16通道驅動板模塊 LCD顯示 |
NXP PCA9685 初始化程式:
// MODE1 Control Byte
PCA9685_WD_BYTE(PCA9685_ADDR+2);
PCA9685_WD_BYTE(PCA9685_MODE1);
PCA9685_WD_BYTE(0xA1);
StopI2C2();
// MODE2 Control Byte
PCA9685_START_BUS();
PCA9685_WD_BYTE(PCA9685_ADDR+2);
PCA9685_WD_BYTE(PCA9685_MODE2);
PCA9685_WD_BYTE(0b00001101);
StopI2C2();
|
Microchip PIC24FJ64GA008 LED0 主程式:
while( 1 ) {
// Test LED0=Flash
// LED0 OFF
PCA9685_START_BUS();
PCA9685_WD_BYTE(PCA9685_ADDR+2);
PCA9685_WD_BYTE(0x06);
// LED0 Off = 0x1000
PCA9685_WD_BYTE(0x00);
PCA9685_WD_BYTE(0x00);
PCA9685_WD_BYTE(0x00);
PCA9685_WD_BYTE(0x10);
StopI2C2();
delayms(1000);
// LED0 ON = 0x1000
PCA9685_START_BUS();
PCA9685_WD_BYTE(PCA9685_ADDR+2);
PCA9685_WD_BYTE(0x06);
PCA9685_WD_BYTE(0x00);
PCA9685_WD_BYTE(0x10);
PCA9685_WD_BYTE(0x00);
PCA9685_WD_BYTE(0x00);
StopI2C2();
delayms(1000);
}
// End while
|
NXP PCA9685 16通道驅動板模塊接上 LED |
2016年 10月 27日 天氣報告
氣溫:25.9度 @ 20:20
相對濕度:百分之 74%
天氣:天色大致良好
沒有留言:
張貼留言