Publicado el Deja un comentario

Programador USB AVR POLOLU CON ATMEL STUDIO

En este tutorial aprenderás a utilizar tu programadora de AVR´s con el software ATMEL STUDIO v7.0, cabe mencionar que la programadora tiene un conector ISP de 6 pines para comunicarse con el microcontrolador, para información más detallada visita el siguiente enlace.

Para empezar debemos tener a la mano los siguientes materiales:

  • Programador USB Pololu AVR.
  • Cable mini USB.
  • Cables dupont macho machos.
  • Un protoboard.
  • Microcontrolador Atmega8.
  • Una resistencia de 220 ohm.
  • Un diodo led.
  • Una fuente de 5V.

Instalación de Drivers de la programadora

El driver es un software que se encarga de decirle al sistema operativo cómo hay que usar un componente del ordenador. Sin él, el sistema operativo no puede reconocer el hardware.

Conectar la programadora al computador, descargar e instalar el Controladores y software del programador USB AVR de Windows. Una vez instalado correctamente verificar que se lista dentro del «Administrador de dispositivos» (debe enmarcarse con la marca de Pololu). Además, podrás verificar el número del puerto COM que ha sido asignado.

Programadora de AVR Pololu listada en el Administrador de dispositivos del computador.

Programando en Atmel Studio

A continuación ejecutamos el software Atmel Studio v7.0, creamos nuestro primer proyecto ( File/ New / Project…), se nos despliega una nueva ventana en la cual podemos escribir el nombre del proyecto GccApplication3 (puedes escribir el nombre que tu desees), de igual manera podemos modificar la ubicación del proyecto y por último para nuestro código que vamos a escribir escogeremos la opción GCC C executable project C/C++. y clic en OK.

Creando un nuevo proyecto en Atmel Studio

Seleccionamos el microncontrolador en la cual vas a programar en nuestro caso es el Atmega8, clic en <<OK>> y escribimos el siguiente código:

/*
 * GccApplication3.c
 *
 * Created: 22/7/2020 
 * Author : AVElectronics
 */ 

#define F_CPU 100000
#include <avr/io.h>
#include <util/delay.h>


int main(void)
{
  DDRB = 0b00000001;
  
    while (1) 
    {
  PORTB = 0b00000001;
  _delay_ms(1000);
    PORTB = 0b00000000;
	_delay_ms(1000);
    }
}

Diagrama de Conexiones

En nuestro protoboard debemos armar el siguiente esquema:

Diagrama de conexiones
Ensamblaje protoboard

Debes energizar con 5V a tu microcontrolador de forma obligatorio, puesto que la programadora debe saber a qué voltaje está funcionando el micro (3.3 o 5) para según eso, enviar el nivel de voltaje correcto por las líneas de programación. El pin VCC/VDD del conector ISP no emite voltaje ya que este es un pin de lectura de voltaje.

Programar al Microcontrolador

Una vez ya realizado las conexiones y verificado que esté correctamente procedemos a programar nuestro microcontrolador, en Atmel Studio donde escribimos nuestro código hacemos clic en <<Build GccAplicattion3>> (compilar código) ubicado en la barra de herramientas, si el código está bien estructurado procedemos a programar a nuestro microcontrolador.

Compilador código

Una vez ya creado y compilado el código agregaremos nuestro microcontrolador para que le reconozca el software, conectada nuestra programadora tanto a la PC como al microcontrolador clic en <<Tools/Add target…>>

  • <<Select Tool>> STK500.
  • <<Select serial port>> COM6 (el puerto COM puede variar en tu PC).
  • Clic en <<Apply>>.
Agregando dispositivo

Hacemos clic en << Device programming (Ctrl+Shift+P) >> se nos desplegará una nueva ventana donde debe estar ya configurado lo siguiente:

  • <<Tool>> STK500 COM6 (el puerto COM puede variar en tu PC).
  • <<Device>> Atmega8 (Escoger el microcontrolador que desea programar).
  • <<Interface>> ISP.
Programación del dispositivo

Damos clic en <<Apply> seguidamente clic en <<Read>> y nos debe reconocer a nuestro Atmega8 Recuerda que debe estar energizado con 5V el microcontrolador, caso contrario no te reconocerá.

Reconocimiento de microcontrolador

Para cargar nuestro código al Atmega clic en <<Memories>>, buscamos nuestro archivo .hex que se genero al compilar el código (Atmel Studio/7.0/GccApplication3/Debug/GccApplication3.hex) abrimos y clic en <<Program>>. Observarás como el led conectado al Atmega comienza a complir la función del código que es encendido y apagado a un intervalo de tiempo.

Cargando código al microcontrolador

El programador USB AVR tiene tres LED indicadores:

El LED verde indica el estado USB del dispositivo. Cuando conecta el programador a la computadora a través del cable USB, el LED verde comenzará a parpadear lentamente. El parpadeo continúa hasta que recibe un mensaje particular de la computadora que indica que los controladores están instalados correctamente. Después de que el programador reciba este mensaje, el LED verde se encenderá, pero parpadeará brevemente cuando haya actividad USB.

El LED amarillo indica que el programador está haciendo algo. Cuando está parpadeando, significa que el programador ha detectado el dispositivo objetivo (el voltaje en la línea VDD objetivo es alto). 

El LED rojo indica un error o advertencia. Cuando está parpadeando, significa que no se detecta el dispositivo objetivo (el voltaje en la línea VDD objetivo es bajo). Cuando está en estado sólido, significa que el último intento de programación resultó en un error. Puede determinar la fuente del error ejecutando la utilidad de configuración 

Deja una respuesta

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