Re: Otra duda: mover a una variable un conjunto de bits extern byte err;
int i=0;
int j=0;
int k=0;
bool *comando, comando2[13];
bool comandoOn[13] = {1,0,1,0,1,0,0,1,0,0,0,0,0};
bool comandoVolmas[13] = {0,1,0,0,1,0,0,1,0,0,0,0,0};
//orden de los bits: 0 1 2 3 4... 12
static byte tecla[1]; /* Número de canales */
void main(void)
{
(void)PPG1_Disable(); /* disable the bean */
for(;;){
for(;;){
err = AD1_Measure (TRUE); /* Lee el valor */
err = AD1_GetValue((byte *)tecla);
if (tecla[0] > 63) break; /* Compara el valor con la tecla pulsada */
}
k = (tecla[0]);
k = (k / 64); // como la entrada tiene 256 niveles, 256/64 te da
// 3 niveles, para 3 teclas distintas
switch(k)
{
case 1: // {1,0,1,0,1,0,0,1,0,0,0,0,0} On/Off
comando = comandoOn;
break;
case 2: // {0,1,0,0,1,0,0,1,0,0,0,0,0}; // Volumen +
comando = comandoVolmas;
break;
case 3: // {0,1,0,0,1,0,0,1,0,0,0,0,0}; // Volumen -
comando = comandoOn;
break;
}
}
} |