1. Trang chủ
  2. » Giáo án - Bài giảng

Microcontroladores PIC diseno practico de aplicaciones segunda parte PIC16F87X PIC18FXXX 2 ed jose angulo

394 301 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 394
Dung lượng 10,54 MB

Nội dung

Una de las grandes ventajas de los microcontroladores de Microchip es su “migrabilidad”, que significa la posibilidad de cambiar de modelo de MCU y pasar a otro más potente con más dad d

Trang 2

MICROCONTROLADORES «PIC» Diseño práctico de aplicaciones

SEGUNDA PARTE:

PIC16F87X, PIC18FXXXX

2ª Edición

Trang 4

MICROCONTROLADORES «PIC» Diseño práctico de aplicaciones

Universidad de Deusto

Susana Romero Yesa

Licenciada en InformáticaProfesora de Arquitectura de Computadores

Universidad de Deusto

Ignacio Angulo Martínez

Licenciado en InformáticaProfesor de Arquitectura de Computadores

Universidad de Deusto

MADRID • BOGOTÁ • BUENOS AIRES • CARACAS • GUATEMALA • LISBOA • MÉXICO

NUEVA YORK • PANAMÁ • SAN JUAN • SANTIAGO • SA ~ O PAULO

AUCKLAND • HAMBURGO • LONDRES • MILÁN • MONTREAL • NUEVA DELHI • PARÍS SAN FRANCISCO • SIDNEY • SINGAPUR • ST LOUIS • TOKIO • TORONTO

Trang 5

SEGUNDA PARTE: PIC16F87X, PIC18FXXXX 2.ª edición

No está permitida la reproducción total o parcial de este libro, ni su tratamientoinformático, ni la transmisión de ninguna forma o por cualquier medio, ya seaelectrónico, mecánico, por fotocopia, por registro u otros métodos, sin el permiso previo y por escrito de los titulares del Copyright

DERECHOS RESERVADOS © 2006, respecto a la segunda edición en español, porMcGRAW-HILL/INTERAMERICANA DE ESPAÑA, S A U

Edificio Valrealty, 1.aplanta

Basauri, 17

28023 Aravaca (Madrid)

ISBN: 84-841-4627-1

Depósito legal: M

Editor: Carmelo Sánchez González

Diseño de cubierta: Luis Sanz Cantero

Compuesto en: GAAP Editorial, S L

Impreso en:

IMPRESO EN ESPAÑA - PRINTED IN SPAIN

Trang 6

Prólogo xi

Capítulo 1 LA FAMILIA DE MICROCONTROLADORES PIC 1

1.1 Importancia de los microcontroladores PIC 1

1.2 Clasificación de los microcontroladores PIC 3

1.3 Microcontroladores PIC de 8 bits 3

1.3.1 La gama Base 5

1.3.2 La gama Media 6

1.3.3 La gama Mejorada 15

1.4 Microcontroladores PIC de 16 bits 16

1.4.1 Gama de microcontroladores MCU de 16 bits 16

1.4.2 Gama de microcontroladores DSC de 16 bits 20

Programar PIC es fácil: Recordando el viejo PIC16F84 23

Diseñar con PIC es fácil: Presentación de los sensores analógicos más utilizados 30

Capítulo 2 ARQUITECTURA, DIAGRAMA DE CONEXIONES Y REPERTORIO DE INSTRUCCIONES 33

2.1 Introducción 33

2.2 Procesador RISC con arquitectura Harvard 34

2.3 Organización de la memoria de programa 38

2.4 Organización de la memoria de datos RAM 39

2.4.1 Registros específicos para el control de la memoria de programa 39

v

Contenido

Trang 7

2.4.2 Control de la memoria de datos 39

2.5 Diagrama de conexionado 42

2.6 Repertorio de instrucciones 46

Programar PIC es fácil: El primer programa con los PIC16F87x 48

Diseñar con PIC es fácil: Actuadores para diversas aplicaciones: los motores 52

Capítulo 3 PRINCIPALES REGISTROS DE CONTROL Y MANEJO DE LAS ME-MORIAS FLASH Y EEPROM 57

3.1 Los registros de control 57

3.2 Registro de estado (STATUS) 57

3.3 Registro de opciones (OPTION) 59

3.4 Registro para controlar las interrupciones 59

3.4.1 Registro de control de interrupciones (INTCON) 61

3.4.2 Registro de permiso de interrupciones 1 (PIE1) 61

3.4.3 Registro de permiso de interrupciones 2 (PIE2) 62

3.4.4 Registros de los señalizadores de interrupciones 1 y 2 (PIR1 y PIR2) 62

3.5 Lectura y escritura de las memorias EEPROM y FLASH 62

Programar PIC es fácil: Un programa que maneja las memorias FLASH de código y EEPROM de datos 67

Diseñar con PIC es fácil: Ampliación de periféricos para el trabajo con PIC 74

Capítulo 4 LAS PUERTAS DE E/S Y RECURSOS ESPECIALES DEL PROCE-SADOR 81

4.1 Puertas de E/S 81

4.1.1 Puerta A 81

4.1.2 Puerta B 83

4.1.3 Puerta C 85

4.1.4 Puerta D 85

4.1.5 Puerta E 86

4.2 Palabra de configuración 86

4.3 Palabras de identificación 87

4.4 Reinicialización o reset 88

4.5 Perro Guardián (WDT: watchdog timer) 91

4.6 Modo de reposo o de bajo consumo 91

4.7 Programación de los PIC16F87x 92

Programar PIC es fácil: Utilización de los recursos del PIC 94

Diseñar con PIC es fácil: Ampliación de los recursos del PIC 97

Trang 8

Capítulo 5 LOS TEMPORIZADORES 101

5.1 Tipos y características generales 101

5.2 Estructura interna y funcionamiento del TMR1 102

5.3 Registro de control del TMR1 (T1CON) 103

5.4 Chuleta-resumen de los registros asociados al TMR1 104

5.5 Funcionamiento y programación del TMR2 104

5.6 Chuleta-resumen de los registros asociados al TMR2 106

Programar PIC es fácil: Midiendo el tiempo 107

Diseñar con PIC es fácil: Aplicación de los PIC al control de motores y sensores 114

Capítulo 6 MÓDULOS DE CAPTURA, COMPARACIÓN Y MODULACIÓN DE ANCHURA DE PULSOS 119

6.1 Introducción a los módulos CCP 119

6.2 Modo captura 120

6.3 Modo comparación 121

6.4 Chuleta-resumen de los registros asociados al módulo de captura y al de comparación 122

6.5 Modo de modulación de anchura de pulsos (PWM) 123

6.6 Chuleta-resumen de los registros asociados al módulo PWM 124

Programar PIC es fácil: Trabajo con los módulos CCP 126

Diseñar con PIC es fácil: Aplicación de los microcontroladores: la microbótica 138

Capítulo 7 EL CONVERSOR A/D 143

7.1 Presentación del conversor analógico/digital 143

7.2 Registros de trabajo 143

7.3 Estructura interna y configuración del conversor A/D 145

7.4 Chuleta-resumen de los registros asociados al conversor analógico/digital 150

Programar PIC es fácil: Adquisición de valores con los conversores A/D 151

Diseñar con PIC es fácil: Visualización de valores por pantallas LCD 159

Capítulo 8 MÓDULO DE COMUNICACIÓN SERIE SÍNCRONA 167

8.1 Introducción 167

8.2 Modo SPI 169

8.3 Manejo y programación en el modo SPI 170

Trang 9

8.4 Módulo MSSP trabajando en modo I2C 173

8.5 Conceptos fundamentales sobre el bus I2C 174

8.5.1 Concepto del bus I2C 174

8.5.2 Terminología del bus I2C 176

8.6 Características generales 176

8.6.1 Transferencia del bit 177

8.6.2 Transferencia de datos 178

8.6.3 Arbitraje sin sincronización de reloj 180

8.6.4 Formato 182

8.7 Direccionamiento 183

8.7.1 Definición del primer byte 183

8.8 Especificaciones eléctricas 184

8.8.1 Tiempos 186

8.9 El bus I2C y los PIC16F87x 187

8.10 Chuleta-resumen de los registros usados para el bus I2C 191

8.11 Funcionamiento del modo maestro 191

8.11.1 Condición de inicio (start) 192

8.11.2 Condición de repetición de inicio (start) 192

8.11.3 Modo maestro en transmisión 192

8.11.4 Modo maestro en recepción 193

8.11.5 Secuencia de reconocimiento 193

8.11.6 Condición de parada (stop) 194

Programar PIC es fácil: Comunicación mediante el módulo MSSP 195

Diseñar con PIC es fácil: Comunicación de datos digitales por radio frecuencia 200

Capítulo 9 EL USART: TRANSMISOR/RECEPTOR SÍNCRONO/ASÍNCRONO SERIE 205

9.1 Comunicación serie asíncrona 205

9.2 Generador de baudios 207

9.3 Transmisor asíncrono 209

9.4 Receptor asíncrono 212

Programar PIC es fácil: Comunicación serie con el USART 215

Capítulo 10 CARACTERÍSTICAS Y APORTACIONES DE LA GAMA MEJORADA 221

10.1 El espectacular desarrollo de los PIC18F 221

10.2 Aportaciones específicas 223

10.3 Nomenclatura 224

10.4 Diagrama de conexiones 224

10.5 Encapsulados 227

Trang 10

Capítulo 11 ARQUITECTURA INTERNA 229

11.1 Descripción general 229

11.2 Diagrama de conexionado 232

11.3 Configuración del oscilador 233

10.3.1 Tipos de oscilador 233

10.3.2 El oscilador de cristal 234

10.3.3 Selección del oscilador 235

10.3.4 El registro OSCCON 235

10.3.5 Otros registros de configuración 235

Capítulo 12 LA MEMORIA DE DATOS . 237

12.1 Organización del espacio de datos 237

12.2 Modos de direccionamiento 239

12.2.1 Modo de direccionamiento directo 240

12.2.2 Modo de direccionamiento indirecto 241

12.2.3 Acceso a Banco 241

12.3 El registro de estado (SR) 242

12.4 El registro de control del reset (RCON) 243

12.5 La memoria EEPROM 244

12.5.1 Los registros EEADR y EEADRH 244

12.5.2 Los registros EECON1 y EECON2 244

12.5.3 Lectura de la memoria EEPROM 246

12.5.4 Escritura de la memoria EEPROM 246

Capítulo 13 LA MEMORIA DE PROGRAMA 249

13.1 Organización de la memoria de programa 249

13.2 Operaciones de lectura y escritura de tabla 250

13.3 Los registros de control 250

13.3.1 TABLAT 251

13.3.2 TBLPTR 251

13.3.3 EECON1 y EECON2 252

13.4 Operación de borrado de la memoria FLASH 253

13.5 Escritura de la memoria FLASH 253

13.6 Interfaz para memoria externa 253

13.7 Modo de 16 bits 256

Capítulo 14 LAS INTERRUPCIONES . 259

14.1 Los registros de control de interrupciones 259

14.2 Registro RCON 260

14.3 Registros INTCON 260

14.4 Registros PIR 263

Trang 11

14.5 Registros PIE 264

14.6 Registros IPR 264

Capítulo 15 EL REPERTORIO DE INSTRUCCIONES 267

15.1 Juego de instrucciones estándar 267

15.2 Operaciones orientadas al byte 267

15.3 Operaciones orientadas al bit 272

15.4 Operaciones con literales 273

15.4 Operaciones de control 275

Capítulo 16 PERIFÉRICOS Y RECURSOS ESPECÍFICOS 281

16.1 Las puertas de entrada/salida 281

16.1.1 La Puerta A 281

16.1.2 La Puerta B 282

16.1.3 La Puerta C 283

16.1.4 La Puerta D 284

16.1.5 La Puerta E 284

16.1.6 La Puerta F 285

16.1.7 La Puerta G 286

16.1.8 La Puerta H 286

16.1.9 La Puerta J 287

16.2 Temporizadores 288

16.2.1 El TMR0 288

16.2.2 El TMR1 289

16.2.3 El TMR2 y el TMR4 292

16.2.4 El TMR3 292

16.3 Módulos CCP: Captura, Comparación y Modulación de Anchura de Pulsos 296

16.3.1 Modo captura 297

16.3.2 Modo comparación 298

16.3.3 Modo modulación de anchura de pulsos (PWM) 299

16.4 El conversor A/D 300

16.5 Módulos de comunicación 303

16.6 Módulo comparador 304

16.7 Otras características especiales de la CPU 306

Capítulo 17 INTRODUCCIÓN A LOS MICROCONTROLADORES PIC DE 16 BITS 307

17.1 Introducción 307

17.2 Características generales de los PIC24 307

17.3 Arquitectura de la CPU 309

17.4 Modelo de procesador para el programador 310

Trang 12

17.3 La memoria de programa 313

17.4 La memoria de datos 315

Capítulo 18 LOS dsPIC 317

18.1 Microcontroladores con prestaciones DSP 317

18.2 Microcontroladores y DSC 319

18.3 Clasificación de los DSC 319

18.3.1 Dispositivos dsPIC30F de propósito general 320

18.3.2 Dispositivos dsPIC30F para el control de sensores 320

18.3.3 Dispositivos dsPIC30F para el control de motores y sistemas de alimentación 321

18.4 Encapsulados y diagramas de conexiones 321

18.5 Arquitectura de la CPU 325

18.6 Las memorias 325

18.7 El camino de datos 327

Anexo A LABORATORIO EXPERIMENTAL “PIC School” 329

A.1 Herramientas de desarrollo recomendadas 329

A.2 Fases en el desarrollo de una aplicación con PIC 332

A.3 Experimentos con la gama media 334

A.3.1 Experimento 1: Entradas y salidas digitales 334

A.3.2 Experimento 2: La máquina “Su Turno” 342

A.3.3 Experimento 3: La pantalla LCD 345

A.3.4 Experimento 4: El frecuencímetro 347

A.3.5 Experimento 5: El conversor ADC 352

A.4 Experimentos con la gama mejorada 354

A.4.1 Experimento 6: El multiplicador de 8x8 bits 355

A.4.2 Experimento 7: Modulación Ancho de Banda (PWM) controlado por potenciómetro 356

A.3.3 Experimento 8: Visualización de dos canales analógicos a través del USART 360

A.5 El compilador de C 365

Bibliografía y direcciones de interés relacionadas con los PIC 369

Índice 371

Trang 13

El nombre y logo de Microchip, dsPIC, PIC, PICmicro, PICSTART, PICMASTER, PRO MATE y MPLAB son marcas registradas por Microchip Technology Incorporated en EE.UU y otros países DsPICDEM, dsPIC.net, ICSP: In-Circuit Serial Programming (Programación Serie En Circui- to), ICEPIC, MPASM, MPLIB, MPLINK, MPSIM, PICC, PICkit, PICDEM, PICDEM.net, rfLAB y rfPIC son marcas registradas por Microchip Technology Incorporated en EE.UU y otros países SQTP (Serialized Quick Turn Programming) es una marca de servicio de Microchip Technology In- corporated en EE.UU.

Determinados materiales e informaciones contenidos en esta obra han sido reproducidos con el permiso de Microchip Technology Incorporated No se pueden reproducir ni reeditar dichos mate- riales sin el previo consentimiento escrito de Microchip Technology Incorporated.

Las restantes marcas, logos y productos mencionados en este libro están registrados por sus pectivos propietarios.

res-Marcas registradas

Trang 14

El presente libro configura la segunda parte de una obra destinada al estudio y desarrollo de

aplica-ciones con los microcontroladores PIC de Microchip titulada “Microcontroladores PIC: Diseño Práctico de Aplicaciones” En su primera parte se presenta el PIC16F84, paradigma de la sencillez

y la eficacia, y los módulos BASIC STAMP de Parallax, programados en Ensamblador y PBASIC,respectivamente

El impresionante esfuerzo de Microchip dedicado a la actualización de sus productos ha puesto una masiva comercialización de nuevos modelos que le han alzado al primer puesto del ran-king mundial de microcontroladores de 8 bits desde 2002

su-Esta nueva edición actualizada y ampliada recoge, además de los microcontroladores de la

ga-ma media PIC16F87X, a los PIC18F de la gaga-ma mejorada que están teniendo una gran aceptación,

y contiene una introducción a los modernos microcontroladores de 16 bits de las familias PIC24F

y PIC24H, así como a los Controladores Digitales de Señales (DSC) materializados en las familiasdsPIC

