Taller de Firmware. Introducción al PIC16F877. Facultad de Ingeniería Instituto de Com putación

Taller de Firm ware Introducción al PIC16F877 Facultad de Ingeniería Instituto de Com putación Contenido • Introducción a los m icrocontroladores P

0 downloads 71 Views 294KB Size

Recommend Stories


INTRODUCCIÓN AL TALLER DE CIENCIAS
1 INTRODUCCIÓN AL TALLER DE CIENCIAS Los seres vivos están en íntima relación con el medio en el que viven. Por ello, cualquier cambio en el entorno

UNIVERSIDAD NACIONAL AUTONOMA DE MÉXICO TRABAJO PROFESIONAL INGENIERA MECÁNICA ELECTRICISTA FACULTAD DE ESTUDIOS SUPERIORES CUAUTITLÁN
UNIVERSIDAD NACIONAL AUTONOMA DE MÉXICO FACULTAD DE ESTUDIOS SUPERIORES CUAUTITLÁN MEMORIA DE DESEMPEÑO DOCENTE EN EL ÁREA FÍSICO MATEMÁTICAS, NIVEL

Story Transcript

Taller de Firm ware

Introducción al PIC16F877 Facultad de Ingeniería Instituto de Com putación

Contenido • Introducción a los m icrocontroladores PIC. • Presentación del PIC 16F877.

Introducción a los microcontroladores PIC. • • • • •

Por qué los PICs Características de los PICs Historia Fam ilias Palabras de control e identificación

Tarea del diseñador • Cada fabricante dispone de una gam a m uy grande de m icrocontroladores, la tarea del diseñador es encontrar un m odelo que m inim ice el: – Costo – Desarrollo de software – Hardware ex terno

Por qué los PIC • • • • • •

Velocidad Precio Facilidad de uso Docum entación Herram ientas Sim ilares entre fam ilias

Produce una Im agen de sencillez y utilidad

Características de los PICs • • • • • •

Arquitectura Harvard. Pipeline. Instrucciones de largo fijo RISC. Instrucciones ortogonales. Gran diversidad de prestaciones y recursos. • Herramientas de soporte potentes y económicas.

Historia • • • •

1965 GI comienza a producir EPROM y EEPROM. 1970 Fabrica el microprocesador de 16 bits CP1600. 1971 Intel lanza el primer microprocesador estable. 1975 GI diseña un chip destinado a controlar E/ S: el PIC. • 1976 Sale al mercado el primer ordenador en un solo chip. • 1980 No es un buen año para GI. • 1985 Se vende GI y se renombra a Arizona Microchip Technology.

Fam ilias

(1/ 2)

• Los microcontroladores de Microchips se dividen en tres gamas – Baja – Media – Alta

• La principal diferencia entre ellas es el número y largo de las instrucciones, el número de puertos y funciones, y cantidad y tipo de memoria.

Fam ilias

(2/ 2)

Gam a Baja • • • • • • • • • • • •

POR. WDT. Protección de código. Líneas de E/ S. Modo reposo. No admiten interrupciones. Poca memoria y bajo consumo. Memoria ROM y EPROM Memoria para programa entre 512 y 2k bytes. Memoria para datos entre 25 a 73 bytes. Un único temporizador. 33 instrucciones de 12 bits de ancho.

Gam a Media • Interrupciones. • Comparadores analógicos. • Convertidores A/ D. • Puerto serie. • Temporizadores. • Memorias OTP y EEPROM. • 35 instrucciones de 14 bits de ancho.

Gam a Alta • Microcontrolador de interfaz abierta. • Gran cantidad de pines (40- 44). • Memoria para programa de 8k palabras. • Memoria para datos 454 a 3968 bytes. • 79 Instrucciones de 16 bits de ancho. • Hardware multiplier. • Memoria lineal.

Palabra de control e identificación • Control – Protección del código. – Activación del WDT. – Selección del tipo de oscilador.

• Identificación – Números de series. – Códigos de identificación. – Checksum

PIC16F877 • • • • • • • • • •

Características principales Características periféricas Diagrama de pines Mapa de memoria Registros principales Lógica de Interrupción Direccionamiento Puertos de E/ S Formato de instrucción Juego de Instrucciones

Características principales (1/ 2) • CPU RISC • Set de 35 instrucciones • Todas las instrucciones son de un ciclo salvo aquellas que incluyen saltos que son de 2 ciclos. • Velocidad de Trabajo: – DC - 20 MHz clock input – DC - 200 ns ciclo de inst rucción

• Hasta 8K x 14 words de FLASH Program Memory, • Hasta 368 x 8 bytes de Data Memory (RAM) • Hasta 256 x 8 bytes de EEPROM Data Memory

