el picaxe microcontroladores el picaxe carlos e. canto quintal m.c

38
El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C.

Upload: abraam-vasquez

Post on 11-Apr-2015

121 views

Category:

Documents


9 download

TRANSCRIPT

Page 1: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

El PICAXEEl PICAXE

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 2: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

¿Qué es un microcontrolador PICAXE?

¿Qué es un microcontrolador PICAXE?

Un PICAXE es un microcontrolador estándar de Microchip PICmicro™ que ha sido pre-programado con el código de bootstrap PICAXE( de Revolution Education).

El código bootstrap habilita al microcontrolador PICAXE para que pueda ser re-programado directamente vía una simple conexión serie.

Esto elimina la necesidad de un (costoso) programador convencional, haciendo el sistema total de descarga un simple cable serie de muy bajo costo.

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 3: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

El programa de descarga también contiene rutinas comunes (tales como generar un retardo o un sonido de salida), tal que cada descarga no tiene que perder tiempo descargando estos datos comúnmente requeridos. Esto hace que el tiempo de descarga sea mucho más corto.

El programa de descarga PICAXE no está disponible para programarse en microcontroladores en blanco.

Se debe comprar el microcontrolador PICAXE (más que microcontroladores en blanco, no programados ) para usar en el sistema PICAXE.

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

¿Qué es un microcontrolador PICAXE?

¿Qué es un microcontrolador PICAXE?

Page 4: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

¿ Cúal chip PICAXE ?¿ Cúal chip PICAXE ?

El sistema PICAXE puede ser usado con 4 tamaños de chips PICAXE (8, 18, 28 y 40 pines).

La principal diferencia entre los tamaños de chips es el número de pines disponibles para entradas /salidas

– mientras más grande el chip un poco más alto es el costo pero se tienen más pines disponibles de entrada/salida.

Se programa en lenguaje Basic que es común para todos los tamaños de chips.

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 5: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Tabla que muestra las principales diferencias funcionales entre los microcontroladores PICAXE.

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 6: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Distribución de terminales de los PICAXE

Page 7: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Diagramas de terminales para los dispositivos de 28 pines

Diagramas de terminales para los dispositivos de 28 pines

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 8: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Circuito de descarga SerialCircuito de descarga SerialMicrocontroladores Microcontroladores

EL PICAXE

Carlos E. Canto Quintal M.C.

El circuito de descarga Serial es idéntico para todos los chips PICAXE .

Consiste de 3 alambres del chip PICAXE al puerto serial de la PC.

Un alambre envía datos de la PC a la entrada serial del PICAXE, un alambre transmite datos de la salida serial del PICAXE a la computadora , y el tercer alambre proporciona la tierra común.

Page 9: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

El circuito mínimo para descargaMicrocontroladores Microcontroladores

EL PICAXE

Carlos E. Canto Quintal M.C.

Page 10: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

El circuito mínimo para descarga

El circuito mínimo para descarga

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 11: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Circuito mínimo de descarga Circuito mínimo de descarga Microcontroladores Microcontroladores

EL PICAXE

Carlos E. Canto Quintal M.C.

Page 12: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Circuito de descarga Serial Circuito de descarga Serial

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Serial In

Serial out

0 V

PC Rx

PC Tx

GND

PICAXE

10kW 22kW

Construcción del cable serial usando un jack estereo

Page 13: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Circuito mejorado de Descarga Serial

Circuito mejorado de Descarga Serial

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

(1)

(2)

(3)

Page 14: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

El circuito mínimo de operación de los dispositivos de 8 pines

El circuito mínimo de operación de los dispositivos de 8 pines

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

• Ninguno de los PICAXE de 8 terminales tienen terminal de RESET por lo tanto para resetear el microcontrolador la fuente de poder debe ser desconectada y después reconectada .

Page 15: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

El circuito mínimo de operación de los dispositivos de 18 pines

El circuito mínimo de operación de los dispositivos de 18 pines

• Todos los PICAXE de 18,28 y 40 tienen una terminal para “reset”. Esta terminal debe estar en alto para que el microcontrolador PICAXE funcione, si la terminal se deja sin conectar el microcontrolador no funciona .

Para conectar este pin a alto, conecte una resistencia de pull-up entre el pin y V+. Un Push button conectado entre la terminal de reset y tierra, nos proporciona un reset manual.

Page 16: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

El circuito mínimo de operación de los dispositivos de 28 pines

El circuito mínimo de operación de los dispositivos de 28 pines

Page 17: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

PICAXE FAQ: PICAXE FAQ: Microcontroladores Microcontroladores

EL PICAXE

Carlos E. Canto Quintal M.C.