En los capítulos iniciales destinados a los PIC16F87X se mantiene la estructura de la primera

par-te de la obra en la que cada capítulo se divide en tres parpar-tes La primera es la “Teoría” en la que sedescribe el bloque al que se dedicaba el capítulo La segunda “Programar es fácil” presenta nume-rosos ejercicios, programas y proyectos, y la tercera, “Diseñar con PIC es fácil” se analizan perifé-ricos, tarjetas comerciales y nuevos diseños comerciales relacionados con los recursos estudiados.Este libro consta de 18 capítulos y un anexo, de los cuales los 9 primeros están dedicados a losPIC16F87X Desde el Capítulo 10 al 16 se hace un estudio en profundidad de la arquitectura, elfuncionamiento y la programación de los PIC18F El Capítulo 17 ofrece una introducción sobre losmicrocontroladores de 16 bits comercializados en las familias PIC24F y PIC24H Finalmente elCapítulo 18 ofrece las principales características y aplicaciones de los Controladores Digitales deSeñales, que reunidos en las familias dsPIC, combinan lo mejor de los microcontroladores de 16bits y de los DSP

El Anexo A es un tutorial experimental que recoge una colección de proyectos de dificultad gresiva y completamente resueltos a nivel hardware y software implementados en base al fantásti-

pro-co sistema de desarrollo PIC School diseñado y pro-comercializado por Ingeniería de Microsistemas Programados S L (www.microcontroladores.com) Los experimentos y programas de este anexo

hacen un recorrido práctico sobre todos los recursos y periféricos de los PIC16F87X y delPIC18F4520, que culmina con la utilización del compilador de C y la resolución de programas

xiii

Prólogo

Trang 15

Agradecemos muy sinceramente el soporte técnico recibido por Microchip desde su sede central

y desde su representación en Madrid Todos los nombres, informaciones y productos de Microchip

a los que se hace mención en este libro están protegidos por marcas registradas y patentes en todo

el mundo, no estando permitido reproducirlos sin el permiso escrito del fabricante También

reco-nocemos la excelente colaboración que nos ha prestado Ingeniería de Microsistemas Programados

S L que ha puesto a nuestra disposición todas las herramientas que hemos necesitado para

desa-rrollar los temas prácticos de esta obra Igualmente quedamos muy agradecidos a los Sres Benito

Moreno y Pepe Bustamante de Sagitron y a nuestros amigos Goyo y Jorge de Bilbao Electrónica.

Trang 16

1.1 IMPORTANCIA DE LOS MICROCONTROLADORES PIC

Microchip, fabricante de los microcontroladores PIC, se mantiene desde el año 2002 como líder

mundial de ventas de microcontroladores de 8 bits Como se aprecia en el gráfico de la Figura 1.1,

en el año 2005 el mencionado fabricante facturó un total de 847 millones de dólares, de los cuales

675 procedieron de las ventas de microcontroladores (MCU)

Las ventas de los productos de Microchip son absorbidos en un 43% por Asia y Japón, mientrasque Europa soporta el 28% y América el 29%

En cuanto a los segmentos de mercado a los que se destinan los microcontroladores PIC

desta-ca el área genéridesta-ca de la Electrónidesta-ca de Consumo con el 35%, seguida por la industria de ción con el 18% (Figura 1.2.)

automo-1

La familia de

microcontroladores PIC

Figura 1.1. Gráfico que muestra el aumento de las ventas anuales de Microchip en las que destaca

el porcentaje debido a los microcontroladores (MCU).

AÑO 95 AÑO 96 AÑO 97 AÑO 98 AÑO 99 AÑO 00 AÑO 01 AÑO 02 AÑO 03 AÑO 04 AÑO 05

Trang 17

Figura 1.2. Distribución de las ventas de microcontroladores PIC en los principales segmentos del

mercado.

AUTOMOCION 18%

CONSUMO 35%

INDUSTRIA 17%

COMUNICACIONES 13%

OFIMATICA 17%

Figura 1.3. El gráfico recoge el espectacular crecimiento del número de diferentes modelos de

microcontroladores PIC de 8 bits.

AÑO 95 AÑO 96 AÑO 97 AÑO 98 AÑO 99 AÑO 00 AÑO 01 AÑO 02 AÑO 03 AÑO 04

Microchip tiene una gran preocupación por el cumplimiento de las normas ecológicas y ofrece

una selección de sus productos, cada vez más numerosa, libre de plomo Además, el éxito y tación de los microcontroladores de este fabricante viene avalado por la oferta creciente de los mo-delos que comercializa y que se aprecia en el gráfico de la Figura 1.3

acep-La gran diversidad de modelos de microcontroladores permite al diseñador encontrar el que tenga todos los recursos y capacidades de memoria que precisa para su aplicación (Figura 1.4.)

con-La tecnología empleada en la fabricación de los dispositivos PIC ha pasado de las 0,7 micras

en 1998 a las 0,22 micras en 2006 Esto ha supuesto una reducción en el voltaje de alimentación,que ha pasado de estar comprendida entre 2 y 5,5 V, para funcionar con 5V, a un margen entre 2 y3,6 V, siendo la nominal de 3,3 V aunque las E/S siguen trabajando con 5V (Figura 1.5.)

Una de las grandes ventajas de los microcontroladores de Microchip es su “migrabilidad”, que

significa la posibilidad de cambiar de modelo de MCU y pasar a otro más potente con más dad de memoria y periféricos, manteniendo la distribución de las patitas en el encapsulado o “pin-out”, la compatibilidad del software y del repertorio de instrucciones, la compatibilidad de los peri-féricos y la de las herramientas de desarrollo

