Programador para 74hc374 sob lpt. Programadores de microcontroladores AVR

10.09.2021

Para iniciantes, a pergunta é “o que vamos usar para atualizar nosso controlador?” levanta-se quase imediatamente. Este problema pode ser resolvido de duas maneiras: compramos um programador serial ou construímos o nosso próprio. Naturalmente, não é aconselhável adquirir nenhum dos programadores seriais na fase inicial de conhecimento dos microcontroladores. O mais solução simples haverá um programador chamado de “cinco fios”. Esta opção é bastante adequada para uso único, mas existe um grande perigo de que mais cedo ou mais tarde a porta LPT do computador queime. Como opção segura e de baixo custo para um programador de porta paralela, utilizamos um circuito mais avançado.

Apresentando um programador de porta paralela simples e seguro. O circuito programador é bastante comum em diversas variações e é baseado no uso de um chip buffer 74HC 244N. O buffer mantém a porta da impressora sã e salva. Além disso, o circuito inclui um resistor, cuja função é proteger contra a eletricidade estática.

O programador é compatível com Atmel STK 200/300 e é suportado por muitos compiladores populares. Todo o pequeno conjunto de peças para sua montagem é bastante comum e não causará dificuldades na compra. A placa de circuito impresso é fabricada em versão unilateral com diversos jumpers.

Para conectar o programador a um computador, é conveniente usar um cabo de extensão de porta LPT.

Esquema em formato sPlan 6.0 e layout da placa em formato Layout de sprint Você pode baixar 4.0 no LUT abaixo.

Diagrama esquemático de um programador mais complexo baseado em Porta LPT mostrado na figura. O microcircuito 74HC244 (K1564AP5), 74LS244 (K555AP5) ou 74ALS244 (K1533AP5) é usado como driver de barramento, embora qualquer outro driver de barramento não inversor com três estados possa ser usado (neste caso, uma mudança correspondente no circuito pode ser obrigatório). O LED VD1 indica o modo de escrita do microcontrolador, o LED VD2 - leitura, o LED VD3 - a presença de energia no circuito. O circuito obtém a tensão necessária para alimentação do conector ISP, ou seja, do dispositivo programável. Este circuito é um circuito programador STK200/300 redesenhado (LEDs adicionados para facilidade de operação), portanto é compatível com todos os programas programadores de PC que funcionam com o circuito STK200/300. Para trabalhar com este programador, podemos recomendar o programa IC-Prog (onde, ao escolher o tipo de programador, instale o “STK200 Programmer”) ou o programa AVReal.

O programador pode ser executado em placa de circuito impresso e coloque-o no alojamento do conector LPT, conforme mostram as figuras:




Para trabalhar com o programador é conveniente utilizar uma extensão de porta LPT, fácil de fazer você mesmo (por exemplo, de um cabo Centronix para impressora), o principal é não poupar os condutores de aterramento (18- 25 pernas de conector) ou compre. O cabo entre o programador e o chip programável não deve exceder 20-30 cm.

Um dos programadores AVR mais simples é o programador de porta LPT. Isto se deve ao fato dos níveis de sinal da porta LPT serem compatíveis com os níveis de sinal necessários para a programação do ATS. Portanto, os sinais da porta LPT podem ser fornecidos diretamente ao microcontrolador (os resistores são necessários apenas para proteger a porta contra curtos-circuitos acidentais). Esse programador pode ser montado a partir de materiais improvisados ​​​​em literalmente 5 minutos!


Como você vê o diagrama Programador LPT para AVR é ​​extremamente simples:

Para fazer um programador LPT precisaremos de:


Você pode usar qualquer resistor que encontrar na faixa de 100 a 150 Ohms. Você pode montar o programador sem nenhum resistor, mas será ainda mais fácil queimar a porta. Você pode usar um cabo IDE como cabo. Ao conectar um loop, para uma operação mais estável do programador, cada fio de “sinal” deve alternar com um fio de “terra”. Isto reduzirá o nível de interferência induzida nas linhas e, assim, aumentará o comprimento do fio de programação. O comprimento do cabo deve estar dentro de 50 cm. Você também precisará de um conector para conectar ao dispositivo programável.
Para circuito Programação Atmel recomenda conectores padrão:


Se você planeja levar microcontroladores a sério, torne os conectores padrão. Para programação única do dispositivo, recomendo usar o programador (tais conectores conectam os botões e LEDs do gabinete do computador à placa-mãe) e os pinos macho PLS na placa. Isso permite simplificar ao máximo o layout da placa do dispositivo, uma vez que os pinos do programador são instalados próximos às pernas do microcontrolador. As pernas MOSI, MISO e SCK dos microcontroladores AVR estão sempre localizadas juntas, portanto, um conector triplo pode ser usado para eles. Fazemos conexões separadas para “terra” - GND e “reset” - Reset.


