TODO SOBRE ELECTRONICA

Usted aprenderá los diferentes temas de Electrónica que se enseñan en universidades e institutos.

CANAL DE YOUTUBE

Tutoriales de los temas que se publican en blog. SUSCRIBETE

PROGRAMACION DE MICROCONTROLADORES PIC

Programacion en CCS Compiler de Microcontroladores PIC, sentencias y codigos de todos los programas. Archivos y libros relacionados a la programacion de PIC en lenguaje C.

ELECTRONICA BASICA

Conozca como funcionan y como se usan los componentes que encontramos en todo circuito electronico

LIBROS Y TEXTOS SOBRE ELECTRONICA

Libros, revistas y textos que le serviran para ampliar su conocimiento en los diferentes temas de la electrónica.Dale click en la pestaña LIBROS de la parte superior.

domingo, 29 de noviembre de 2015

CCS Compiler (PIC C Compiler) - Teclado matricial

TECLADO MATRICIAL (KEYPAD 4x4)

utilizados en el desarrollo de proyectos con microcontroladores PIC y que tienen su aplicación en el ingreso de datos de manera manual por parte del usuario, en aquellos casos en que el empleo de pulsadores simples no es lo más apropiado, ya sea por la presentación final del producto o por la restricción del número de líneas de entrada de los microcontroladores PIC.

El teclado matricial 4x4 está constituido por una matriz de pulsadores dispuestos en filas (A,B,C,D) y columnas (1,2,3,4), con la intención de reducir el número de pines necesarios para su conexión. Las 16 teclas necesitan sólo 8 pines del microcontrolador, en lugar de los 16 pines que se requerirían para la conexión de 16 teclas independientes.




LIBRERIA A USAR

El compilador C incluye la librería KBD.c para manejar el teclado 3x4. las funciones que se incorporan son las siguientes:

Kbd.init();   inicializa el sistema debe ser la primera función a ser llamada
Kbd_getc();  devuelve el valor de la tecla pulsada en función a la tabla que se tiene programada.

En el caso que se quiera utilizar un teclado matricial de 4x4, tendremos que modificar la librería KBD.c

Pueden descargar la librería ya modificada para hacer uso con un keypad 4x4.

En los tutoriales se podrá ver como se realiza la programacion para poder usar el teclado, asi como tambien como modificar la libreria KBD.c para usarlo con un keypad 4x4.


Tutorial - Modificacion de Libreria KBD



Tutorial -  Programacion del PIC para uso del keypad 4x4


DESCARGA EL PROGRAMA Y LA SIMULACION EN

EL PROGRAMA

sábado, 28 de noviembre de 2015

CCS Compiler (PIC C Compiler) - Manejo de Display

DISPLAY DE 7 SEGMENTOS

Componente electrónico compuesto por 7 LED's uno en cada segmento




Existen dos tipos de este display: ánodo común (el punto común entre todos los segmentos es Vcc) y cátodo común (punto común entre segmentos es la tierra-GND)

Esta ultima imagen muestra como esta conectado cada segmento y el punto común entre ellos

¿Cómo conecto el display?

En el caso de un ánodo común, el pin común debe de estar conectado a Vcc (5V-12V) y el segmento que queremos que encienda a 0V o GND

La imagen muestra como conectar para poder visualizar el numero 1


En el caso de cátodo común, el pin común debe ir conectado a 0V-GND, y el segmento que queremos encender a Vcc (5V-12V)

La imagen muestra la conexión para poder visualizar el numero 4

¿COMO LO CONECTAMOS AL PIC?

Para poder trabajar directamente con el PIC sin hacer uso de un 7447 o 7448 (conversor de BCD a 7 segmentos), para poder visualizar los números del 0 al 9 en un display cátodo común, haremos lo siguiente:


La imagen nos muestra que valor debemos darle al puerto (el que vamos a usar) para poder visualizar el numero que deseamos.
Ejemplo: para poder visualizar el numero 5, hacemos lo siguiente:

output_b(0x6D);  ó   output_b(109);

