Haga su propio AVR ISP minimalista

Dar un programador es una excelente manera de que la gente se inicie en los microcontroladores, por lo que si desea un programador AVR simple y económico, esto puede ser lo que está buscando. Combina el firmware V-USB, el software USBtiny, algunas resistencias y algunos diodos zener. Un truco interesante con este programador es que si intenta programar otro ATtiny de 8 pines, puede usar una cinta para aislar los pines de datos USB y luego transferir el objetivo ATtiny al programador.

Desafortunadamente, para actualizar el ATtiny para su desarrollador, necesita un desarrollador que funcione, por lo que es un poco complicado. Asegúrese de tener cuidado al configurar los bits fuzz, ya que utilizará el pin de reinicio, lo que dificultará la reprogramación sin hardware de programación adicional. Los AVR son generalmente una excelente manera de comenzar con los microcontroladores, así que si está interesado, pruebe los tutoriales. Encontrará algunos consejos para comenzar, además de información sobre el uso de un Arduino o un cable DAPA para actualizar el firmware a este chip.

  • bogdan dice:

    Es hermoso, es simple...
    Pero por un poco más puedes construir uno similar con tiny2313, que no renuncia al pin de reinicio.
    (Y creo que el pequeño 2313 también es más barato que el '85).

  • TS dice:

    cris Por favor, aprende la diferencia entre tú y yo.
    Gracias

  • Robot dice:

    Parece que HaD tiene alguna inversión en la plataforma Amtel AVR. ¿Es esto simplemente debido a la plataforma Arduino basada en AVR? ¿O me estoy perdiendo algo sobre el AVR que se destaca entre el montón de microcontroladores programables en C?

    Gracias
    Robot

    • caleb kraft dice:

      @Roboto,
      En general, tendemos a escribir sobre lo que saben los autores. El AVR es popular aquí seguro, pero no tiene nada que ver con el Arduino. Si tuviéramos una persona de PIC en el personal, también vería tutoriales sobre eso.

  • policía gramatical dice:

    es "tú eres"

  • Robot dice:

    @Caleb Ah, gracias. Me preguntaba si estaba perdiendo el tiempo con otros productos. . . paranoia de ingeniería, supongo! Gracias por todos los grandes mensajes.

  • jbremnant dice:

    Bonito, gran trabajo simpleavr!
    Creo que también tiene el trabajo en su blog.

    http://www.simpleavr.com/avr/vusbtiny

  • robar t dice:

    Hay varias opciones para programar AVR sin el problema del huevo y la gallina de necesitar un programador para programar AVR en su programador. Depende del tipo de hardware que tengas a tu alrededor. Mi opción favorita es Bus Pirate, es una útil herramienta tipo navaja suiza que programa AVR con AVRdude.

    Otras opciones:
    - Arduino, (Ver croquis ArduinoISP).
    - FTDI Bitbang si tiene algún adaptador serie FTDI-USB de nivel TTL.
    - Puerto serie o paralelo bit bang, cables de programa DASA o DAPA.

  • cris dice:

    @Roboto

    No puedo hablar por HaD, pero la preferencia habitual por los AVR de 8 bits es la cadena de herramientas de código abierto. La gente de Windows generalmente no se verá afectada por problemas de IP.

    Mis 2 centavos.

  • daid dice:

    Usé DAPA para iniciar mi ATMega8 en un programador USB. A partir de ahí comencé varios otros desarrolladores de USB para otras personas.

    Pero ese no es el truco aquí. La parte brillante aquí es el piggybacking. Pensé en hacer esto, pero luego, a la inversa, ejecute su programador en el chip que desea programar, luego puede programar cualquier chip en un circuito, sin cabezales ISP especiales.

  • robar t dice:

    @Robot, solo mi elección, pero hay varias cosas que creo que contribuyen a la reciente popularidad del AVR. No valen para todo el mundo, pero para mí fueron factores:

    - Herramientas multiplataforma de código abierto, consulte la caja de herramientas avr-gcc. Nota: esto está cambiando ya que Microchip está trabajando en herramientas multiplataforma.

    - Los AVR generalmente se pueden programar con voltajes en el circuito. Por lo general, el alto voltaje solo es necesario cuando los bytes de configuración (fusible) están mal configurados, lo que impide una mayor programación del chip.

    - La progresión natural de Arduino a AVR "desnudos".

    - Selección de piezas más simple/más limitada. Los proyectos AVR de 8 bits tienden a utilizar una pequeña cantidad de AVR, el ATmega328/168, el ATTiny2313/4313 y el ATTiny85/45. Por lo general, tengo uno de cada uno de los tres pines por ahí.

    - El mismo desarrollador, avrdude, trabaja con la mayoría de los chips y la mayoría de los desarrolladores disponibles.

    Solo mis opiniones, no intento iniciar una guerra.

  • colinb dice:

    Microchip no tenía compiladores amigables de código abierto. AVR tiene mucho soporte de código abierto, tiene Arduino, lo que atrae a muchos usuarios nuevos (y esto es algo bueno incluso si no entran en los detalles de MCU con el lenguaje/entorno Arduino al principio). AVR me parece más limpio para programar en C y C ++, aunque todavía requiere más cosas no estándar que ARM Cortex-M3 (por ejemplo, acceder a datos constantes en la memoria flash).

    Últimamente, creo que AVR es excelente para programas simples de muy baja potencia que requieren 2 KB o menos de SRAM, funcionan con baterías, etc., pero ARM Cortex-M3 / Cortex-M0 domina completamente el área de más de 4 KB SRAM o que requieren . mayor rendimiento Compare NXP LPC1700 ARM Cortex-M3 con AVR comparable:

    Atmel ATmega640-16AU (AVR ATmega):
    Lightning de 64 KiB / SRAM de 8 KiB / 16 MHz / CPU de 8 bits / $ 11.80 (@ 1u, Mouser)

    NXP LPC1752FBD80,551 (ARM Cortex-M3):
    Lightning de 64 KiB / SRAM de 16 KiB / 100 MHz / CPU de 32 bits / $ 7.10 (@ 1u, Mouser)

  • Robot dice:

    @Rob, Colin, et al.

    Gracias, recordaré tus puntos. Puedo ver la ventaja de tener una amplia base de usuarios de código abierto.

    -robot

  • simpleavr dice:

    @Roboto
    Creo que es realmente la disponibilidad de herramientas de código abierto y el hecho de que los AVR sean más accesibles lo que los hace populares. últimamente estoy haciendo más con msp430s de TI, con la línea de valor serie G disponible (LaunchPad, etc.) y un conjunto de herramientas de Linux más maduro, estoy seguro de que veremos más proyectos en la plataforma ti.

  • caca furtiva dice:

    No soy un experto, así que corrígeme aquí. En respuesta a la perspectiva de Rob T de Microchip:
    1. No se puede agregar nada aquí
    2. Los PIC también se pueden programar en un circuito y, a diferencia de los AVR, realmente no se pueden "bloquear" (no necesitan alto voltaje para solucionar confusiones de configuración)
    3. No aplica
    4. Algunos pueden encontrar esto como algo bueno, otros, como yo, prefieren las cantidades masivas de opciones que ofrece Microchip. No hay nada que le impida usar solo un puñado de chips que le gusten, pero también debe elegir obtener chips muy específicos para su aplicación.
    5. No estoy seguro de qué es la función avrdude, pero según los desarrolladores, el PICKit 2 (o 3) es económico y maneja la mayoría de los PIC.

    En general, sin embargo, elige la plataforma con la que te sientas cómodo. Todos hacen básicamente lo mismo, algunos son mejores en algunas cosas, otros son mejores en otras cosas. No se deje atrapar por la "guerra familiar" y mantenga la mente abierta.

  • caca furtiva dice:

    Ignore los muchos errores ortográficos / de palabras en mi publicación anterior ... Entiendo esto porque soy perezoso y no leo mi propio texto antes de publicar.

    HaD, danos la opción de editar, por favor!

  • Gdogg dice:

    +1 para gramática de noveno grado.

  • r_d dice:

    @sneakypoo:
    "Los PIC también se pueden programar en un circuito y, a diferencia de los AVR, en realidad no se pueden bloquear".
    Aunque HaD podría convencerlo de que los bits de fusibles AVR fallan si los mira de forma divertida, es un problema bastante inusual si puede leer una hoja de datos.
    "No estoy seguro de qué es la función avrdude, pero según los desarrolladores, el PICKit 2 (o 3) es económico y maneja la mayoría de los PIC".
    AVRDude es en realidad un software avanzado para muchos desarrolladores. "Front-end" puede no ser la mejor elección de palabras, ya que puede hacer algunas cosas de bajo nivel como el bit-tapping de puerto paralelo, pero creo que entiendes la esencia. Es una herramienta de línea de comandos que interactúa con el hardware de programación. En realidad, es un único estándar real para la programación AVR.
    El problema aquí no es necesariamente el precio, sino la disponibilidad y la conveniencia. Sí, es posible que pueda obtener hardware de programación PIC comercial a bajo precio, pero AVR se puede programar con un cable paralelo y tres resistencias, y hay disponibles planes de bricolaje más complejos (USBTinyISP, etc.), ambos bien probados. y bien respaldado. No confío mucho en el soporte de los fabricantes, y el hardware de programación comercial es mi responsabilidad.

    Pero esa es realmente solo mi opinión como aficionado y software libre.

  • Franco dice:

    "si intentas programar"
    "Claro que te importa"
    "así que si estás interesado"

    ¡Cristo! Son 3 fallas en rápida sucesión. Por favor revise este sitio -
    http://www.tutueres.com/

  • terian dice:

    @r_d
    también puede programar la mayoría de los PIC con tres resistencias, pero es un inconveniente, por lo que un microchip ofrece probablemente el precio más barato y las funciones de programador / depurador más ricas en el marcado. Y créanme, el microchip tiene un gran apoyo, saben que los ingenieros no tienen tiempo para tonterías como esa.

  • fdawg4l dice:

    @Franco

    Tenía miedo en cada oportunidad. Gracias por pegarme en el puño.

  • código central dice:

    @La multitud AVR vs PIC:
    Felicitaciones por la discusión sin llama! Uso AVR porque pude obtener un programador USBasp por £ 10, mientras que el PICkit2 / 3 (no recuerdo cuál) estaba más cerca de £ 40. Aunque digo eso, desde entonces he usado PICkit 3 en la universidad y tengo que admitir los puntos de interrupción / capacidad de depuración de MPLAB (¿así se llama?) Y PICkit ha sido bastante útil.
    Lo que me convenció fue avr-gcc (etc), parecía que había mucho más disponible para AVR + linux que PIC + linux.

  • simpleavr dice:

    @kernelkodo
    así es como entré en avr (at90s1200 entonces) con diy paralelo desarrollador de puertos, es muy asequible empezar a investigar.
    ahora podría considerar el ti msp430, una cadena de herramientas msp430-gcc decente, mspdebug (equivalente a avr-dude) y un desarrollador USB lanzador de $ 4.30 con soporte de depuración, más dos MCU de 16 bits.
    hack-a-day tiene buenos tutoriales al respecto.

  • Suciedad dice:

    Hago EE en el trabajo regularmente y trabajamos con PIC / AVR / Arduinos / ARM y, a veces, solo con la buena lógica de transistores. Realmente se trata de elegir lo que es mejor para tus necesidades... o si eres un aficionado (como lo fui durante años antes de este trabajo) se trata de hacer lo que tienes, trabajar para todo.

  • daid dice:

    Sobre el AVR 'bloqueado' y que necesita programación de alto voltaje. Es imposible deshabilitar el ISP de bajo voltaje con solo un ISP de bajo voltaje. ¡Así que no puedes enladrillarlos así!

    Directamente desde la hoja de datos de ATMega32, página 257, Nota 1: "No se puede acceder al fusible SPIEN en el modo de programación en serie SPI".
    El ATTiny45 puede ser una excepción, pero en general no puede ISP bloquear sus AVR.

    Puede habilitar el cristal externo y no tener uno en su placa que los 'bloquee', sino agregar un cristal en su desarrollador que se solucione fácilmente.

  • bogdan dice:

    Puede bloquearlos si hace el pin de restauración generai IO. De esa manera, no puede programarlos con un ISP, aunque el ISP esté habilitado.
    Pero mantengo una regla general de no deshabilitar el reinicio. Nunca sabré cuándo necesitaré un micrófono extra para un proyecto y tendré que 'robar' uno viejo.

  • fumanto_dave dice:

    ¡Puede bloquear el AVR si conecta el fusible al exterior pero no tiene un oscilador externo! Aun así, poseer uno aún está fuera del alcance de la persona promedio.

    De hecho, utilicé tanto PIC como AVR para uso profesional y como hobby. Me gustan ambos. El asistente de Atmel vino la otra semana y me dio muchos obsequios gratis (incluido un dragón AVR), ¡lo cual siempre es una ventaja!

    Sin embargo, diré que hay personas en la industria a las que he escuchado decir que AVR no es tan robusto como el PIC. Esto estaba en línea con la aprobación de los requisitos de EMC para productos colocados en un mercado industrial.

    En términos de funcionalidad, facilidad de uso, etc., son casi idénticos.

  • Otoño dice:

    Es una pena que no haya más artículos de PIC, me gustan un poco los errores.
    El PICkit2 también es económico y facilita la programación.

  • código central dice:

    @simpleavr
    Sí, lo vi cuando se lanzó por primera vez: casi saltó sobre mí de inmediato, pero la falta de soporte de Linux (inicialmente) me arruinó un poco. Además, estoy en el Reino Unido. De todos modos, al menos no bajé sin explicarme primero.

  • niño lagarto dice:

    Bueno, la primera razón para avr super pic para mí es Bascom, escribo los programas más simples en él y cambiaría los chips para usarlo.

  • Hackear ISP dice:

    Se recomienda compartir y discutir para un novato como yo.

Matías Jiménez
Matías Jiménez

Deja una respuesta

Tu dirección de correo electrónico no será publicada.