Desarrollador AVR de alto voltaje

La forma más común de programar microcontroladores AVR es la programación del sistema en la puerta. Ese pequeño encabezado de seis pines con MOSI y MISO saliendo de él programará todos los AVR con los que te encuentres. El ISP tiene una desventaja: los fusibles. Ajuste sus fusibles y sin un programador de la serie de alto voltaje, su chip está bloqueado. [Dilshan] diseñó su propio HVSP menos costoso que el Atmel STK500 y tiene un buen programa GUI.

En lugar de seguir los pasos del USBtinyISP, [Dilshan] usa PIC18F como el microcontrolador principal en el programador. Este chip fue elegido por su función USB incorporada. Debido a que la parte de alto voltaje de HVSP funciona a 12 V, es necesario considerar el suministro de ese voltaje. Para esto, [Dilshan] utiliza reguladores 78xx estándar con entrada de 18V.

El programa para dominar este programador hace todo lo que cabría esperar, incluidos todos los comandos habituales de AVRdude. Gran construcción, y justo lo que necesitamos para restablecer los fusibles en unas pocas docenas de chips que tenemos.

  • Nick Sayer (@nwsayer) dice:

    Creo que tal vez el concepto de HVP y HVSP podría estar fusionándose aquí. La mayoría de los chips AVR utilizan HVPP, con una gran cantidad de conexiones a la mayoría de los pines de datos. Solo unos pocos chips de pines, como el ATTinyx5, usan HVSP.

  • Nick Sayer (@nwsayer) dice:

    Oh, también mencionaré que no es demasiado difícil hacer un convertidor de acelerador de 5V-> 12V de baja corriente para esta aplicación. Los +12 voltios no son una fuente de alimentación para HVP, es más que una señal clara para hacer que el chip cambie de modo. Generar 10 mA a 12 V requeriría menos de 50 mA a 5 V, una carga adicional no demasiado terrible.

    El resultado es un programador HV que se ejecutará únicamente con alimentación suministrada por USB. Sin embargo, lo que dificulta el concepto es la amplia variedad de pines de cableado HVP para los chips AVR. Además, si está hablando de dispositivos SMD, deberá proporcionar algún tipo de encabezado HVP en su placa (y no hay un complemento estándar para eso, por lo que necesariamente sería propietario), o necesitaría recurrir a la "programación de acupuntura". Para mí, el camino de menor resistencia fue simplemente cambiar y descartar el controlador.

    Dicho esto, sospecho que el impacto de una fusión deficiente en los controladores SMD es mucho menor. La gente tiende a jugar con la fusión más en la placa, y los controladores SMD se encuentran más a menudo en diseños finales, donde la programación en la fabricación tiende a escribirse, por lo que hay muchas menos posibilidades de error.

    • Matthias Neeracher dice:

      HVPP necesita una gran cantidad de pines de señal, uno de los cuales tiende a ser la entrada del reloj, por lo que para cualquier proyecto que use un reloj externo (que sospecho que es la gran mayoría de proyectos basados ​​en SMD), es casi imposible usar Circuito HVPP.

      Si tengo derecho a anunciar mi propio proyecto, para programación ocasional de alto voltaje, me parece que es más fácil usar un Arduino con ScratchMonkey: http://microtherion.github.io/ScratchMonkey/index.html

  • SavannahLeón dice:

    No eh ... rechazar este proyecto pero eh ... ¿PIC?

    A nivel profesional, puedo ver esto como una solución, pero ¿a nivel de hobby? Sé que muy pocos aficionados que se ocupan de AVR también juegan con PIC (aunque lo contrario no parece ser cierto). Prácticamente si el AVR de 8 bits no funciona, muchos de esos tipos saltan a una línea AVR de 32 bits o cuando yo me muevo a ARM.

    PIC no está mal, mi primer desarrollador de AVR está basado en PIC. Solo tengo curiosidad acerca de la practicidad de esto cuando parece que la mayoría de las personas de AVR (es decir, la tierra de Arduino) parecen no tener interés en la línea PIC.

    • SavannahLeón dice:

      Para aclarar, por “profesional” no me refiero a las grandes empresas que están despidiendo a miles de directorios.

    • WestfW dice:

      El PIC es una de sus únicas opciones si desea compatibilidad con dispositivos USB Y un paquete DIP ...
      Da lugar a algunos problemas con la gallina y el huevo.

      • SavannahLeón dice:

        Ah ... ahora entiendo el asunto.

        No tengo ningún problema en luchar con SMD después de años de miedo. Aparte del hecho de que sigo perdiendo las partes, las encuentro mucho más fáciles de tocar.

        • Palmadita dice:

          Las piezas DIP se pueden dividir entre proyectos, por lo que es más fácil colocar un par e intercambiarlas rápidamente. Los enchufes son mucho más baratos que los chips.

          • SavannahLeón dice:

            Rara vez comparto AVR o PIC entre proyectos, por lo que no veo la ventaja real para mí. Si fuera necesario, instalaría un enchufe y usaría una versión enchufable.

          • nelsontb dice:

            Compró tableros de rotura smd generales y mantiene algunos controladores y piezas sin marcar, otro consejo útil es soldar los microcontroladores en fugas demasiado grandes y usar los pines sobrantes para soldar una cabeza ICSP estándar.

      • Chris C. dice:

        Sí, PIC explota AVR hasta que ofrece varias partes en DIP. Fue una de las principales razones por las que los elegí para aprender MCU porque quería comenzar con chips desnudos en una placa pasada de moda. Puedo soldar un paquete SMD bastante bien, pero aún prefiero DIP debido a la facilidad de mover partes a proyectos más nuevos, actualizar MCU cuando cambia el alcance del proyecto o intercambiarlos para resolver problemas. Siempre hay adaptadores SMD a DIP, pero ¿por qué molestarse cuando una pieza está disponible en DIP nativo? Y para aquellos que sugieran que estoy atrapado en el pasado o que tengo una "discapacidad" porque todavía prefiero DIP, intentemos un intercambio de MCU y veamos cuál termina primero. 😉

    • tekkieneet dice:

      Dejo AVR a favor de la línea SiLab Universal Bee para USB. Son lo suficientemente baratos (iguales o más baratos que Microchip), por lo que no tiene que preocuparse por reutilizarlos. Su entorno de desarrollo "gratuito" parece ser bastante agradable y su depurador o placa de evaluación tiene $ 30.

      Parece que una buena parte es suponer que su capacidad de soldadura se mantuvo a la altura de las piezas QFP y no siempre se quedó estancada en el obsoleto mundo DIP de 1970. No todos comparten esa desventaja.

      Si realmente necesita una placa, simplemente cree algunas placas gastadas con encabezados de 0.1 ″ la próxima vez que solicite un juego de PCB. Las tablas de surf u otras tablas de venta probablemente tengan algo para el paquete.

      • freaknik dice:

        ¿No te encanta el MSP430 a través de USB? Con la plataforma de lanzamiento de $ 12, hace que la creación de prototipos y el desarrollo sean baratos, rápidos y fáciles.

        http://www.ti.com/tool/msp-exp430f5529lp

    • Búfalo dice:

      Alguien que conozca los microcontroladores AVR necesita alrededor de un día para conocer los microcontroladores PIC, y funciona en ambos sentidos. Lo bueno de los PIC es que puede obtener 18F2550 por alrededor de 2 €, no estoy seguro de si puede obtener un AVR con soporte nativo USB 2.0 por ese dinero.

      • esot.eric.wazhung dice:

        Tiendo a no estar de acuerdo, pero tal vez por falta de conocimiento ... Sé cómo operar un AVR, solo necesito tomar un paquete GCC y algunos otros, sin importar cuánto sistema operativo use ... pero ¿qué pasa con PIC? Me parece (a mí) que la * mayoría * de las soluciones PIC implican un programa de código cerrado personalizado, escrito solo para Windows, que cuesta dinero ... instalar una computadora dedicada, ahorrar moolah para un entorno de desarrollo que funciona solo con PIC, y más . No tengo ningún problema con ellos, de lo contrario, y estoy de acuerdo en que las opciones periféricas (y otras) parecen bastante prometedoras ... Cada pocos años verifico si hay una ruta PIC de código abierto, tal vez simplemente no sé qué buscar . (Tenga en cuenta que "cada pocos años" cuando se combina con un paquete de desarrollo que cuesta mucho dinero podría significar una nueva versión de Windows para manejar y un nuevo paquete de desarrollo para comprar).

        A nivel de * codificación *, creo que tienes razón sobre el tiempo en familia. Las alegrías de C 🙂

        Los PIC32 son un poco atractivos porque están basados ​​en MIPS, tal vez sean compatibles con GCC. OTOH, la curva de aprendizaje de un MCU de 8 bits a un procesador * de 32 bits * con memoria virtual, etc ... bueno, para mí de todos modos resultó ser * significativamente * más que un conocido del día a día.

        (... no tiene nada que ver con el desarrollador de HV. Es * un poco * divertido que esto esté basado en PIC. ¡Anuncie al autor (y a los demás) que ambos lo experimentan bien!)

        • nife dice:

          Así es. La única razón por la que elegí AVR en lugar de PIC es avr-gcc, porque el hardware PIC es claramente más diverso en DIP (y, por lo tanto, es más fácil elegir un IC para satisfacer todas las necesidades de su proyecto). El software solo para Windows no es una opción para mí, por lo que es realmente inútil a menos que pic-gcc o similar comience a llamar más la atención.

  • ojos sangrantes dice:

    O simplemente omita el AVR y use los PIC18F o PIC mucho mejores en general. Pero me temo que quizás tengas que aprender algunas cosas que sé que son un pecado para la generación AVR / Arduino.

    • Me dice:

      Si tuviéramos que apuntar a aprender PIC, entonces el conocimiento de cómo programar Arduino no estaría escrito en los genes de toda la humanidad, accesibles para nosotros al nacer. Claramente, porque no tenemos que aprender nada para programar AVR a través de PIC es un pecado.

    • Alan Kilian dice:

      PIC18! Maldita sea, ¿por qué no usar GPGPU si tiene la intención de descomponerse y usar hardware enorme?

      Un PIC12 con un deep stack de dos niveles debería ser suficiente para cualquiera.

      • nsayer dice:

        640K de RAM también deberían ser suficientes para cualquiera.

        • Alan Kilian dice:

          ¡Eso es suficiente para 10 o 20 personas!

          • nsayer dice:

            * whoosh * 🙂

    • RoyTheReaper dice:

      No diría que los PIC son mejores que los AVR. Encuentro los PIC un poco más defectuosos. Eso y MPLAB X y el compilador XC8 a veces son molestos.

      Dicho esto, uso tanto PIC como AVR todos los días.

    • Kevin Cuzner dice:

      Empecé con PIC, pero terminé dejándolos para AVR, porque el hecho de avr-gcc es bastante bueno y el kit de herramientas basado en Linux supera con creces todo lo gratuito para PIC. Sin embargo, tengo mi programador K128, en caso de que vuelva. Ah, y me encantó la serie 18F a través de USB. Solo la falta de un compilador de código abierto me hizo cambiar.

      Ah, y responderé a tu ardiente señuelo: nunca ni nunca usaré un Arduino, pero me encantan los AVR. No mezcle los dos y colóquelos en dos categorías. Admito que muchas personas que usan Arduino no saben nada sobre cómo funciona el procesador a continuación o qué sucede (es posible que nunca toquen directamente un registro), pero me ofende la idea de que solo porque uso AVR, estoy en eso. categoría.

      • Cuéntalo dice:

        Yo soy todo lo contrario. Comencé con Arduino, luego me puse a trabajar felizmente y me instalé en otros productos Atmel y Freescale. Ahora iré lentamente a PIC, SiLabs, TI (beaglebone, entonces AM3359), RasPi y algunos otros solo para probarlo. Personalmente, me gustan los IDE más antiguos (cuando lo tienes configurado y una base de código aceptable construida) en comparación con los más nuevos que intentan hacer demasiado y son molestos.

        Dicho eso, ninguno de estos Las plataformas mencionadas facilitaron que el cargador de arranque y el IDE funcionaran con principiantes, por lo que los chicos de Arduino golpearon a casi todos en eso. Y reemplacé mi tiempo de "juego" con proyectos Arduino porque es tiempo de juego.

        • esot.eric.wazhung dice:

          ¿Es extraño decir que no hago nada más que desarrollar para AVR durante los últimos 10 años y nunca he usado (o encontrado una necesidad) un gestor de arranque?

          • Greenaum dice:

            Si tienes un programador, no. Si no lo hizo, entonces sí. El soporte USB directo evita los pasos para programar Arduinos.

      • TacticalNinja dice:

        +1

  • peleas dice:

    Afortunadamente, comencé con los AVR de Atmel antes de que Arduino fuera un problema, por lo que en realidad tengo STK500 colocando: D

  • k-ww dice:

    El MAX662A genera + 12V @ 30MA desde +5 con algunos sombreros.

    • Búfalo dice:

      Y por el costo de un chip MAX662A, puede obtener 3 módulos de pasos completos que pueden generar 5-35V a partir de una fuente de 3.3V o 5V.

  • Georgios dice:

    Diseñé un programador paralelo HV similar, pero usé ATMEGA16 como el chip de programación con una conexión en serie a la computadora y una herramienta GUI basada en Mono-frame. Aunque funciona bien, no he creado un PCB adecuado para él, por lo que se ve feo en una placa prototipo de agujero 🙁

  • DainBramage dice:

    Por desgracia, tanto odio anti-Arduino después de un artículo que ni siquiera lo menciona. ¿Están ustedes tan ofendidos en un nivel de entrada que ni siquiera pueden tolerar su existencia?

    • Chris J dice:

      Solo 2 publicaciones mencionaron el Arduino, y solo una lo golpeó. Esa publicación ni siquiera la golpeó tanto que el Arduino no es adecuado para todos. Por eso hay tantos microprogramas y programas.

      • SavannahLeón dice:

        Así es, este hilo hasta ahora está particularmente bien retenido en el ritmo.

        Lo interesante es que PIC pasó su tiempo bajo el sol OOPic y estoy seguro de que recuerdo a los chicos de Motorola golpeándolo. Al menos los chicos de mi universidad se llevaron bien cuando preparamos nuestras sesiones de juegos en 3D (inserte una broma aquí) sobre Quake y Duke Nukem.

        Pasé del 68HC11 (unos cuatro meses antes de que la placa se incendiara), rodé en el país de OOPic por un tiempo, pasé a AVR, luego a Arm y lo que sea. También odio el Arduino, pero como plataforma, no el AVR en sí. Como si odiara OOPic pero no necesariamente el PIC.

        El ciclo completo se repetirá después de que Arduino sea derrocado y algo más se mueva.

      • tekkieneet dice:

        El antiguo 68HC11 es probablemente uno de los primeros en tener un lanzador de ROM que le permite programar el chip a través de la entrada serial TTL, así como $ 68.11 (para un programa universitario) eval / development. Creé una placa con SRAM, ROM, pines de E / S y un encabezado LCD (conectado al bus multicanal de 2MHz).

  • Bogdan dice:

    Si recuerdo correctamente desde el momento en que usé tiny y megas, la única vez que realmente necesita alto voltaje es cuando giró el pin de reinicio a un pin normal. Y para eso, creo que hay algunos “médicos fusibles” alrededor.
    Apagué algún proyecto con reinicio hace algún tiempo y fue difícil trabajar con él. Para los pasatiempos, simplemente actualice a un micrófono más grande para tener suficientes pines.

    • Georgios dice:

      En los más antiguos, debe usar HVPP si programó los fusibles del reloj. No estoy seguro de si esto se aplica a los más nuevos.

      • nsayer dice:

        También se aplica a los más nuevos. Si está fusionado para un reloj de cristal o externo, y no está allí, no se programará.

        Sin embargo, existe una solución. Puede aplicar una onda cuadrada a uno u otro pin XTAL y hacer que parezca lo suficientemente largo como para fusionarlo nuevamente con el oscilador interno.

  • Ralph Doncaster dice:

    Como dijo Bogdan, puede construir algunos proyectos de restablecimiento de fusibles en lugar de un programador HV completo. Aquí hay uno que me gusta (no configuré accidentalmente el fusible del interruptor de reinicio, por lo que es solo como referencia)
    http://www.simpleavr.com/avr/hvsp-fuse-resetter
    Si tuviera que construirlo, agregaría una bomba de carga para que pudiera funcionar con 5v.

    • tekkieneet dice:

      No necesitaría utilizar PWM, solo necesitaría una fuente de onda cuadrada. Usé un inversor hexagonal, p. Ej. 74HC04 para cablear como un oscilador para impulsar la carga 4-5 etapas de la bomba de carga. En base a los requisitos de Vpp que suelen ser de 10 mA más o menos, solo el diodo Zener y la resistencia pueden regular la salida sin siquiera necesitar ciclos de CPU para regular.

      • Ralph Doncaster dice:

        PWM con un ciclo de desarrollo del 50% no necesita ciclos de CPU. 2 etapas con tapas 1n4148s y 100nf dan aproximadamente 12v; no se necesita ningún género.

        • esot.eric.wazhung dice:

          Esta línea de pensamiento es cautivadora ... Nunca me atreví a usar el pin de reinicio para nada más, a pesar de la necesidad de ese pin extra a veces ...

          • esot.eric.wazhung dice:

            Por un lado, es curioso que prefieran tener dos (+!) Protocolos separados para la programación, en lugar de, por ejemplo, usar el mismo protocolo ISP con dos métodos separados para cambiar la línea RESET. Estamos hablando, de hecho, de cómo dos o tres transistores detectar si el fusible de reinicio-deshabilitar está activo, luego usar una señal de reinicio de 12V con el protocolo ISP estándar en lugar de la señal de reinicio de 0V habitual ... debe tener algo que ver con compatibilidad posterior.

          • Bogdan dice:

            ¡No lo hagas! Especialmente si no tiene la intención de quitar el IC para programar. Experiencia de amigo: Usaré el reinicio como un pin y el circuito conectado estará completamente en orden con 12V en la línea de reinicio .... NO.

          • nsayer dice:

            Bueno, no tanto "no lo hagas", pero date cuenta de todas las consecuencias si tienes la intención de hacerlo.

            Se puede realizar HVP en el sitio, pero significa asegurarse de que el resto del circuito sobreviva y no interfiera con el proceso. Sin embargo, probablemente cueste mucho más, por ejemplo, reemplazar ATTinyx5 con ATTinyx4 si necesita más pines.

      • Greenaum dice:

        Un par de baterías de 9 V en serie es aún más fácil si no necesita muchas.

  • colaborador independiente dice:

    Para los no profesionales, realmente recomiendo obtener un AVR Dragon por alrededor de $ 50. Desarrollador y depurador para AVR y AVR32, interfaces que incluyen ISP, JTAG, PDI, debugWire y HVP / HVSP.

  • rolfmobile99 dice:

    En realidad, existe una buena herramienta que hace programación HV para piezas AVR:
    http://mightyohm.com/blog/products/hv-rescue-shield-2-x/
    Sorprendido que nadie más mencionó esto.
    Construí uno para restablecer algunas piezas de ATTINY que bloqueé.
    El equipo se ensambló fácilmente. Pero de nuevo me encanta soldar 🙂

  • PoopMan dice:

    LOL, eso fue mucha mierda! ¡El Arduino es MARAVILLOSO!

Eva Jiménez
Eva Jiménez

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *