Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use PICAXE-18X: Examples, Pinouts, and Specs

Image of PICAXE-18X
Cirkit Designer LogoDesign with PICAXE-18X in Cirkit Designer

Introduction

The PICAXE-18X, manufactured by Revolution Education Ltd, is an 8-bit microcontroller designed for educational and hobbyist projects. It is part of the PICAXE family of microcontrollers, known for their ease of use and versatility. The PICAXE-18X features built-in programming capabilities, allowing users to write and upload code using a simple BASIC-like language. This makes it an excellent choice for beginners and experienced developers alike.

Explore Projects Built with PICAXE-18X

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
I2C-Controlled OLED Display with External EEPROM and Interactive Pushbuttons
Image of godmode: A project utilizing PICAXE-18X in a practical application
This is a microcontroller-based interactive device featuring a Wemos D1 Mini, an OLED display, external EEPROM, and an I/O expander. It includes user input buttons and status LEDs, with potential MIDI interface capabilities.
Cirkit Designer LogoOpen Project in Cirkit Designer
Raspberry Pi Pico-Based Gas Detection System with LCD Display and Buzzer Alert
Image of Gas Detector: A project utilizing PICAXE-18X in a practical application
This circuit features a Raspberry Pi Pico microcontroller interfaced with various components including a 16x2 I2C LCD, an MQ-9 gas sensor, a potentiometer, a buzzer, and a pushbutton. The circuit is designed to read sensor data, display information on the LCD, and control the buzzer and other peripherals through the microcontroller.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO Based Accelerometer Data Logger with LCD Display and Audio Alert
Image of ed: A project utilizing PICAXE-18X in a practical application
This circuit features an Arduino UNO microcontroller powered by a 9V battery, interfaced with an I2C LCD screen and an ADXXL335 accelerometer. The Arduino reads the X, Y, and Z outputs from the accelerometer on analog pins A0, A1, and A2, respectively, and can display data on the LCD screen. Additionally, there is a piezo buzzer connected to digital pin D12 for audio output, with all components sharing a common ground.
Cirkit Designer LogoOpen Project in Cirkit Designer
Battery-Powered Health Monitoring System with Nucleo WB55RG and OLED Display
Image of Pulsefex: A project utilizing PICAXE-18X in a practical application
This circuit is a multi-sensor data acquisition system that uses a Nucleo WB55RG microcontroller to interface with a digital temperature sensor (TMP102), a pulse oximeter and heart-rate sensor (MAX30102), and a 0.96" OLED display via I2C. Additionally, it includes a Sim800l module for GSM communication, powered by a 3.7V LiPo battery.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with PICAXE-18X

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of godmode: A project utilizing PICAXE-18X in a practical application
I2C-Controlled OLED Display with External EEPROM and Interactive Pushbuttons
This is a microcontroller-based interactive device featuring a Wemos D1 Mini, an OLED display, external EEPROM, and an I/O expander. It includes user input buttons and status LEDs, with potential MIDI interface capabilities.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Gas Detector: A project utilizing PICAXE-18X in a practical application
Raspberry Pi Pico-Based Gas Detection System with LCD Display and Buzzer Alert
This circuit features a Raspberry Pi Pico microcontroller interfaced with various components including a 16x2 I2C LCD, an MQ-9 gas sensor, a potentiometer, a buzzer, and a pushbutton. The circuit is designed to read sensor data, display information on the LCD, and control the buzzer and other peripherals through the microcontroller.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of ed: A project utilizing PICAXE-18X in a practical application
Arduino UNO Based Accelerometer Data Logger with LCD Display and Audio Alert
This circuit features an Arduino UNO microcontroller powered by a 9V battery, interfaced with an I2C LCD screen and an ADXXL335 accelerometer. The Arduino reads the X, Y, and Z outputs from the accelerometer on analog pins A0, A1, and A2, respectively, and can display data on the LCD screen. Additionally, there is a piezo buzzer connected to digital pin D12 for audio output, with all components sharing a common ground.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Pulsefex: A project utilizing PICAXE-18X in a practical application
Battery-Powered Health Monitoring System with Nucleo WB55RG and OLED Display
This circuit is a multi-sensor data acquisition system that uses a Nucleo WB55RG microcontroller to interface with a digital temperature sensor (TMP102), a pulse oximeter and heart-rate sensor (MAX30102), and a 0.96" OLED display via I2C. Additionally, it includes a Sim800l module for GSM communication, powered by a 3.7V LiPo battery.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • Educational projects for learning microcontroller programming
  • Prototyping and hobbyist electronics
  • Interfacing with sensors, actuators, and displays
  • Robotics and automation projects
  • Simple data acquisition and control systems

