ChipKIT is an excellent substitution board to Arduino. It offers better performance as it is based on PIC32MX320F128 microcontroller based on 32-bit architecture. The microcontroller has 128K of Flash and 16K of SRAM on board. Having Arduino Uno shape factor ChipKIT offers more 42 programmable pins. ChipKIT like Arduino can be programmed with a bootloader that communicates to PC through USB-to-USART converter chip FT232RQ. Digilent has developed an STK500v2 based bootloader that works on PIC, so it is easy to program using AVRDUDE tool. Besides that, they adapted an Arduino environment to work with ChipKIT boards. It’s called Mpide. It also supports Arduino boards, but it aims to program ChipKIT boards. Programming experience is pretty same as for Arduino, and even most of the examples written for Arduino work on ChipKIT. This is true since there is no specific hardware elements touched like program memory or EEPROM. As you know Arduino is rich in hardware support libraries as all shields are designed for Arduino. Latecomers like ChipKIT even if they are hardware compatible may have some difficulties with library integration due to the different architecture.
You got an unused DVD player lying on the storeroom, but you’ve no idea what should do with it? Well, it’s time to show off your creativity and innovation, by simply modifying the DVD player into a computerized DVD Dispenser! This project isn’t too hard, as you only need to prepare the following components: A servo, A stepper motor, and A graphical LCD. Let’s get started. First of all, you’re require to use a fairly old ATMega8515 at 8Mhz internal. It can be used to control a servo via PWM and a 12V unipolar 4phase stepper through a simple MOSFET interface. Beside that, it equipped with the User Interface of a 64×128 GDM12864H LCD with four pushbuttons. In this case, you have to solder up a clean proto board for the circuit.
Once I’ve got several HQM1286404 graphical LCDs around so I decided to build a prototyping board where I could easily plug LCD to it, read data via ADC and display graphs, plug keypad if needed for some menu functions. Earlier I was testing graphical LCD on prototype breadboard, but dealing with multiple wires (GLCD needs 20 of them) resulted in many failures. It is OK to do simple tasks, but more complex applications require a more stable platform. So here it is: This type of GLCD is standard 128×64 pixel matrix controlled by KS0108 LCD controller. Ones I have comes with smaller non-common pin-header where pins have 2mm step, so I had to draw it for Eagle library which you will find in project files. I decided to make a simple circuit so it could fit in 100x50mm single sided PCB. As base MCU I used Atmega16 which can be replaced with Atmega32 which is pin compatible with Atmega16 have more data memory.