Recordar que esto sirve para un display cátodo común.
Ustedes lo pueden realizar para un display ánodo común, recordando que estos tienen Vcc en común y para poder encender un segmento éste tiene que estar conectado a 0V.



DESCARGA EL PROGRAMA Y LA SIMULACION EN

EL PROGRAMA

lunes, 16 de noviembre de 2015

CCS Compiler (PIC C Compiler) - Tipo de variables y manejo del puerto del PIC

El  CCS acepta el los siguientes tipos de variables

CONSTANTES
Las constantes se pueden especificar en octal, decimal, hexadecimal o en binario.

VARIABLES
La variables se utilizan para nombrar posiciones de memoria RAM.
Se deben de declarar obligatoriamente antes de utilizarlas, para ello se debe indicar el nombre y el tipo de dato que se utilizará.
Se definen de la siguiente manera.

tipo  nombre_variable = valor inicial
Ejemplo:

float voltaje=0;
int8 suma=0;
int contador=10;

MANEJO DE PUERTOS

El compilador nos ofrece funciones predefinidas que nos ayudan a trabajar con los puertos

Ejemplos:

output_B(0b11001100);       //saca un uno lógico por el pin(b7,b6,b4,b3)
valor = input_A();                //lee el valor del puerto A y lo almacena en valor

También existen funciones asociadas a un solo pin, tales como:
Ejemplos:

output_toggle(pin_b6);      //complementa el valor del pin b6
input(pin_c3);                    //lee el valor del pin c3
output_low(pin_b0);         //Pone el pin b0 a un cero logico

Les dejo el tutorial para que puedan entenderlo mejor.


DESCARGA EL PROGRAMA Y LA SIMULACION EN

EL PROGRAMA

lunes, 9 de noviembre de 2015

Primer programa en CCS Compiler (PIC C Compiler)

Para iniciarnos en la programación de los microcontroladores PIC, haremos el clásico HOLA MUNDO, que consiste en el encendido y apagado de un led.
Explicaremos cada una de las instrucciones del programa, así como también les dejaré el video tutorial correspondiente.

Para empezar este es nuestro entorno de programación

Para empezar a escribir nuestro código, creamos un archivo en blanco



Colocamos un nombre a nuestro proyecto, en¡ este caso yo le colocare el nombre de encendido y apagado de un led

Una vez creado nuestro archivo en blanco, empecemos las líneas de código de nuestro programa

Lo primero que debemos de hacer es incluir el PIC con el que trabajaremos, en este caso será el 16F877a, lo siguiente que haremos es escribir con velocidad de cristal trabajará nuestro PIC, en este caso será de 20MHz; y tambien mencionar los fusibles, en este caso será el HS, que se usa para cristales de alta velocidad. Si usted usará un cristal menor o igual a 4MHz, deberá colocar #fuses XT. Nuestro programa estaría quedando de la siguiente manera:

#include <16f877a.h>
#use delay(clock=20M)
#fuses hs, nowdt

El nowdt, deshabilita el watchdog timer(perro guardian). Para mayor información de este fusible ver el datasheet del PIC

Ahora llamaremos a nuestra función principal, que es el void main, el programa quedaría de esta manera:

Luego agregamos un bucle infinito para que nuestro programa se repite indefinidamente

Dentro de este bucle infinito escribiremos las instrucciones que ejecutara nuestro PIC.
El programa quedaría de la siguiente manera

La velocidad con la que el PIC realiza cada instrucción es de 20MHz/4, que vendría a ser igual a 5MHz, por lo tanto el tiempo que demorá el microcontrolador en ejecutar cada instrucción es de  0.2 microsegundos


Es por ello que se añade un retardo en el programa, ya que sino, no se vería el cambio de alto a bajo en el pin b0 del microcontrolador.

Por ultimo compilamos el programa.

Con esto quedaría listo nuestro programa para poder simularlo, así como también grabarlo o quemarlo en un PIC real.
La simulación lo podrá ver en el siguiente video tutorial.



Pueden descargar el programa y la simulación en: