DIY chipKIT Uno32 Stopwatch

This project is for those who always wanted to make their own stopwatch. It’s built using a combination of eight seven segment displays multiplexed together and hence can be control by a fewer number of pins. It’s capable of timing minutes seconds, and even 1/10 of a second. The entire project revolves around a chipKIT Uno32 board. Along with the capability to time, it also has start and stop buttons just like a traditional stop watch. This project uses the millis() function for time keeping. The millis() is a built-in function in Arduino, and so in MPIDE, that returns the number of milliseconds elapsed. The LedControl library is used in this project to interface the MAX7219-based seven segment LED display with the chipKIT Uno32 board. The stopwatch is started and stopped by pressing the push switch attached to INT0 (pin 38) pin. The INT0 trigger mode is defined as FALLING, which means the interrupt routine is called when the INT0 pin goes from high to low. For those interested in the project the complete schematics along with all parts number… Continue reading

Building a pulse meter using ChipKIT

chipKIT is a great PIC32 based Arduino like development board designed by digilent. They have made quite a bunch of them since last time I have checked. Additionally they are taking care of numerous shields that allow quick and easy interfacing and developing cool things. Embedded-lab has been doing a nice chipKIT tutorial series. This time they are building a pulse meter using several building blocks – chipKIT Uno32, Basic I/O shield and Easy pulse sensor along with their Easy Pulse sensor board. Everything plugs in nicely while leaving soldering iron cold. Pulse waveform is captured with on Analog input and displayed on I/O shield graphical LCD. Program also calculates Beats Per Minute (BPM) value. Continue reading

Sending data from ChipKIT UNO32 to Python3 via serial interface

In many projects we want to have connection to PC. In most cases a serial interface works fine. Using it we can read data, send commands or simply debug program running on chip. Embedded programmers are looking for simple way controlling serial data flow. In many cases simple terminal is enough, but if you want to add some intelligence to program, then you need something more. One of great choices is Python. It is free, multiplatform tool that enables running programs using smart scripting language. Strong community has written tons of handy modules – libraries to do various tasks. One of these modules is called pyserial which allows accessing serial ports using simple functions. Pyserial is successfully used in many great projects so why not continue using it. Things changed a bit when Python3 has been released. The problem is that all modules were written for Python2. Developers of Python 3 decided not to add backwards compatibility to ver2. So many modules stopped working in Python3. Luckily pyserial is supported in Python3. Tutorial from scienceprog gives a simple example on… Continue reading

ChipKIT – PIC32 with Arduino taste

Arduino has strong positions in hobby market. Their strategy is really simple – everything works out of a box. Speaking of development boards – they are open source with unified pin layout that allow plugging multiple extension (shield) boards. Development software is also open, works on major platforms including Windows, Linux and MacOSX. But probably the winning factor is that arduino is rich in libraries allowing easy code writing without knowing whats going on inside chip. Original Arduino boards are based on Atmel AVR 8-bit microcontrollers that are limited in processing power and even more in Flash and SRAM . Additionally Arduino libraries are written to be easy usable with sacrifice of performance. If you tried to develop more time critical apps then you know that Arduino’s don’t shine in this position. You can work around by writing your own libraries or simply go non Arduino way – writing your own C code. But why loose ability to use libraries and rich community resoures only because hardware can’t ensure desired performance. This is where chipKIT comes in. Thanks to Newark… Continue reading