Sie sind auf Seite 1von 38

EL PICAXE

Microcontroladores
Microcontroladores

El PICAXE

Microcontroladores
Microcontroladores

EL PICAXE

Qu es un microcontrolador PICAXE?
Un PICAXE es un microcontrolador estndar de
Microchip PICmicro que ha sido pre-programado con
el cdigo de bootstrap PICAXE( de Revolution
Education).
El cdigo bootstrap habilita al microcontrolador
PICAXE para que pueda ser re-programado
directamente va una simple conexin 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

Qu es un microcontrolador PICAXE?
El programa de descarga tambin 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 comnmente
requeridos. Esto hace que el tiempo de descarga sea
mucho ms corto.
El programa de descarga PICAXE no est disponible
para programarse en microcontroladores en blanco.
Se debe comprar el microcontrolador PICAXE (ms
que microcontroladores en blanco, no programados )
para usar en el sistema PICAXE.

EL PICAXE

Microcontroladores
Microcontroladores

Cal chip PICAXE ?


El sistema PICAXE puede ser usado con 4 tamaos
de chips PICAXE (8, 18, 28 y 40 pines).
La principal diferencia entre los tamaos de chips es
el nmero de pines disponibles para entradas /salidas
mientras ms grande el chip un poco ms alto es el costo
pero se tienen ms pines disponibles de entrada/salida.

Se programa en lenguaje Basic que es comn para


todos los tamaos de chips.

Microcontroladores
Microcontroladores

EL PICAXE

Tabla que muestra las principales diferencias funcionales entre


los microcontroladores PICAXE.

Microcontroladores
Microcontroladores

Distribucin de terminales
de los PICAXE

EL PICAXE

Microcontroladores
Microcontroladores

EL PICAXE

Diagramas de terminales para los dispositivos de 28 pines

Microcontroladores
Microcontroladores

EL PICAXE

Circuito de descarga Serial


El circuito de descarga Serial es idntico para
todos los chips PICAXE .
Consiste de 3 alambres del chip PICAXE al
puerto serial de la PC.
Un alambre enva 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 comn.

Microcontroladores
Microcontroladores

EL PICAXE

El circuito mnimo para descarga

Microcontroladores
Microcontroladores

EL PICAXE

El circuito mnimo para descarga

EL PICAXE

Microcontroladores
Microcontroladores

Circuito mnimo de descarga

EL PICAXE

Microcontroladores
Microcontroladores

Circuito de descarga Serial


Construccin del cable serial usando un jack estereo

PICAXE
PC Rx

Serial out
Serial In

PC Tx
GND

10k

22k

0V

EL PICAXE

Microcontroladores
Microcontroladores

Circuito mejorado de Descarga Serial

(1)
(2)

(3)

Microcontroladores
Microcontroladores

EL PICAXE

El circuito mnimo de operacin de los dispositivos de


8 pines

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 despus reconectada .

Microcontroladores
Microcontroladores

EL PICAXE

El circuito mnimo de operacin 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.

Microcontroladores
Microcontroladores

EL PICAXE

El circuito mnimo de operacin de los dispositivos de


28 pines

Microcontroladores
Microcontroladores

EL PICAXE

PICAXE Preguntas
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
va un cable ( el programa bootstrap le dice al microcontrolador como interpretar los
comandos de programacin del cable directo). Por eso es que se debe comprar
microcontroladores PICAXE , ms 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.

Microcontroladores
Microcontroladores

EL PICAXE

PICAXE Preguntas
Se necesita borrar el dispositivo?
Cmo paro el programa que est corriendo en el microcontrolador PICAXE?
Cada descarga automticamente sobreescribe la totalidad del programa previo. Por lo
general no es necesario borrar la memoria en mingn punto. Sin embargo si se desea
parar un programa corriendo se puede seleccionar el men Clear Hardware Memory
para descargar un programa vaco a la memoria del PICAXE.
Hasta cuntas 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 prctica el nmero puede ser mucho mayor.
Qu tan rpido opera el PICAXE?
Los microcontroladores PICAXE-08/18 tienen un resonador interno de 4 Mhz, y el
PICAXE-28 usa un resonador cermico externo de de 4 MHz. Esto significa que el
microcontrolador procesa 1 milln de comandos en ensamblador por segundo, lo cual
equivale a aproximadamente 10,000 comandos BASIC por segundo.

Microcontroladores
Microcontroladores

EL PICAXE

PICAXE Preguntas
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 mdulos seriales LCD (como el mdulo Serial LCD/Clock
AXE033) vi el comando serout. Note que el el AXE033 tambin puede ser
preprogramado hasta con 8 mensajes para reducir el uso de la memoria del
microcontrolador PICAXE.

