– home / Fóruns / Módulo 5 / Bloco M5-25 / Bloco M5-25 / Questão 30

  • Autor
    Posts
    • Anônimo
      01/10/2019 até 00:00 #40003304359

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

        13/11/2019 até 00:00 #40003304360

        Bom dia Jhonatan.

         

        No display na segunda linha não apareceu o caractere “-” entre as duas palavras, saberia informar o porquê? (usando o proteus para simular)

         

        Grato,

        Marcos

          14/11/2019 até 00:00 #40003304361
          Citação de Estudante CTA em 01/10/2019, 14:51

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

          Fala Marcos.

          Pelo que entendi na sua dúvida você se refere ao hífen – (traço). Em nossas simulações no Proteus ele aparece. Poste se código aqui como texto para que possamos analisar.

          Segue uma imagem mostrando a simulação do código da questão:

          \"M5

            15/11/2019 até 00:00 #40003304362

            sim, isso mesmo o hífen não aparece, abaixo as rotinas:

             

            #include “ConfPIC.h”     /* Configurações iniciais do PIC */
            #include “defines.h”       /* Defines */
            #include “prototipos.h” /* Declarações dos protótipos */

            #include “inicia_LCD.c”        /* Declaração de função auxiliar */
            #include “LCD_comando.c” /* Declaração de função auxiliar */
            #include “LCD_texto.c”        /* Declaração de função auxiliar */

            /**************************************************
            MAIN
            **************************************************/
            void main(){
            set_tris_b(0x00);
            Inicia_lcd();
            while(TRUE){
            LCD_comando(Linha_1);
            LCD_texto(“CTA & MZT”);
            LCD_comando(Linha_2);
            LCD_texto(“M5 – PIC”);
            delay_ms(2000);
            LCD_comando(LimpaLCD);
            delay_ms(5);
            }
            }

            ================================================================

            /*
            * Arquivo: LCD_comando.c
            * Descrição: Função LCD_comando
            * Autor: Marcos Brazio
            * Criado em 12 de Novembro de 2019, 11:20
            */

            /**************************************************
            FUNÇÃO LCD_COMANDO
            **************************************************/
            void LCD_comando( int comando){
            output_low(RS); //modo de comando.
            output_b( comando); //coloca o comando recebido no portB.
            output_high(enable); //pulso no enable.
            delay_us(500); //delay necessário para estabilizar no simulador Proteus
            output_low(enable);
            }

            /*
            * Arquivo: LCD_texto.c
            * Descrição: Função LCD texto
            * Autor: Marcos Brazio
            * Criado em 12 de Novembro de 2019, 11:20
            */

            /**************************************************
            FUNÇÃO LCD_TEXTO
            **************************************************/
            void LCD_texto( char letra) {
            output_high(RS); //modo de dados.
            output_b( letra); //coloca o caractere recebido no portB.
            output_high(enable); //pulso no enable.
            delay_us(500); //delay necessário para estabilizar no simulador Proteus
            output_low(enable);
            }

            /*
            * Arquivo: funcoesAuxiliares.h
            * Descrição: Este arquivo inicializa o LCD
            * Autor: Marcos Brazio
            * Criado em 12 de Novembro de 2019, 11:20
            */

            /**************************************************
            FUNÇÃO INICIA LCD
            **************************************************/
            void inicia_lcd(){
            output_low(rs); //coloca lcd no modo de comando.
            output_b(0x38); //Configura modo 8 bits, 2 linhas e 5×7 pixels.
            output_high(enable); //pulso no enable
            output_low(enable);
            delay_ms(20); //timing do display
            output_b(0x0c); //Configura o cursor.
            output_high(enable); //pulso em enable
            output_low(enable);
            output_b(0x06); //incremento a direita do cursor.
            output_high(enable); //pulso em enable
            output_low(enable);
            output_b(limpaLCD); //Limpa display.
            output_high(enable); //pulso em enable
            output_low(enable);
            delay_ms(5);
            }

            grato,

            Marcos

              18/11/2019 até 00:00 #40003304363
              Citação de Marcos Tadeu de Brazio em 15/11/2019, 15:15

              sim, isso mesmo o hífen não aparece, abaixo as rotinas:

               

              #include “ConfPIC.h”     /* Configurações iniciais do PIC */
              #include “defines.h”       /* Defines */
              #include “prototipos.h” /* Declarações dos protótipos */

              #include “inicia_LCD.c”        /* Declaração de função auxiliar */
              #include “LCD_comando.c” /* Declaração de função auxiliar */
              #include “LCD_texto.c”        /* Declaração de função auxiliar */

              /**************************************************
              MAIN
              **************************************************/
              void main(){
              set_tris_b(0x00);
              Inicia_lcd();
              while(TRUE){
              LCD_comando(Linha_1);
              LCD_texto(“CTA & MZT”);
              LCD_comando(Linha_2);
              LCD_texto(“M5 – PIC”);
              delay_ms(2000);
              LCD_comando(LimpaLCD);
              delay_ms(5);
              }
              }

              ================================================================

              /*
              * Arquivo: LCD_comando.c
              * Descrição: Função LCD_comando
              * Autor: Marcos Brazio
              * Criado em 12 de Novembro de 2019, 11:20
              */

              /**************************************************
              FUNÇÃO LCD_COMANDO
              **************************************************/
              void LCD_comando( int comando){
              output_low(RS); //modo de comando.
              output_b( comando); //coloca o comando recebido no portB.
              output_high(enable); //pulso no enable.
              delay_us(500); //delay necessário para estabilizar no simulador Proteus
              output_low(enable);
              }

              /*
              * Arquivo: LCD_texto.c
              * Descrição: Função LCD texto
              * Autor: Marcos Brazio
              * Criado em 12 de Novembro de 2019, 11:20
              */

              /**************************************************
              FUNÇÃO LCD_TEXTO
              **************************************************/
              void LCD_texto( char letra) {
              output_high(RS); //modo de dados.
              output_b( letra); //coloca o caractere recebido no portB.
              output_high(enable); //pulso no enable.
              delay_us(500); //delay necessário para estabilizar no simulador Proteus
              output_low(enable);
              }

              /*
              * Arquivo: funcoesAuxiliares.h
              * Descrição: Este arquivo inicializa o LCD
              * Autor: Marcos Brazio
              * Criado em 12 de Novembro de 2019, 11:20
              */

              /**************************************************
              FUNÇÃO INICIA LCD
              **************************************************/
              void inicia_lcd(){
              output_low(rs); //coloca lcd no modo de comando.
              output_b(0x38); //Configura modo 8 bits, 2 linhas e 5×7 pixels.
              output_high(enable); //pulso no enable
              output_low(enable);
              delay_ms(20); //timing do display
              output_b(0x0c); //Configura o cursor.
              output_high(enable); //pulso em enable
              output_low(enable);
              output_b(0x06); //incremento a direita do cursor.
              output_high(enable); //pulso em enable
              output_low(enable);
              output_b(limpaLCD); //Limpa display.
              output_high(enable); //pulso em enable
              output_low(enable);
              delay_ms(5);
              }

              grato,

              Marcos

              Olá Marcos.

              Como já aprendeu em aula o hífen faz parte da tabela ASCII, sendo assim deveria aparecer normalmente o que pode estar ocorrendo é algum problema com o simulador, vejamos que seu código está em conformidade e creio que está usando o arquivo .cof. Para estes exercícios é possível solucionar até sem simular o intuito é desenvolver a leitura de códigos.
              Caso queira que analise mais profundamente encaminhe os arquivos para mim por e-mail para [email protected]

              Bons estudos.

                27/01/2020 até 00:00 #40003304364

                O código não e compilado devida as aspas dupla estarem diferente  no texto creio que seja erro gráfico ou é assim mesmo? .

                
                void main()
                {
                	set_tris_b(0x00);
                	Inicia_lcd();
                		while(TRUE)
                		{
                			LCD_comando(Linha_1);
                			LCD_texto(“CTA & MZT");
                			LCD_comando(Linha_2);
                			LCD_texto(“M5 - PIC");
                			delay_ms(2000);
                			LCD_comando(LimpaLCD);
                			delay_ms(5);
                  14/02/2020 até 00:00 #40003304365
                  Citação de Ronaldo Correia de Melo em 27/01/2020, 23:07

                  O código não e compilado devida as aspas dupla estarem diferente  no texto creio que seja erro gráfico ou é assim mesmo? .

                  void main()
                  {
                  	set_tris_b(0x00);
                  	Inicia_lcd();
                  		while(TRUE)
                  		{
                  			LCD_comando(Linha_1);
                  			LCD_texto(“CTA & MZT");
                  			LCD_comando(Linha_2);
                  			LCD_texto(“M5 - PIC");
                  			delay_ms(2000);
                  			LCD_comando(LimpaLCD);
                  			delay_ms(5);

                  Fala Ronaldo!

                  Quando nas atividades se referir a cópias determinado trecho de código e adicionar ao seu projeto é importante que digite ele, e não copie e cole pois o compilador pode gerar erros como por exemplo alterar ou excluir dígitos, símbolos e carácter e isso é algo do compilador tem casos que ele aceita e outros que não. Então é sempre bom digitar do zero até mesmo para praticar e ajudar na memorização dos comandos.

                  Grande abraço.

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

                    Bloco M5-25 / Questão 30

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