¿ Es necesario conectar las entradas o salidas no usadas ?No, las entradas o salidas no usadas pueden mantenerse sin conectar en forma segura, siempre y cuando no se usen como referencia dentro del programa de control

!Compré unos PICs en blanco y no trabajan con el sistema PICAXE !El microcontrolador PICAXE no es un PIC en blanco. Es un microcontrolador que ha sido pregrabado con un programa “BOOTSTRAP” que lo habilita para descargar directamente vía un cable ( el programa bootstrap le dice al microcontrolador como interpretar los comandos de programación del cable directo). Por eso es que se debe comprar microcontroladores PICAXE , más que microcntroladores en blanco, para usar con el sistema PICAXE.

He programado un micrcontrolador PICAXE usando un programador convencional y ahora no trabaja con el sistema PICAXE¡ Se ha sobreescrito , y por lo tanto se borró el programa bootstrap del PICAXE . El micrcontrolador ya no podrá se usado como un microcontrlador PICAXE, pero naturalmente se puede continuar usando con el programador convencional.

Page 18: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

¿Se necesita borrar el dispositivo? ¿ Cómo paro el programa que está corriendo en el microcontrolador PICAXE?Cada descarga automáticamente sobreescribe la totalidad del programa previo. Por lo general no es necesario borrar la memoria en mingún punto. Sin embargo si se desea parar un programa corriendo se puede seleccionar el menú “Clear Hardware Memory” para descargar un programa “vacío” a la memoria del PICAXE.

¿Hasta cuántas veces puede ser programado el PICAXE?La hoja de datos del fabricante establece que el dispositivo puede ser reprogramado al menos 10,000 veces . En la práctica el número puede ser mucho mayor.

¿Qué tan rápido opera el PICAXE? Los microcontroladores PICAXE-08/18 tienen un resonador interno de 4 Mhz, y el PICAXE-28 usa un resonador cerámico externo de de 4 MHz. Esto significa que el microcontrolador procesa 1 millón de comandos en ensamblador por segundo, lo cual equivale a aproximadamente 10,000 comandos BASIC por segundo.

PICAXE FAQ: PICAXE FAQ: Microcontroladores Microcontroladores

EL PICAXE

Carlos E. Canto Quintal M.C.

Page 19: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

PICAXE FAQ: PICAXE FAQ: Microcontroladores Microcontroladores

EL PICAXE

Carlos E. Canto Quintal M.C.

¿Se pueden controlar servos usando el PICAXE?Si, el sistema PICAXE-28tiene un comando “servo” que permite controlara hasta 8 servos (uno en cada salida).

 ¿ Se puede controlara un display LCD?Si, el PICAXE soporta módulos seriales LCD (como el módulo Serial LCD/Clock AXE033) viá el comando “serout”. Note que el el AXE033 también puede ser preprogramado hasta con 8 mensajes para reducir el uso de la memoria del microcontrolador PICAXE.

Page 20: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Arquitectura del PICAXE

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 21: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Procesadores usados

Variante PICmicro Flash RAM [1] EEPROM

PICAXE-08 12F629 1K None [2] 128 [3]PICAXE-08M 12F683 2K 48 : $50-$7F 256 [3]PICAXE-18 16F627 1K 96 : $50-$7F / $C0-$EF [4] 128 [3]PICAXE-18A 16F819 2K 48 : $50-$7F 256 [3]PICAXE-18X 16F88 4K 96 : $50-$7F / $C0-$EF 256 [5]PICAXE-28 16F872 2K 48 : $50-$7F 64+256 [5][6]PICAXE-28A 16F872 2K 48 : $50-$7F 64+256 [5][6]PICAXE-28X 16F873A 4K 112 : $50-$7F / $C0-$FF 128 [5]PICAXE-40X 16F874A 4K 112 : $50-$7F / $C0-$FF 128 [5]

[1] SFR disponible para el usuario usando los comandos PEEK y POKE [2] No soporta los comandos PEEK y POKE[3] El programa del usuario almacenado en EEPROM, comparte la EEPROM de datos [4] No se recomienda usar $C0--$FF para retener compatibilidad hacia arriba.[5] EEPROM de datos separada del programa del usuario[6] 64 bytes usan READ/WRITE, más 256 bytes que usan READMEM/WRITEMEM

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 22: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Interfase Básica

Variante Entrada Digital Salida Digital Entrada Análoga PWM SERVO

PICAXE-08 1-4 [1] 1-4 [1] 0-1 Low Res [2] 0-4 Burst [3] No

PICAXE-08M 1-4 [1] 1-4 [1][4] 0-3 [2] 0-1 Continuous 0-4

