Arduino makes new turn with Uno and Mega2560

We have some good news in Arduino side. They came up with two new and different Arduino boards – Arduino Uno and Mega2560. These new Arduino boards are somewhat different from those that we are used to see. And probably biggest changes are different approach in converting USB to serial and different bootloader.  First of all USB chip… They decided to get rid of FTDI chip (FT232RL) and used Atmega8u2 chip instead that gives even more power when dealing with USB. By default chip is configured to work as USB to serial converter, but there is an option to turn Arduino into different USB device like mouse, keyboard or MIDI device. So these are good news. Bad news are that using atmega8u2 forces to have your own unique product ID and vendor ID – these cost money, while FTDi chips came with their IDs. But this is more important if you want to build your own board – many of them. Anyway there is always an option to get back to FTDI as bootloader doesn’t care how data reaches it.

Next improvement is bootloader itself. They started to use different bootloader – Optiboot. It works with same STK500 protocol and uses 1.5K less code – so more space for custom programs. It’ even faster! Good news is that finally they added separate 3.3V supply that gives up to 150mA instead 50mA that came from FTDI internals.

And finally both boards are pin compatible to all existing shields. Uno board still uses ATmega328P, but if you need more horsepower then chose Arduino Mega2560 that gives more memory and more I/O pins. You can find great review on these new Arduino boards in laylada. This is a great kick forward for Arduino community.

Driving LCD with three wires

Dealing with electronics projects is always about cost and efficiency. Sometimes using more powerful MCU just to get more I/Os isn’t practical. If project isn’t time critical you should consider using port expander – a shift register that may reduce overall cost of project (especially if it’s for mass production). So in this project you will learn how to drive standard LCD with three wires by using only three I/O pins. As port expander there is a shift register 74HC595 used.

All you need is to send LCD data serially to shift register which parallelizes it to normal format. This enables driven LCDs with low pin microcontrollers like PIC12F683. AVR fans can find similar solution on ATmega8 here. The only downside of such solution is that you will have to write driver software by yourself instead using regular libraries.

Universal RC checker for hobbyists

RC model hobbyists should love this project because it has many great features including: servo tester, RC receiver checker, LiPo battery tester, KV meter for brushless motor and BEC tester. Device is equipped with three 7-segment LED display that should be enough for bright day.

Checker device is controlled by PIC16F883 microcontroller. Actually whole project includes only few parts – so no big effort is needed to build one. It may be a real time saver in proper hands.

Large 40×7 dot matrix display control

Big displays are great for many purposes especially for displaying time, temperature or even scrolling text/graphics messages. In following project LED dot matrix display does this job along PIC18F252. As you may know such number of LEDs cannot be controlled directly, so there are LED driver chips used (STP16CP05) that allow controlling LEDs dynamically row by row.

Temperature is measured with help of well known LM35 temperature sensor. Device also has an automatic brightness control where ambient light is measured with light-to-voltage converter (TSL257) and then LED brightness is adjusted according to readings. To make things more interesting and flexible there is also an IR remote control implemented. So settings can be changed remotely in case you stick display higher on the wall.

Next Page »