Montando um programador LPT em 5 etapas:


Jumpers entre os pinos 2-12 e 3-11 do conector são necessários para que nosso programador fique visível para programas como o programador STK200/300 (STK200/300 é um tipo de padrão e portanto nosso programador ficará visível para muitos programas).

Para que nosso programador LPT funcione necessário, ao qual conectaremos o programador do microcontrolador.

Recomendações gerais:
— A porta LPT é bastante delicada - é muito fácil de “disparar”, então tome cuidado ao trabalhar com a porta.
— Eu recomendaria fazer uma conexão separada para o aterramento em todos os programadores. Isto é necessário para que o terra possa ser conectado primeiro e equalize os potenciais de terra do dispositivo programável e do computador. (Para quem não sabe, se o seu computador estiver conectado a uma tomada normal sem contato de aterramento, então devido às peculiaridades do filtro da fonte de alimentação do computador, sempre há um potencial de 110V no gabinete do computador. Se o programador estiver conectado “com sucesso”, isso é suficiente para queimar o microcontrolador ou a porta LPT de um computador.

Conclusão:
-Se você decidiu montar seu primeiro programador e seu computador possui porta LPT, então o programador “5 fios” é a melhor opção! É extremamente simples e não será difícil de repetir. Além disso, o programador é compatível com os programadores clássicos STK200/300, o que significa que será suportado por muitos programas de programação AVR.
-Se você planeja programar com bastante frequência, para proteger a porta LPT, recomendo montar um programador LPT com elementos de buffer (você pode procurar na izielectronics uma boa versão do programador LPT) ou montar um igualmente simples (o COM porta é muito mais durável e mais difícil de queimar).

(Visitado 66.795 vezes, 2 visitas hoje)

Muitas vezes, muitas pessoas encontram um design interessante na Internet, mas uma coisa o impede: ele é feito usando um controlador. E é tão difícil...

Na verdade, tudo é muito mais simples. Se for possível adquirir um controlador, metade do trabalho já está feito. Só falta “passar” a placa, gravar e soldar com peças... E agora se trata do controlador. Como “revivê-lo”? Como "piscar"? Começa a dolorosa busca pelo circuito e programa do programador. O circuito foi encontrado, mas azar - na parede traseira do computador já existem 8 Conectores USB, uma porta para uma impressora e não uma única porta COM para a qual um esquema foi encontrado.

Existe outra opção para o desenvolvimento de eventos. Existe uma porta COM no computador. Mas, por algum motivo, o programador se recusa a “costurar” o controlador - um erro aparece constantemente. Mas o fato é que muitas vezes nos modernos placas-mãe(e especialmente em laptops) As portas COM têm corrente muito baixa. Por conta disso, o processo de programação termina antes mesmo de começar. Em todos os casos acima, este diagrama simples irá ajudá-lo.

Este é um programador para a porta LPT. Apesar de toda a aparente complexidade, o esquema é bastante simples e começa a funcionar imediatamente, sem necessitar de nenhuma configuração. As peças estão disponíveis e custam literalmente alguns centavos. Mas as possibilidades... Com este dispositivo você pode facilmente fazer o flash do controlador não apenas no soquete, mas também no circuito (isso se aplica a dispositivos cuja placa está conectada para um gabinete de controlador SMD, mas você não quer comprar um soquete por US $ 20 por ele).

Depois de montado fica assim:

Este programador com pequenas diferenças percorre a Internet há cerca de 20 anos. É conhecido como Clasic Tait Programmer, ProPIC2, ​​​​meProg. Ainda é produzido por algumas empresas e vendido com sucesso.

Últimas versões programas pode ser baixado aqui:

  • http://www.winpic800.com/
  • http://melabs.com/support/progsoft.htm
  • http://members.aon.at/electronics/pic/picpgm/

Aqui estão as configurações do WinPIC800:

E aqui está um adaptador para atualizar controladores de saída 8-14-18-20.


Este diagrama também é frequentemente visualizado:

O primeiro passo para dominar um microcontrolador para todos é provavelmente montar um programador. Você também pode comprar um programador, mas por um dinheiro muito irracional, na minha opinião. Vejamos um programador de AVRs em funcionamento, que uso há 4 anos. Certa vez meu pai me mostrou, gostei muito do programa e resolvi fazer um programador para ele. Depois de vasculhar o site do programa, encontrei diagrama simples programador (não considero portas COM porque são fáceis de queimar devido à estática):


Repetir isso não levará mais de uma hora, mas garantirá a integridade do seu LPT porto e trabalhando juntos Com Pônei Prog 2000. O microcircuito é um buffer. Resistor R1– 100k, capacitor C1– 0,1 µF. Diodo D1- qualquer silício. LPT conector macho. Agora vamos lidar com ISP conector que será usado para programação. Conclusões Miso, MOSI, SCK, REINICIAR– gerentes, produção LIDERADO– um LED está conectado a ele, que sinaliza leitura/escrita de firmware para o microcontrolador, VDD E GND+5V e terra respectivamente.

Para conectar o microcontrolador é conveniente utilizar um cabo de 10 fios e o correspondente CDI, mas isso é uma questão de gosto e cada um decide por si como gosta, o principal é não demorar muito para evitar confusão. Eu entendi assim:



Para quem, por um motivo ou outro, não tem porta LPT e tem preguiça de correr até um vizinho para atualizar o firmware, posso aconselhar um smart Programador USB(site do projeto prottoss.com). Basta repetir o circuito e piscar corretamente o controlador de controle (para isso, digam o que se diga, você precisará LPT ou COM porta). Assim USB O programador se montou:


Vamos passar para a parte do software. No início foi dito que programaríamos usando Pônei Prog 2000.

Primeira inicialização e calibração:
Ao utilizar o programador pela primeira vez, não se esqueça de configurá-lo corretamente: Setup->Configuração da interface, na janela que aparece, selecione LPT selecione a porta à qual o programador está conectado API do ISP AVR na lista suspensa e não toque nas caixas de seleção Polaridade das linhas de controle, deixando-as vazias. A seguir, calibramos tudo Setup->Calibration. É isso, agora podemos programar AVRs usando nossa protoboard.

Escolhendo um ambiente para escrever programas:
Agora só falta escolher em que ambiente escrever programas e em que linguagem. Recomendo escrever em C se o tamanho e a velocidade de execução do programa não forem críticos.

Seu desenvolvimento é muito mais fácil que o assembler, mas o conhecimento do assembler é indispensável para escrever textos curtos e programas rápidos, entendendo o funcionamento do microcontrolador. Eu escrevo meus programas em conjunto programas gratuitos e estou muito satisfeito com o resultado, mas não tem camaradas de gosto e cor, a escolha é sua.

Quase sucesso =) => =(

Parece que soldei tudo como no diagrama)
Ou seja, não parece, mas é)
Mas em vez de D1 instalei um diodo IR, não sei se teria algum efeito, não tinha mais nada em mãos)