PICAXE-18 2-5 [2] 8 0-3 Low Res [2] No No

PICAXE-18 2-5 [2] 8 0-3 [2] No 0-8

PICAXE-18X 2-5 [2] 8 [4] 0-3 [2] 0-1 Continuous 0-8

PICAXE-288 8 4 No 0-8

PICAXE-28 8 8 4 No 0-8

PICAXE-28X 0-12 [1][2] 8-16 [1][4] 0-4 [2] 0-2 Continuous 0-8

PICAXE-40X 8-16 [1] 8-16 [1][4] 3-7 [2] 0-2 Continuous 0-8

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 23: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Interfase Avanzada

Variante I2C [1] Temp [2] Serial Num [3] IR [4] Keyboard [5] PICAXE-08 - - - - -PICAXE-08M - Yes Yes Yes [6] -PICAXE-18 - - - - -PICAXE-18A - Yes Yes Yes YesPICAXE-18X Yes Yes Yes Yes YesPICAXE-28 - - - Yes -PICAXE-28A - Yes - Yes -PICAXE-28X Yes Yes Yes Yes YesPICAXE-40X Yes Yes Yes Yes Yes

[1] General Purpose I2C / DS1307 Clock - I2CSLAVE, READI2C, WRITEI2C[2] DS18B20 One-Wire Temperature Sensor - READTEMP, READTEMP12[3] One-Wire Serial Number - READOWSN[4] IR Input Sensor - INFRAIN, IF INFRA[5] PC keyboard Interface - KEYIN, IF KEYVALUE, KEYLED[6] IR Input and Output Interfaces - INFRAIN2, INFRAOUT

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 24: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

RAMRAM

Memoria de datos

Memoria de datos

Entendiendo la memoria del PICAXE.Microcontroladores Microcontroladores

EL PICAXE

Carlos E. Canto Quintal M.C.

Memoria de programa

Memoria de programa

MEMORIA FLASH

Variables:-de propósito Gral.-Almacén-de Función Especial (SFR)

La memoria del PICAXE consiste de tres diferentes áreas. La cantidad de memoria varía entre los tipos de PICAXE.

Bootstrap

Page 25: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Entendiendo la memoria del PICAXE.

Memoria de Programa. La memoria de programa es donde el programa es

almacenado después de una nueva descarga . Esta es una memoria FLASH re-escribible que puede ser reprogramada hasta ( típicamente) 100,000 veces.

. Generalmente no se requiere borrar un programa, ya que en

cada descarga automáticamente se sobre escribe la totalidad del último programa .

En un chip PICAXE estándar se pude descargar alrededor de 40 líneas de código en Basic. En partes revisión A o M se pueden descargar alrededor de 80 líneas y en partes X alrededor de 600 líneas.

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 26: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Memoria de Datos Memoria de Datos • La memoria de datos es un espacio adicional de almacén

dentro del microcontrolador. el dato tampoco se pierde cuando se quita la energía.

• En cada descarga se resetean todo los bytes de datos a 0, al menos que un comando EEPROM haya sido usado para “precargar”el dato en memoria de datos.

• En el PICAXE-08/08M/18 la memoria de datos es “compartida” con la memoria de programa . En consecuencia, programas más largos producirá una memoria de datos más pequeña.

• En todos los demás chips PICAXE la memoria de datos y de programa están completamente separados.

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 27: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

RAM (Variables) La memoria RAM es usada para almacenar datos

temporalmente, datos que adoptan las variables conforme corre el programa. Esta pierde todos los datos cuando se quita la potencia.

Hay tres tipos de variables De propósito general, De Almacén, y De función especial.

Las variables son localidades de memoria dentro del PICAXE que almacena los datos mientras el programa está corriendo.

Toda esta información se pierde cuando se “resetea” el microcontrolador.

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 28: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Variables de propósito General. Hay 14 bytes para variables de propósito General. Estos bytes

variables son etiquetados como b0 a b13. Los bytes variables pueden almacenar números enteros entre 0 y 255. Los bytes variable no pueden usar números negativos o fracciones, y se “rebasan” sin aviso si se excede los valores límites 0 ó 255 ( por ejemplo. 254+3=1, 2-3=255)

Sin embargo para números grandes se pueden combinar dos bytes variables para crear una variable word, la cual es capaz de de almacenar números enteros entre 0 y 65,535. Estas variables word son etiquetadas w0 a w6, y se construyen como sigue:

w0 = b1 : b0w1 = b3 : b2w2 = b5 : b4w3 = b7 : b6w4 = b9 : b8w5 = b11 : b10w6 = b13 : b12

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 29: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Además los bytes b0 y b1 (w0) son desmembrados en variables individuales de 1 bit.

