HX711 ADC 24bits Exemplo Código C (data sheet).
O código C exemplo do data sheet: (Comentado)
Reference Driver(C)
//-------------------------------------------------------------------
sbit ADDO = P1^5;
sbit ADSK = P0^0;
unsigned long ReadCount(void){
unsigned long Count;
unsigned char i;
ADDO=1;
ADSK=0; \\Coloca SCK em 0
Count=0; \\ Zera a variável Count
while(ADDO); \\ Aguarda o pino DT ir para 0 - baixo
for (i=0;i<24;i++){ \\Loop para ler os 24 bits
ADSK=1; \\Coloca SCK em 1
Count=Count<<1; \\Desloca para a esquerda a variável Count
ADSK=0; \\Coloca SCK em 0
if(ADDO) Count++; \\Testa se DT = 1 se for incrementa a variável Count
}
ADSK=1; \\Coloca SCK em 1
Count=Count^0x800000; \\Count = Count XOR 0x80 00 00
ADSK=0; \\Coloca SCK em 0
return(Count); \\Retorna o valor da conversão para o código principal
}
O mesmo código adaptado para usar em testes no ARDUINO.
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 | const int DOUT = A5; // Pino DT placa HX711 const int hxSCK = A4; // Pino SCK placa HX711 void setup() { Serial.begin(9600); pinMode(hxSCK, OUTPUT); pinMode(DOUT, INPUT); // reseta o conversor HX711 digitalWrite(hxSCK, 1); delay (200); digitalWrite(hxSCK, LOW); // ------------------------- Serial.println(" INICIO"); } void loop() { Serial.print(Converte()); Serial.println(" AMOSTRA"); delay (1000); //Aguarda 1 segundo } unsigned long Converte(){ unsigned long CAPTURA = 0; digitalWrite(hxSCK, LOW); while (digitalRead(DOUT)==1) ; for (int i=0; i<24; i++){ // loop 24 pulsos digitalWrite(hxSCK, HIGH); CAPTURA = CAPTURA<<1; //delayMicroseconds(10); digitalWrite(hxSCK, LOW); if(digitalRead(DOUT) == 1) CAPTURA++; } // pulso extra 25 pulsos próxima leitura do HX711 canal A ganho 128*** digitalWrite(hxSCK, HIGH); delayMicroseconds(10); digitalWrite(hxSCK, LOW); //------------------------------------------------------- CAPTURA ^= 0x00800000; return CAPTURA; } |
Esquema de ligação:
Continua....
2ª PARTE DATA SHEET
3ª PARTE Primeiro Código
4ª PARTE HARDWARE - Alterações balança de banheiro
5ª PARTE 1º TESTE
6ª PARTE Média + TARA
Nenhum comentário:
Postar um comentário