Microcontroladores
Microcontroladores

Arquitectura del PICAXE

EL PICAXE

EL PICAXE

Microcontroladores
Microcontroladores

Procesadores usados
Variante

PICmicro

Flash

PICAXE-08
PICAXE-08M
PICAXE-18
PICAXE-18A
PICAXE-18X
PICAXE-28
PICAXE-28A
PICAXE-28X
PICAXE-40X

12F629
12F683
16F627
16F819
16F88
16F872
16F872
16F873A
16F874A

1K
2K
1K
2K
4K
2K
2K
4K
4K

RAM [1]
None [2]
48 : $50-$7F
96 : $50-$7F / $C0-$EF [4]
48 : $50-$7F
96 : $50-$7F / $C0-$EF
48 : $50-$7F
48 : $50-$7F
112 : $50-$7F / $C0-$FF
112 : $50-$7F / $C0-$FF

[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, ms 256 bytes que usan READMEM/WRITEMEM

EEPROM
128 [3]
256 [3]
128 [3]
256 [3]
256 [5]
64+256 [5][6]
64+256 [5][6]
128 [5]
128 [5]

EL PICAXE

Microcontroladores
Microcontroladores

Interfase Bsica
Variante

Entrada Digital

PICAXE-08
No
PICAXE-08M

Salida Digital Entrada Anloga

1-4 [1]
1-4 [1]

PICAXE-18
No

1-4 [1]

1-4 [1][4]
2-5 [2]

0-1 Low Res [2]


0-3 [2]

2-5 [2]

0-3 [2]

PICAXE-18X

2-5 [2]

8 [4]

0-3 [2]

SERVO
0-4 Burst [3]

0-1 Continuous
0-3 Low Res [2]

PICAXE-18

PICAXE-28

PWM

No

No

0-8

0-1 Continuous
No

0-4

0-8

0-8

PICAXE-28

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

EL PICAXE

Microcontroladores
Microcontroladores

Interfase Avanzada
Variante I2C [1]

Temp [2] Serial Num [3]

PICAXE-08
PICAXE-08M
PICAXE-18
PICAXE-18A
PICAXE-18X
PICAXE-28
PICAXE-28A
PICAXE-28X
PICAXE-40X

Yes
Yes
Yes

Yes
Yes
Yes
Yes
Yes
Yes

IR [4]

Yes Yes [6]


Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes

Keyboard [5]
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

Yes

Yes

EL PICAXE

Microcontroladores
Microcontroladores

Entendiendo la memoria del PICAXE.


La memoria del PICAXE consiste de tres diferentes reas.
La cantidad de memoria vara entre los tipos de PICAXE.

RAM
RAM
Memoria
Memoriade
de
datos
datos

Memoria
Memoriade
de
programa
programa
Bootstrap

Variables:
-de propsito Gral.
-Almacn
-de Funcin Especial (SFR)

MEMORIA FLASH

Microcontroladores
Microcontroladores

EL PICAXE

Memoria de Datos

La memoria de datos es un espacio adicional de almacn


dentro del microcontrolador. el dato tampoco se pierde
cuando se quita la energa.
En cada descarga se resetean todo los bytes de datos a 0,
al menos que un comando EEPROM haya sido usado para
precargarel 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 ms largos producir una
memoria de datos ms pequea.

En todos los dems chips PICAXE la memoria de datos y de


programa estn completamente separados.

EL PICAXE

Microcontroladores
Microcontroladores

Entendiendo la memoria del PICAXE.

Memoria de Programa.

La memoria de programa es donde el programa es


almacenado despus de una nueva descarga . Esta es una
memoria FLASH re-escribible que puede ser reprogramada
hasta ( tpicamente) 100,000 veces.

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


cada descarga automticamente se sobre escribe la totalidad
del ltimo programa .

En un chip PICAXE estndar se pude descargar alrededor de


40 lneas de cdigo en Basic. En partes revisin A o M se
pueden descargar alrededor de 80 lneas y en partes X
alrededor de 600 lneas.

EL PICAXE

Microcontroladores
Microcontroladores

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 propsito general,
De Almacn,
y De funcin especial.

Las variables son localidades de memoria dentro del PICAXE


que almacena los datos mientras el programa est corriendo.
Toda esta informacin se pierde cuando se resetea el
microcontrolador.

EL PICAXE

Microcontroladores
Microcontroladores

Variables de propsito General.

Hay 14 bytes para variables de propsito General. Estos bytes


variables son etiquetados como b0 a b13. Los bytes variables
pueden almacenar nmeros enteros entre 0 y 255. Los bytes
variable no pueden usar nmeros negativos o fracciones, y se
rebasan sin aviso si se excede los valores lmites 0 255 ( por
ejemplo. 254+3=1, 2-3=255)
Sin embargo para nmeros grandes se pueden combinar dos
bytes variables para crear una variable word, la cual es capaz de
de almacenar nmeros enteros entre 0 y 65,535. Estas variables
word son etiquetadas w0 a w6, y se construyen como sigue:
w0
w1
w2
w3
w4
w5
w6

=
=
=
=
=
=
=

b1 : b0
b3 : b2
b5 : b4
b7 : b6
b9 : b8
b11 : b10
b13 : b12

Microcontroladores
Microcontroladores

EL PICAXE

Variables de propsito General.

Adems 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: bit0
b1 = bit15: bit14: bit13: bit12: bit11: bit10: bit9: bit8
Se pueden usar cualquier variable word, byte o bit en
cualquier asignacin matemtica o comando que soprte
variables.
Todas las variables de propsito general se resetean a 0 con
un reset del programa.

EL PICAXE

Microcontroladores
Microcontroladores

Variables de almacenaje
Las variables de almacenaje son localidades adicionales

de memoria para almacn temporalmente bytes de datos.


No se pueden usar en clculos matemticos, pero se
pueden usar para almacenar temporalmente valores de
byte usando los comandos peek y poke

El nmero de localidades disponibles para almacenaje


vara dependiendo del tipo de PICAXE.

Estas direcciones varan de acuerdo a las

especificaciones tcnicas del microcontrolador.

Microcontroladores
Microcontroladores

EL PICAXE

Entradas y Salidas en el PICAXE

EL PICAXE

Microcontroladores
Microcontroladores

Entradas Digitales
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 posicin
abierto. Lo cual dara una
operacin poco confiable.

EL PICAXE

Microcontroladores
Microcontroladores

Entradas Analgicas
Las entradas anlogas pueden
conectarse en un arreglo
divisor de voltaje entre V+ y
0V.
La referencia anloga es la
fuente de poder y la seal
anloga no debe exceder la
fuente de poder
.

Microcontroladores
Microcontroladores

EL PICAXE

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 ms alta corriente
pueden conectarse va un
transistor (como el BC548B), FET
o manejador Darlington

Microcontroladores
Microcontroladores

PICAXE-08
PICAXE-08M
PICAXE-18
PICAXE-18A
PICAXE-18X
PICAXE-28A
PICAXE-28X
PICAXE-08M

EL PICAXE

no tiene
48 bytes de 80 a 127 ($50 to $7F)
48 bytes de 80 a 127 ($50 to $7F)
48 bytes de 80 a 127 ($50 to $7F)
96 bytes de 80 a 127 ($50 to $7F), 192 to 239 ($C0 to $EF)
48 bytes de 80 a 127 ($50 to $7F)
112 bytes de 80 a 127 ($50 to $7F), 192 to 239 ($C0 to $FF)
112 bytes de 80 a 127 ($50 to $7F), 192 to 239 ($C0 to $FF

Microcontroladores
Microcontroladores

EL PICAXE

Variables de Funcin Especial


(SFR: Special Function Variables)

El uso de las variables de funcin especial


depende del tipo de PICAXE

Microcontroladores
Microcontroladores

EL PICAXE

Special Function Variables (SFR)


pins = el puerto de entrada cuando se leen del puerto
pins = El puerto de salida cuando se escribe al puerto
infra = una variable separada usada con el comando infrain
Dirs = registro de dreccin de datos (indica cuando las terminales
keyvalue = otro nombre para infra, usado con el comando keyin

son entradas o salidas)

La variable pins se subdivide en variables de bits individuales para


leer de entradas individuales con el comando ifthen.
Solo son implementadas terminales vlidas de entrada.
pins = x : x : x : pin4 : pin3 : pin2 : pin1 : x
Las variables dirs tambin se subdividen en bits individuales . Solo
se implementan configuracin de bits de pines bidireccionales
vlidos.
dirs = x : x : x : dir4 : x : dir2 : dir1 : x

Microcontroladores
Microcontroladores

EL PICAXE

Special Function Variables (SFR)


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 ejemplo
let pins = %11000011
Conmutar 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 = pins
Cargar b1 con el estado actual del puerto de entrada.

Adems, note que:


let pins = pins
Significa haz el puerto de salida igual al puerto de entrada

Carlos E. Canto Quintal M.C.