Estas variables de bit pueden ser usadas donde se requiera la capacidad de almacenaje de un bit solo.b0 = bit7: bit6: bit5: bit4: bit3: bit2: bit1: bit0b1 = bit15: bit14: bit13: bit12: bit11: bit10: bit9: bit8

Se pueden usar cualquier variable word, byte o bit en cualquier asignación matemática o comando que soprte variables.

Todas las variables de propósito general se resetean a

0 con un reset del programa.

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Variables de propósito General.

Page 30: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Variables de almacenajeVariables de almacenajeLas variables de almacenaje son localidades

adicionales de memoria para almacén temporalmente bytes de datos. No se pueden usar en cálculos matemáticos, pero se pueden usar para almacenar temporalmente valores de byte usando los comandos peek y poke

El número de localidades disponibles para almacenaje varía dependiendo del tipo de PICAXE.

Estas direcciones varían de acuerdo a las especificaciones técnicas del microcontrolador.

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 31: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

PICAXE-08 no tiene PICAXE-08M 48 bytes de 80 a 127 ($50 to $7F)PICAXE-18 48 bytes de 80 a 127 ($50 to $7F)PICAXE-18A 48 bytes de 80 a 127 ($50 to $7F)PICAXE-18X 96 bytes de 80 a 127 ($50 to $7F), 192 to 239 ($C0 to

$EF)PICAXE-28A 48 bytes de 80 a 127 ($50 to $7F)PICAXE-28X 112 bytes de 80 a 127 ($50 to $7F), 192 to 239 ($C0 to

$FF)PICAXE-08M 112 bytes de 80 a 127 ($50 to $7F), 192 to 239 ($C0 to

$FF

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 32: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Variables de Función Especial (SFR: Special Function Variables)Variables de Función Especial

(SFR: Special Function Variables)

El uso de las variables de función especial depende del tipo de PICAXE

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Page 33: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Special Function Variables (SFR)Special Function Variables (SFR)

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

pins = el puerto de entrada cuando se leen del puertopins = El puerto de salida cuando se escribe al puertoinfra = una variable separada usada con el comando infrainDirs = registro de drección de datos (indica cuando las terminales

son entradas o salidas)keyvalue = otro nombre para infra, usado con el comando keyin

La variable pins se subdivide en variables de bits individuales para leer de entradas individuales con el comando if…then. Solo son implementadas terminales válidas de entrada.

pins = x : x : x : pin4 : pin3 : pin2 : pin1 : x

Las variables dirs también se subdividen en bits individuales . Solo se implementan configuración de bits de pines bidireccionales válidos.dirs = x : x : x : dir4 : x : dir2 : dir1 : x

Page 34: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Special Function Variables (SFR)Special Function Variables (SFR)

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Note que pins es una “pseudo” variable que puede ser aplicada tanto al puerto de entrada como al puerto de salida.

Cuando se usa a la izquierda del estatuto pins se aplica al puerto de salida

por ejemplolet pins = %11000011Conmutará las salidas 7,6,1,0 a alto y los otros a bajo.

Cuando se usa a la derecha de un estatuto pins aplica al puerto de entrada. Por ejemplo.

let b1 = pinsCargará b1 con el estado actual del puerto de entrada.

Además, note que:let pins = pinsSignifica “haz el puerto de salida igual al puerto de entrada

Page 35: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

.

Entradas y Salidas en el PICAXE

Page 36: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Entradas Digitales Entradas Digitales Microcontroladores Microcontroladores

EL PICAXE

Carlos E. Canto Quintal M.C.

Se pueden conectar interruptores digitales de entrada con una resistencia de 10K pull down.

La resistencia es esencial

porque previene que la estrada “flote” cuando el interruptor esté en posición abierto. Lo cual daría una operación poco confiable.

Page 37: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Entradas Analógicas Entradas Analógicas

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.

Las entradas análogas pueden conectarse en un arreglo divisor de voltaje entre V+ y 0V.

La referencia análoga es la fuente de poder y la señal análoga no debe exceder la fuente de poder

.

Page 38: El PICAXE Microcontroladores EL PICAXE Carlos E. Canto Quintal M.C

Salidas Digitales Salidas Digitales El microcontrolador puede drenar

y suministrar 20mA en las terminales de salida.

Por lo tanto dispositivos de baja corriente simples tales como los LEDs pueden conectarse directamente a las terminales de salida .

Dispositivos de más alta corriente pueden conectarse vía un transistor (como el BC548B), FET o manejador Darlington

Microcontroladores Microcontroladores EL PICAXE

Carlos E. Canto Quintal M.C.