PICAXE

PICAXE is a microcontroller system based on a range of Microchip PIC microcontrollers. PICAXE devices are Microchip PIC devices with pre-programmed firmware that enables bootloading of code directly from a PC, simplifying hobbyist embedded development (not unlike the Arduino and Parallax BASIC Stamp systems). PICAXE devices have been produced by Revolution Education (Rev-Ed) since 1999.

Hardware

There are currently six (6) PICAXE variants of differing pin counts (8-14-18-20-28-40) and are available as DIL and SMD.

PICAXE microcontrollers are pre-programmed with an interpreter similar to the BASIC Stamp but using internal EEPROM instead, thus reducing cost. This also allows downloads to be made with a simple serial connection which eliminates the need for a PIC programmer. PICAXE is programmed using an RS-232 serial cable or a USB cable which connects a computer to the download circuit, which normally uses a 3.5 mm jack and two resistors.

Programming language
PICAXE microcontrollers are programmed using BASIC.

The PICAXE interpreter features bit-banged communications:
 Serial (asynchronous serial)
 SPI (synchronous serial)
 Infrared (using a 38 kHz carrier, seven data bits and five ID bits)
 One-wire
The "readtemp" command reads the temperature from a DS18B20 temperature sensor and converts it into Celsius.

All current PICAXEs have commands for using hardware features of the underlying PIC microcontrollers:
 Hardware asynchronous serial
 Hardware synchronous serial
 Hardware PWM
 DAC
 ADC
 SR Latch
 Timers (two on X2/X1 parts which have settable intervals, only one on M2 parts with a fixed interval, older parts have none)
 Comparators
 Internal temperature measurement

Program space
All current PICAXE chips have at least 2048 bytes of on board program memory available for user programs:
 08M2 - 2048 bytes
 14M2 - 2048
 18M2+ - 2048
 20M2 - 2048
 20X2 - 4096
 28X1 - 4096
 40X1 - 4096
 28X2 - 4096 per slot with four slots for a total of 16 KiB
 40X2 - 4096 per slot with four slots for a total of 16 KiB

Clock speeds
The default clock speed for all M2 and X1 parts is 4 MHz and for the X2 parts is 8 MHz.
 
The SETFREQ command allows speeds from 31 kHz up to 8 MHz for X1 parts, 31 kHz up to 32 MHz for M2 parts and 31 kHz up to 16 MHz for X2 parts (up to 64 MHz for the 20X2) using the internal resonator.

An external resonator can be used with the X1 parts for from 4 MHz to 20 MHz clock speeds and with the X2 parts for 16 MHz to 64 MHz clock speeds.

Project boards
Project boards for different applications are sold by Rev-Ed which contain the PICAXE, download circuit and may also contain a prototyping area or high power output drivers.

Software
Revolution Education develop software for writing programs for PICAXE.

PICAXE Programming Editor
PICAXE Programming Editor is a Windows-only IDE for writing PICAXE programs in BASIC code or a simple flowchart.

PICAXE Programming Editor features:
 source code colour syntax highlighting
 auto indentation
 syntax check and program download
 code explorer to shown variable, label and constant values
 full on screen simulation with animated chips and line by line code highlighting
 simulation breakpoints by line number and variable value
 debug and serial terminal windows
 AXE027 download cable testing and port identification tools
 various testing tools such as the analogue calibration wizard
 various code generation wizards (pwmout, tune, RTC setting, etc.)

AXEpad
AXEpad is a cross-platform application recommended for Linux and Mac users. It lacks some of Programming Editor's wizards, simulation and MDI.

Logicator for PICAXE
Logicator is an easy to use shareware flowcharting program. The Logicator web page is out of date as the free version does support all commands but shows nag screens.

PICAXE Programming Editor 6, the successor to PICAXE Programming Editor 5, has Logicator flowcharting merged into it so separate Logicator software is no longer required. Like PICAXE Programming Editor 5, PICAXE Programming Editor 6 is freeware.

Third-party software

Yenka
Yenka is a program developed by Crocodile Clips Ltd which has flowcharts and simulation.

Others
Many companies and organizations have put out their own editors with special features. Some include language translators or serial connectors, so there is a wide variety of consoles to be used.

Support
Support is available at the Technical Support section of the PICAXE website and at the PICAXE Forum.

The PICAXE Forum has a finished projects section where completed projects and PICAXE programs are posted, plus there is a similar section on the PICAXE website.

See also 
Arduino
BASIC Atom
BASIC Stamp
Maximite
OOPic
KodeKLIX - PICAXE chip based snap-together educational system

References

Further reading

External links
Official PICAXE Website
BASIC commands
web server/PICAXE interface
Distributors - PICAXE
Introducing the PICAXE System
Snap Electronics educational system using PICAXE

Microcontrollers
Microchip Technology hardware