Descargar

Robótica inteligente. El microcontrolador 68HC11

Enviado por Pablo Turmero


    edu.red

    El Microcontrolador 68HC11 Microcontrolador de 8 bits Dispositivo basado en acumulador Existen siete registros disponibles para programar 105 instrucciones (95 o 78) Instrucciones que pueden procesar 1, 8 y 16 bits Entrada/Salida mapeada a memoria 6 modos de direccionamiento

    edu.red

    Arquitectura de computadoras Memoria ALU Unidad de control I/O Instrucción IR Fetch Decode Execute

    edu.red

    Arquitectura básica de computadoras ALU realiza operaciones aritm?ticas y lógicas Memoria programas y datos pueden estar aqui (Arquitectura Bon Newman) I/O comunicación con el mundo exterior mediante lectura de datos y escritura de datos (paralelo/serie) Unidad de control organiza las funciones dentro de la computadora

    edu.red

    Caracteristicas del 68HC11 ISP (Instruction Set Proccess) Acumulador A Acumulador B Acumulador D Index Register X Stack Pointer Index Register Y Program Counter Operaciones { 8 Bits 8 Bits Condition Code Register A-B D IX IY SP PC CCR

    edu.red

    Caracteristicas del 68HC11 ISP (Instruction Set Proccess) MAR Instruction Register 8 Bits 8 Bits

    edu.red

    Caracteristicas del 68HC11 ISP (Instruction Set Proccess) Condition Code Register CCR Carry Overflow Zero Negative Interrupt mask Half carry (for bit 3) X interrupt mask Stop disable C O Z N I H X S

    edu.red

    Caracteristicas del 68HC11 On-chip ROM hasta 8KBytes On-chip RAM desde 192Bytes hasta 1KByte On-chip EEPROM hasta 2KBytes Parallel I/O Bytes o bits Timer System Timer Pulse acumulator Periodic interrupt Cop Watchdog

    edu.red

    Caracteristicas del 68HC11 Seria Peripherial Interface (SPI) Serial Communication Interface (SCI) Sistema de conversion Analógica/Digital Capacidad para captura paralelo Convertidor Analógico/Digital de multiple canal

    edu.red

    Naturaleza el?ctrica de las señales del 68HC11

    edu.red

    Numeros Binarios bit -> unidad primitiva que representa cualquiera de dos valores 1 o 0, TRUE o FALSE Nbits -> patrones de 2N El significado de 2N determina un esquema de codificación Patrones binarios para diferentes propositos Numeros Direcciones Caracteres Simbolos Instrucciones

    edu.red

    Numeros Binarios Caracteres y Simbolos

    edu.red

    Numeros Binarios Instrucciones 1110 0000 0000 1000 1001 0110 0010 0101 Valor de la instrucción en binario E008 9625 Valor numerico de la instrucción en Hexadecimal LDAA 25H Cargar en el acumulador con un 25 o 0010 0101 ABX Sumar B con X, donde B es un numero sin signo E017 3A Valor numerico de la instrucción en Hexadecimal 1110 0000 0001 0111 0011 1010 Valor de la instrucción en binario

    edu.red

    Codificación binaria Esquema sin Signo Valor numerico = Sistema numerico posicional Rango de valores = Variedad de usos Direcciones Apuntadores Contadores

    edu.red

    Rangos de los numeros binarios sin signo 8 bits (byte): 0 -> 255 16 bits (word): 0->65,535 24 bits: 0 -> 16,777,216 32 bits (long word): 0-> 4,294,967,295 64 bits 0 -> 1.84 X 1019

    edu.red

    Esquema de codificación: Complemento a uno Enteros Positivios Enteros Negativos Decimal Binario Decimal Binario 0 0000 -0 1111 1 0001 -1 1110 2 0010 -2 1101 3 0011 -3 1100 4 0100 -4 1011 5 0101 -5 1010 6 0110 -6 1001 7 0111 -7 1000 ¡Doble representación del 0!

    edu.red

    Esquema de codificación: Complemento a dos Enteros Positivios Enteros Negativos Decimal Binario Decimal Binario 0 0000 0 0000 1 0001 -1 1111 2 0010 -2 1110 3 0011 -3 1101 4 0100 -4 1100 5 0101 -5 1011 6 0110 -6 1010 7 0111 -7 1001 numero complemento a 2 = numero complemento a 1 + 1

    edu.red

    Esquema de codificación: Complemento a dos Valor del numero = Sistema posicional Rango de valores = Variedad de usos Enteros Desplazamientos Mapeo a valores fisicos

    edu.red

    Esquema de codificación: Complemento a dos Conversión de binario a decimal 1101 = – 1X27 + 1X26 + 0X25 + 0X24 + 1X23 + 1X22 + 0X21 + 1X20 = – 3 Operaciones Resta: se reduce al problema de sumar dos numeros

    edu.red

    Rango del complemento a dos 8 bits (byte): -128 -> 127 16 bits (word): -8,192 -> 8,191 24 bits: -8,388,608 -> 8,388,607 32 bits (long word): -2,147,483,648 -> 2,147,483,647 64 bits: -9.22X1018-> 9.22X18

    edu.red

    Metodos para expansión de microcontroladores Razones para expandir: El reloj en tiempo real perimite hacer hacer transferencia de información con circuiteria externa muy rapidamente Los requisitos de diseño imponen restriciones con el tamaño, peso y consumo de energia Aun no se tiene el diseño definitivo del sistema, pero por si se llegaran a necesitar mas modulos no representaria muchos problemas agregarlos

    edu.red

    Configuraciones del 68HC11 Cuatro modos de operación Modo single-chip Modo multiplexado expandido Modo boot-strap Modo manufacturing test

    edu.red

    Configuración de la memoria del 68HC11 Mapa de memoria del 68HC11

    edu.red

    Puertos adicionales para el 68HC11 Puertos de entrada

    edu.red

    Memoria adicional para el 68HC11 Configuración para incrementar 24KBytes

    edu.red

    Conjunto de instrucciones define operaciones Ciclo de operacion: fetch, decode, execute Formato de instrucciones: OpCode[Arg1] Agrupamiento de instrucciones Trabajo -> ADDX, SUBX, MUL, ANDX, ORX Mover -> I/O, COPY, PUSH, POP, etc. Control de programa ->JMP, JSR, RTS, BXX Control del sistema -> RTI, SWI, WAI

    edu.red

    Sinatxis básica de una instrucción Instr Arg1 Código de operación la instruccion: es el mnemonico de la operación que realiza la instrucción Identifica la localidad del operando que sera usado en la instruccion, localidad en la memoria o valor inmediato

    edu.red

    Localidad de un operando Un operando puede estar cualquiera de las siguientes localidades: Registro acumulador (ACCA, ACCB, ACCD) Direccion de memoria identificada por algun registro (IX, IY, SP, PC) Condition Code Register Espacio en memoria Memoria Espacio de I/O Estructura de Stack

    edu.red

    Instrucciones para realizar trabajo Especificar alguna actividad para el sistema Modificar bits en el registro CCR Operandos localizados en registros y memoria Incremento del PC cuando sea necesario para apuntar a la direccion siguiente Trabajar sobre cantidades de 1Byte, 2Bytes, etc.

    edu.red

    Instrucciones para realizar trabajo Suma de dos valores a un destino ABA suma acumulador B con acumulador A ABX suma acumulador B con acumulador X ABY suma acumulador B con acumulador Y ADC direccion unica ADD, con carry ADD direccion unica ADD ADDD direccion unica ADD, 16 bits

    edu.red

    Instrucciones para realizar trabajo Sustraccion de dos valores a un destino SBA diferencia entre acumulador B con acumulador A SBC sustraccion unica direccion, usando carry SUB ADC direccion unica ADD, con carry ADD direccion unica ADD ADDD direccion unica ADD, 16 bits