Características principales (2/ 2)

• Manejo de Interrupciones (hasta 14 fuentes) • Stack de hardware de 8 niveles • Modo de direccionamiento directo, indirecto y relativo. • Power- on Reset (POR) • Power- up Timer (PWRT) y Oscillator Start- up Timer (OST) • Watchdog Timer (WDT) con el reloj RC interno para mejor seguridad. • Protección de código programable. • In- Circuit Serial Programming (ICSP) • In- Circuit Debugging via 2 pines • Amplio rango de voltaje de trabajo: 2.0V a 5.5V

Características periféricas (1/ 2)

• Timer0: 8- bit timer/ counter con 8- bit prescaler • Timer1: 16- bit timer/ counter con prescaler, que puede ser incrementado durante el modo SLEEP via reloj ex terno. • Timer2: 8- bit timer/ counter con registro de período de 8- bit, prescaler y postscaler • Dos módulos Capture, Compare, PWM – Capture es de 16- bit, max. resolución: 12.5 ns – Compare es de 16- bit, max. resolución: 200 ns – PWM max . resolución: 10- bit

Características periféricas (2/ 2) • Convert idor Analógico a Digit al de 10- bit m ulti- channel (8 Canales) • Mast er Synchronous Serial Port (MSSP) – SPI : Serial Peripherical Interfase – I2C : Inter- Integrated Circuit

• Universal Synchronous Asynchronous Receiver Transmitt er (USART/ SCI) – Full duplex, Half duplex slave , Half duplex master – Recepcion / Transmision de 9- bit

• Parallel Slave Port (PSP) de 8- bits de ancho, con controles ex ternos de RD, WR y CS (solo 40/ 44- pin) • Brown- out detect ion circuitry para Brown- out Reset (BOR)

Diagrama de Pins

Arquitectura

(1/ 2)

Mapa de la Mem oria

Mapa de la Mem oria (2/ 2)

Registros Especiales

(1/ 6)

• STATUS – El registro STATUS contiene el estado de la aritmética de la ALU, es estado del RESET y el banco elegido para los datos de la memoria (SRAM). – Puede ser el destino de cualquier instrucción como cualquier otro registro (manejarlo con cuidado). – ADDRESS 03h, 83h, 103h, 183h

Registros Especiales • Bits de STATUS – IRP Register Bank Select (direccionamiento indirecto) – RP1:RP0 Register Bank Select – TO Time Out – PD Power Down – Z Zero – DC Digit Carry – C Carry/ Borrow

(2/ 6)

Registros Especiales

(3/ 3)

• OPTION_REG – Es un registro de lectura/ escritura que permite configurar • TMR0 • Interrupción Externa • pull- ups del puerto B

Registros Especiales

(4/ 6)

• Bits de OPTION_REG – RBPU Pull- up Enable – INEDG Interrupt Edge Select – T0CS TMR0 Clock Source Select – T0SE Source Edge Select – PAS Prescaler Assignm ent – PS2:PS0 Prescaler Rate Select

Registros Especiales

(5/ 6)

• INTCON – El registro INTCON es un registro de lectura/ escritura que contiene las llaves para habilitar las fuentes de interrupción.

Registros Especiales

(6/ 6)

• Bits de INTCON – GIE Global Interrupt Enable – PEIE Peripherical Interrupt Enable – T0IE TMR0 Overflow Interrupt Enable – INTE RB0/ INT Ex ternal Interrupt Enable – RBIE RB Port Change Interrupt Enable – T0IF TMR0 Overflow Interrupt Flag – INTF RB0/ INT Ex ternal Interrupt Flag – RBIF RB Port Change Interrupt Flag

Lógica de Interrupción

PCL & PCLATH

Direccionam iento

Puertos de E/ S(1/ 4)

RA5, RA3:RA0

RA4

Puertos de E/ S(2/ 4) • Configurables pin a pin como I/ O. • I/ O se multiplex an con otros periféricos. • Cuando se usa para el periférico no se usa como pin digital • Durante una misma ejecución se puede alternar el uso del pin. Ejemplo SDO cuando se habla con un dispositivo con SS. RB7:RB4

Puertos de E/ S(3/ 4) • Registros TRIS y PORT (pp 31 de la hoja de datos) • Detalles a tener en cuenta- "La letra chica de lo hoja de datos" • Puertos analógicos de salida vs operaciones de bit. • Puertos digitales que se mueven "despacio" • 0 y 1 en algo que "tiene" un hardware conectado.

Puertos de E/ S(4/ 4)

Form ato de instrucción

Juego de Instrucciones

(1/ 2)

Juego de Instrucciones

(2/ 2)

Preguntas

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.