Ir ao conteúdo
  • Cadastre-se

Microcontroladores duvida 16f628a?


Visitante

Posts recomendados

To começando em microcontroladores, e to com duvida sobre como visualizar no terminal virtual no Isis

ao mesmo tempo que suas saídas estão ligadas ao lcd ex. quero ver ao mesmo tempo no terminal virtual

como devo fazer no codigo? Se alguem puder me ajudar eu agradeço!! 

post-761011-0-31677300-1427770629_thumb.

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

conecte o tx do terminal no rx do mc e vice versa. Obviamente seu sw deve enviar os comandos para ambos: display e terminal

No código depende de muitas coisas principalmente do compilador. Para o terminal geralmente já tem pronto o printf() e para ler o scanf(). Consulte o help dele para maiores detalhes por gentileza. Mas antes você tem que acertar o baudrate e etc. Novamente, as "regras" do compilador entram em cena.

Se for ccs, por favor me esquece.

Mas va com calma, aqui há boa alma.

Tá bom não gostou,

mas pelo menos rimou

rs

abç

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

agradeço a mp. Mas é melhor trocar ideias publicamente pois alguém mais pode se beneficiar da sua burrice kk ... da sua ... brincadeira hein amiguinho!. E outra, talvez alguém mais se sinta motivado a te ajudar.

 

A do putc() é uma opção também.  Fez setup do baudrate, pinos e etc? está na mesma configuração do seu terminal? o default dele acho que 9600,n,8,1

Pra escrever na serial (terminal) é fácil.

Tipo

