miércoles, 24 de agosto de 2022

Uso del firmware original de la grabadora USBasp AVR en MX-USBASP (clon chino)

Te vendieron un USBisp pensado que es un USBasp??

Hace 2 meses compré un "USBasp" fui a probarlo y no funcionó....pensé me estafaron, o que era  mi puerto USB de mi laptop la que estaba averiada.....no fue ninguna de las dos cosas, me vendieron un USBisp por un USBasp.....por ello mi laptop no reconocía a mi dispositivo generando dolor de cabeza y frustación.........decepcionado ya estaba por botar mi  programador  sin antes hacer unas pruebas para ver como hacer para que mi Laptop reconociera a mi USBisp  como USBasp.... aquí te muestro un pequeño tutorial de como lo solucioné
USBasp-original
USBisp-versión china
  • Para la programación de microcontroladores AVR, el programador más económico es el USBasp, por ello es conveniente utilizarlo. La versión china cuesta 2 dólares aproximadamente en Aliexpress , pero el firmware nativo no es USBasp, es USBisp.
  • Abri el programador y decía " MX-USBISP-V5.00." entonces entendí que no es exactamente el USBasp clásico. El USBasp clásico tiene un Atmega8A en cambio la versión china tiene un Atmega88A.
 MX-USBISP-V5.00.

 Solución

  • Reflaxear al USBisp, después de flashear, el programador se definirá como USBasp y será compatible con avrdude, cargaremos un programa al Atmega88V utilizando otro programador, puede ser el clásico USBasp o placa arduino(como programador ISP)
  • El programa funciona para placas MX-USBisp-V4.00 y MX-USBisp-V5.00.

 Procedimiento

  1. Asegurarse que USBISP  sea reconocido al ingresarlo a un puerto de nuestra laptop, puede que aparezca USBHID, pero si aparece junto a un  triangulo de color amarillo quiere decir que falta actualizar o instalar drivers. 
Administrador de dispositivos

  • Si no es reconocido tendrá que actualizar los drivers, Windows necesita instalar un controlador para ello, necesita descargar driver dar click aquí. Es un ejecutable, no necesita instalarlo.
Descargar Zadig 2.7
  • El programa Conecte el USBasp a la PC y aparecerá en el menú desplegable de dispositivos de Zadig. Seleccione "Instalar controlador".
Instalar drivers
  • Si la PC reconoce al dispositivo como USBHID puede cambiar su nombre en EDIT y colocarle cualquier nombre , yo le coloque nombre USBasp, instalo drivers y ya debe ser reconocido por la PC.

Reconocimiento de nuestro dispositivo USBasp chino.
  • Que nuestra PC reconozca a nuestro USBasp no significa que ya el programa AVRdude pueda reconocerlo, entonces es hora dar el siguiente paso, grabar un .hex a nuestro USBasp chino, para ello damos el siguiente paso.
2.  Hacer un puente en "UP" del USBisp
Imagen que muestra k conexión en UP
3. Hacer la siguiente conexión y grabar código hex.
Para versión 4:
MX V4 USBISP V2 (2016)ATmega88usbasp (mediafire.com)
Para versión 5:
MX V5 USBISP V2 (2016)ATmega88usbasp (mediafire.com)

Conexión para grabar el MX-USBisp
  • Reflaxear al USBisp, después de flashear, ahora ya será compatible con avrdude, pra ello cargaremos un programa al Atmega88V utilizando otro programador, puede ser el clásico USBasp o placa arduino(como programador ISP)
  • El programa funciona para placas MX-USBisp-V4.00 y MX-USBisp-V5.00.
4.  Finalmente quitamos el puente en "UP" y nuestro USBisp ahora será reconocido por  nuestro AVRDUDE  como USBasp.

5.  Para grabar un programa .hex a cualquier  microcontrolador debemos hacer la conexión ICSP , lo explicamos a detalle en este link.


