/* PINES DIGITALES DISPONIBLES: D5,D6,D7,D8,D9,D11,D12,D13 X7_4, X7_5, X7_6, X7_7, X7_3, X7_2, X7_1, X7_0 PINES DE CONTROL DE MUX (A,B,C) A: D2 B: D3 C: D4 ENTRADAS ANALOGICAS (X1,X2,X3,X4,X5,X6) X1: A0 X2: A1 X3: A2 X4: A3 X5: A4 X6: A5 MODULO ETHERNET DIGI CONNECT ME */ int A = 2; int B = 3; int C = 4; int selA, selB, selC; int X1[8] = { 0,0,0,0,0,0,0,0}; int X2[8] = { 0,0,0,0,0,0,0,0}; int X3[8] = { 0,0,0,0,0,0,0,0}; int X4[8] = { 0,0,0,0,0,0,0,0}; int X5[8] = { 0,0,0,0,0,0,0,0}; int X6[8] = { 0,0,0,0,0,0,0,0}; //int remap[8] = {4,3,2,5,1,6,0,7}; int remap[8] = { 6,4,2,1,0,3,5,7}; int i = 0; byte dig = 0; void setup() { Serial.begin(9600); pinMode(A, OUTPUT); pinMode(B, OUTPUT); pinMode(C, OUTPUT); pinMode(5, INPUT); pinMode(6, INPUT); pinMode(7, INPUT); pinMode(8, INPUT); pinMode(9, INPUT); pinMode(11, INPUT); pinMode(12, INPUT); pinMode(13, INPUT); digitalWrite(5,HIGH); digitalWrite(6,HIGH); digitalWrite(7,HIGH); digitalWrite(8,HIGH); digitalWrite(9,HIGH); digitalWrite(11,HIGH); digitalWrite(12,HIGH); digitalWrite(13,HIGH); digitalWrite(A, 0); digitalWrite(B, 0); digitalWrite(C, 0); } void loop() { dig = digitalRead(13) + digitalRead(12)*2 + digitalRead(11)*4 + digitalRead(9)*8 + digitalRead(5)*16 + digitalRead(6)*32 + digitalRead(7)*64 + digitalRead(8)*128; //ORDENADO DE 13 (X7_0) MENOS SIGNIFICATIVO A 8 (X7_7) MAS SIGNIFICATIVO i = 0; selA = (remap[i])&1; selB = (remap[i]&2)>>1; selC = (remap[i]&4)>>2; digitalWrite(A, selA); digitalWrite(B, selB); digitalWrite(C, selC); X1[i] = analogRead(0); X2[i] = analogRead(1); X3[i] = analogRead(2); X4[i] = analogRead(3); X5[i] = analogRead(4); X6[i] = analogRead(5); Serial.print(X1[i]/5,BYTE); Serial.print(X2[i]/5,BYTE); Serial.print(X3[i]/5,BYTE); Serial.print(X4[i]/5,BYTE); Serial.print(X5[i]/5,BYTE); Serial.print(X6[i]/5,BYTE); Serial.print(dig,BYTE); // Valores de las entradas digitales Serial.print(240,BYTE); // 1 BYTES ADICIONALES FINAL DE CADENA (0xF0) Y COMPLETAR 8 BYTES delay(100); }