Pular para o conteúdo principal

Questão de Engenharia Elétrica — Instrumentação Industrial — FGV 2024

Engenharia ElétricaInstrumentação Industrial
Código
fg163022
Banca
FGV
Órgão
INPE
Ano
2024
Cargo
Tecno P1 ( )
O código a seguir é parte de um protocolo para a leitura dos dados do acelerômetro MPU6050.   ISR(TWI_vect){   if (I2Cestado == 1){     if ( (TWSR&0xF8)!=COD_START_OK ) TWI_erro(7,I2Cestado);   TWDR=MPU_WR; // endereço de escrita no MPU   TWCR = (1<<TWINT) | (1<<TWEN) | (1<<TWIE); // envia end.   } ...   if (I2Cestado == 5){     if ((TWSR&0xF8)!=COD_SLA_RD_ACK) TWI_erro(7,I2Cestado);     /* inicia a recepção do dados do MPU */     TWCR = (1<<TWINT) | (1<<TWEA) | (1<<TWEN) | (1<<TWIE);  }  if (I2Cestado>5 && I2Cestado<18){   if ((TWSR&0xF8)!=COD_RX_DATA_ACK) TWI_erro(7,I2Cestado);    MPUvet[MPUix++]=TWDR; // recebe um dado    /* prepara para receber próximo dado do MPU */    TWCR = (1<<TWINT) | (1<<TWEA) | (1<<TWEN) | (1<<TWIE); } if (I2Cestado==18){   if ((TWSR&0xF8)!=COD_RX_DATA_ACK) TWI_erro(7,I2Cestado);   MPUvet[MPUix++]=TWDR; // recebe penúltimo dado   /* prepara para receber o último dado e gerar NACK */   TWCR = (1<<TWINT) | (1<<TWEN) | (1<<TWIE); // NACK } if (I2Cestado == 19){   if ((TWSR&0xF8)!=COD_RX_DATA_NACK) TWI_erro(7,I2Cestado);    MPUvet[MPUix++]=TWDR; // recebe último dado    TWCR = (1<<TWINT)|(1<<TWEN)|(1<<TWSTO); // envia STOP    MPUax=(MPUvet[0]<<8) | MPUvet[1];    MPUay=(MPUvet[2]<<8) | MPUvet[3];    MPUaz=(MPUvet[4]<<8) | MPUvet[5];    MPUtp=(MPUvet[6]<<8) | MPUvet[7];    MPUgx=(MPUvet[8]<<8) | MPUvet[9];    MPUgy=(MPUvet[10]<<8)| MPUvet[11];    MPUgz=(MPUvet[12]<<8)| MPUvet[13];  }  I2Cestado++; // incrementa estado }   Após uma análise preliminar do código acima, é correto concluir que a leitura das informações foi realizada, sequencialmente, em
  1. A19 etapas seguidas, sem o uso de interrupções.
  2. B19 etapas em uma única interrupção.
  3. C19 interrupções
  4. D19 etapas, sendo 5 na primeira interrupção, 12 em 12 interrupções e duas em outra interrupção
  5. E19 etapas, sendo as 5 primeiras em 5 interrupções, as 12 seguintes em uma única interrupção e, as duas últimas, em duas interrupções
Revelar gabarito e comentário

GabaritoC — 19 interrupções

Link permanente: /questoes/fg163022