PicManía by Redraven
 

Inicio . Mapa . Presentación . Electrónica Básica . Experimentos . Proyectos . CCS C . C30 .MPASM . Invitados . Eagle
Datasheets . IC´s . USB . Conceptos . Trucos e Ideas . Recursos . Enlaces . Noticias . Histórico . Cajón de Sastre . Visitas

Google
 
Web PicManía

 

PROYECTOS : RRBOARD 1

 

 

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


Esta página usa la letra Ñ

Nota pública importante sobre las consultas al Webmaster de PicManía.


Sugerencias a Picmanía... (que serán leídas pero seguramente no podrán ser contestadas)

Esta página pertenece al grupo de páginas de Diego RedRaven

 

 

Visitas
Totales : 9638 Hoy: 10 Activas: 1 Vistas: 9638