#include "board.h"
|
#define IIC2_READ_SDA gpio_pin_get_val(SDA_PIN)
|
#define SDA_1 gpio_pin_set(SDA_PIN)
|
#define SCL_1 gpio_pin_set(SCL_PIN)
|
|
#define PCA9555_SLA (0x40 >> 1) // ¶¨ÒåPAC9555µÄÆ÷¼þµØÖ·
|
#define PCA9555_REG_IN0 0x00 // ¶¨ÒåÊäÈë¼Ä´æÆ÷0µØÖ·
|
#define PCA9555_REG_IN1 0x01 // ¶¨ÒåÊäÈë¼Ä´æÆ÷1µØÖ·
|
#define PCA9555_REG_OUT0 0x02 // ¶¨ÒåÊä³ö¼Ä´æÆ÷0µØÖ·
|
#define PCA9555_REG_OUT1 0x03 // ¶¨ÒåÊä³ö¼Ä´æÆ÷1µØÖ·
|
#define PCA9555_REG_POL0 0x04 // ¶¨Ò弫ÐÔ·´×ª¼Ä´æÆ÷0µØÖ·
|
#define PCA9555_REG_POL1 0x05 // ¶¨Ò弫ÐÔ·´×ª¼Ä´æÆ÷1µØÖ·
|
#define PCA9555_REG_CFG0 0x06 // ¶¨Òå·½ÏòÅäÖüĴæÆ÷0µØÖ·
|
#define PCA9555_REG_CFG1 0x07 // ¶¨Òå·½ÏòÅäÖüĴæÆ÷1µØÖ·
|
#define PCA9555_DEVICE_ADDR 0x40 // ¶¨ÒåPCA9555µØÖ·
|
#define SDA_0 gpio_pin_clr(SDA_PIN)
|
#define SCL_0 gpio_pin_clr(SCL_PIN)
|
void IIC_gpio_pca_init(void);
|
void IIC2_pca_Start(void);
|
void IIC_pca_Ready(void);
|
void IIC2_pca_Stop(void);
|
uint8_t IIC2_Wait_pca_Ack(void);
|
void IIC2_pca_send_Ack(void);
|
void IIC2_pca_send_NAck(void);
|
void IIC2_Send_pca_Byte(uint8_t txd);
|
uint8_t IIC2_Read_pca_Byte(unsigned char ack);
|
void IIC_Write_Pca9555(unsigned char addr,unsigned char reg_addr,unsigned char low_byte,unsigned char high_byte);
|
void IIC_Read_Pca9555(uint8_t addr,uint8_t reg_addr,uint8_t* pBuffer,uint16_t num);
|
void PCA9555_write_output_port_data(unsigned char addr,unsigned char data_L,unsigned char data_H);
|
void PCA9555_write_config_port_data(unsigned char addr,unsigned char data_L,unsigned char data_H);
|
void PCA9555_readdata(unsigned char addr,unsigned char* pBuffer);
|
void PCA9555_Set_All_Output(unsigned char value);
|
void PCA9555_Set_One_Value_Output(unsigned char num,unsigned char value);
|
void PCA9555_Set_One_Value_Config(unsigned char num,unsigned char value) ;
|
void PCA9555_init();
|