Trang 18

capaci-1.2 CLASIFICACIÓN DE LOS MICROCONTROLADORES PIC

Estos microcontroladores o MCU se caracterizan por su arquitectura Harvard con memorias de grama y de datos independientes, lo que permite la accesibilidad simultánea y la diversidad en lalongitud de las posiciones y el tamaño de ambas memorias (Figura 1.6.)

pro-Genéricamente los microcontroladores se clasifican según el tamaño de los datos que maneja el

repertorio de instrucciones y existen 4 grandes grupos: de 4, de 8, de 16 y de 32 bits Microchip

só-lo fabrica microcontroladores de 8 y de 16 bits y como se ha indicado es el líder mundial en ventasdel primer grupo

1.3 MICROCONTROLADORES PIC DE 8 BITS

Se distinguen porque la longitud de los datos nativos que manejan las instrucciones es de 8 bits, que

se corresponde con el tamaño del bus de datos y el de los registros de la CPU

Figura 1.4. La variedad de dispositivos PIC con sus distintas configuraciones permite encontrar el

modelo que cumpla con las especificaciones de cualquier proyecto.

PICmicro®

MICROCONTROLADORES

O DSC (dsPIC)

Buses de Comunicación

Controladores Refrigeración Conversor D/A

Drivers de Potencia

Procesamiento

de voz

Motores Relés

LCD

LED

Funciones DSP de Encriptación

Filtros Amplificadores

Potenciómetro

digital

Voltaje de Referencia

E/S de Voltaje Alto

Comunicaciones

Trang 19

Figura 1.5. Evolución de la tecnología de fabricación desarrollada por Microchip junto a la de la

tensión correspondiente de alimentación.

0.7m

FLASH/EPROM/ROM

120K

2 – 5.5V (NÚCLEO y E/S)

1998 2001 2003 2006

Figura 1.6. La arquitectura Harvard dispone de dos memorias independientes permitiendo que la

longitud de las posiciones y la capacidad de cada una sea la más adecuada.

Los microcontroladores PIC de 8 bits se clasifican en tres grandes gamas: Base, Media y rada, con un total de unos 300 modelos diferentes que contienen distintas capacidades de memoria,periféricos y distintos tipos de encapsulados (Figura 1.7.)

Trang 20

Mejo-1.3.1 La gama Base

Los modelos de esta gama se caracterizan porque responden a un juego de 33 instrucciones

máqui-na de 12 bits de longitud cada umáqui-na y disponen de umáqui-na Pila con sólo dos niveles de profundidad Suscapacidades de memoria al igual que el número de recursos internos son reducidos, lo que limita sucampo de aplicación Está compuesta por 14 modelos, de los cuales 6 están encapsulados sólo con

6 patitas, por lo que se les suele apodar “enanos” (Figura 1.8.)

Figura 1.7. Los microcontroladores PIC de 8 bits se clasifican en 3 grandes gamas: Base, Media y

PIC10F2XX PIC12F5XX PIC16F5XX

Figura 1.8. Posicionamiento de los 14 dispositivos PIC de la gama Base teniendo en cuenta su

capacidad de memoria de programa y las patitas con las que están encapsulados.

PIC10F222

PIC12F508 PIC12F509 PIC12F510

PIC16F505 PIC16F506

Trang 21

Los PIC enanos de 6 patitas tienen un gran éxito comercial para resolver aplicaciones simplespor su reducido volumen y precio En ellos la alimentación se aplica a 2 de las patitas, quedan-

do las 4 restantes para las E/S y las funciones de sus periféricos, entre los que se encuentra untemporizador o Timer, un Comparador analógico, un CAD de 8 bits, Perro Guardián, etc VéaseFigura 1.9

Figura 1.9. Los PIC enanos de 6 patitas de la gama Base ofrecen una capacidad de memoria

y un conjunto de recursos internos suficientes para resolver multitud de aplicaciones sencillas.

Timer 0 (8)

MEM PROG.:

256/512 w RAM

F204

512w RAM 24

po-la finalidad de facilitar po-la migrabilidad

El aumento del número de patitas significa el incremento en las capacidades de memoria y en elnúmero de los periféricos y recursos integrados en el dispositivo

1.3.2 La gama Media

Los microcontroladores que componen esta gama responden a un repertorio de 35 instrucciones con

un formato de 14 bits de longitud cada una, teniendo la Pila 8 niveles de profundidad y

disponien-do de un vector de interrupción Es una gama numerosa que alcanza en la actualidad 71 modelos ferentes, que comienza con los que se hallan encapsulados con 8 patitas y llegan hasta los que tie-nen 68 patitas En la Figura 1.12 se presentan los aspectos más relevantes de algunos PIC de la gamaMedia de 8 patitas y otros con más

di-En la Figura 1.13 se presenta junto a la nomenclatura o designación de los PIC de la gama dia las principales características que les distinguen

Trang 22

Me-LA F

Figura 1.10 Principales características de los PIC de la gama Base Recientemente se comercializan 4 nuevos modelos: PIC10F220,

PIC10F222, PIC12F510 y PIC16F506, cuyas características pueden consultarse en el sitio en Internet del fabricante.

** Requiere un módulo adaptador específico ICD.

MODELO PROG.

Words

RAM Bytes

VOLTAJE (V) ADC

CANALES COMP. Timers /WDT

PIC10FXXX

Trang 23

Figura 1.11 Para favorecer la migrabilidad se mantiene la asignación de las funciones de las patitas en

los modelos de 8, 14 y 20 patitas.

RA0 RA1 RA2 RC0 RC1 RC2 RB4 RB5 RB6

RA5 RA4 RA3 RC5 RC4 RC3 RC6 RC7 RB7

Int RC + Osciladores

Timer0(8) Timer1(16) Timer2(8)

ADC de 10 bits

Comparador Analógico +Vref

F675 F615 F629

8 patitas

6 E/S*

FLASH: 1kw RAM 64 E2P 128

ADC, 4 can 1Comparador Analógico

ADC 4 can Reg Int

E2P 0 -

F914 F916 F913

4kw RAM:256

EEPROM:256 28pat 40pat.

F946 F917 8kw RAM:352 RAM 336

28pat 40pat 64pat.

25E/S 35E/S 25E/S 35E/S 25E/S LCD

16/60 LCD 24/96 LCD 16/60

LCD 24/96 LCD 24/96

5 x ADC

8 x ADC

5 x ADC 8 x ADC1xCCP 2xCCP 1xCCP 2xCCP

Figura 1.12 Características relevantes de algunos PIC de la gama Media con 8 patitas junto a otros

de más patitas.

Trang 24

RAM Bytes

CCP/

ECCP nW ADC

CANALES COMP.

Timers /WDT

1-8BIT 1-16BIT 1-WDT

1-8BIT 1-16BIT 1-WDT

1-16BIT 2-8BIT 1-WDT

PIC16CXXX

1-8BIT 1-16BIT 1-WDT

Trang 25

-MICROCONTROLADORES «PIC» DISEÑO PRÁCTICO DE APLIC

RAM Bytes

LINEAS E/S ENCAPSULADOS

Analógico Digital FREC.

CCP/

ECCP nW ADC

CANALES COMP.

Timers /WDT

USART,

-1-16BIT 2-8BIT 1-WDT

I 2

-1-16BIT 2-8BIT 1-WDT

USART, Baja vel.

USB

-1-16BIT 2-8BIT 1-WDT

USART, Baja vel.

USB

-1-16BIT 2-8BIT 1-WDT

MI 2

Trang 26

RAM Bytes

CCP/

ECCP nW ADC

CANALES COMP.

Timers /WDT

-1-16BIT 2-8BIT 1-WDT

1-16BIT 2-8BIT 1-WDT

-1-16BIT 2-8BIT 1-WDT

I 2

-1-16BIT 2-8BIT 1-WDT

1-16BIT 2-8BIT 1-WDT

1-16BIT 2-8BIT 1-WDT

1-8BIT 1-16BIT 1-WDT

1-8BIT 1-16BIT 1-WDT

Trang 27

MICROCONTROLADORES «PIC» DISEÑO PRÁCTICO DE APLIC

RAM Bytes

LINEAS E/S ENCAPSULADOS

CCP/

ECCP nW ADC

CANALES COMP.

Timers /WDT

1-16BIT 2-8BIT 1-WDT

1-8BIT 1-16BIT 1-WDT

-1-16BIT 2-8BIT 1-WDT

-1-16BIT 2-8BIT 1-WDT

-1-16BIT 2-8BIT 1-WDT

USART

1-16BIT 2-8BIT 1-WDT

USART,

1-16BIT 2-8BIT 1-WDT

USART,

I 2

Trang 28

RAM Bytes

CCP/

ECCP nW ADC

CANALES COMP.

Timers /WDT

-1-16BIT 2-8BIT 1-WDT

-1-16BIT 2-8BIT 1-WDT

-1-16BIT 2-8BIT 1-WDT

-1-16BIT 2-8BIT 1-WDT

1-16BIT 2-8BIT 1-WDT

AUSART,

1-16BIT 2-8BIT 1-WDT

AUSART,

MI 2

Trang 29

-MICROCONTROLADORES «PIC» DISEÑO PRÁCTICO DE APLIC

RAM Bytes

LINEAS E/S ENCAPSULADOS

Analógico Digital FREC.

CCP/

ECCP nW ADC

CANALES COMP.

Timers /WDT

BOR

-Figura 1.13 Características de algunos modelos de la gama Media Recientemente se comercializan nuevos modelos: PIC16F639,

PIC16F685, PIC16F687 PIC16F689, PIC16F690, PIC16F785 y PIC16F946, cuyas características pueden consultarse en la web del fabricante.

** Requiere un módulo adaptador específico ICD.

Trang 30

1.3.3 La gama Mejorada

Dispone de un repertorio de 77 instrucciones de 16 bits de longitud cada una, una Pila con 31 les de profundidad y 2 vectores de interrupción Los modelos PIC que conforman esta gama res-ponden a la nomenclatura PIC18Xxxx, dedicándose la Figura 1.14 al significado de cada uno de loscampos

nive-Figura 1.14 Significado de cada uno de los campos que componen la nomenclatura de los PIC18Xxxx

8:>68-100 9: >100 o más

PIC18VTABCD

ESPECIFICACIÓN CPU

TECNOLOGÍA DE MEMORIA

C-OTP R-ROM F-FLASH

ESPECIFICACIÓN VOLTAJE

N/A-Normal

B-Tamaño de memoria de programa

de instrucción La Figura 1.15 muestra las características específicas de un conjunto de dispositivos

de la gama Mejorada de 64 y de 80 patitas

Finalmente, en la Figura 1.16 se ofrece la tabla de algunos modelos que componen esta gamacon sus principales características

Trang 31

Figura 1.15 Recursos y características de algunos dispositivos de la gama Mejorada de 64 y 80

POR ICSP BOR

8627 8722 8622

Multiplicador

HW

PLVD

6622 6627 6527

64 patitas

8529 6722

80 patitas

