Turn-key PCB assembly services in prototype quantities or low-volume to mid-volume production runs

Interfacing Nokia 3510i LCD to PIC16F84

This is very simple example of interfacing Nokia 3510i LCD to PIC16F84 microcontroller. LCD connects to PIC via serial interface. The only concern may be the voltage. If microcontroller works on from 5V then it is necessary to lover it to 3.3V. The easiest way to lower voltage to 3.3V is to use voltage regulator like LM317. A simple assembly code shows how to work in a 12bit color mode. The code is written in ASM and can be compiled with MPASM compiler. Continue reading

Powerful MP3 player in a mint box

There are quite many MP3 player projects done by enthusiasts. So here is another one which works with compact flash cards, handles FAT16 and fits in Altoids mint box. Player runs on PIC18LF452 microcontroller which handles flash card interface and sends data to STA013 MP3 decoder chip. Decoded digital audio is converted to analog by CS4340 DAC. The project is running from 3.3V LiIon battery. MP3 player also has a MAX756 DC boost regulator that allows using different batteries like couple AA Alkaline. In order to get rid of cables there is an optional FM transmitter MAX2606 to play music via car radio receiver. And last shot is USB connectivity, so it is possible to upload/download files and even charge LiIon battery via MAX1811. Latest project files can be downloaded form here. Continue reading

Old HDD clock

Have an old hard drive and want to do some fun with it? You can make a clock from it. Clock uses 12 high power LEDs for displaying clock hands. Blue LED represents minutes, red -hours and purple – seconds. Rotating is synchronized with IR LED sensor. Clock is controlled by PIC16F628 which is responsible for reading IR sensor, and lighting LEDs at right hard drive platter position. Only hex file is available, so you only need to flash a PIC and enjoy the view in the dark. Continue reading

Control Nokia 3310 Graphical LCD

Do you still remember old good Nokia 3310? I remember it was my very first cellular phone I had – and it was expensive. Now these phones are obsolete but some people still uses them as unbreakable and reliable phones. If you have one you can do some fun with its graphical LCD. Nokia 3310 graphical LCD is Philips PCD8544 controller based LCD that can be interfaced via SPI connection. So this is ideal for interfacing with microcontrollers like PIC16F877P. LCD pinout is as follows: 1 – VDD ==> Input voltage. 2 – SCK ==> Serial Clock. 3 – SDI ==> Serial Data Input. 4 – D/C ==> Data/Command Input. 5 – SCE ==> Chip Select. 6 – GND ==> Ground. 7 – VOUT ==> VLCD. 8 – RES ==> Reset. So connection is obvious. Other part is writing code. Some demo application can be found here written for Hi-Tech C compiler. Continue reading

Stand alone CPU cooler fan speed tester

PC can display CPU fan speed via simple application. Another option is to go to BIOS menu and read fan speed value. But if you want to have stand alone device that measures CPU cooler fan speed so here it is. It is a PIC16F627 based fan tester with four 7 segment LED displays. CPU fan sends tachometric pulses via separate wire and can be calculated as RPM. PIC captures and calculates the time by using two timers/counters. One captures pulses and another calculates elapsed time. For instance, by capturing the amount of pulses within the period of 1 second would yield the frequency at which the fan spins, e.g. 60Hz. To convert to RPM it is a simple matter of multiplying the frequency in Hz by 60, which in this case yields to 3600 RPM. Schematic is simple – the most components are used for interfacing LED displays. They are controlled via BCD converter and transistor keys. Fan pulse wire connects directly to PIC pin via pull-up resistor as amplitude of fan pulses is same as PIC power supply… Continue reading

RFID reader based on PIC microcontroller

RFID cards are commonly used in many areas like access control, security, and for other identification purposes. One of simplest cards to read are HID ISOProx that don’t use any encryption. Their carrier frequency is 125 kHz.   Hardest part in this reader project is the reader itself as it has to power the tag with magnetic field and sense the transmitted signal. For this series resonance of 150 kHz circuit – antenna is used. Signal from antenna is passed through low pass and band pass circuits and then to PIC comparator, where RFID FSK pulses are detected and decoded. Latest ASM source can be seen here. Probably RFID reader could use more advanced microcontroller than PIC16F628A for more efficient signal reading by using interrupt based compare capture module as this one already uses it for 150 kHz carrier signal generation. Continue reading