martes, 23 de febrero de 2016
lunes, 22 de febrero de 2016
jueves, 18 de febrero de 2016
Osciloscopio Digital con Micro Controladores PIC
Diseño de un Osciloscopio Digital Bluetooth mediante el uso de Micro Controladores PIC y el uso de dispositivos móviles Teléfonos y Tabletas como un osciloscopio Digital remoto que nos permite visualizar los procesos que realizamos con nuestro sistemas de micro controladores. Mediante este diseño transformamos nuestro teléfono y tableta electrónica en un osciloscopio digital.
El programa que requerimos instalar en nuestros dispositivos móviles es gratuito y lo podemos descargar desde:
OSCILOSCOPIO BLUETOOTH GOOGLE PLAY:
OSCILOSCOPIO BLUETOOTH AMAZON:
Pueden descargar el cogido fuente para programar el PIC :
//#include <16f877A.h>
#include <18F4550.h>
#device ADC=8
//#fuses HS,nowdt,noprotect,nolvp,nodebug,usbdiv,pll5,cpudiv2,vregen
#fuses HS,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN
//#fuses NOWDT,XT, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay (clock = 20M )
#use fast_io(c)
#use rs232(baud=9600,bits=8,parity=n,xmit=pin_c6,rcv=pin_c7)
#priority rda,timer1,ad
#include <LCD4x16_2016.c>
//#include <LCD4x16_877A.c>
#byte PUERTO_A=0xf80
#byte PUERTO_B=0xf81
#byte PUERTO_C=0xf82
#byte PUERTO_D=0xf83
#byte PUERTO_E=0xf84
char valor,car1='$',car2='#';
int sw=0;
char dato[30]="";
char mensajeTx [12];
float conversion,conv=0.00;
#int_rda
recibir()
{
while ( kbhit())
{
valor=getc();//recibe el dato del pc y lo guarda en valor
sw=1;
}
}
#INT_AD
ver()
{
}
void main ()
{
//Setup_adc_ports(NO_ANALOGS);
lcd_init();
set_tris_a(0b00000001);
set_tris_b(0b00000000);
set_tris_c(0b10000000);
set_tris_d(0b00000000);
lcd_init();
lcd_gotoxy(1,1);
printf(lcd_putc,"Osciloscopio BTH");
output_a(0xFF);
setup_adc_ports(AN0_ANALOG);
setup_adc(ADC_CLOCK_DIV_8);
enable_interrupts(INT_AD);
enable_interrupts(int_rda);
enable_interrupts(global);
while(true)
{
set_adc_channel (0);
delay_us (10);
conversion=read_ADC();
conversion=conversion*0.0196;
delay_us (10);
sprintf(dato,"%c%1.2f%1.2f%c",car1,conversion,conv,car2);
puts(dato);
lcd_gotoxy(0,2);
printf(lcd_putc,dato);
delay_us(100);
strcpy(dato,"");
}
}
El programa que requerimos instalar en nuestros dispositivos móviles es gratuito y lo podemos descargar desde:
OSCILOSCOPIO BLUETOOTH GOOGLE PLAY:
OSCILOSCOPIO BLUETOOTH AMAZON:
Pueden descargar el cogido fuente para programar el PIC :
//#include <16f877A.h>
#include <18F4550.h>
#device ADC=8
//#fuses HS,nowdt,noprotect,nolvp,nodebug,usbdiv,pll5,cpudiv2,vregen
#fuses HS,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN
//#fuses NOWDT,XT, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay (clock = 20M )
#use fast_io(c)
#use rs232(baud=9600,bits=8,parity=n,xmit=pin_c6,rcv=pin_c7)
#priority rda,timer1,ad
#include <LCD4x16_2016.c>
//#include <LCD4x16_877A.c>
#byte PUERTO_A=0xf80
#byte PUERTO_B=0xf81
#byte PUERTO_C=0xf82
#byte PUERTO_D=0xf83
#byte PUERTO_E=0xf84
char valor,car1='$',car2='#';
int sw=0;
char dato[30]="";
char mensajeTx [12];
float conversion,conv=0.00;
#int_rda
recibir()
{
while ( kbhit())
{
valor=getc();//recibe el dato del pc y lo guarda en valor
sw=1;
}
}
#INT_AD
ver()
{
}
void main ()
{
//Setup_adc_ports(NO_ANALOGS);
lcd_init();
set_tris_a(0b00000001);
set_tris_b(0b00000000);
set_tris_c(0b10000000);
set_tris_d(0b00000000);
lcd_init();
lcd_gotoxy(1,1);
printf(lcd_putc,"Osciloscopio BTH");
output_a(0xFF);
setup_adc_ports(AN0_ANALOG);
setup_adc(ADC_CLOCK_DIV_8);
enable_interrupts(INT_AD);
enable_interrupts(int_rda);
enable_interrupts(global);
while(true)
{
set_adc_channel (0);
delay_us (10);
conversion=read_ADC();
conversion=conversion*0.0196;
delay_us (10);
sprintf(dato,"%c%1.2f%1.2f%c",car1,conversion,conv,car2);
puts(dato);
lcd_gotoxy(0,2);
printf(lcd_putc,dato);
delay_us(100);
strcpy(dato,"");
}
}
sábado, 6 de febrero de 2016
Microcontroladores PIC Comunicación Bluetooth Bi direcional
Vídeo que nos enseña como realizar comunicaciones inalambricas con los microcontroladores PIC mediante el uso de la tecnología Bluetooth. En el vídeo se enseña el control del microcontroldor mediante el uso de dispositivos móviles .teléfonos y tabletas electrónicas.
Para el control del microconttolador deben descargar las aplicaciones:
RC Bluetooth Control desde Google PLay:
Desde Amazon:
Deben descargar la aplicación Chat Bluetooth:
Desde Google Play:
Desde Amazon:
En el siguiente vídeo se explica como realizar la programación del microcontrolador PIC:
El código para programar el PIC es el siguiente:
//#include <16f877A.h>
#include <18F4550.h>
#device ADC=8
//#fuses HS,nowdt,noprotect,nolvp,nodebug,usbdiv,pll5,cpudiv2,vregen
#fuses HS,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN
//#fuses NOWDT,XT, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay (clock = 20M )
#use fast_io(c)
#use rs232(baud=9600,bits=8,parity=n,xmit=pin_c6,rcv=pin_c7)
#priority rda,timer1,ad
#include <LCD4x16_2016.c>
//#include <LCD4x16_877A.c>
#byte PUERTO_A=0xf80
#byte PUERTO_B=0xf81
#byte PUERTO_C=0xf82
#byte PUERTO_D=0xf83
#byte PUERTO_E=0xf84
char valor;
int sw=0;
char dato[30]="PIC Rx=";
char mensajeTx [12];
void main ()
{
Setup_adc_ports(NO_ANALOGS);
lcd_init();
set_tris_a(0b00000000);
set_tris_b(0b00000000);
set_tris_c(0b10000000);
set_tris_d(0b00000000);
lcd_init();
lcd_gotoxy(1,1);
printf(lcd_putc,"TX/RX Bluetooth");
output_a(0xFF);
while(true)
{
while ( kbhit())
{
valor=getc();//recibe el dato del pc y lo guarda en valor
sw=1;
}
switch (valor)
{
case 'R':output_bit(PIN_A0,0);
output_bit(PIN_A1,1);
output_bit(PIN_A2,1);
break;
case 'U':output_bit(PIN_A0,1);
output_bit(PIN_A1,0);
output_bit(PIN_A2,1);
break;
case 'L':output_bit(PIN_A0,1);
output_bit(PIN_A1,1);
output_bit(PIN_A2,0);
break;
case 'X':output_bit(PIN_A0,1);
output_bit(PIN_A1,1);
output_bit(PIN_A2,1);
break;
}
if (sw==1)
{
lcd_gotoxy(1,2);
printf(lcd_putc,"%S %c","Recibido=",valor);
sprintf(mensajeTX,"%s %c",dato,valor);
puts(mensajeTx);
sw=0;
}
}
}
Para el control del microconttolador deben descargar las aplicaciones:
RC Bluetooth Control desde Google PLay:
Desde Amazon:
Desde Google Play:
En el siguiente vídeo se explica como realizar la programación del microcontrolador PIC:
//#include <16f877A.h>
#include <18F4550.h>
#device ADC=8
//#fuses HS,nowdt,noprotect,nolvp,nodebug,usbdiv,pll5,cpudiv2,vregen
#fuses HS,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN
//#fuses NOWDT,XT, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay (clock = 20M )
#use fast_io(c)
#use rs232(baud=9600,bits=8,parity=n,xmit=pin_c6,rcv=pin_c7)
#priority rda,timer1,ad
#include <LCD4x16_2016.c>
//#include <LCD4x16_877A.c>
#byte PUERTO_A=0xf80
#byte PUERTO_B=0xf81
#byte PUERTO_C=0xf82
#byte PUERTO_D=0xf83
#byte PUERTO_E=0xf84
char valor;
int sw=0;
char dato[30]="PIC Rx=";
char mensajeTx [12];
void main ()
{
Setup_adc_ports(NO_ANALOGS);
lcd_init();
set_tris_a(0b00000000);
set_tris_b(0b00000000);
set_tris_c(0b10000000);
set_tris_d(0b00000000);
lcd_init();
lcd_gotoxy(1,1);
printf(lcd_putc,"TX/RX Bluetooth");
output_a(0xFF);
while(true)
{
while ( kbhit())
{
valor=getc();//recibe el dato del pc y lo guarda en valor
sw=1;
}
switch (valor)
{
case 'R':output_bit(PIN_A0,0);
output_bit(PIN_A1,1);
output_bit(PIN_A2,1);
break;
case 'U':output_bit(PIN_A0,1);
output_bit(PIN_A1,0);
output_bit(PIN_A2,1);
break;
case 'L':output_bit(PIN_A0,1);
output_bit(PIN_A1,1);
output_bit(PIN_A2,0);
break;
case 'X':output_bit(PIN_A0,1);
output_bit(PIN_A1,1);
output_bit(PIN_A2,1);
break;
}
if (sw==1)
{
lcd_gotoxy(1,2);
printf(lcd_putc,"%S %c","Recibido=",valor);
sprintf(mensajeTX,"%s %c",dato,valor);
puts(mensajeTx);
sw=0;
}
}
}
miércoles, 27 de enero de 2016
Transmisión Bluetooth Con Micro Controladores
En el siguiente vídeo se explica como realizar transmisiones remotas desde nuestro teléfono o tablet hacia un micro controlador mediante el uso de Bluetooth. Para ello debemos descargar la aplicaciòn gratuita RC Bluetooth desde Google Play o Amazon.
Para observar como debemos programar nuestro micro controlador debemos visualizar el siguiente vídeo
Diseño de Generador de Funciones con Micro Controlador
En este tutorial aprenderemos a diseñar un Generado de Funciones mediante el uso de un micro controlador. El micro controlador a utilizar será el Arduino pero puede ser usado cualquier micro controlador. Las aplicaciones que se requieren para el proyecto la pueden descargar gratuitamente desde Google Play y Amazon.
Para controlar remotamente el generador de funciones desde nuestro teléfono o tablet debemos descargar la aplicación RC Bluetooth Control la cual descargamos desde Google Play:
Para controlar remotamente el generador de funciones desde nuestro teléfono o tablet debemos descargar la aplicación RC Bluetooth Control la cual descargamos desde Google Play:
La podemos descargar desde Amazon:
Para visualizar las señales generadas podemos usar un osciloscopio, sino lo tenemos podemos convertir nuestra tablet o teléfono en un osciloscopio . Para ello debemos descargar de manera gratuita la aplicación Osciloscopio desde Google Play:
La podemos descargar desde Amazon:
Una vez que hemos descargado las aplicaciones e instaladas en nuestros teléfonos y Tablet, podemos visualizar el siguiente vídeo, donde se explica detalladamente el diseño del Generador de Funciones:
El programa para ser cargado en nuestro arduino es el siguiente:
// include the library code:
#include <LiquidCrystal.h>
#include <TinyGPS.h>
//String mensaje,mensaje3;
#include <SoftwareSerial.h>
SoftwareSerial mySerial(11, 12); // RX, TX
char inChar;
int sw=0;
int sine[255];
void setup() {
//Serial.begin(9600);
pinMode(0, OUTPUT);
pinMode(1, OUTPUT);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
float x;
float y;
for(int i=0;i<255;i++)
{
x=(float)i;
y=sin((x/255)*2*PI);
sine[i]=int(y*128)+128;
}
mySerial.begin(9600);
}
void loop() {
while (mySerial.available() > 0)
{
inChar =mySerial.read();
//Serial.println(inChar);
switch (inChar)
{
//Onda Tiangular
case 'U' :sw=1;
break;
//Onda Rampa Poitiva
case 'E' :sw=2;
break;
//Onda Negativa
case 'R': sw=3;
break;
// OndaSeno
case 'C': sw=4;
break;
}
//Serial.println(sw);
}
switch (sw)
{
case 1:for (int i=0;i<255;i++)
{
PORTD=i;
}
for (int i=255;i>0;i--)
{
PORTD=i;
}
break;
case 2:for (int i=0;i<255;i++)
{
PORTD=i;
}
break;
case 3: for (int i=255;i>0;i--)
{
PORTD=i;
}
break;
case 4:for (int i=0;i<255;i++)
{
PORTD=sine[i];
delayMicroseconds(10);
}
break;
}
}
miércoles, 4 de noviembre de 2015
Programaciòn Avanzada 2015
Diseñar una aplicación en Java usando NetBeans que simule una pelota rebotando. Se crea un espacio para graficar, con resolución ( 300x300). Se debe dibujar en la parte superior , desde la posición (0,0) hasta la posición (300,0) un rectángulo de ancho 300 y altura 30 que simule una barrera, de igual manera se debe dibujar en la parte inferior de la pantalla un rectángulo que comience en la posición ( 0,275) hasta la posición ( 300,275) con ancho 300 y altura 25 Se Coloca una esfera de radio 20 en el centro del área para gráficar. Se debe colocar un botón que diga iniciar. Al presionar el botón la pelota debe subir y rebotar hacia bajo, luego rebotar hacia arriba de manera cíclica. Al rebotar la pelota debe ir de forma aleatoria hacia una nueva posición. La pelota deja de rebotar al salir de la zona donde se grafica.
El proyecto se debe entregar el día 18 de noviembre, último día de actividades junto al proyecto del ascensor que debían entregar el día viernes 29 de octubre.
El proyecto se debe entregar el día 18 de noviembre, último día de actividades junto al proyecto del ascensor que debían entregar el día viernes 29 de octubre.
Suscribirse a:
Entradas (Atom)