|
|
Tarjeta de pruebas para testear el
funcionamiento del PIC 16F628
|
| |
Descripción:
|
Este circuito
trata de brindar el mínimo imprescindible para probar nuestro Pic 16F628.
Incluye la alimentación a 12V, el circuito de reset, unos pocos leds y la
conexión a la placa auxiliar de
comunicaciones con el PC vía RS232
|
|

|
Algunas consideraciones:
|
- He incluido la alimentación a 12V
porque es la fuente de la que dispongo, pero como Vdd es de 5V y la
placa auxiliar RS232 también va a 5V he introducido un
7805 para que nos
provea de dicho voltaje, el conector 5VOut puede servirnos para
alimentar la placa auxiliar.
- LED1 solo sirve para que podamos ver
que nuestra placa tiene la alimentación correcta. He puesto D1 para
evitar los riesgos, muy frecuentes en este tipo de montaje, de
conectarle la alimentación con la polaridad invertida.
- El PIC 16F628 puede funcionar con un
oscilador interno o con uno externo en base a un cristal de
cuarzo. He introducido en el montaje un cristal de cuarzo de 4 Mhz y los condensadores necesarios,
pero están conectados a través de los jumpers JP2 y JP3 para que podamos
tener la libertad de usarlo o no.
- El conector TX-RX tiene las dos
señales de la USART del PIC 16F628 que corresponden a los pines RB1 y
RB2 que son los que utilizaremos para conectar con la
AUX RS232
- En el pin RB5 he conectado la base de
un transistor BC107 que actúa como Driver para un Buzzer.
- Y por último he conectado 4 Leds, LED2
a LED5, a los puertos RA0 a RA3 para poder monitorizar lo que deseemos,
además le he intercalado una tira de pines, JP4, para poder tomar dichas
señales para cualquier uso externo que se nos ocurra.
- Finalmente he implementado un conector
ICSP para permitir su programación sin tener que extraer el micro.
|
Esquema :
|
|

|
| |
Placa de circuito
impreso:
|
|

|
| |
Fotografías: |
| |
|

|
|

|
| |
|

|
|
 |
| Haz Click sobre la
imagen inferior para ver RRBOARD1 y AUX232 completas y comentadas:
|
|
 |
| |
| |
Test de Hardware realizado en CCS PICC: |
|
| |
#include <16f628.h>
// Selecciona el PIC
#fuses XT,NOWDT,NOPROTECT,PUT,BROWNOUT // Opciones de configuración
#use delay(clock=4000000)
// Velocidad del Cristal : 4 Mhz
#use standard_io(A)
// puerto A como digital
#use fixed_io(a_outputs=PIN_A0,PIN_A1,PIN_A2,PIN_A3)
#use standard_io(B)
// puerto B como digital
#use fixed_io(b_outputs=PIN_B5)
Long const tt=500;
// Retardo Led 500 mS
Long const tz=200;
// Reatrdo Buzzer 200 mS
///DECLARACIONES DE FUNCIONES
void derecha(void);
// led's derecha a izquierda y buzz
void izquierda(void);
// led's izquierda a derecha
///PROGRAMA
void main(void)
{
set_tris_a(0b00000000);
// PORTA como salida
set_tris_b(0b00000000);
// PORTB como salida
disable_interrupts(GLOBAL); //
Desactiva interrupciones
do{
// bucle...
derecha();
izquierda();
}while(TRUE);
// ...infinito
}
void derecha(void)
{
output_high(PIN_A0);
delay_ms(tt);
output_low(PIN_A0);
output_high(PIN_A1);
delay_ms(tt);
output_low(PIN_A1);
output_high(PIN_A2);
delay_ms(tt);
output_low(PIN_A2);
output_high(PIN_A3);
delay_ms(tt-tz);
output_high(PIN_B5);
delay_ms(tz);
output_low(PIN_B5);
}
void izquierda(void)
{
output_low(PIN_A3);
output_high(PIN_A2);
delay_ms(tt);
output_low(PIN_A2);
output_high(PIN_A1);
delay_ms(tt);
output_low(PIN_A1);
output_high(PIN_A0);
delay_ms(tt);
output_low(PIN_A0);
delay_ms(tt);
}
|
|
| |
Fuentes del Test de Hardware El
Rincón del C |
|
| y esta es la versión del
Test que hace uso de la AUX RS232 |
| |
Test de Hardware plus RS232 realizado en CCS PICC: |
|
| |
#include <16f628.h>
// Selecciona el PIC
#fuses XT,NOWDT,NOPROTECT,PUT,BROWNOUT // Opciones de configuración
#use delay(clock=4000000)
// Velocidad del Cristal : 4 Mhz
#use standard_io(B)
#use fixed_io(a_outputs=PIN_A0,PIN_A1,PIN_A2,PIN_A3)
#use fixed_io(b_outputs=PIN_B5)
#use rs232(baud=9600, xmit=PIN_B2, rcv=PIN_B1) //manejo del RS232
Long const tt=500;
Long const tz=333;
///DECLARACIONES DE FUNCIONES
void recive(void); // recive ordenes del
PC y buzzer
void derecha(void); // ilumina led's derecha a
izquierda
void izquierda(void); // ilumina led's izquierda a derecha
///PROGRAMA
void main(void)
{
disable_interrupts(GLOBAL); // todas las interrupciones
desactivadas
puts("RRBOARD1 Listen on RS232"); // presentacion...
puts("========================");
puts(" ");
puts(" Z -> Buzzer On/Off ");
do{ // bucle...
derecha();
izquierda();
recive();
}while(TRUE); // ...infinito
}
void recive(void)
{
char Keypress=' ';
Keypress=' ';
if(kbhit()){
Keypress=getc();
if(keypress=='Z'){
output_high(PIN_B5); // suena
buzzer
puts("Buzzer On");
delay_ms(tz);
output_low(PIN_B5);
puts("Buzzer Off");
} else{
puts("Comand?");
}
}
}
void derecha(void)
{
output_high(PIN_A0);
delay_ms(tt);
output_low(PIN_A0);
output_high(PIN_A1);
delay_ms(tt);
output_low(PIN_A1);
output_high(PIN_A2);
delay_ms(tt);
output_low(PIN_A2);
output_high(PIN_A3);
delay_ms(tt);
}
void izquierda(void)
{
output_low(PIN_A3);
output_high(PIN_A2);
delay_ms(tt);
output_low(PIN_A2);
output_high(PIN_A1);
delay_ms(tt);
output_low(PIN_A1);
}
|
|
| |
Fuentes del Test de Hardware Plus RS232 El
Rincón del C |
|
Abajo una
imagen de una comunicación completa, envío y recepción, de mi PC con la
RRBOARD1 debidamente programada para ello con el Test de Hardware Plus
RS232
|
|

|
| |
| |
| |
- También podéis cargarle
la versión RROS v 1.0 del
pequeño sistema operativo o monitor que estoy construyendo.
|
- Ya ha salido la segunda
versión: RROS v 2.0 de mi
pequeño sistema monitor, este lleva otro tipo de funcionalidades ...
|
|
|
- 12/02/2006. Una imagen del
programador
GTP-SUB+
conectado a la RRBOARD1:
|
|
 |
|
|
Esta página se modificó el
27/12/2008
|