PIC16F1847 and AR1010 Based FM Radio Music Box
by SkyflikS in Circuits > Microcontrollers
3055 Views, 3 Favorites, 0 Comments
PIC16F1847 and AR1010 Based FM Radio Music Box
This is my first Instructable post. I made a Digital FM Radio box using this cheap AR1010 FM Radio receiver module that I bought from Ebay and a PIC16F1847 Microcontroller from MICROCHIP. Why PIC's? Why not use Arduino? Because i have bunch of these IC's stocked in the parts bin. And also because most of the Digital FM Radio instructables and tutorials use the arduino.
Let's Make it.....
Parts and Tools Needed...
The Basic parts are the Following:
-
The Brain - Microchip Pic16F1847
-
Digital FM Radio Receiver - AR1010 Module
-
Display - MAX7219 8 Digit 7 Segment Led Module
-
Audio Amplifier - PAM8403 5V DC Audio Amplifier Board 2 Channel 2*3W Volume Control
-
Power/Charging - 3V to 5V 1A Step Up Module USB Charger Boost Converter w/ 1pc. 18650 battery salvaged from old laptop battery pack.
- Interface - 3 pcs. push button micro switches
-
3D Printed Box Enclosure - STL files link here
Tools to Use:
- Soldering Iron
- Long Nose Pliers
- Digital Multi tester
- Exacto Knife
- Cutter Plier
- Glue Gun
- 3D Printer
- Microchip PICKIT 3 Programmer/Debugger
SCHEMATICS and WIRING ASSEMBLY
The Schematic is drawn using the Free version of Autodesk Eagle PCB design software.
The parts list for the main board are the following:
1 pc. PIC16F1847 MCU PDIP-18
1 pc. AMS1117-3.3 Voltage Regulator SOT223
6 pcs. 4.7Kohm / 0.5 watt Resistors
1pc. 10uf / 16v electrolytic capacitor
All these parts are mounted on a custom cut 30mm x 30mm single sided perf board to fit it inside the casing. The PIC Mcu is mounted on the top side the board. The AMS1117-3.3 SMD regulator and the AR1010 module are soldered on the copper side .
There is no external Oscillator because i used the internal 32 mhz clock of the PIC16F1847 MCU. I didn't use any headers and connectors to connect the modules, they are soldered with jumper wires. The headers are for serial debugging and ICSP programming.
CODE
The code is written and compiled using the Code Limited version of the MikroC for PIC.
I used the Ar1010 Arduino Library of adamjansch/AR1010lib and ported it to be compatible with the MikroC for PIC IDE.
I wrote my own Max7219 library.
That's all... thanks
Updated the Source File to include the MAX7219 library...
Downloads
Future Updates:
I will add an RTC for Time and maybe some sensors like Temperature and Humidity.
Bluetooth audio input.
Mp3 player.