¿Tienes alguna duda de este tema?, o ¿De qué otros temas quieres que hablemos?, puedes escribirnos directamente a nuestro grupo de  Telegram

domingo, 21 de agosto de 2022

PLC-Mega V.2 Compact

Esquema-Parte1
Outseal PLC Mega V.2 Compact tiene las siguientes especificaciones:

Características:

  • INPUT
                                16 Entradas no-aisladas

                                3-24 VDC, Cumple con la norma internacional IEC 61131-2

  • MICROCONTROLADOR
                                ATMEGA128A
  • OUTPUT

                               16 salidas tipo NPN colector abierto, Sin protección contra sobrecorriente

  • MEMORIA FLASH

                                128KB

  • EEPROM 

                                4KB

  • PUERTO DE COMUNICACIÓN

                                2 Puerto serie

                                MODBU RTU-serial y esclavo

                                RS485

  • CABLE USB
                                USB TIPO B(para impresora)
  • Entrada ANÁLOGO

                                2 CANALES

  • PWM

                              * 2 canales
  • HIGH SPEED COUNTER
                            * 2 canales

*El contador de alta velocidad y PWM usan un temporizador compartido, de modo que si el primer temporizador se usa para HSC, el primer temporizador no puede ser usado por PWM y viceversa, y lo mismo ocurre con el segundo temporizador.
Esquema -parte2

Esquema-PDF
 Cortesía de Outseal.com -Youtube

PLC-Mega V.2 Slim

 Cortesía de Outseal.com 

Outseal PLC mega V.2 slim tiene las siguientes especificaciones:

  •      8 entradas digitales
  •      8 salidas digitales
  •      2 entradas analógicas
  •      1 línea de comunicación MODBUS RTU serial RS485 esclavo
  •      1 línea de comunicación MODBUS RTU serial RS485 maestro
  •      2 temporizadores de hardware para PWM / contador de alta velocidad
  •      1 línea de comunicación TWI/I2C
  •      1 línea de comunicación SPI


Características:

  • INPUT
                                8 Entradas opto-aisladas

                                10-30 VDC, Cumple con la norma internacional IEC 61131-2

  • OUTPUT

                               8 salidas tipo NPN colector abierto, regulación de corriente  60 mA

  • MEMORIA FLASH

                                128KB

  • EEPROM 

                                4KB

  • PUERTO DE COMUNICACIÓN

                                2 Puerto serie

                                MODBU RTU-serial y esclavo

                                RS485

  • CABLE USB
                             USB TIPO B(para impresora)
  • Entrada ANÁLOGO

                                2 CANALES

  • PWM

                               1 canal

Esquema-PDF
 Cortesía de Outseal.com -Youtube, para abrir la página web usar "Tor Browser", https://outseal.com/site/produk/megav2slim/megav2slim.html
Si prefieres la placa ya hecha, tienes la opción de compra: Link de compra

¿Tienes alguna duda de este tema?, o ¿De qué otros temas quieres que hablemos?, puedes escribirnos directamente a nuestro grupo de Telegram

PLC-Mega V.2 Full

 Cortesía de Outseal.com 

PLC-Mega V.2 Full

PLC basado en el Atmega128A-Outseal PLC mega V.2 full tiene las siguientes especificaciones:

  • 16 digital input
  • 16 digital output
  • 2 entradas analógicas
  • 1 línea de comunicación MODBUS RTU serial RS485 slave
  • 1 línea de comunicación MODBUS RTU serial RS485 master
  • 2 temporizadores de hardware para pwm / contador de alta velocidad
  • 1 línea de comunicación TWI/I2C
  • 1 línea de comunicación SPI

Características:

  • INPUT
                                16 Entradas opto-aisladas

                                10-30 VDC, Cumple con la norma internacional IEC 61131-2

  • OUTPUT

                               16 salidas tipo NPN colector abierto, regulación de corriente  60 mA

  • MEMORIA FLASH

                                128KB

  • EEPROM 

                                4KB

  • PUERTO DE COMUNICACIÓN

                                2 Puerto serie

                                MODBU RTU-serial y esclavo

                                RS485

  • CABLE USB
                                 USB TIPO B(para impresora)
  • Entrada ANÁLOGO

                                2 CANALES

  • PWM

                               2 canal


Esquema-PDF
 Cortesía de Outseal.com -Youtube
Si prefieres la placa ya hecha, tienes la opción de compra: Link de compra

Si deseas proteger a tu PLC, puedes hacer tu propio diseño o comprar uno que ya está hecho, como se muestra en la imagen.

Caja protectora para PLC

PLC NANO

Cortesía de Outseal.com 
PLC-NANO

PLC basado en el Atmega328P-Outseal PLC Nano utiliza Arduino nano V.3 como CPU y utiliza una placa de E/S que cumple con el estándar IEC 61131-2.

Características:

  • INPUT
                                8 Entradas opto-aisladas

                                10-30 VDC, Cumple con la norma internacional IEC 61131-2

  • OUTPUT

                                8 salidas tipo NPN colector abierto, regulación de corriente  60 mA

  • MEMORIA FLASH

                                32KB

  • EEPROM 

                                2KB

  • PUERTO DE COMUNICACIÓN

                                1 Puerto serie

                                MODBU RTU-solo esclavo

                                RS485

  • CABLE USB
                                Micro-USB
  • PUERTO ANÁLOGO

                                2 CANALES

  • PWM

                                1 canal
PLC-NANO

Esquema-PDF
 Cortesía de Outseal.com -Youtube
Si prefieres la placa ya hecha, tienes la opción de compra: Link de compra

jueves, 2 de junio de 2022

Real-time operating systems (RTOS)

Real -Time  Operating Systems(RTOS) se utilizan en entornos donde una cantidad de eventos se requieres procesar en poco tiempo o dentro de ciertos plazos, como por ejemplos: Control industrial, equipos de conmutación telefónica, control de vuelo, simulaciones de tiempo real entro otras.
Este sistema está limitado en el tiempo y tiene un plazo fijo. El procesamiento en este tipo de sistema debe ocurrir dentro de las restricciones específicas. De lo contrario, esto conducirá a una falla del sistema.
Esquema RTOS
Como sabemos los microcontroladores ejecutan tareas previamente programadas y son ejecutadas de manera secuencial, con la implementación de RTOS estás secuencia será más rápida, previene situaciones de errores,  optimiza los tiempos de ejecución, de manera que, se puede gestionar y priorizar  los tiempos de cada evento.
Finalmente explicaré las subrutinas necesarias para implementar un RTOS dentro del microcontrolador:
A manera de ejemplo vamos a ver las señales del parpadeo de 3 leds con los mismos tiempos(1Seg): 
Del video se puede apreciar que las señales se producen de manera secuencial, estas mismas tareas se pueden implementar sin hacer uso de RTOS pero cuando las tareas van creciendo  las líneas de código va creciendo también, a la vez que el código se va haciendo menos legible y ordenado, propenso a errores, es allí donde es preferible construir un RTOS. 

Ya que este código está implementado en ASM la implementación del RTOS ocupa poca memoria, este es el resumen:

Tienes alguna duda de este tema?, o ¿De qué otros temas quieres que hablemos?, puedes escribirnos directamente a nuestro grupo de  Telegram

domingo, 27 de marzo de 2022

Módulo MAX6675-Termocupla tipo K- Interrupciones SPI


Tienes alguna duda de este tema?, o ¿De qué otros temas quieres que hablemos?, puedes escribirnos directamente a nuestro grupo de  Telegram

sábado, 26 de febrero de 2022

DIVISIÓN DE 8 Y 16 BITS

 En este video de Eduardo Velazquez se explica detalladamente la subrutina para hacer divisiones de 8 y 16 bits. Además hace una  aplicación práctica como ejemplo de la función de división, el desarmar un número de 4 cifras en 4 caracteres, para ser enviados por UART, les dejo el link para que puedan disfrutarlo, el código también lo anexa:

