Programadores – O que se precisa saber antes de comprar um?

Quando se entra no universo dos microcontroladores existem diversas variáveis a serem definidas.
Quem escolhe a linha de microcontroladores PIC terá a sua mão um grande acervo de informações oficiais no próprio site da Microchip e uma série de projetos abertos na internet. Esse foi o principal motivo de minha escolha, quando resolvi voltar a mexer com microcontroladores.
Na seqüência dessa definição aparecem outras duvidas:
• Qual programador atende melhor as minhas necessidades?
• De todas as ofertas de programadores qual está mais alinhada com minhas necessidades?
Bom, a Microchip tem três linhas de programadores. Os industriais, programador de engenharia PICKIT e a linha ICD.
1- Os industriais têm custo elevado e tem sua aplicação direcionada a produção em escala.
Alguns fabricantes especializados oferecem Programadores Universais que considero o Programador Profissional típico.
Esses programadores universais aplicam o principio de driver de pino o que permite que os componentes sejam posicionados no soquete de programação de uma forma mais lógica e menos sujeita a erros. A lógica de controle direciona os sinais e tensões necessárias ao cumprimento do algoritmo de programação de cada dispositivo no pino adequado.
Esses programadores trabalham com uma grande quantidade de componentes programáveis de diversos fabricantes e logicamente são caros. Um fabricante tradicional desses produtos é a Data I/O.
Eu os considero profissionais por diversos motivos, mas o principal é a facilidade de programar qualquer dispositivo de qualquer fabricante, inclusive por porta ICSP (protocolo serial da linha Microchip).
2- No universo de engenharia aparece o PICKIT como programador USB de baixo custo. A versão mais popular é a 2 e recentemente foi lançada a versão 3. Houve muita reclamação inicial dessa terceira versão e na net se encontrava diversos comentários negativos sobre o produto. A versão 2 está consolidada e possui muito boa cobertura de dispositivos programáveis.
Interessante: Esses programadores simples possuem diversas capacidades adicionais alem da programação em si, como depuração de programas, analisador lógico, ferramenta de monitoração de dados seriais UART, etc.
3- In Circuit Debuggator – a linha ICD é uma ferramenta que nasceu com a missão de depuração de programas. Apesar do PICKIT executar essa tarefa, os ICDs a fazem com maestria peculiar. Com o ICD, se acompanha a execução do firmware rodando junto o hardware da aplicação permitindo a verificação dos eventos na tela do MPLAB monitorando ações e conteúdo de registros de forma a se poder aperfeiçoar o código ou / eliminar falhas de lógicas ou funcionais. O acompanhamento dos eventos previstos no firmware é feito em praticamente tempo real dentro da plataforma MPLAB. Depurar programas não é uma tarefa fácil. É necessário um bom conhecimento funcional do microcontrolador aplicado, da lógica do hardware de aplicação e são necessários uma série de procedimentos para se entrar em modo de depuração. Desenvolvedores mais avançados preferem os ICDs aos programadores. Ainda assim os ICDs são programadores.
O ICD2 é o produto mais tradicional nessa área. O ICD3 é novo e ainda tem um custo alto e aplica componentes muito específicos que dificulta a criação de clones de baixo custo. Tenho um, e ele é mais rápido que o ICD2, mas prefiro usar o ICD2 por possuir a tecnologia e também conhecer muito bem a plataforma e suas funcionalidades.
4- Existem plataformas de programação serial de baixo custo usando diversos programas gratuitos na web que podem atender o iniciante ou hobbista. O grande atrativo dessas ferramentas é justamente o preço bem baixo, mas são plataformas que possuem um fator de risco maior que os programadores que seguem as especificações MICROCHIP. Alem disso são baseados em porta serial de PC que está se tornando extinta, principalmente em laptops.
A ferramenta básica para a definição da ferramenta de programação, das possibilidades da ferramenta e das necessidades de acessórios é o MPLAB. Na tela de seleção de componentes se verifica genericamente quais programadores e depuradores são funcionais com cada dispositivo alem da necessidade de acessórios específicos para depuração.
Outro aspecto a se considerar na compra de uma ferramenta de engenharia é a proposta do fabricante associada com o produto. Os dispositivos mais baratos, normalmente possuem limitações funcionais e são totalmente descartáveis. Mesmo o PICKIT original são descartáveis, pela dificuldade geral em se substituir componentes SMD.
Produtos de origem chinesa certamente não possuirão um bom suporte (a menos que você fale mandarim e esteja disposto a fazer ligações internacionais). Projetos simplificados terão menor custo e possuirão limitações na sua funcionalidade.
O ICD2 possui interface USB proprietária para garantir a maior velocidade possível em operações de depuração. Alguns clones aplicam driver USB diferente da Microchip e criam limitações de funcionamento.
Outro aspecto a se considerar é o material que acompanha o produto e a existência de um manual de usuário que apresente o produto adequadamente. Manuais impressos não são ecologicamente corretos e a lista de materiais é exigência de órgão de defesa do consumidor. Produto responsável é melhor para todos!
Outro detalhe importante é que esses programadores são ferramentas ICSP onde a programação e a depuração é executada com poucas linhas de comunicação. O uso de soquete ZIF é uma técnica para facilitar produção e recomendo a todos os iniciantes que aprendam a usar essa sistemática visto que a depuração de programas somente poderá ser executada dessa forma. A conexão ICSP possui diversas variáveis, os ICDs usam RJ12, o PICKIT usa barra de pinos fêmea e os programadores universais usam conector de 10 vias. Essa foi a razão para o fornecimento com o programador um alojamento para que o comprador construísse seu próprio cabo ICSP.
Enfim, não é por que é um clone que precisa ser necessariamente pior que o original. Por exemplo, o PICKIT original possui limitação de alimentação para a função de programação remota. Meu clone possui entrada auxiliar que facilita aplicação e de quebra permite contornar deficiência de alimentação USB.
Recentemente, um colega de fórum me perguntou por que oferecia um pacote promocional com os dois programadores. A resposta é dada pelo próprio MPLAB. Dependendo do dispositivo que se deseja trabalhar, se precisa de uma ou outra ferramenta. Mesmo nos casos onde as duas ferramentas são funcionais, ter uma unidade de reserva para eventualidades ou mesmo quando ocorrem situações estranhas nos procedimentos de programação se tem alternativa para desvendar o mistério. Como muitas vezes se tem a necessidade de trocar o dispositivo em trabalho, existe a possibilidade da ferramenta em mãos não opera com o novo componente. Ex PIC16F84A e PIC16F74 são programados pelo ICD2 e não pelo PICKIT2. Com esse kit se cobre praticamente TODA linha Microchip.
Abri essa discussão para apresentar meus conceitos e ajudar os iniciantes a escolherem suas ferramentas. Claro que sempre é possível contestar conceitos, mas sempre se deve fazer isso com respeito. O valor de qualquer produto é proporcional ao custo ao suporte e a funcionalidade. Quem tiver limitação de gasto certamente fará a escolha pelo custo, para quem pretende uma vida útil maior de sua ferramenta o critério de compra já é diferente.
Alem disso existem diversos projetos abertos na internet. Para quem tem tempo e deseja encarar o desafio de fazer sua própria ferramenta essa é uma possibilidade a comprar um produto funcional, é tudo uma questão de escolha de algo que seja realmente funcional e de contornar as dificuldades que aparecem.
Abraço
Rona123
Quem escolhe a linha de microcontroladores PIC terá a sua mão um grande acervo de informações oficiais no próprio site da Microchip e uma série de projetos abertos na internet. Esse foi o principal motivo de minha escolha, quando resolvi voltar a mexer com microcontroladores.
Na seqüência dessa definição aparecem outras duvidas:
• Qual programador atende melhor as minhas necessidades?
• De todas as ofertas de programadores qual está mais alinhada com minhas necessidades?
Bom, a Microchip tem três linhas de programadores. Os industriais, programador de engenharia PICKIT e a linha ICD.
1- Os industriais têm custo elevado e tem sua aplicação direcionada a produção em escala.
Alguns fabricantes especializados oferecem Programadores Universais que considero o Programador Profissional típico.
Esses programadores universais aplicam o principio de driver de pino o que permite que os componentes sejam posicionados no soquete de programação de uma forma mais lógica e menos sujeita a erros. A lógica de controle direciona os sinais e tensões necessárias ao cumprimento do algoritmo de programação de cada dispositivo no pino adequado.
Esses programadores trabalham com uma grande quantidade de componentes programáveis de diversos fabricantes e logicamente são caros. Um fabricante tradicional desses produtos é a Data I/O.
Eu os considero profissionais por diversos motivos, mas o principal é a facilidade de programar qualquer dispositivo de qualquer fabricante, inclusive por porta ICSP (protocolo serial da linha Microchip).
2- No universo de engenharia aparece o PICKIT como programador USB de baixo custo. A versão mais popular é a 2 e recentemente foi lançada a versão 3. Houve muita reclamação inicial dessa terceira versão e na net se encontrava diversos comentários negativos sobre o produto. A versão 2 está consolidada e possui muito boa cobertura de dispositivos programáveis.
Interessante: Esses programadores simples possuem diversas capacidades adicionais alem da programação em si, como depuração de programas, analisador lógico, ferramenta de monitoração de dados seriais UART, etc.
3- In Circuit Debuggator – a linha ICD é uma ferramenta que nasceu com a missão de depuração de programas. Apesar do PICKIT executar essa tarefa, os ICDs a fazem com maestria peculiar. Com o ICD, se acompanha a execução do firmware rodando junto o hardware da aplicação permitindo a verificação dos eventos na tela do MPLAB monitorando ações e conteúdo de registros de forma a se poder aperfeiçoar o código ou / eliminar falhas de lógicas ou funcionais. O acompanhamento dos eventos previstos no firmware é feito em praticamente tempo real dentro da plataforma MPLAB. Depurar programas não é uma tarefa fácil. É necessário um bom conhecimento funcional do microcontrolador aplicado, da lógica do hardware de aplicação e são necessários uma série de procedimentos para se entrar em modo de depuração. Desenvolvedores mais avançados preferem os ICDs aos programadores. Ainda assim os ICDs são programadores.
O ICD2 é o produto mais tradicional nessa área. O ICD3 é novo e ainda tem um custo alto e aplica componentes muito específicos que dificulta a criação de clones de baixo custo. Tenho um, e ele é mais rápido que o ICD2, mas prefiro usar o ICD2 por possuir a tecnologia e também conhecer muito bem a plataforma e suas funcionalidades.
4- Existem plataformas de programação serial de baixo custo usando diversos programas gratuitos na web que podem atender o iniciante ou hobbista. O grande atrativo dessas ferramentas é justamente o preço bem baixo, mas são plataformas que possuem um fator de risco maior que os programadores que seguem as especificações MICROCHIP. Alem disso são baseados em porta serial de PC que está se tornando extinta, principalmente em laptops.
A ferramenta básica para a definição da ferramenta de programação, das possibilidades da ferramenta e das necessidades de acessórios é o MPLAB. Na tela de seleção de componentes se verifica genericamente quais programadores e depuradores são funcionais com cada dispositivo alem da necessidade de acessórios específicos para depuração.
Outro aspecto a se considerar na compra de uma ferramenta de engenharia é a proposta do fabricante associada com o produto. Os dispositivos mais baratos, normalmente possuem limitações funcionais e são totalmente descartáveis. Mesmo o PICKIT original são descartáveis, pela dificuldade geral em se substituir componentes SMD.
Produtos de origem chinesa certamente não possuirão um bom suporte (a menos que você fale mandarim e esteja disposto a fazer ligações internacionais). Projetos simplificados terão menor custo e possuirão limitações na sua funcionalidade.
O ICD2 possui interface USB proprietária para garantir a maior velocidade possível em operações de depuração. Alguns clones aplicam driver USB diferente da Microchip e criam limitações de funcionamento.
Outro aspecto a se considerar é o material que acompanha o produto e a existência de um manual de usuário que apresente o produto adequadamente. Manuais impressos não são ecologicamente corretos e a lista de materiais é exigência de órgão de defesa do consumidor. Produto responsável é melhor para todos!
Outro detalhe importante é que esses programadores são ferramentas ICSP onde a programação e a depuração é executada com poucas linhas de comunicação. O uso de soquete ZIF é uma técnica para facilitar produção e recomendo a todos os iniciantes que aprendam a usar essa sistemática visto que a depuração de programas somente poderá ser executada dessa forma. A conexão ICSP possui diversas variáveis, os ICDs usam RJ12, o PICKIT usa barra de pinos fêmea e os programadores universais usam conector de 10 vias. Essa foi a razão para o fornecimento com o programador um alojamento para que o comprador construísse seu próprio cabo ICSP.
Enfim, não é por que é um clone que precisa ser necessariamente pior que o original. Por exemplo, o PICKIT original possui limitação de alimentação para a função de programação remota. Meu clone possui entrada auxiliar que facilita aplicação e de quebra permite contornar deficiência de alimentação USB.
Recentemente, um colega de fórum me perguntou por que oferecia um pacote promocional com os dois programadores. A resposta é dada pelo próprio MPLAB. Dependendo do dispositivo que se deseja trabalhar, se precisa de uma ou outra ferramenta. Mesmo nos casos onde as duas ferramentas são funcionais, ter uma unidade de reserva para eventualidades ou mesmo quando ocorrem situações estranhas nos procedimentos de programação se tem alternativa para desvendar o mistério. Como muitas vezes se tem a necessidade de trocar o dispositivo em trabalho, existe a possibilidade da ferramenta em mãos não opera com o novo componente. Ex PIC16F84A e PIC16F74 são programados pelo ICD2 e não pelo PICKIT2. Com esse kit se cobre praticamente TODA linha Microchip.
Abri essa discussão para apresentar meus conceitos e ajudar os iniciantes a escolherem suas ferramentas. Claro que sempre é possível contestar conceitos, mas sempre se deve fazer isso com respeito. O valor de qualquer produto é proporcional ao custo ao suporte e a funcionalidade. Quem tiver limitação de gasto certamente fará a escolha pelo custo, para quem pretende uma vida útil maior de sua ferramenta o critério de compra já é diferente.
Alem disso existem diversos projetos abertos na internet. Para quem tem tempo e deseja encarar o desafio de fazer sua própria ferramenta essa é uma possibilidade a comprar um produto funcional, é tudo uma questão de escolha de algo que seja realmente funcional e de contornar as dificuldades que aparecem.
Abraço
Rona123