Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
La Sociedad día con día se ha visto invadida de proyectos que se han desarrollado
con la tecnología de la actualidad, que cada vez es más robusta y hace que un sistema pueda
ser un sistema maestro con poco espacio y una efectividad inigualable a la que se veía en
tiempos de la década pasada.
Definiciones
Estructura
• CPU
• PROM, EPROM, EEPROM, ROM
• RAM
• I/O (Serie y paralelo)
• Temporizadores y Contadores
• Sistemas de Interrupciones
• Sistemas Auxiliares:
• ADC
• DAC
• DSP
Debido a que los microcontroladores ofrecen grandes ventajas como tener un sólo
circuito con varios periféricos internos, además de ser económicos, los vamos a abordar en
la primera parte del programa, en especifico un tipo de microcontroladores de la marca
Microchip que nos ofrece una gran simplicidad en su programación, y en la segunda parte
del programa volveremos a abordar los microprocesadores y veremos que ventajas y
desventajas ofrecen con los microcontroladores, una vez probados de manera práctica.
TIPOS DE MICROCONTROLADORES
+ Menos instrucciones
+ Buses separados (datos de 8 bits e instrucciones de 12, 14, 16 bits)
+ Arquitectura Pipeline o de Canalización
• Robótica
• Captura de Datos
• Sistemas portátiles de bajo consumo
• Automóviles (Frenos, Inyección, Encendido, sistemas de diagnóstico, etc.)
• Equipos Informáticos y electrónicos
• Aparatos electrodomésticos
Microcontroladores PIC
Los microcontroladores PIC son de tipo RISC (Reduced Instruction Set Control),
por lo que cuentan con un juego reducido de instrucciones que abarcan las 35 instrucción, a
Debido a que maneja un ancho de 14 bits para leer la memoria del programa, le
permite leer las instrucciones completas en un solo ciclo, además de que ahorra tiempo de 2
a 1 en comparación con la arquitectura CISC y además un espacio en memoria de 2 a 1.
CLK
Cada pulso de reloj realiza una instrucción diferente después del 4 pulso.
4
Tiempo de ciclo de instrucció n= = XXX µseg
Frec . del Cristal
Características Generales:
• 35 instrucciones
• Todas las instrucciones son de ciclo sencillo, excepto los saltos que son de 2 ciclos
• Velocidad de operación: Oscilador de 20 MHz, ciclo de instrucción de 200ns.
• 8k de memoria de programa
• 256b de memoria de datos
• 256b de memoria de eeprom
Periféricos:
Puerto A
RA0/AN0 I/O Entrada Analógica 0
RA1/AN1 I/O Entrada Analógica 1
Voltaje de ref.
RA2/AN2/Vref - I/O Entrada Analógica 2
negativo
Voltaje de ref.
RA3/AN3/Vref + I/O Entrada Analógica 3
positivo
Entrada Timer o
RA4/ TOCK1 I/O
Contador
___
RA5/AN4/ SS I/O Entrada Analógica 4 Comunicación Serie
Puerto B
RB0/INT I/O Interrupción Externa
RB1 I/O
RB2 I/O
Entrada de Voltaje de
RB3/PGM I/O
programación
RB4 I/O
RB5 I/O
RB6/PGC I/O Reloj de Programación
RB7/PGD I/O Datos de Programación
Puerto D
Puede funcionar como Puerto I/O o como un puerto paralelo esclavo cuando lo conectamos
al bus de un microprocesador.
Puerto E
____
RE0/ RD
I/O Control RD en un Bus E
/AN5
____
RE1/ WR
I/O Control WR en un bus R/S
/AN6
____
RE2/ CS
I/O Control CS en un bus R/W
/AN7
Organización de la Memoria
El contador del programa (PC) es de 13 bits de ancho. El byte bajo es el registro PCL, el
cual es de lectura y escritura. El byte alto del PC (PC<12:8>) no se puede leer ni escribir
directamente y viene del registro PCLATH. EL valor del PCLATH se transfiere al PC
cuando éste es cargado por un nuevo valor, por ejemplo después de un CALL, GOTO o una
escritura al PCL.
Cuando se ejecuta la instrucción CALL o se genera una instrucción, los 13 bits del PC se
guardan en el STACK.
___ ___
IRP RP1 RP0 T0 PD Z DC C
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
0 Banco 0,1
1 Banco 2,3
0 Banco 0
1 Banco 1
10 Banco 2
11 Banco3
___
T 0 : Timer out bit (Sólo de lectura)
___
PD : Power Down Bit. (Sólo lectura)
Z: Bit de Cero
___
RBPU INTEDG T0CS T0SE PSA PS2 PS1 PS0
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
Ejemplo:
Puerto A
Cada uno de los pines del Puerto A pueden ser configurados de manera individual,
modificando el registro TRISA por bit, por ejemplo si solo queremos que el bit 0 del Puerto
A sea entrada, le escribimos al registro TRISA la siguiente palabra b’00000001’, y
tendremos todos los pines de salida excepto el bit 0.
Nota: La entrada analógica debe ser menor o igual a 5v, y en corriente menor a
25mA.