54 E/S 70 E/S

96k 128k 64k

64k 96k 48k 128k 48k

RAM:3936 EEPROM: 1024

Acceso a Memoria

Externa

1.4 MICROCONTROLADORES PIC DE 16 BITS

Los requerimientos técnicos que exigen las modernas aplicaciones precisan microcontroladores

más potentes que los de 8 bits y, para poderlas atender, Microchip ha diseñado nuevos

dispositi-vos que manejan en modo nativo datos de 16 bits y que se integran en arquitecturas de mayorcomplejidad

Hay dos grandes gamas de microcontroladores de 16 bits:

1.4.1 Gama de microcontroladores MCU de 16 BITS

La primera familia de esta gama comercializada por Microchip es la de los modelos con la

nomen-clatura genérica PIC24F que se fabrican con una tecnología de 0,25 micras, alcanza un

rendimien-to de 16 MIPS a 32 MHz y está orientada a resolver aquellos diseños que no podían ser cubierrendimien-toscon los PIC18Xxxx

Los PIC24F poseen una arquitectura Harvard modificada con un bus de datos de 16 bits y coninstrucciones de una longitud de 24 bits Pueden manejar una memoria de programa lineal de hasta

8 MB y una de datos de hasta 64 KB (Figura 1.17.)

Trang 32

RAM Bytes

CCP/ ECCP nW ADC

CAN2.CB,

MI 2 C/SPI, EUSART

32KHz PBOR

MI 2 C/SPI, EUSART, AUSART

32KHz PBOR

MI 2 C/SPI, EUSART, AUSART

32KHz PBOR

MI 2 C/SPI, EUSART, AUSART

32KHz PBOR

MI 2 C/SPI, EUSART, AUSART

32KHz PBOR

2x AUSART,

MI 2 C/SPI

2x EUSART,

MI 2 C/SPI

32KHz PBOR

EUSART,

MI 2 C/SPI, CAN2.CB

2x EUSART,

MI 2 C/SPI

32KHz PBOR

2x EUSART,

MI 2 C/SPI

32KHz PBOR

Trang 33

MICROCONTROLADORES «PIC» DISEÑO PRÁCTICO DE APLIC

RAM Bytes

LINEAS E/S ENCAPSULADOS

Analógico Digital FREC.

CCP/

ECCP nW ADC

EUSART,

MI 2 C/SPI, CAN2.CB

2x EUSART,

MI 2 C/SPI

32KHz PBOR

MI 2 C/SPI, EUSART, AUSART

32KHz PBOR

MI 2 C/SPI, EUSART, AUSART

32KHz PBOR

MI 2 C/SPI, EUSART, AUSART

32KHz PBOR

MI 2 C/SPI, EUSART, AUSART

32KHz PBOR

Trang 34

El núcleo del procesador se alimenta con 2,5 V, aunque las líneas de E/S se alimentan con 3,3 V

y pueden funcionar con los típicos niveles TTL de 5 V Hay 9 modelos diferentes de PIC24F cuyasprincipales características se ofrecen en la Figura 1.18

Figura 1.17 Diagrama por bloques que muestra los principales recursos que conforman los

microcontroladores de 16 bits PIC24F.

GP I/O UART(2)

I 2

C TM

(2) SPI TM

(2) RTCC PMP JTAG y Emul.

Interfaz

Multiplicador

16 X 16

Registro de Desplazamiento

Generación de direcciones

ALU-16 bit

Banco de Registros

16 x 16

BUS DE MEMORIA PROCESADOR DE 16 BITS y 16 MIPS

Memoria de programa (bytes) 128 K

Memoria de instrucciones (words) 42 K

Memoria de datos (bytes) 8 K

Sobrepasamiento de la Pila (PWRT, OST)

#MCLR (optional) WDT

Programación con voltaje bajo

Reset programable Brown-out

Set de instrucciones 76 instrucciones la mayoría de 24 bits

Encapsulados De 64 a 100 patitas

Figura 1.18 Principales características de los 9 modelos de la familia PIC24F.

Trang 35

La otra familia de microcontroladores MCU de 16 bits sigue la nomenclatura PIC24H y zan un rendimiento de 40 MIPS, pudiendo disponer de una memoria de programa FLASH de has-

alcan-ta 256 KB y una RAM de hasalcan-ta 16 KB Todos sus modelos están encapsulados en formato TQFPcon 64, 80 y 100 patitas Su principal aportación frente a los PIC24F es la de incluir un Controlador

de DMA con 8 canales (Figura 1.19.)

1.4.2 Gama de microcontroladores DSC de 16 bits

Estos microcontroladores de 16 bits añaden a las prestaciones típicas de los MCU anteriores los cursos hardware y software propios de los DSP (Procesadores Digitales de Señales) lo que permiteutilizarlos en las extraordinarias aplicaciones relacionadas con el procesado digital de señales In-

re-tentan aprovechar todas las ventajas de los microcontroladores MCU y de los DSP y Microchip les

identifica con el nombre DSC: Controladores Digitales de Señales

Los DSC constan de dos familias, la dsPIC30F y la dsPIC33F Los modelos de la familia dsPIC30Ftienen importantes capacidades de memoria, contienen la mayoría de los recursos y periféricos y tie-nen un rendimiento de 30 MIPS cuando se les alimenta con un voltaje comprendido entre 4,5 y 5,5 V.Incorporan un “motor DSP” en el Camino de Datos que les permite realizar las instrucciones que rea-

Modelo Patitas FLASH

(KB) RAM

CANALES DMA

Timer 16-bit

Módulo Capt.

Módulo Comp ADC UART SPI TM