O primeiro problema foi quando tentei atualizar com a configuração da API AVR ISP (LPT2 não pôde ser selecionado de forma diferente)
recebi o erro 16, como nenhuma porta

Depois de alterar as configurações no AVR ISP I/O LPT1, recebi um erro -24 tipo, não estou familiarizado com o seu dispositivo)
E tenta piscar. . . nenhum resultado ainda (((

me diga qual é o problema?
Você já ouviu falar que precisa alterar algumas configurações no BIOS?
então o que são eles?7?

Parabéns pela sua compra!

Comprei algo em miniatura, em USB, sem case e sem sinos e assobios, as instruções dizem que é um análogo do stk500, pode ser identificado como avr910, mas para mim foi identificado como avr doper.
Ainda não o conectei em lugar nenhum - quando tento ler os fusíveis, o programa escreve que o programador não está respondendo.
Suspeito que é assim que deveria ser.
Agora a questão real. Na própria placa existem conectores para 6 e 10 pinos, mas o cabo tem apenas 10. Para atualizar o firmware do microcontrolador, preciso apenas conectar as pernas aos pinos mosi, vcc, rst, miso e terra? o resto dos pinos do microcontrolador podem ficar soltos?

Para programar MK

Para programar o MK, você precisa conectar MOSI, MISO, SCK, RESET ao programador e fornecer energia. O resto pode ser deixado intacto. Consulte o documento do programador para ver quais pinos precisam ser gerados.

Tyx

ele se recusou a funcionar para mim como avr910, como stk500, como stk500v1, mas leu fusíveis como stk2 e atualizou a unidade flash em alguns segundos. Vou tentar montar meu dispositivo e iniciá-lo))
O mikruha está costurado!

primeira vez, primeiro programador, tenho medo de queimar alguma coisa)

Bom dia a todos!
Por favor me diga se os pinos MISO, MOSI, SCK, RESET são pinos de controle, eles precisam ser conectados diretamente ao MK ou como aqui

Quero dizer, os pinos MISO, MOSI, SCK, RESET precisam ser conectados à alimentação e ao aterramento através de resistores?
Acontece que eu tenho um mega16, onde o pino RESET está invertido, um reset para zero vai funcionar em teoria, devo jogar R3 no chão?


Obrigado se alguém responder!
p.s. Recebi um diploma do MK, mas não sou bom nisso :) Quero descobrir, mas tem muitas sutilezas...