Programacion Bluetooth con relevador

publicado en: Tutoriales | 0

Comunicación ATtiny2313 para Bluetooth relevador

El modulo Bluetooth relevador tiene como controlador un ATtiny2313 de la familia Atmel y un modulo bluetooh HC-06, en este tutorial se explica la configuración para la comunicación serial para activar los relevadores. El software que se utiliza para hacer la programación es  AtmelStudio que es una plataforma para desarrollar aplicaciones para los microcontroladores AVR de Atmel en el cual  puedes programar en C/C++ o código ensamblador.

El código utilizado para el modulo Bluetooth relevador es muy corto ya que solo es para activar dos salidas del puerto B que corresponde a cada uno de los relevadores esto mediante la comunicación serial USART entre el bluetooth y el ATtiny2313. El programador que se utilizara para este tutorial sera el AVRDragon  que es el oficial de Atmel soporta AVR de 8 y 32 bits. se puede realizar depuraciones simbólicas en dispositivos con SPI, JTAGy PDI.

Materiales

Software ATmelStudio

Programación del Bluetooth relevador

Al iniciar  ATmelStudio se selecciona “New Proyect..”

atmel_01
Crear un nuevo proyecto

En seguida se abre una ventana con diferentes opciones de proyectos depende de que tipo de controlador y lenguaje requieres utilizar, para este tutorial se utilizara GCC C++ Executable Proyect”  ya que crea un proyecto de un AVR de 8 bit en lenguaje C++.En seguida se nombra el archivo y se selecciona la ubicación del mismo y se pulsa “OK”.

atmel_02
Tipos de Proyectos

 

 Al hacer esto debe de abrir una nueva ventana donde se busca y se selecciona el ATTiny2313 puesto que es microcontrolador que utiliza el modulo Bluetooth relevador. En esta apartado puedes encontrar la hoja de datos y herramientas que pueden soportar.

Bluetooth relevador
Seleccionar controlador del Bluetooth relevador

Con esto queda configurado el programa para poder iniciar a escribir el código.

Código Bluetooth relevador

/*
 * bluetooth_relay.cpp
 *
 * Created: 07/07/2016 15:38:40
 * Author: PC
 */
 
 
#include<avr/io.h>
#include<util/delay.h>
#include<avr/interrupt.h>
#define USART_BAUDRATE 9600
#define BAUD_PRESCALE (((F_CPU / (USART_BAUDRATE * 16UL))) - 1)
char dato;
 
void InitUART(void) { //Configurando la UART
 
 UBRRL = BAUD_PRESCALE;
 UBRRH = (BAUD_PRESCALE >> 8);
 UCSRB = (1<<RXEN)|(1<<TXEN);;//habilita la transmision y recepcion de datos 
 UCSRC = (1<<USBS)|(3<<UCSZ0);//
 }
 
unsigned char ReceiveByte(void){ //Función para recibir un byte
 while (!(UCSRA & (1<<RXC)));//Esperar la recepción
 return UDR; //Retornar el dato tomado de la UART
}
 
int main (void) {
 
 DDRB=0xFF;
 InitUART(); //Inicializar la UART
 PORTB =0x00;
 while(1){
 
 dato=ReceiveByte(); //Recibir un dato de la UART
 
 if (dato==0x01) //Compara el dato recibido en hexadecimal
 {
 PORTB |= (1<<0);//al pin cero del puerto B le asigna un uno logico 
 }
 
 if (dato==0x02)
 {
 PORTB &=~ (1<<0);// al pin cero del puerto B le asigna la negacion de un uno logico 
 }
 if (dato==0x03)
 {
 PORTB |= (1<<1); //al pin uno del puerto B le asigna un uno logico 
 }
 
 if (dato==0x04)
 {
 PORTB &=~ (1<<1);// al pin uno del puerto B le asigna la negacion de un uno logico
 }
 
 }
}

Si no hay errores hacemos las conexiones entre el progrmador AVRDragon y el moduloBluetooth relevador,

Compilar codigo avrstudio
Compilar código

Si no hay errores hacemos las conexiones entre el programador AVRDragon y el modulo Bluetooth relevador identificando los pines de comunicación SPI de cada uno.

Bluetooth relevador

*NOTA: Es necesario alimentar el modulo Bluetooth relevador con  una fuente de 5v antes de programar

En la barra herramientas seleccionamos “Tools”>>”Device Programming”. Esto es para abrir el menú del programador.

atmel_05

En la ventana que se abrirá  se elige el programador, el microcontrolador y la interfaz serial, ya que estén seleccionados presionamos “Apply” y enseguida “Read” si todo esta bien conectado desplegara una serie de opciones para el controlador  de lo contrario se mostraran ventanas de ayuda.atmel_07

Si reconoce el ATtiny2313 se da click en “Memories” y enseguida se selecciona la ubicacion del archivo HEX de nuestro programa que generalmente se encuentra en la misma carpeta que se definió al principio, para finalizar se da click en “Program” 

Bluetooth relevador

En caso de que no cuentes con el AVRDragon puedes utilizar cualquier otro programador compatible con el ATtiny2313 como el Programador HeTPro USBasp V3

Dejar una opinión