Ir ao conteúdo
  • Cadastre-se

Thiago Lima Lopes

Membro Júnior
  • Posts

    3
  • Cadastrado em

  • Última visita

Reputação

0
  1. você viu a RN1 no circuito do proteus, mas na protoboard eu não tinha colocado... monta no proteus e ve se funciona sem os bc"s espertão... Entendeu o código pelo menos?
  2. Então paulo, funcionou aq era só o port P0 q tava sem resistores de pullup. Coloquei uma ponte resistiva e ficou uma beleza, depois arrumei uns erros q tinha no programa nesse trecho principalmente : escreve: setb rst mov r5,#20 ;indice volta: clr a ;limpa o acc movc a,@a+dptr ;mov p/ acc o conteúdo apontado por ;dptr+acc setb e ;seta enable mov p0,a ;move para p0 o conteudo de acc lcall delay clr e ;reseta enable (escreve) lcall delay inc dptr ;incrementa dptr djnz r5, volta ;decrementa r5 e salta p/ volta ret o "setb e ;seta enable" saiu dai e foi pro lugar do "lcall delay" q eu deletei.
  3. olá pessoal eu estou desenvolvendo um projeto de tcc, elaboreio código e o circuito, testei td no proteus e funcionou, porém quando fui testar na protoboard o display liga mas não aparece digito algum. o código a baixo é um trecho do código original, esse é o q eu estou usando para teste: ;inicialição do display lcd org 0000h mov p2, #00h mov p0, #00h ;controle do display rst equ p2.0 e equ p2.2 ;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ; inicio do programa ;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ clr rst ;reseta reset mov p0, #0ch ;ativa display s/ cursor acall envdado mov p0, #3ch ;estabaelece o numeri da linhas(2) lcall envdado ;mensagem de iniciando ;============================================================================ lcall linha2 ;vai para proxima linha mov dptr, #iniciando ;carreba o dptr com bom_dia lcall escreve ;escreve mensagem da tabela lcall tempo ;aguarda 2s lcall tempo ;escreve na segunda tala ;============================================================================= lcall limpa mov dptr, #etec lcall escreve lcall linha2 mov dptr, #etec2 lcall escreve lcall linha4 mov dptr, #santos lcall escreve lcall tempo lcall tempo lcall tempo ;mensagem1 ;escreve terceira tela ;============================================================================== lcall limpa mov dptr, #tcc ;carreba o dptr com tcc lcall escreve lcall linha2 ;vai para proxima linha mov dptr, #sem ;carreba o dptr com 2sem lcall escreve lcall linha4 ;vai para proxima linha mov dptr,#santos ;carrega dptr com a tabela santos lcall escreve lcall tempo lcall tempo lcall tempo ;========================================================================== ;================ sub rotinas ================= ;enviar dados ;============================================================================ envdado: clr rst ;limpa reset (p/ enviar instruções) setb e ;seta enable clr e ;reseta enable lcall delay ;chama rotina de delay ret ;pula linha ;============================================================================= linha2: mov p0, #0c0h ;envia informação p/ portas de dados lcall envdado ;habilita leitura dos dados p/ display ret linha4: mov p0, #0d4h ;envia informação p/ portas de dados lcall envdado ;habilita leitura dos dados p/ display ret ;linpando display ;============================================================================== limpa: clr rst ;reseta o reset mov p0, #01h ;limpa display retorna cursor ao inicio lcall envdado mov p0, #0ch ;ativa display s/ cursor lcall envdado mov p0, #3ch ;estabaelece o numeri de linhas(2) lcall envdado ret ;frases ;============================================================================== iniciando: db ' iniciando ' tcc: db ' tcc de eletronica ' sem: db ' 2 sem. de 2017 ' santos: db ' santos-2017 ' etec: db ' etec ' etec2: db 'aristoteles ferreira' ;escreve caracteres no display ;============================================================================== escreve: setb rst mov r5,#20 ;indice volta: clr a ;limpa o acc movc a,@a+dptr ;mov p/ acc o conteúdo apontado por ;dptr+acc setb e ;seta enable mov p0,a ;move para p0 o conteudo de acc lcall delay clr e ;reseta enable (escreve) lcall delay inc dptr ;incrementa dptr djnz r5, volta ;decrementa r5 e salta p/ volta ret ;rotina de delay ;============================================================================== delay: mov r0, #100 djnz r0,$ ret ;rotina de tempo ;============================================================================== tempo: mov r0, #8 volta2: mov r1, #250 volta1: mov r2, #250 djnz r2, $ djnz r1, volta1 djnz r0, volta2 ret end

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...