Antes de tudo, quero dizer que este não é um guia para resolver todos os problemas do arduino no mundo, mas apenas aqueles que eu tive que enfrentar. No entanto, diante desses problemas, passei muito tempo procurando informações sobre como resolvê-los, então acho que o artigo será útil. Além disso, não considerarei problemas relacionados à compilação. Erros de compilação são erros de programação, já são casos especiais e também são considerados em particular em vários fóruns.
Método 1. Firmware padrão
Apesar da simplicidade do arduino em termos de programação, mesmo nesta fase, podem surgir problemas. Eles surgem, via de regra, ao usar clones chineses. Mas seremos sistemáticos. Para programar o Arduino da maneira que os desenvolvedores pretendiam, você precisa baixar e instalar o ambiente de desenvolvimento de fora do local Arduino IDE e instale conforme indicado. Existem centenas, senão milhares, de artigos sobre isso, mesmo no segmento da Internet em idioma russo; não vou me debruçar sobre isso. Ao usar o arduino original, os problemas não devem surgir. Mas conosco, como regra geral, todo mundo usa clones chineses muito mais baratos. Eles, em geral, não são diferentes do original, pelo menos em termos de desempenho. Pessoalmente, tenho um layout chinês Arduino Pro Mini com os contatos A4 e A5, além do restante, gosto muito mais do que o layout da placa original. Mas, por outro lado, os chineses, apesar do sistema comunista, são de fato os capitalistas mais genuínos e economizam tudo o que podem para exportar. Os chips da interface USB do arduino também se enquadram nessa economia. É aqui que os problemas começam. O fato é que, nos clones chineses, o chip CH340 original não é usado. E assim, assumiremos que você concluiu todos os procedimentos padrão para instalar software e drivers, mas o arduino não é costurado. Primeira coisa que vamos INÍCIO> Painel de Controle> Gerenciador de Dispositivos. Aqui chamamos atenção para dois pontos: Controladores USB e portas COM LPT.
Se o item Portas (COM e LPT) não, esta é a primeira pista para resolver o problema. Se tudo estiver bem, em quais portas uma nova porta deve aparecer ao conectar um arduino. Se isso não acontecer, veja o que está acontecendo nos "controladores USB". Ao conectar um arduino, um novo dispositivo com a inscrição USB 2.0 Serial deve aparecer. Este é realmente um bom sinal. Se o computador vê que está conectado a ele, mas não consegue entender, o arduinka está vivo e o problema é lenha. Se isso não acontecer, lemos os métodos 2 e 3. Para resolver esse problema, você deve instalar o novo driver manualmente. Baixe o driver, coloque a pasta com ele em um local conveniente. Vamos voltar para Gerenciador de dispositivosalém disso USB 2.0 Serial> RMB> Propriedades> Driver> Atualização> Procurar drivers neste computador e selecione a pasta com o driver. Depois disso, o sistema pode começar a jurar que o driver não é de fontes confiáveis. Clique em instale de qualquer maneira.
Download do driver
Você baixou o driver, instalado, mas o arduino ainda não foi costurado. O problema pode ser da fábrica e a culpa do usuário, não importa. O que estamos fazendo? Passamos para o segundo método.
Método 2. Firmware via conversor TTL
Todas as placas do Arduino que começam na série Nanotem uma interface USB. Séries Mini e Pro mini ele não possui um e é piscado exclusivamente Conversor TTL. Mas o fato é que qualquer outro arduinka é costurado por esse programador. Se você não o tiver, recomendo fortemente que o compre, especialmente porque custa de 50 a 60 rublos (no momento da redação), este é um programador universal que pode ser útil mais de uma vez. Por exemplo, com a ajuda dele, atualizei meu equipamento de controle de rádio FlySky i6 e o walkie-talkie Kenwood T2000, sem comprar programadores de marca especiais, que custam muito mais. Mas me afastei do tópico. Em geral, todas as placas do arduino têm conclusões Rx e TX (esta é a interface de comunicação, "transmissão / recepção"), com a qual você pode piscar o arduino ignorando o chip da interface USB. Esses conversores, no entanto, também possuem versões diferentes. Quando comprei o meu, o mais comum e mais barato era um conversor, sem saída redefinir. A peculiaridade da programação do arduino por um programador é que, exatamente no final da compilação e no início do carregamento, você precisa pressionar o botão de reset na placa. Aqui, de fato, precisamos de alguma habilidade. Se você perdeu a primeira vez, continue a pressionar o botão com uma frequência de cerca de 2 segundos. Quarta-feira dá 10 pedidos, se você pode entrar em um deles - voila, pedimos ao arduino. Os programadores mais modernos têm um quinto pino, que se conecta ao mesmo reset, e o puxa automaticamente. Mas o mais importante, eu descrevi a nuance. Outro momento. Normalmente, o RX precisa estar conectado ao TX e vice-versa. Mas, em casos raros (bem, os chineses), você precisa conectar o RX ao RX e o TX ao TX. Apenas sinal errado. E assim, se isso não ajudar, vá para o método 3.
Mas basta anexar lenha para CP2102
Funcionalidades
O programador requer a instalação de drivers, não tenho problemas com isso, ninguém notou, basta colocar o driver no CP2102 ou aquele que o fabricante oferece.
Método 3. Programação direta de chips
Desde a versão Nano As placas Arduino possuem um conector de programação em circuito ISP . Este é um conector de seis pinos, ao qual, em regra, ninguém presta atenção. Com ele, você pode atualizar o microcontrolador diretamente, diretamente, ignorando tudo o que só pode ser ignorado, tanto a parte física quanto o software. Foi assim que tive que exibir minha última placa do arduino. Na verdade, usando esse método, você pode criar seus próprios clones do arduino, exibindo o carregador de inicialização do Arduino no atmega. Eu escrevi sobre isso no meu artigo sobre aviônicos de um foguete esportivo. Mas, novamente, não sobre isso. Para firmware, você precisa deste tipo de programador:
É comum USBasp, o programador de microcontrolador AVR mais comum. Custa todo o mesmo centavo.
Funcionalidades
O programador possui um conector padrão de 10 pinos; no entanto, você pode comprar um adaptador de 6 pinos no kit. Obviamente, você pode fazer isso sozinho ou simplesmente conectá-lo a fios, mas é muito mais fácil e conveniente.
O firmware não é realizado de maneira padrão. Para começar, vá para Ferramentas> Programador> USBasp
Seguinte Esboço / Download via programador.
Os problemas
Como eu disse, aqui descrevo os problemas que encontrei. Este programador também requer drivers. Encontrá-los não é difícil. No entanto, ao entrar em contato com os chineses para economizar dinheiro, você precisa estar preparado para curvas inesperadas. Pessoalmente, ao trabalhar com esse programador, encontrei o seguinte problema, que descrevi uma vez em uma célula de rádio:
avrdude.exe: erro: não foi possível encontrar o dispositivo USB "USBasp" com vid = 0x16c0 pid = 0x5dc
Ele lutou por um longo tempo para resolver o desastre e o encontrou apenas em fóruns estrangeiros. E assim:
1) Seguindo o link Faça o download do arquivo LibUSB-64bit.zip
2) Conectamos o programador à porta USB.
3) Descompacte o arquivo e siga o caminho em que eles descompactaram \ LibUSB-64bit \ libusb-win32-bin-1.2.1.0 \ bin \ x86
4) Execute inf-wizard.exe
5) clique Seguinte
6) Escolha USBasp e clique Seguinte
7) Os seguintes campos são preenchidos desta maneira:
Clique em Next
8) Salve o arquivo gerado ao longo do caminho:
LibUSB-64bit \ libusb-win32-bin-1.2.1.0 \ bin \ amd64 - se você tiver um sistema de 64 bits ou
LibUSB-64bit \ libusb-win32-bin-1.2.1.0 \ bin \ x86 - se 32 bits
9) Clique em instalar agora
10) O sistema notificará que o driver não é de fontes confiáveis. Clique em "Instalar mesmo assim"
11) A instalação do driver começará. Durante a instalação, ouvimos o som de desconectar e conectar um dispositivo USB. No final da instalação, clique em OK.
Mais algumas dicas
Os módulos NRF24L01 muito comuns têm um batente grande. Para a operação normal e estável desses módulos, é necessário travar o capacitor pelo menos 10 μF 5 V. Para poder, menos não é desejável, mais é inútil. Mas se não aos 10, é claro, aposte em 22 ou 47. Também é aconselhável pendurar outra cerâmica a 10-100 nF em paralelo. Além disso, o mais próximo possível do próprio módulo, idealmente - das conclusões. Caso contrário, o módulo parece ser visto, mas normalmente não é transmitido.
Se os resultados Rx e TX algum dispositivo de execução está suspenso - o arduinka não será costurado. Primeiro pisque, depois conecte o dispositivo necessário a essas saídas.
Só isso, espero que a informação seja útil para alguém.
Boa sorte a todos em seu trabalho!