PIC: PCF8574
O CI PCF8574 é um expansor de portas entradas/saídas de 8 bits via comunicação I2C. Com ele é possível expandir as portas de um microcontrolador utilizando apenas duas portas para 8 portas. Pode-se utilizar até 8 CI's conectados no mesmo barramento, totalizando 64 portas.
ENDEREÇAMENTO
Os bits A2, A1, A0 correspondem aos pinos de endereçamento ( A2, A1, e A0 ).
CÓDIGO DA BIBLIOTECA
CÓDIGO DA BIBLIOTECA
MikroC PRO PIC
#define PCF8574_ADDR 64 #define PCF8574A_ADDR 112 void PCF8574_Wr( char address, char value ) { I2C1_Start(); I2C1_Wr( PCF8574_ADDR | ( address << 1 ) ); I2C1_Wr( value ); I2C1_Stop(); } char PCF8574_Rd( char address ) { char value; I2C1_Start(); I2C1_Wr( PCF8574_ADDR | 1 | ( address << 1 ) ); value = I2C1_Rd(0); I2C1_Stop(); return(value); }
EXEMPLO
MikroC PRO PIC
//Habilitar as seguintes bibliotecas: // - I2C // - Uart //Copie e cole aqui o código da biblioteca!!! void main() { char ValorDeEntrada; I2C1_Init(100000); Uart1_Init(9600); //Define todos os pinos como saida e escreve 0 na saida PCF8574_Wr( 7, 0 ); Delay_ms( 2000 ); //Define todos os pinos como saida e escreve 255 na saida PCF8574_Wr( 7, 255 ); Delay_ms( 2000 ); while(1) { //Define todos os pinos como entrada e realiza a leitura ValorDeEntrada = PCF8574_Rd( 7 ); if( ValorDeEntrada.B0 ) { Uart1_Write_Text( "P0 = 1" ); } else { Uart1_Write_Text( "P0 = 0" ); } } }
bom dia
ResponderExcluircomo faço para adiconar a biblioteca
bom dia
ResponderExcluiruso adblock desabilitado neste site mesmo assim ele não abre que pena o site é otimo mas não pretendo desinstalar o adblock .