for(; if (!RC7) putc('A'); //cada vez que RC7 vai a terra, escreve A. Pullup em RC7

pode tentar putchar().

Só pra constar, aquilo não é ccs, não gosto dele, não uso libs prontas que pra mim são para os fracos kk

Publique o esquema completo e o fonte que achas que devia funcionar.  Ou seja, corpo e alma

abç

Link para o comentário
Compartilhar em outros sites

@Isadora Ferraz desculpe t mandar por mp mas preciso dessa informação!!

Esse é o hex q quero modificar para posteriormente colocar direto no pc, Isadora por favor me ajuda a transformar isso!! Esse é feito com lcd e eu quero modificar para usar por serial para colocar no pic da interface que vai direto por ps2 para o pc...me ajuda ae Isadora!!! :(

 

#include <16F877a.h>

#fuses  XT//,NOWDT,NOPROTECT,NOPUT,NOBROWNOUT,NOLVP,NOCPD
#use delay(clock=1M)
#define LCD_DB4      PIN_D4 
#define LCD_DB5      PIN_D5
#define LCD_DB6      PIN_D6
#define LCD_DB7      PIN_D7
#define LCD_RS       PIN_D2                                      
#define LCD_E        PIN_D3
#define use_portd_lcd TRUE // Using Port B for LCD Display
#include <lcd1.c>
#include <KBD1.c>
 
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C1,bits=8)
 
 
 
void main(){
char k;
lcd_init();
kbd_init();
port_b_pullups(TRUE);
for(; ;){
    k=kbd_getc();
    
    if(k!=0)
    lcd_putc(k);
      //printf(K); <retirei causando erro!
      //delay_ms(100);<retirei causando erro!
     }
 
}

post-761011-0-11721200-1427907395_thumb.

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Claro amigo. Esta é nossa missão. Eu acho que o seu compilador faz printf direcionar a impressão para a serial. Mas você tem que formatar a palavra que vai no argumento.

Para teste, tente isso:

for (; printf("teste ");

baseando nisso...

http://www.dca.fee.unicamp.br/cursos/EA876/apostila/HTML/node131.html

faça algo simples assim pra um teste mais completo...

for (; {k=kbd_getc();printf("%c",k);}

Apenas vai repetir o que você digita

 

Lembrando que ps2 e serial são interfaces distintas. Talvez aí sua confusão de burrico ops! iniciante kk e no momento não posso te ajudar com ps2 ok?

Os gurus experts em ccs devem estar num estado zem de meditação. Sugiro aguardar...

Ah e no seu desenho não estou vendo as conexões tx-rx hein...

abç

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

fala sério...Ve se ajuda a gente a te ajudar. Alimente o post com mais informações.

-o que não deu certo

-o que deveria dar

-seu fonte completo

-mensagens de erro do compilador

-etc

 

Anexe o projeto do proteus. Vai que alguém queira avaliar

voce já fez um pisca led com sucesso? Mostre algo que você já fez e que ENTENDEU e que DEU certo.

 

Espero que você não foque apenas em entregar este trabalho pra ficar livre dele. Tente pensar mais grande. Seu desafio é simples. Apertar um botão e e escrever na serial. é isso? Não sei como nenhum ccszeiro (com todo respeito a sua opção) se mainifestou até agora. Tudo bem se eu decidir se continuo te conduzindo ou não?

Ah... agradeço as mensagens carinhosas mas a mim não são muito motivadoras kk

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Esse é o hex, Isadora ""Retirar do codigo a função  lcd"" ecolocar a função para usar somente por " PS2"  "Substituir o teclado convencional por um teclado matricial 4x4"que vai gerar 16 caracteres ou seja 1,2,3,4,5,6,7,8,9,0 e letras m,n,a,v,u,e 

 

#include <16F877a.h>

#fuses  XT//,NOWDT,NOPROTECT,NOPUT,NOBROWNOUT,NOLVP,NOCPD
#use delay(clock=1M)
#define LCD_DB4      PIN_D4 
#define LCD_DB5      PIN_D5
#define LCD_DB6      PIN_D6
#define LCD_DB7      PIN_D7
#define LCD_RS       PIN_D2                                      
#define LCD_E        PIN_D3
#define use_portd_lcd TRUE // Using Port B for LCD Display
#include <lcd1.c>
#include <KBD1.c>
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C1,bits=8)
void main(){
char k;
lcd_init();
kbd_init();
port_b_pullups(TRUE);
for(; ;){
    k=kbd_getc();
      if(k!=0)
  lcd_putc(k);
     
    }
 
}

Esse é o hex, Isadora ""Retirar do codigo a função  lcd"" ecolocar a função para usar somente por " PS2"  "Substituir o teclado convencional por um teclado matricial 4x4"que vai gerar 16 caracteres ou seja 1,2,3,4,5,6,7,8,9,0 e letras m,n,a,v,u,e 

 

#include <16F877a.h>

#fuses  XT//,NOWDT,NOPROTECT,NOPUT,NOBROWNOUT,NOLVP,NOCPD
#use delay(clock=1M)
#define LCD_DB4      PIN_D4 
#define LCD_DB5      PIN_D5
#define LCD_DB6      PIN_D6
#define LCD_DB7      PIN_D7
#define LCD_RS       PIN_D2                                      
#define LCD_E        PIN_D3
#define use_portd_lcd TRUE // Using Port B for LCD Display
#include <lcd1.c>
#include <KBD1.c>
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C1,bits=8)
void main(){
char k;
lcd_init();
kbd_init();
port_b_pullups(TRUE);
for(; ;){
    k=kbd_getc();
      if(k!=0)
  lcd_putc(k);
     
    }
 
}
 

Ta ae Isadora o que você pediu!! o hex e o projeto!!!


Esse é o projeto completo!

post-761011-0-86550800-1428016559_thumb.

Teclado para ps2.rar

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

fala sério...Ve se ajuda a gente a te ajudar. Alimente o post com mais informações.

-o que não deu certo

-o que deveria dar

-seu fonte completo

-mensagens de erro do compilador

-etc

 

Anexe o projeto do proteus. Vai que alguém queira avaliar

voce já fez um pisca led com sucesso? Mostre algo que você já fez e que ENTENDEU e que DEU certo.

Adorei esta (negrito).

Não simulando, mas na prática. Vai entender 10x mais que num simulador.

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

@marcosrj28

Compra um uC de baixo custo, pode ser PIC ou AVR  e monte numa protoboard, algo real. Como a amiga Isadora falou, faça piscar um LED (Hello World) . Daí vai te abrir um universo de possibilidades.

Enquanto estiver simulando, não chegará a lugar nenhum.

Aposto que qualquer microcontrolador vai sair mais barato que a energia que está gastando pra simular.

Esta é a minha opinião!

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

É ... nada como 'sentir na pele' ver um led piscar com mc pela 1ª vez. você quase tem um treco!

Mas o simulador quebra um galho violento na hora de fazer algo mais "avançado". Tenho váaários projetos em que o simulador respondeu a altura e poupou um tempo do cão (se comparado com os anos 80's na época da eprom cujo processo de desenvolvimento os velhinhos até choram de saudade ou de raiva kk)

 

Bom voltando ao amiguinho, como derradeiro suspiro sugiro que tente o mikroc (compilador) . É 1/2 gratuito, tem bibliotecas mastigadas, te dá acesso ao âmago do mc quase te obrigando a conhecê-lo, o help é bem bacana e etc.

No seu caso esquece o terminal por serial. Não sei se tem pra ps2. Se tiver.. é ele. Como te disse, nunca mexi com o ps2 mas pretendo a qualquer momento pra fazer um piano. Mas isso pode ser amanhã ou daqui há alguns anos

 

Sugiro ir por partes: 1° leia o teclado matricial e mostre no display p.ex. Agora não tô conseguindo pensar mas acho que com uma função de 3 ou 4 linhas de C você consegue retornar a tecla pressionada. Com este dado em mãos (preferencialmente numa variável) basta converter pra asc-ii e enviar pro ps2 com a ajuda da lib do mikroc

 

O 'negóço' é meter a mão na massa e não esperar cair do céu. Tente mostrar algum progresso o mínimo que seja. você pode não acreditar mas isso pode acordar e quem sabe motivar alguns gurus

Link para o comentário
Compartilhar em outros sites

@marcosrj28

Compra um uC de baixo custo, pode ser PIC ou AVR  e monte numa protoboard, algo real. Como a amiga Isadora falou, faça piscar um LED (Hello World) . Daí vai te abrir um universo de possibilidades.

Enquanto estiver simulando, não chegará a lugar nenhum.

Aposto que qualquer microcontrolador vai sair mais barato que a energia que está gastando pra simular.

Esta é a minha opinião!

Link para o comentário
Compartilhar em outros sites

É ... nada como 'sentir na pele' ver um led piscar com mc pela 1ª vez. você quase tem um treco!

Mas o simulador quebra um galho violento na hora de fazer algo mais "avançado". Tenho váaários projetos em que o simulador respondeu a altura e poupou um tempo do cão (se comparado com os anos 80's na época da eprom cujo processo de desenvolvimento os velhinhos até choram de saudade ou de raiva kk)

 

Bom voltando ao amiguinho, como derradeiro suspiro sugiro que tente o mikroc (compilador) . É 1/2 gratuito, tem bibliotecas mastigadas, te dá acesso ao âmago do mc quase te obrigando a conhecê-lo, o help é bem bacana e etc.

No seu caso esquece o terminal por serial. Não sei se tem pra ps2. Se tiver.. é ele. Como te disse, nunca mexi com o ps2 mas pretendo a qualquer momento pra fazer um piano. Mas isso pode ser amanhã ou daqui há alguns anos

 

Sugiro ir por partes: 1° leia o teclado matricial e mostre no display p.ex. Agora não tô conseguindo pensar mas acho que com uma função de 3 ou 4 linhas de C você consegue retornar a tecla pressionada. Com este dado em mãos (preferencialmente numa variável) basta converter pra asc-ii e enviar pro ps2 com a ajuda da lib do mikroc

 

O 'negóço' é meter a mão na massa e não esperar cair do céu. Tente mostrar algum progresso o mínimo que seja. você pode não acreditar mas isso pode acordar e quem sabe motivar alguns gurus

 

@marcosrj28

Compra um uC de baixo custo, pode ser PIC ou AVR  e monte numa protoboard, algo real. Como a amiga Isadora falou, faça piscar um LED (Hello World) . Daí vai te abrir um universo de possibilidades.

Enquanto estiver simulando, não chegará a lugar nenhum.

Aposto que qualquer microcontrolador vai sair mais barato que a energia que está gastando pra simular.

Esta é a minha opinião!

 

O amigo você acha que eu ja não simulei isso no real!!! po cara se liga na pergunta!!! MUDAR O HEX....MUDAR O CODIGO!!!!led piscando....eu vou t amostrar led piscando!!!!!rs eu tenho que rir você!!! você acha que ta se comunicando com um garotinho que fica testando seus robozinhos em protoboard...se liga cara!!!! ja trabalho com informatica faz 20 anos!!!! todas as informações que a minha Querida Isadora me passa eu testo no real...sem simulação....direto no pic!

Pra informação a todos....isso é para trabalho no real!! esse tem que se comunicar via Ps2 para ser gravado no pic e trabalhar direto na maquina! essas modificações tem que ser feitas para serem gravadas com sucesso no pic e despois serem transformadas para ps2....como isadora falou eu confundi ps2 com rs232.

 

Esse é o hex, Isadora ""Retirar do codigo a função  lcd"" ecolocar a função para usar somente por " PS2"  "Substituir o teclado convencional por um teclado matricial 4x4"que vai gerar 16 caracteres ou seja 1,2,3,4,5,6,7,8,9,0 e letras m,n,a,v,u,e 

 

#include <16F877a.h>

#fuses  XT//,NOWDT,NOPROTECT,NOPUT,NOBROWNOUT,NOLVP,NOCPD
#use delay(clock=1M)
#define LCD_DB4      PIN_D4 
#define LCD_DB5      PIN_D5
#define LCD_DB6      PIN_D6
#define LCD_DB7      PIN_D7
#define LCD_RS       PIN_D2                                      
#define LCD_E        PIN_D3
#define use_portd_lcd TRUE // Using Port B for LCD Display
#include <lcd1.c>
#include <KBD1.c>
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C1,bits=8)
void main(){
char k;
lcd_init();
kbd_init();
port_b_pullups(TRUE);
for(; ;){
    k=kbd_getc();
      if(k!=0)
  lcd_putc(k);
     
    }
 
}

Esse é o hex, Isadora ""Retirar do codigo a função  lcd"" ecolocar a função para usar somente por " PS2"  "Substituir o teclado convencional por um teclado matricial 4x4"que vai gerar 16 caracteres ou seja 1,2,3,4,5,6,7,8,9,0 e letras m,n,a,v,u,e 

 

#include <16F877a.h>

#fuses  XT//,NOWDT,NOPROTECT,NOPUT,NOBROWNOUT,NOLVP,NOCPD
#use delay(clock=1M)
#define LCD_DB4      PIN_D4 
#define LCD_DB5      PIN_D5
#define LCD_DB6      PIN_D6
#define LCD_DB7      PIN_D7
#define LCD_RS       PIN_D2                                      
#define LCD_E        PIN_D3
#define use_portd_lcd TRUE // Using Port B for LCD Display
#include <lcd1.c>
#include <KBD1.c>
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C1,bits=8)
void main(){
char k;
lcd_init();
kbd_init();
port_b_pullups(TRUE);
for(; ;){
    k=kbd_getc();
      if(k!=0)
  lcd_putc(k);
     
    }
 
}
 

Ta ae Isadora o que você pediu!! o hex e o projeto!!!

Esse é o projeto completo!

 

Tem que ser retirado esse LCD e colocar de uma forma que possa ser lido no terminal virtual as teclas acionadas!!

Link para o comentário
Compartilhar em outros sites

É ... nada como 'sentir na pele' ver um led piscar com mc pela 1ª vez. você quase tem um treco!

Mas o simulador quebra um galho violento na hora de fazer algo mais "avançado". Tenho váaários projetos em que o simulador respondeu a altura e poupou um tempo do cão (se comparado com os anos 80's na época da eprom cujo processo de desenvolvimento os velhinhos até choram de saudade ou de raiva kk)

 

Bom voltando ao amiguinho, como derradeiro suspiro sugiro que tente o mikroc (compilador) . É 1/2 gratuito, tem bibliotecas mastigadas, te dá acesso ao âmago do mc quase te obrigando a conhecê-lo, o help é bem bacana e etc.

No seu caso esquece o terminal por serial. Não sei se tem pra ps2. Se tiver.. é ele. Como te disse, nunca mexi com o ps2 mas pretendo a qualquer momento pra fazer um piano. Mas isso pode ser amanhã ou daqui há alguns anos

 

Sugiro ir por partes: 1° leia o teclado matricial e mostre no display p.ex. Agora não tô conseguindo pensar mas acho que com uma função de 3 ou 4 linhas de C você consegue retornar a tecla pressionada. Com este dado em mãos (preferencialmente numa variável) basta converter pra asc-ii e enviar pro ps2 com a ajuda da lib do mikroc

 

O 'negóço' é meter a mão na massa e não esperar cair do céu. Tente mostrar algum progresso o mínimo que seja. você pode não acreditar mas isso pode acordar e quem sabe motivar alguns gurus

Isadora eu to lendo sobre UART no mikroC!!! micKroC parece ser viavel!! beijo meu amor!! rsrsrs

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

@Isadora Ferraz

Mas Isa (posso chamar assim?) nós temos uma noção do concreto, agora simular o que ainda não conheço, me parece arriscado. Na telinha, tudo bem... e na prática?

 

O amigo você acha que eu ja não simulei isso no real!!! po cara se liga na pergunta!!! MUDAR O HEX....MUDAR O CODIGO!!!!led piscando....eu vou t amostrar led piscando!!!!!rs eu tenho que rir você!!!

 

E eu que estou pedindo ajuda...

Me desculpe, eu não sei tanto quanto você, mas me mantenho calado na minha sabedoria!

Link para o comentário
Compartilhar em outros sites

E eu que estou pedindo ajuda...

Me desculpe, eu não sei tanto quanto você, mas me mantenho calado na minha sabedoria!

O Zen para ironia e pega o projeto coloca no proteus e resolve isso pra mim, basta apenas você colocar duas linhas no hex e resolve isso, você tem que sair desse transe rsrsrs e ajudar os amigos....ja recebi uma noticia boa hoje,... :D  minha mulher falou que não vai dormir de calça hoje!!!! :D  :lol:  :lol:  :lol:  :lol:  :lol:

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

chicão (e assim?) tem risco não meu véy. Vá por mim! simular=99.9999% de chance de sucesso com circuitos com mc e lógicos. Maaaassss com alguns macetes que não cabem neste post. P.ex. na simulação não perder tempo (literalmente seu e do computador) com com circuitos que você sabe que vai funcionar com certeza p.ex. um transistor acionando um relé, mesclar muitos analógicos com digitais e por aí vai.

 

Marquinho uart até onde eu sabia não é ps2.  hex não é código fonte. é só pro mc . (mas isso não é importante no momento)

 

Dica: tudo bem se você desviar um pouquinho do assunto pra desabafar com raivinhas, apesar de que vai de encontro com forun técnico e principalmente boas maneiras - já disse.. tudo bem! - mas procure mesclar algo relacionado à sua dúvida e principalmente palavras mágicas e mostrar algum progresso. Nosso amigo chicão (tudo bem assim?) só quer ajudar, da maneira dele mas quer pow! Vá por mim. Pede desculpa já menino!!

abç

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...