– home / Fóruns / Módulo 5 / Bloco M5-25 / Bloco M5-25 / Questão 30
- Este tópico contém 7 respostas, 5 vozes e foi atualizado pela última vez 4 anos, 2 meses atrás por Jhonatan Serafim.
-
AutorPosts
-
2019-11-13 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
2019-11-14 até 00:00 #40003304361Citação de Estudante CTA em 01/10/2019, 14:51Seja 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:
2019-11-15 até 00:00 #40003304362sim, 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
2019-11-18 até 00:00 #40003304363Citação de Marcos Tadeu de Brazio em 15/11/2019, 15:15sim, 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.
2020-01-27 até 00:00 #40003304364O 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);
2020-02-14 até 00:00 #40003304365Citação de Ronaldo Correia de Melo em 27/01/2020, 23:07O 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.
-
AutorPosts
- Você precisa estar Conectado(a) para Responder a este Tópico.