– home / Fóruns / Módulo 5 / Bloco M5-44 / Bloco M5-44 | Questão 29

  • Autor
    Posts
    • Anônimo
      22/11/2019 até 00:00 #40003304954

      Seja o primeiro a fazer uma pergunta sobre esta questão.

        04/12/2019 até 00:00 #40003304955

        Olá,

         

        Acredito que o código está errado, não é só trocar o valor para 5, precisa mudar a atribuição da variável i para 1.

        Veja que a variável é inicializada como 1 e depois é atribuído o valor 0 a cada execução.

        Fiz a simulação trocando para 5 e não dá certo.  Desta forma não tem resposta correta.  Poderia verificar?

         

        Grato,

        Marcos

          05/12/2019 até 00:00 #40003304956
          Citação de Marcos Tadeu de Brazio em 04/12/2019, 19:30

          Olá,

           

          Acredito que o código está errado, não é só trocar o valor para 5, precisa mudar a atribuição da variável i para 1.

          Veja que a variável é inicializada como 1 e depois é atribuído o valor 0 a cada execução.

          Fiz a simulação trocando para 5 e não dá certo.  Desta forma não tem resposta correta.  Poderia verificar?

           

          Grato,

          Marcos

          Olá Marcos.

          1- De fato essa questão apresentava um erro. Porém não é o que informou o erro apresentado era sintaxe que já foi corrigido. Foi alterado o parâmetro do ultimo comando output do código onde estava RELE foi alterado para pin_b7 que é o LED4 no kit neutrino.

          2- No código é inicializado a variável i como 1 mesmo e dentro do segundo while ela não deveria ser zerada pois estando assim ela só funcionaria uma vez , e referente a isso alteramos o código sendo assim no fim de cada etapa i voltará a ser 1.

          3- O número 5 será usado no calculo dentro do while afim de executar as 4 alterações de estádo do LED4.

          Veja o funcionamento:

          1- LED4 está apagado
          apertando B3
          acende LED4

          2- apaga LED4
          acende LED4

          3-apaga LED4
          acende LED4

          4- apaga LED4

          O código alterado:

          int i = 1;
          while(TRUE){
          if(!input(pin_b1)){
          delay_ms(250);
          output_d(0x01);
          }
          else{
          output_d(0x00);
          }
          if(!input(pin_b2)){
          while(i<4){
          output_toggle(pin_b7);
          delay_ms(300);
          i++;
          }
          i=1;                                      //Alterado a variável para 1.
          output_low(pin_b7);      //Alterado D0 para b7
          }
          }
          }

          Faça essa alteração em seu código e veja o resultado e caso queira faça uso do debug utilizando o stimullus.

          Será adicionado 3 pontos para você por auxiliar nesta questão.

          Grande abraço.

            19/05/2020 até 00:00 #40003280555

            Bloco M5-44 | Questão 29

          • Você precisa estar Conectado(a) para Responder a este Tópico.