Página 1 de 1

Gravador para AT89C55

MensagemEnviado: 18 Mar 2014 00:34
por Bugabuga
Boa Noite pessoal !
Esta é minha primeira mensagem no fórum, mas não mudando o assunto vamos a minha duvida.


Estou em um projeto de faculdade para projetar um equipamento de controle de acesso via senha, programado em Assembly. Para simular o código uso o "MCU 8051 IDE".

O problema é que agora pretendo passar o programa para um MCU real, não apenas simular. Estou com o seguinte MCU, AT89C55, também disponho do MAX232 para fazer conversão Serial, e um conversor Serial/USB para ligar ao PC.

O meu 'X' da questão é... Qual programa eu uso para enviar o programa para o MCU ?
Vi pela internet o programa "ISP – Flash Programming", ele suporta o MCU AT89C55 ??

Achei nesse site para download o "ISP – Flash Programming" :
http://chaokhun.kmitl.ac.th/~kswichit/IspPgm30a/ISP-Pgm30a.html

Porém faz uso 74HCT541 e nao do MAX232


Desde já, agradeço a ajuda te todos.

Re: Gravador para AT89C55

MensagemEnviado: 18 Mar 2014 05:37
por andre_luis
Então,


O problema desse gravador que você conseguiu, é que se baseia em interface via porta 'Paralela', que pra grande maioria dos PCs atuais ( pra não dizer todos ) é um recurso que não está mais disponível. Pra piorar, os programas escritos para essas portas nativas eram baseados em acesso direto, o que a partir do XP foi bloqueado, e mesmo os cabos conversores USB/LPTx, não funcionariam.

Imagem

Ou seja, procura por algo que faça no mínimo acesso via serial.




+++

Re: Gravador para AT89C55

MensagemEnviado: 18 Mar 2014 08:25
por brasilma
Toda vez que alguém tem esta dúvida costumo indicar a página do Rafael, usei este programador por bastante tempo e nunca tive problemas.

http://rafaelbf.tripod.com/grava.htm

Re: Gravador para AT89C55

MensagemEnviado: 18 Mar 2014 13:30
por Bugabuga
Valeu as dicas Pessoal.

Continuei a procurar e não achei nenhum programa que tenha suporte AT89C55. Comprei ela por causa da memoria Flash de 20Kb e 256byte de RAM...
Depois pergunto aos meus professores se conhecem algum programa especifico para ele.

Agora a momento vou comprar o MCU at89s8253, que te suporte para o programa que o "brasilma" passou, e parece ter uma configuração boa. Além de tudo, esse programa funciona no SO do Seven, e da para utilizar o MAX 232 com um conversor USB.


Bem, vou montar essa placa mesmo, caso eu consiga novas informações sobre o meu outro MCU eu informo aqui no forum.



Obrigado pela ajuda pessoal :)

Re: Gravador para AT89C55

MensagemEnviado: 18 Mar 2014 16:55
por Jairo15
O gravador que uso é esse:

http://chaokhun.kmitl.ac.th/~kswichit/easy2/easy2.htm

O gravador funciona via serial, mas o problema é que um dos componentes é um 89C51 com um firmware ... mas se tiver alguém para gravar ele para você fica fácil.

Esse gravador que você passou via ISP só funciona para a família 89S para a família 89C não funciona, ok.

Com esse gravador que passei não consegui gravar o AT89C55WD pois usa uma tensão diferente, ok

Re: Gravador para AT89C55

MensagemEnviado: 18 Mar 2014 19:59
por andre_luis
Não seria melhor comprar algo pronto ?
Tem esse no ML por apenas 20 reais:

http://produto.mercadolivre.com.br/MLB-545381812-gravador-de-microcontroladores-atmel-avr-8051-usbisp-usbasp-_JM
Imagem


+++

Re: Gravador para AT89C55

MensagemEnviado: 19 Mar 2014 11:24
por lopesjm
Caro Bugabuga,

O AT89C55 ou AT89C55WD não pode ser programado via ISP. Precisa usar um programador paralelo pois precisa de tensão de 12V, segundo a página 20 do datasheet.

Sugiro primeiro olhar o datasheet do componente.

Se realmente precisa de muita flash e quer gravar usando porta serial, tem o AT89C51RD2 com 64k Flash. Ele usa o FLIP da própria Atmel para ser gravado.

Agora no caso do seu projeto de controle de acesso, creio que o AT89S8253 de 12kBytes de flash e 2kBytes de e2prom pode dar conta do recado. Ele pode ser gravado por ISP, porta paralela usando o programa do Rafael (Grava.exe do site dele)
http://rafaelbf.tripod.com/grava.htm conforme sugestão do colega.

Ou até mesmo o AEC_ISP prog.

As senhas podem ser gravadas na e2prom do mcu.

Outra sugestão é fazer em C, por ser mais produtivo.

[]s
Jorge

Re: Gravador para AT89C55

MensagemEnviado: 19 Mar 2014 13:42
por Bugabuga
andre_teprom escreveu:Não seria melhor comprar algo pronto ?
Tem esse no ML por apenas 20 reais:

http://produto.mercadolivre.com.br/MLB-545381812-gravador-de-microcontroladores-atmel-avr-8051-usbisp-usbasp-_JM



Como estou aprendendo, prefiro fazer o meu, mais por causa do estudo e praticar a montagem de circuitos.


lopesjm escreveu:Caro Bugabuga,

