|:: Software Radio Radio Amateur Site PA3GSB|
Using a SI570 from Silabs controlling the frequency of a Software Defined Radio.
I ordered some samples during the introduction of these promising small Crystal Based oscillator chips from silabs (http://www.silabs.com).
I received the samples in a very large box.
Using the production code of my SI570 chip (570CBC000200DG) it is possible to discover all the required info:
Looking around on the internet a lot of SI570 information is available, but as usually i want to do my own programming.
Started with the hardware, i soldered the SI570 added some resistors for the clock and data line. No big deal!
Finishing the hardware and a cup of coffee later i started the programming op the PIC 18F4550 microcontroller. I use the free C18 C compiler from microchip.
I did not use the C compiler for a long time, so i decided first to download and install the latest student version.
Using a bootloader the SI570.hex was loaded into the controller.
The firmware does not do anything without a control program, so i had to make a SI570 Control program. I used a free microsoft visual c# express edition.
All the work resulted in a working system, it was easy to tune and the performance of the complete SDR system seems to be pretty good a MDS of -124dbm.
I did no optimalisation for controlling the oscillator, after every change all the registers of the SI570 will be updated which results in clicks in the audio. It is well possible to remove a lot of these clicks by doing an optimalisation. It is possible to change the frequency +/3500ppm without the clicks..... Maybe in the future....
To get the frequency controlled from PowerSDR i have to do an old trick.... iam changing the porttalk.dll ( interface) . The change will convert the commands in understandable commands for the SI570 firmware.
Hope the blog is of any help.
73 Johan PA3GSB