AVR development board designed for ATMEL mega AVR, features the ATmega128 MCU, and integrates various standard interfaces, pretty easy for peripheral expansions.

Overview
OpenM128 is an AVR development board that features a ATmega128 device as the microcontroller. It supports further expansion with various optional accessory boards for specific application. The modular and open design makes it the ideal for starting application development with AVR microcontroller.
What's On Board

- ATmega128A-AU:the high performance AVR MCU which features:
- Core: AVR 8-bit RISC
- Operating Frequency: 16MHz Max
- Operating Voltage: 2.7-5.5V
- Package: TQFP64
- I/Os: 53
- Memories: 128kB Flash, 4kB SRAM, 4kB EEPROM
- Communication Interfaces: 1 x SPI, 1 x TWI (I2C), 2 x USART, 8 x PWM, 8 x ADC
- Debugging/Programming: JTAG/ISP
- AMS1117-3.3: 3.3V voltage regulator
- Power switch
- Power indicator
- LEDs: convenient for indicating I/O status and/or program running state
- User keys: for I/O input test and/or program control
- Joystick: five positions
- Reset button
- Crystal oscillator: 7.3728M & 32.768K
- Adjustable resistor: for LCD12864 contrast adjustment
- 16 I/Os interface: for connecting accessory boards which using I/O control, such as FT245 USB FIFO, 8 SEG LED, etc.
- 8 I/Os interface | 8-bit AD interface
- for connecting accessory boards which using I/O control, such as 8 Push Buttons, Motor, etc.
- there's also 8-bit AD interface can be used for AD testing
6 I/Os interface | USART0+AC+PWM3 interface
- for connecting USART peripherals, such as RS232, RS485, USB TO UART, etc.
- for connecting accessory boards which using PWM interface, also supports analog comparison through AC interface
SPI+PWM0+T/C interface
- for connecting SPI peripherals, such as DataFlash (AT45DBxx), SD card, MP3, etc.
the SPI interface includes additional I/O pins (PWM, T/C as regular I/O) which can be used as controlling pins
- for connecting accessory boards which using PWM interface, also supports frequency calculation through T/C interface
I2C+PWM0/1 interface
- for connecting I2C peripherals, such as I/O expander (PCF8574), EEPROM (AT24Cxx), etc.
the I2C interface includes additional I/O pins (PWM as regular I/O) which can be used as controlling pins
- for connecting accessory boards which using PWM interface
USART1 interface: for connecting USART peripherals, such as RS232, RS485, USB TO UART, etc.
1-WIRE interface: for connecting 1-WIRE devices (TO-92 package), such as temperature sensor (DS18B20), electronic registration number (DS2401), etc.
PS/2 interface: for connecting PS/2 keyboard and/or mouse
Graphic multi-color LCD interface: for connecting 2.2 inch multi-color touch screen LCD which using SPI control
Graphic dot matrix LCD interface: for connecting dot matrix LCD, such as LCD12864 (3.3V blue backlight)
5V DC jack Custom crystal socket VCC power input/output: usually used for power supply output, and/or common ground with other application board
MCU pins connector: all the MCU pins are accessible on expansion connectors for further expansion
ISP6 interface: for programming
ISP10 interface: for programming
JTAG interface: for programming/debugging
LEDs jumper User keys jumper Joystick jumper PS/2 jumper LCD selection jumper
- short the jumper to use dot matrix LCD
- open the jumper to use multi-color LCD
VCC selection jumper Crystal selection jumper
For jumper 28-31:
- short the jumper to connect to I/Os used in example code;
- open the jumper to connect to other custom pins via jumper wires.
Photos

OpenM128 Development Board

Connecting to touch screen LCD

Connecting to a debugger

Connecting to various peripherals

Connecting to touch screen LCD

Connecting to dot matrix LCD12864

Connecting to RS232 Board via UART

Connecting to USB UART Board via UART

Connecting to USB FIFO Board via 16 I/Os interface

Connecting to 8-SEG LED via 16 I/Os interface

8 Push Buttons on the 8 I/Os interface

AD Keypad on the 8 I/Os interface

Connecting to EEPROM Board via I2C

Connecting to RTC Board via I2C

Multi I2C peripheral Module connected to the I2C bus

Connecting to DataFlash Board via SPI

Connecting to Micro SD Board

Connecting to any accessory board you need
Note:
The OpenM128 does NOT integrate any debugging function, a debugger is required.
Accessory boards in the photo are NOT included in the OpenM128 Standard Package.
Debugging/Programming Interfaces
The figures below show the header pinouts of JTAG, ISP10, ISP6 interface
Figure 1. 10-pin JTAG header pinout

Figure 2. 10-pin ISP header pinout

Figure 3. 6-pin ISP header pinout

Development Resources
- Related Software (AVR Studio4, etc.)
- Demo Code (GCC AVR examples)
- Schematic (PDF)
- AVR Development Documentations (Datasheets etc.)
Wiki: www.waveshare.com/wiki/OpenM128