Tuesday, August 3, 2010

PIC12F683 Based Laser Projector

This Laser projector draws spirograph patterns on a screen. It uses two DC motors with tiny mirrors attached on them. The Laser beam is reflected from one mirror to another and then projected on a screen. With precise controll of DC motor spinning with a PIC12F683, various patterns can be displayed on the scree.

Source: http://farm3.static.flickr.com/2274/4515039836_a548fbba2c.jpg

Since PIC12F683 has got just one hardware PWM, software PWM based on Timer0 is implemented here to control the speeds of DC motors.

Monday, August 2, 2010

Make Your Own USB Device using PIC18F4550

If you are looking to learn how to make your own USB device, this tutorial is perfect to start. Here you will see how to breadboard a simple USB generic HID device, creating the PIC18F firmware and finally creating the Windows interface for the device which will allow you to control a LED from the PC and read the state of a push-button from the device. Using the built in drivers for generic HID devices provides a simple method of creating Windows and Linux compatible devices and also makes the creation of both firmware and software far simpler. Since the HID standard does not require custom drivers you will not need to get a certificate for your driver, also both Windows and Linux have built-in libraries to help you communicate.


This project will allow you to control a LED from Windows and also see the status of a push-switch on the device. Using this the basic principals of 2-way USB communication will be made clear allowing you to progress onto more complex projects. The circuit is made on a breadboard and the PIC18F firmware will be based on (the freely available) MPLAB and Hitech C compiler, the Windows software will be created using Microsoft Visual C++ 2008 express (which is also free to download).