viernes, 18 de febrero de 2022

Libros VISUAL BASIC

Para aplicaciones de escritorio y además en la industria, especialmente en aplicaciones de SCADA tenemos la opción de enlazar por MODBUS-RTU varios dispositivos entre ellos nuestro ATMEGA a un sistema de monitoreo, si el SCADA  en una computadora industrial de entorno Windows, podemos usar el Visual Basic para hacer nuestras interfaces.

Con el fin de aprender a hacer interfaces les dejo estos libros que pueden ayudarle a su aprendizaje(CLICK en imagen). 

miércoles, 22 de diciembre de 2021

Curso de programación C#

En la industria, especialmente en aplicaciones de SCADA tenemos la opción de enlazar por MODBUS-RTU varios dispositivos entre ellos nuestro ATMEGA como PLC a un sistema de control o monitoreo.

Microsoft tiene en la industria varias PC industriales que pueden estar programadas para diseño de SCADA,  gracias al lenguaje C# podemos hacer interfaces. 

Este curso de C# , que comparto, está orientado para hacer aplicaciones de escritorios como móviles, les dejo en enlace de descarga:



Curso de Programación de AVR.

 Comparto curso de programación en lenguaje C usando el ATMEGA328PB con la tarjeta de entrenamiento xplained mini :

jueves, 9 de diciembre de 2021

EL Microcontrolador ATMega328P de Microchip

Este libro fue publicado el 9 de diciembre del 2021 en el 20° congreso nacional de Mecatrónica escrita por el Ing. Felipe Santiago Espinoza, docente de la Universidad Tecnológica de la Mixteca ubicada en el país de México.

Este libro contiene código en lenguaje asembler, lenguaje C y un enlace con Arduino como dice en su portada.

PORTADA DEL LIBRO

Hace uso del microcontroladores ATMega328P y tiene el siguiente temario explicados de manera general:

  1. Introducción a los microcontroladores.
  2. Los Microcontroladores AVR.
  3. Programación de los Microcontroladores.
  4. Interrupciones en los Puertos.
  5. Temporizadores.
  6. Manejo de Información Analógica.
  7. Comunicación serial(parte I)
  8. Comunicación serial(Parte II)
  9. Recursos Especiales
  10. Manejo de Dispositivos Externo.
  11. Desarrollo de Sistemas.

sábado, 27 de noviembre de 2021

Storing Data on I 2C EEPROM Using AVR Microcontroller

Este documento publicado en el año 2011 en la revista   "ELECTRONICS  FOR YOU" escrita por  ARUN DAYAL UDAI nos explica como construir un circuito para grabar datos a memoria EEPROM(AT24C64)  desde la PC. En el diseño se hace uso del microcontrolador Atmega2560. El código de programación es en lenguaje C, el mismo  se puede encontrar también en el archivo. 

CIRCUITO: Almacenamiento de datos a menoría EEPROM. 

domingo, 7 de noviembre de 2021

tinyAVR Microcontroller Projects for the Evil Genius

Después de varios meses de no subir libros, ahora cuento con éste hermoso libro llamado "ATinyAVR Microcontroller Projects for the Evil Genius." para los que quieren empezar a programar AVR de manera rápida usando un micro Tiny y programarlos en lenguaje C.

Este libro  fue escrita  por Dhananjay Gadre,Nehul Malhotra en el 2011. El idioma es en inglés.





El libro cuenta con 7 capítulos, como las siguientes:

1Tour de Tiny

2 LED Projects

3 Advanced LED Projects

 4 Graphics LCD Projects

5 Sensor Projects

 6 Audio Projects

7 Alternate Energy Projects 

 A C Programming for AVR Microcontrollers

 B Designing and Fabricating PCBs

 C Illuminated LED Eye Loupe