Programacion Bluetooth con salida a relevador

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);//
 //UCSRB |= (1<<RXCIE) | (1 << RXEN) | (1 << TXEN); // Turn on the transmission and reception circuitry
 //UCSRC |= (1 << URSEL) | (1 << UCSZ0) | (1 << UCSZ1); // Use 8-bit character sizes

 }


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 
 {
 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.

*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” 

atmel_13

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

Ya que se te tenga cargado el programa puedes descargar en tu dispositivo la siguiente aplicación:  “Bluetooth Serial Controller” ya que es muy completo y fácil de usar para usuarios de android. Tenemos un tutorial de la configuración para utilizar este modulo:

Bluetooth con relevador 2CH Configurar App

[youtube https://www.youtube.com/watch?v=GQT-stQn7as]

Escríbenos tus dudas o comentarios

Usamos Cookies en nuestro sitio WEB

Por favor confirma, si aceptas nuestras cookies de rastreo. También puedes negar el uso de cookies de rastreo y seguir navegando sin que ninguna información sea enviada a servicios de terceros.