O AT89C55 ou AT89C55WD não pode ser programado via ISP. Precisa usar um programador paralelo pois precisa de tensão de 12V, segundo a página 20 do datasheet.



Realmente esta descrito no Datasheet que ele grava em 12v, pensei que havia algum CI que trabalha-se nessa tensão.

Nunca havia trabalho com 8051, somente com o Atmega no Arduino em C#. Mas por questões de aprendizado foi permitido apenas o uso do 8051 em assembly.
Valeu a as dicas e informação, ficou bem claro agora. Em um futuro projeto vou ficar atendo a certos dados.

Re: Gravador para AT89C55

MensagemEnviado: 21 Mar 2014 19:56
por Bugabuga
Montei a placa pessoal, e funciona corretamente o programa. Ele reconhece o MCU e grava certinho. So nao consegui fazer o LCD funcionar na pratica, no simulador funciona certinho. To fuçando tentando achar o erro...

Aqui esta uma foto da placa montada, agradecendo novamente as dicas. A chave do RST coloquei um jumper, axei mais facil assim,.. e as conexões com MAX232 tb estão sendo feitas usando jumper`s.

DSC05496.JPG



Agora é treinar na minha primeira e mais "nova"placa de 8051 :)

Re: Gravador para AT89C55

MensagemEnviado: 22 Mar 2014 20:19
por renan-papaco
olha amigo....sugiro que vc use um gravador USB para 8051... por uns 250 reais vc compra um otimo gravador universal de EPROM G540. vc tbm pode instalar uma placa PCI express com uma porta paralela e instalar ela...baixar o DR-DOS e usar o software AEC_ISP para gravar o seu MCU... se puder adiquirir um PC mais velho, de 2005 pra baixo, pode usar a porta paralela dele e transferir os programas via pen drive... instale o windows XP, desbloqueie o hardware dele pelo userport. e seja feliz.

Re: Gravador para AT89C55

MensagemEnviado: 23 Mar 2014 22:31
por lopesjm
Olá Bugabuga,

O lcd possui uma inicialização que precisa ser feita anter de poder escrever mensagens nele. Essa inicialização precisa de um tempo entre cada código. Se usar barramento de dados de 8 bits, use este código: 0x38 , delta, 0x38, delta, 0x38, delta, 0x0C, delta, 0x06, delta, 0x01. Se for de 4 bits o barramento, use este: 0x28 , delta, 0x28, delta, 0x28, delta, 0x0C, delta, 0x06, delta, 0x01. O delta é um atraso de 30 a 40 mili-segundos entre cada código ao mandar para o lcd. Cada um desses códigos é descrito no datasheet, mas a grosso modo, quando manda 0x38 três vezes é para o display trabalhar com barramento de 8 bits e 0x28 para barramento de 4 bits. Os outros são para desligar o cursor (acho que é 0x06). 0x01 é para limpar a tela.

[]s
Jorge

Re: Gravador para AT89C55

MensagemEnviado: 24 Mar 2014 01:58
por Bugabuga
lopesjm escreveu:Olá Bugabuga,

O lcd possui uma inicialização que precisa ser feita anter de poder escrever mensagens nele. Essa inicialização precisa de um tempo entre cada código. Se usar barramento de dados de 8 bits, use este código: 0x38 , delta, 0x38, delta, 0x38, delta, 0x0C, delta, 0x06, delta, 0x01. Se for de 4 bits o barramento, use este: 0x28 , delta, 0x28, delta, 0x28, delta, 0x0C, delta, 0x06, delta, 0x01. O delta é um atraso de 30 a 40 mili-segundos entre cada código ao mandar para o lcd. Cada um desses códigos é descrito no datasheet, mas a grosso modo, quando manda 0x38 três vezes é para o display trabalhar com barramento de 8 bits e 0x28 para barramento de 4 bits. Os outros são para desligar o cursor (acho que é 0x06). 0x01 é para limpar a tela.

[]s
Jorge


A sim, obrigado por avisar.
Mas já fiz a inicialização do LCD, como falei já simulei o programa no "MCU 8051 IDE" e tudo ocorre normal. Acredito q nessa montagem toda do gravador danifiquei o MCU. Um simples programa de piscar um LED o mesmo nao responde corretamente. Ate fiz medições no cristal com um osciloscópio, mas ele esta normal. Encomendei um gravador desses de R$20,00 via USB, vou testar pra ver se esta tudo certo, talvez seja problema no gravador, Ja que o da faculdade da meio trabalho para usar.
Eu fazia a espera do LCD lendo a Busy Flag do pino 7, até pensei que o problema era esse, mudei para um delay de 20ms, mas continuou... Depois foi fazer esses testes com leds para ver se estava normal as saidas, e vi que nao respondem corretamente ao programa.

Se ficar interessado em ajudar a solucionar esse problema, para se descobrir se o MCU esta queimado ou apenas algun outro defeito, crio um novo tópico e posto leituras mais precisas dos testes para tentar encontrar o problema. A momento to tentando resolver sozinho suhsushus

Re: Gravador para AT89C55

MensagemEnviado: 24 Mar 2014 07:58
por brasilma
Verificar se os pinos Enable, R/W e RS estão conectados e recebendo os sinais corretos de acionamento (ver o data-sheet do LCD);

Verificar se o pino 3 (contraste) do LCD - o ajuste é importante para a exibição dos dados.