Technical Specifications

The following table outlines the key technical details of the PICAXE-18X microcontroller:

Specification Details
Architecture 8-bit
Operating Voltage 4.5V to 5.5V
Clock Speed 4 MHz (internal resonator)
Programming Language BASIC-like (PICAXE Programming Editor)
Flash Memory 2048 bytes
RAM 128 bytes
EEPROM 256 bytes
I/O Pins 5 digital inputs, 8 digital outputs
ADC Channels 4 (10-bit resolution)
Communication Protocols Serial (via programming cable)

Pin Configuration and Descriptions

The PICAXE-18X is housed in an 18-pin DIP (Dual Inline Package). The pin configuration is as follows:

Pin Number Pin Name Description
1 VSS Ground (0V)
2 Serial In Serial programming input
3 Serial Out Serial programming output
4 Input 0 Digital/Analog input (ADC channel 0)
5 Input 1 Digital/Analog input (ADC channel 1)
6 Input 2 Digital/Analog input (ADC channel 2)
7 Input 3 Digital/Analog input (ADC channel 3)
8 Output 0 Digital output
9 Output 1 Digital output
10 Output 2 Digital output
11 Output 3 Digital output
12 Output 4 Digital output
13 Output 5 Digital output
14 Output 6 Digital output
15 Output 7 Digital output
16 Reset Active-low reset pin
17 VDD Positive supply voltage (4.5V to 5.5V)
18 Not Connected No internal connection

Usage Instructions

How to Use the PICAXE-18X in a Circuit

  1. Power Supply: Connect the VDD pin (pin 17) to a 5V power source and the VSS pin (pin 1) to ground.
  2. Programming: Use the PICAXE programming cable to connect the Serial In (pin 2) and Serial Out (pin 3) pins to your computer. The PICAXE Programming Editor software is required to write and upload code.
  3. Inputs and Outputs: Connect sensors to the input pins (pins 4–7) and actuators (e.g., LEDs, motors) to the output pins (pins 8–15).
  4. Reset: Optionally, connect a push-button to the Reset pin (pin 16) for manual resets.

Important Considerations and Best Practices

  • Voltage Levels: Ensure the supply voltage is within the 4.5V to 5.5V range to avoid damaging the microcontroller.
  • Pull-Down Resistors: Use pull-down resistors on input pins to prevent floating inputs when no signal is connected.
  • Programming Cable: Use the official PICAXE programming cable for reliable communication with the microcontroller.
  • Decoupling Capacitor: Place a 0.1 µF capacitor between VDD and VSS to filter out noise in the power supply.

Example Code for Arduino-like Functionality

Below is an example of a simple program to blink an LED connected to Output 0 (pin 8):

' Blink an LED connected to Output 0 (pin 8) of the PICAXE-18X
' The LED will turn on for 1 second and off for 1 second in a loop.

main:                ' Define the main program loop
  high 0             ' Turn on the LED (Output 0 HIGH)
  pause 1000         ' Wait for 1 second (1000 ms)
  low 0              ' Turn off the LED (Output 0 LOW)
  pause 1000         ' Wait for 1 second (1000 ms)
  goto main          ' Repeat the loop

Troubleshooting and FAQs

Common Issues and Solutions

  1. Microcontroller Not Responding

    • Cause: Incorrect wiring or power supply issues.
    • Solution: Double-check all connections, ensure the power supply is within the specified range, and verify the programming cable is properly connected.
  2. Code Upload Fails

    • Cause: Incorrect COM port or programming cable not detected.
    • Solution: Ensure the correct COM port is selected in the PICAXE Programming Editor. Check that the programming cable is securely connected.
  3. Inputs Not Working

    • Cause: Floating input pins or incorrect sensor connections.
    • Solution: Use pull-down resistors on input pins and verify sensor wiring.
  4. Output Pins Not Driving Actuators

    • Cause: Exceeding current limits of output pins.
    • Solution: Use external transistors or relays to drive high-current devices.

FAQs

Q: Can the PICAXE-18X be powered by batteries?
A: Yes, the PICAXE-18X can be powered by batteries, provided the voltage is within the 4.5V to 5.5V range.

Q: What software is required to program the PICAXE-18X?
A: The PICAXE Programming Editor, available for free from Revolution Education Ltd, is used to write and upload code.

Q: Can I use the PICAXE-18X with I2C or SPI devices?
A: The PICAXE-18X does not natively support I2C or SPI communication. However, bit-banging techniques can be used for basic communication with such devices.

Q: How many times can the PICAXE-18X be reprogrammed?
A: The PICAXE-18X can be reprogrammed thousands of times, making it ideal for iterative development and experimentation.