Trang 36

lizan las operaciones matemáticas típicas de los algoritmos usados en el procesamiento digital de lasseñales Según la orientación práctica de los modelos los dsPIC30F se dividen en tres categorías:

a) dsPIC30F de Propósito General, con 8 modelos.

b) dsPIC30F de Control de Motores, con 9 modelos.

c) dsPIC30F para Control de Sensores, con 4 modelos.

Los dispositivos pertenecientes a la familia dsPIC33F son compatibles con los dsPIC30F puestoque tienen el mismo repertorio de instrucciones, la misma distribución del patillaje y utilizan las mis-mas herramientas de desarrollo Sin embargo los dsPIC33F se distinguen por las siguientes cualidades:

Figura 1.20 Relación de algunos modelos de dsPIC30F destinados al Control de Motores con sus

características.

Modelo Patitas Mem de

programa

RAM Bytes

EEPROM Bytes

Timer 16-bit

Módulo Capt.

Módulo Comp. PWM

CAD

10 bits

500 ksps QEI UART SPI TM

I 2

C TM CAN

1 Se alimentan con 3,3 V aunque las E/S pueden trabajar con niveles TTL.

2 Incorporan un Controlador DMA de 8 canales.

3 Aumenta el número de interrupciones y excepciones.

4 Alcanza un rendimiento de 40 MIPS.

5 Posee un interfaz para CODEC.

6 Hay modelos con 256 KB de memoria FLASH y 30 KB de RAM.

Existe un total de 27 dispositivos dsPIC33F, 15 de los cuales se encuadran dentro de los de pósito General y el resto en el de Control de Motores (Figura 1.21.) No disponen de EEPROM.Los modelos dsPIC33F de Propósito General son adecuados para aplicaciones de voz y audio,seguridad, electromedicina, módem, etc Los agrupados en el Control de Motores se orientan a loselectrodomésticos como las lavadoras, al control de la dirección electrónica de automóviles, controlmedioambiental, sistemas de alimentación ininterrumpible, inversores y a matrices de iluminacióncon LED En la Figura 1.22 se muestra el diagrama por bloques correspondiente a la estructura in-terna de los dsPIC33F

Trang 37

Pro-Modelo Patitas FLASH

(Kbyte) (Kbyte) RAM

Timer

16 bits

Módulo Capt.

Módulo Comp.

Convertidor ADC UART SPI TM

Figura 1.21 Tabla con las características principales de algunos modelos de la familia dsPIC33F.

Figura 1.22 Diagrama por bloques de la estructura interna de los dsPIC33F.

Temporizador 16 bits

Watchdog CAD de 12 bits y 16 canales CAD de 12 bits y 16 canales UART(2)

I 2

C TM

(2) SPI TM

(2) CAN (1-2) CODEC I/F MOTOR

Multiplicador

17 X 17

Generación de direcciones

Control de Motores

DMA

ALU-16 bit Banco de Registros

16 x 16

Trang 38

RECORDANDO EL VIEJO PIC16F84

En esta sección demostraremos, capítulo a capítulo, que la programación de los nuevos PIC hacemás sencilla la realización de ciertas tareas en muchos casos, como consecuencia de sus recursos.Todo es cuestión de probar y no quedarse en meros espectadores, así que manos a la obra que co-mienza la función y usted es el principal actor

lí-El programa debe mostrar cuándo el valor lógico que introducen ambos interruptores es cero

Pa-ra ello, si los dos interruptores introducen por la Puerta A nivel lógico 0, los LEDs de la Puerta Bdeben encenderse, y en los demás casos permanecen apagados

Esquema eléctrico

Tras entender lo que se pide hay que especificar el esquema eléctrico del circuito para saber cómoestán conectados los periféricos (Figura 1.23.) En dicho esquema se representa el PIC, con los ele-mentos auxiliares que siempre necesita (cristal, alimentación y circuito de reset), y los periféricos

de entrada/salida que se utilizan en cada momento

En este ejercicio tanto los interruptores como los LEDs están conectados para ser activos por vel alto En el caso de los interruptores este hecho no altera la resolución del problema, pero si losLED estuvieran conectados para activarse por nivel bajo, el valor para encenderlos y apagarlos se-ría justamente el contrario

ni-Organigrama

Otra práctica muy recomendable antes de empezar a programar es plasmar en un organigrama la

for-ma de resolver el problefor-ma (Figura 1.24.)

Cuanto más complicado sea dicho enunciado, más abstracto será el organigrama, pudiendo cluso necesitarse varios para llegar a un nivel aceptable de concretización Al contrario, si el pro-blema es sencillo el programa es casi una traducción inmediata del organigrama a código

in-Programar PIC es fácil

23

Trang 39

Figura 1.23 Esquema eléctrico correspondiente al ejercicio propuesto.

Figura 1.24 Organigrama del ejercicio.

Trang 40

Programa comentado

Una vez dados estos pasos previos estamos en disposición de comenzar la programación

Vamos a seguir unas reglas básicas a la hora de escribir los programas que, aunque no son gatorias, facilitan la lectura y la comprensión

obli-Siguiendo estas normas y en base al esquema eléctrico y al organigrama se obtiene el programaque aparece bajo estas líneas Antes de continuar, ¿por qué no intenta resolverlo usted mismo y com-prueba luego cómo anda su práctica de programación con los PIC? Recuerde que no hay un modoúnico de resolución y que se aprende practicando y cometiendo errores

serán escritas en minúsculas.

; procesador

; hexadecimal

; los registros internos en

; utilizadas de Puerta A

Ngày đăng: 16/12/2019, 17:04

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w