COMPUTADORAS DIGITALES A. OBJETIVOS 1. Familiarizar al estudiante con la arquitectura de computadoras de 8bits. 2. Familiarizar al estudiante con el diseño, construcción y programación de los microcontroladores Atmel AT89C2051 y AT89C52. 3. Familiarizar al estudiante con distintos periféricos tales como puertos paralelos; temporizadores; contadores; convertidores ADC y DAC; puertos seriales y otros. 4. Familiarizar al estudiante con las técnicas de comunicación serial para el desarrollo de monitores de sistema. 5. Introducir al estudiante a la arquitectura de computadoras de 16bits B. BIBLIOGRAFÍA [1] Pheripheral Components Intel Corporation Intel Corporation Literature 1992; ISBN: 1-55512-146-2 [2] Embedded Microcontrollers Intel Corporation Intel Corporation Literature 1993; ISBN: 1-55512-176-4 [3] The C Programming Language Brian W. Kernigham, Dennis M. Ritchie Prentice-Hall Software Series 1978; ISBN: 0-13-110163-3 [4] www.intel.com [5] www.atmel.com [6] www.ieesa.com/universidades/at89c52/index.html C. EVALUACIÓN Parciales 33% Laboratorios 13% Proyecto Final 20% Semestral 34% ------- 100%
PLAN 1 REPASO... 1 1.1 COMPUERTAS... 1 1.2 BASCULADORES... 1 1.3 SIMBOLOGIA... 1 1.4 SISTEMAS NUMERICOS... 1 1.5 NIVELES DIGITALES... 1 2 ARQUITECTURA DE COMPUTADORAS... 2 2.1 MICROPROCESADOR... 2 2.2 BUSES... 2 2.3 MEMORIA... 2 2.4 DECODIFICADORES... 3 2.5 DISPOSITIVOS E/S... 3 3 NÚCLEO AT89C... 4 3.1 ARQUITECTURA... 4 3.2 PERIFERICOS... 4 3.3 DESCRIPCION DE PINES... 4 3.4 MAPAS DE MEMORIA... 4 3.4.1 MEMORIA DE CODIGO/DATOS... 4 3.4.2 VECTOR DE ARRANQUE... 4 3.4.3 VECTORES DE INTERRUPCION... 4 3.4.4 SPECIAL FUNCTION REGISTERS... 4 3.4.5 BANCOS DE REGISTROS... 4 3.4.6 DIRECCIONES BIT... 4 3.4.7 PILA... 4 3.5 INTERRUPCIONES... 4 4 PROGRAMACION EN LENGUAJE C... 5 4.1 TUTOR... 5 4.2 DESCARGA/INSTALACION DE COMPILADOR SDCC... 5 4.3 COMPILACIÓN (1 ARCHIVO/2 ó más ARCHIVOS)... 5 4.4 TIPOS DE VARIABLES/FUNCIONES... 5 4.4.1 EXTENSIONES (DATA,CODE,XDATA,IDATA,BIT,SFR,SBIT)... 5 4.5 INSTRUCCIONES... 5 4.5.1 IF/ELSE... 5 4.5.2 FOR... 5 4.5.3 WHILE; DO-WHILE... 6 4.5.4 SWITCH/CASE... 6 4.5.5 RETURN... 6 4.5.6 BREAK/CONTINUE... 7 4.6 LIBRERIAS... 7 4.7 PUNTEROS... 7 4.8 PARAMETROS Y VARIABLES LOCALES... 7 4.9 PILA... 7 4.10 MEMORIA EXTERNA... 7 5 SISTEMA BASADO EN EL AT89C2051... 8 5.1 MICROCONTROLADOR... 8 5.2 PUERTOS PARALELOS... 8
5.3 TEMPORIZADORES... 9 5.4 PUERTO SERIAL... 9 6 SISTEMA BASADO EN EL AT89C52... 10 6.1 MICROCONTROLADOR... 10 6.2 PUERTOS PARALELOS... 10 6.3 TEMPORIZADORES... 10 6.4 PUERTO SERIAL... 10 6.5 MEMORIA DE SOLO LECTURA (EXTERNA)... 11 6.5.1 DISEÑO, CONSTRUCCION CPU, EPROM... 11 6.6 MEMORIA DE LECTURA/ESCRITURA (EXTERNA)... 12 6.6.1 DISEÑO, CONSTRUCCION CPU, EPROM, RAM... 12 6.7 PUERTO PARALELO (EXTERNO)... 13 6.7.1 DISEÑO, CONSTRUCCION CPU, EPROM, RAM, PPI... 13 6.8 TEMPORIZADOR PROGRAMABLE (EXTERNO)... 14 6.8.1 DISEÑO, CONSTRUCCION CPU, EPROM, RAM, PPI, PIT... 14 7 PROGRAMA MONITOR... 15 7.1 ESPECIFICACIONES... 15 7.2 DIAGRAMA DE FLUJO... 15 7.3 FORMATO INTEL-HEX... 15 7.4 FUNCIONAMIENTO... 16 8 COMPUTADORAS DE 16BITS... * 8.1 ARQUITECTURA... * 8.2 PROCESADORES... * 8.2.1 MICROPROCESADORES... * 8.2.2 MICROCONTROLADORES... * 8.2.3 DSP... * 8.3 ARQUITECTURA DE PROCESADORES... * 8.3.1 VON NEUMAN... * 8.3.2 HARVARD... * 8.3.3 VARIANTES... * 8.4 JUEGOS DE INSTRUCCIONES... * 8.4.1 RISC... * 8.4.2 CISC... * 9 PROCESADORES DE 16BITS... * 9.1 ARQUITECTURA... * 9.2 BUSES... *
LABORATORIOS Nombre/Descripción Semanas 1. Programación del AT89C2051... 2 2. Programas de Desarrollo... 1 (Ensamblador/Simulador) 3. Practica de Programación... 2 4. Puerto Paralelo del AT89C2051... 1 5. Temporizador del AT89C2051... 1 6. Puerto Serial del AT89C2051... 1 7. Puerto Paralelo del AT89C52... 1 8. Temporizador del AT89C52... 1 9. Puerto Serial del AT89C52... 1 10. EPROM (Externo)... 1 11. RAM (Externa)... 1 12. Puerto Paralelo (Externo)... 1 13. Temporizador (Externo)... 1 14. Aplicaciones... 1 PROYECTOS Nombre/Descripción Grupos 1. Circuito Impreso del Controlador de 8Bits 2 2. Circuito Impreso del Programador 2 3. Pantalla de Cristal Liquido/Teclado 1 4. Monitor de Sistema 1 5. Control de Motores de Paso 1 6. Control de Servo Motor 1
LISTA DE PARTES PROYECTOS AT89C2051 y AT89C52 Cant Descripción Parto No. Prod. No. Precio Sub-total 1 Protoboard 4 Reglas 20811 JE27 $ 30.95 $ 30.95 1 Microcontrolador Atmel AT89C2051 168874 AT89C2051 $ 3.25 $ 3.25 1 Microcontrolador Atmel AT89C52 168920 AT89C52 $ 3.75 $ 3.75 1 Cristal de 11.059MHz 120061 CY11.05 $ 0.79 $ 0.79 2 De Multiplexores 64418 74LS573 $ 1.19 $ 2.38 1 Memoria Solo Lectura 105304 27C64-12 $ 4.25 $ 4.25 1 Memoria Lectura/Escritura 85121 6264LP-70 $ 2.95 $ 2.95 1 Puerto Paralelo 52732 8255A-5 $ 4.95 $ 4.95 1 Temporizador Programable 52716 8254-2 $ 4.95 $ 4.95 1 Interfase EIA-232 106163 MAX233CPP $ 5.39 $ 5.39 2 Decodificadores 46607 74LS138 $ 0.29 $ 0.58 1 Regulador de Voltaje 5V 51262 7805T $ 0.39 $ 0.39 4 Resistencias SIP 4.7K 24660 $ 0.25 $ 1.00 2 Resistencias SIP 330 97851 $ 0.25 $ 0.50 8 Capacitores Tantalum 33486 TM.1 $ 0.19 $ 1.52 8 LED 34850 XC57124R $ 0.29 $ 2.32 1 Conector DB9 M 15747 DE9P $ 0.39 $ 0.39 Total $ 70.31 PROGRAMADOR DE FAMILIA AT89CXXXX Cant Descripción Parto No. Prod. No. Precio 2 Resistencias SIP 4.7K 24660 $ 0.25 $ 0.50 2 Resistencias SIP 10K 24643 $ 0.25 $ 0.50 2 2K Trimmer Pot 10 Turns 41865 43P2K 1.15 $ 1.15 1 Cristal de 6MHz 14681 CY6 $ 0.79 $ 0.79 1 Decodificador 46623 74LS139 $ 0.29 $ 0.29 3 De multiplexor 45102 74HCT574 $ 0.79 $ 2.37 1 De multiplexor 47386 74LS273 $ 0.39 $ 0.39 1 Buffer 47870 74LS541 $ 0.69 $ 0.69 1 Hex Inverter Driver 74HCT368 $ - 1 Octal Inverting Line Driver 45014 74HCT240 $ 0.49 $ 0.49 1 Regulador de Voltaje 5V 51262 7805T $ 0.39 $ 0.39 1 Regulador de Voltaje Ajustable 23579 LM317T $ 0.45 $ 0.45 8 Capacitores Tantalum 33486 TM.1 $ 0.19 $ 1.52 Total $ 9.53