A "Vanity" LCD clock that displays the current time and -your- callsign, using a 16F84A PIC Microcontroller
As a part of the BMARC repeater sub-comittee, I have been asked to work on the BMARC repeater controllers' software. This has led me to obtain the Proton Plus IDE (Picbasic compiler in other words), from Crownhill And Associates in the UK. I have to say that I am glad that I did, as it has to be one of the most versatile, and powerful basic compilers' for the PIC series of microcontrollers. Using a development board that I purchased from Dick Smiths at a reduced price, I have been experimenting with Alphanumeric LCD displays, and some surplus 16F84A's that I had in my junk box.
Circuit Description:
D4 - D7 from the LCD module are connected to PortB bit 4 through to PortB bit 7 on the 16F84A, and Port A bit 4 connects to the "E" (enable) pin on the alphanumeric LCD module. Note that I have updated the schematic, to include the 4k7 pull up resistor on the "E" pin of the LCD. Port A bit 2 connects to the "RS" pin on the LCD. The "R/W" pin on the LCD can be tied to 0v. The Vo pin on the LCD goes to the wiper of a 50K linear pot, that has one end tied to ground and the other to Vcc. This pot adjusts the contrast of the LCD display.
PortB Bit 0 through to Bit 3 are configured as inputs, with built in pullup resistors enabled.
Bit 0, if pulled low, resets the "Seconds" on the clock to zero.
Bit 1, if pulled low, increments the "Minutes" displayed on the clock.
Bit 2, if pulled low, increments the "Hours" displayed on the clock.
Bit 3 is unused in this revision, but will be used in the future for setting an alarm (that will pull in a relay perhaps?)
The PIC is running a 4Mhz crystal, but this can be changed to a Low Power 32Khz type as long as you edit the source code prior to compiling.
Feel free to download the source code and the picture of the clock.
73 from James, VK2TIM