ccs para microcontroladores pic · 2018. 5. 23. · compilador c ccs y simulador proteus para...
TRANSCRIPT
-
CCS PARA
MICROCONTROLADORES
PIC
POR: EULER DEZA FIGUEROA
EULER DEZA FIGUEROA
Parte III
-
PROGRAMAS EN CCS COMPILER
SHIFT REGISTER ¿que son y cómo se usan?
Un registro de desplazamiento (shift register en inglés), es un
integrado capaz de almacenar bits y presentarlos en sus pines.
Hay varios tipos pero los que aquí nos interesan son los del tipo
Serial-Paralelo y Paralelo-Serial, esto significa que en el primer caso
los bits "entran" en forma serial (uno a uno) y "salen" de forma
paralela, en el segundo caso entrar en paralelo (todos juntos) y
salen en serie.
Unos de los integrados que hacen esto, entre muchos otros, son el
74HC595 y el 74HC165, que son Serial/Paralelo y Paralelo/Serial
respectivamente.
EULER DEZA FIGUEROA [email protected]
-
PROGRAMAS EN CCS COMPILER
SHIFT REGISTER ¿que son y cómo se usan? …
El pinout del 74HC595 es el siguiente:
EULER DEZA FIGUEROA
Los pines marcados como
Q0-Q7 son salidas y reflejan
el estado interno de cada bit
cuando es activado
poniendo a nivel alto el pin
12 (STCP), los datos
ingresan de forma serial por
el pin 14(DS) cada vez que el
pin SHCP pasa de estado
bajo a alto ( de 0v a 5v).
-
PROGRAMAS EN CCS COMPILER
SHIFT REGISTER ¿que son y cómo se usan? …
EULER DEZA FIGUEROA
También se pueden enlazar varios
integrados iguales de modo que
ampliamos la cantidad de bits. para ello
agregamos un segundo integrado y
conectamos la patilla DS(14) a la patilla
Q7‘(9) del primero.
La secuencia seria la siguiente:
1.Se pone el pin DS(14) en el estado
del bit que se quiera ingresar
2.Pin SHCP(11) en bajo /RETARDO
3.Pin SHCP(11) en alto
4.Se repite el proceso hasta enviar los
8 bits
5.Se coloca el pin STCP(12) en bajo
6.Se coloca el pin STCP(12) en alto
Y de esa forma aparece el byte en las
salidas.
-
PROGRAMAS EN CCS COMPILER
SHIFT REGISTER ¿que son y cómo se usan? …
EULER DEZA FIGUEROA
De manera similar funciona el
74HC165 solo que a los bit los "lee"
todos juntos.
Aquí las entradas son D0 a D7 y la
salida es Q7, PL es el Load y
cuando pasa a estado bajo carga
los valores de las patas D0-D7 en
"memoria" y dandole pulsos altos y
bajos a CP los datos van saliendo
bit a bit.
El pinout del 74HC165 es el siguiente:
-
PROGRAMAS EN CCS COMPILER
SHIFT REGISTER ¿que son y cómo se usan? …
EULER DEZA FIGUEROA
Para encadenar varios
basta con conectar Q7
de un integrado con DS
del siguiente y leer la
pata Q7 del último.
Este es el diagrama de
conexión para leer 16
bits (2bytes) con dos
integrados enlazados:
El pinout del 74HC165 es el siguiente:
-
PROGRAMAS EN CCS COMPILER
SHIFT REGISTER ¿que son y cómo se usan? …
EULER DEZA FIGUEROA
La forma de proceder sería así:
Se pone en bajo el Load para tomar el estado de todas
las entradas (b0 a b15) luego se envía la señal de reloj
poniendo en bajo y luego en alto Clk y se lee el estado de
DI (Data-In). Recordar que en DI aparecerá primero el bit
mas significativo (MSB).
Esta técnica es válida para controlar un display LCD, o
multiplexar cualquier dato.
El pinout del 74HC165 es el siguiente:
-
PROGRAMAS EN CCS COMPILER
Programa 10: Manejo de SHIFT REGISTER 74HC165
EULER DEZA FIGUEROA
En el ejemplo, Clock se conectaría al pin 0, Load al pin 1 y DI al pin
2 del Puerto A. Este programa solo leerá de b8 a b15
-
PROGRAMAS EN CCS COMPILER
Programa 10: Manejo de SHIFT REGISTER 74HC165 …
EULER DEZA FIGUEROA
-
PROGRAMAS EN CCS COMPILER
Programa 10: Manejo de SHIFT REGISTER 74HC165 …
EULER DEZA FIGUEROA
En el ejemplo, Clock se conectaría al pin 0, Load al pin 1 y DI al pin 2 del
Puerto A. Pero este programa solo leerá de b8 a b15, para leer b0 a b15 se
deberá usar Int de 16 bits para guardar los datos o dos de 8 bits y
guardarlos en variables diferentes. Aparte de todo esto se deberá hacer un
bucle de 16 ciclos en lugar de los 8 para leer 1 byte.
Con este circuito el único pin exclusivo para el funcionamiento del registro
es el pin A2 (Data in) ya que los otros se pueden conectar a otros circuitos
sin que afecten a este.
SiLMuP (todavía en construcción) utiliza un 74HC595 para controlar el
display LCD y por el mismo bus controlar las teclas de función y un
74HC165 para leer el estado de los sensores de líneas.
De esta forma controla un display LCD, 4 teclas de función, 8 sensores
siguelineas, y proximamente mas sensores y bumpers para obstaculos con
6 pines del pic y solo 3 son exclusivos
-
PROGRAMAS EN CCS COMPILER
Programa 11: Manejo de SHIFT REGISTER 74HC164 [CONTADOR 0-99]
EULER DEZA FIGUEROA
En el ejemplo, Clock se conectaría al pin 0, Data al pin 1 del Puerto
B. Este programa solo leerá de b8 a b15
-
PROGRAMAS EN CCS COMPILER
Programa 11: Manejo de SHIFT REGISTER 74HC164 [CONTADOR 0-99]…
EULER DEZA FIGUEROA
-
PROGRAMAS EN CCS COMPILER
Programa 11: Manejo de SHIFT REGISTER 74HC164 [CONTADOR 0-99]…
EULER DEZA FIGUEROA
-
PROGRAMAS EN CCS COMPILER
Programa 12: Manejo de SHIFT REGISTER 74HC595 [CONTADOR 0-99]
En el ejemplo, se tiene las siguientes conexiones:
#define SH_CP Pin_B0 / #define DS Pin_B1 / #define ST_CP Pin_B2
EULER DEZA FIGUEROA
-
PROGRAMAS EN CCS COMPILER
Programa 12: Manejo de SHIFT REGISTER 74HC595 [CONTADOR 0-99] …
EULER DEZA FIGUEROA
-
PROGRAMAS EN CCS COMPILER
Programa 12: Manejo de SHIFT REGISTER 74HC595 [CONTADOR 0-99] …
EULER DEZA FIGUEROA
-
PROGRAMAS EN CCS COMPILER
Programa 12: Manejo de SHIFT REGISTER 74HC595 [CONTADOR 0-99] …
EULER DEZA FIGUEROA
-
PROGRAMAS EN CCS COMPILER
Bibliografía
CCS C Compiler Manual – PCD – CCS INC – FEBREO 2015
CCS C Compiler Manual – PCB/PCM/PCH– CCS INC – FEBREO
2015
Compilador C CCS y simulador PROTEUS para
Microcontroladores PIC – Eduardo García Breijo
Diseño y simulacion de Sistemas microcontrolados en lenguaje
C – Juan Ricardo Clavijo Mendoza
Programacion en CCS para Microcontroladores PIC – Aaron
Castro Bazua
Datasheets
EULER DEZA FIGUEROA
ING. EULER DEZA FIGUEROA