![]() ![]() The result of this is that 2 keys cannot be used during development and are then temporary replaced by 2 other keys when a setting called ‘USING_PROGRAMMER’ is defined. For the development I connected a PICKit3 programmer to the board which uses two pins where the keyboard is connected to. In the attached document you find how to operate the DIY clock. Both breadboard are mounted as a sandwich.Īll control is done by the PIC microcontroller. See the schematic diagrams on how to connect the components and how the boards are connected via a header. The whole design is built on 2 breadboards, one for the 7-segment displays and one for the PIC and the other components. Because of this choice, a level shifter was needed between IIC pins of the PIC and the IIC pins of the RDA5807M. The PIC can also operate at 3.3 V but because of the 7-Segment displays I decided to operate the PIC at the default voltage of the AJ3400 power supply which is 5.0 Volt. The output of the volume control signal is fed to an LM386N audio amplifier. This chip has a volume control feature but since I also needed to control the volume of the beep signal, I used the X9C104 digital potentiometer to control the volume of both the FM radio as well as the beep signal. This IC has the capability to set and monitor 2 alarm times.įor the FM radio I used the RDA5807M single chip FM Radio tuner which is controlled via an IIC interface. And since I was using the DS3231 I decided to use its alarm functionality too. This AJ3400 has a compartment for 2 AAA batteries that serve as backup power when the power goes down. I used this chip because of its battery backup feature which is handy when there is a short power outage (hardly happens in The Netherlands). ![]() Since the whole clock implementation could have been done with the PIC, I decided to use a DS3231 Real Time Clock (RTC) IC which is controlled via an IIC interface. ![]() The only thing I had to change was to include the device file of the PIC16F18075 instead of the PIC16F18076 and recompile the program. I started the development with a PIC16F18076 40-pin microcontroller but since I had more samples of the PIC16F18075, I used this type in the final design. One for switching the beep tone on and off.One for generating a beep tone using the PWM hardware.One for multiplexing the 7-segment display.On-board Pulse Width Modulation (PWM) hardware for generating a beep tone.Almost all pins of the 40-pin PIC are used The program uses around 6384 bytes of ROM The design was initially made on a breadboard.Īny PIC Microcontroller can be used as long as it has the following features: Initially I wanted to reuse the LED frame and create a 7-Segment display using separate LEDs but because of the non-standard spacing this was not an easy task to do so I decided to use standard – large – 7-segment displays. These LEDs are – like the IC – integrated on the PCB. The display of the original Alarm Clock is made with LEDs using a frame that separates the LEDs. I decided to reuse the following hardware from the original AJ3400: ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |