Home |
Search |
Today's Posts |
|
#1
![]() |
|||
|
|||
![]()
"Brian Howie" wrote in message
... In message , gareth writes Presumably those SDR rigs which do not work on the IF but directly from antennae must have, separately from the DSP processor, some semblance of a DDS generator (but without the final DAC) to act as the equivalent of the VFO, for I cannot perceive that a fractional-Hz tuning rate could be achieved with machine code running in the DSP processor? I'm not an expert ,but I think what you're asking is " how is the local oscillator generated" in a direct conversion SDR and "what determines its resolution" There is an example here, :- http://www.radioelementi.it/public/saqrx.pdf The "c" source code is here,which I can just about understand ( My software background is FORTRAN and Matlab) :- https://sites.google.com/site/sm6lkm/saqrx/ Softies shouldn't have a problem with it although I was able to mess about with it and recompile it successfully In this case the spectrum is dc to 22050Hz in 512 steps. It's not the LO precision ( it's floating point in this one) that limits it but the size of the FFT , the sample rate and thus the record length, that sets the minimum FFT bin width . This one tunes in lumps of about 43Hz Thank-you Brian, but what you have URLed is already at baseband, being VLF. When moving from FORTRAN to C, the major difference (apart from the nitty-gritty of statement syntax) is that in FORTRAN, variables are always passed by reference (at least in FORTRAN '66 which I did 47 years ago) and in C you have the choice of passing by value or by reference. |
#2
![]() |
|||
|
|||
![]()
On Sat, 6 Feb 2016, gareth wrote:
"Brian Howie" wrote in message ... In message , gareth writes Presumably those SDR rigs which do not work on the IF but directly from antennae must have, separately from the DSP processor, some semblance of a DDS generator (but without the final DAC) to act as the equivalent of the VFO, for I cannot perceive that a fractional-Hz tuning rate could be achieved with machine code running in the DSP processor? I'm not an expert ,but I think what you're asking is " how is the local oscillator generated" in a direct conversion SDR and "what determines its resolution" There is an example here, :- http://www.radioelementi.it/public/saqrx.pdf The "c" source code is here,which I can just about understand ( My software background is FORTRAN and Matlab) :- https://sites.google.com/site/sm6lkm/saqrx/ Softies shouldn't have a problem with it although I was able to mess about with it and recompile it successfully In this case the spectrum is dc to 22050Hz in 512 steps. It's not the LO precision ( it's floating point in this one) that limits it but the size of the FFT , the sample rate and thus the record length, that sets the minimum FFT bin width . This one tunes in lumps of about 43Hz Thank-you Brian, but what you have URLed is already at baseband, being VLF. I thought that was the norm, not much doing A/D at signal frequency. Initially, it was too fast for the hardware to handle, but there are probably some good reasons still to downconvert. Michael When moving from FORTRAN to C, the major difference (apart from the nitty-gritty of statement syntax) is that in FORTRAN, variables are always passed by reference (at least in FORTRAN '66 which I did 47 years ago) and in C you have the choice of passing by value or by reference. |
#3
![]() |
|||
|
|||
![]()
In message ple.org,
Michael Black writes On Sat, 6 Feb 2016, gareth wrote: "Brian Howie" wrote in message ... In message , gareth writes Presumably those SDR rigs which do not work on the IF but directly from antennae must have, separately from the DSP processor, some semblance of a DDS generator (but without the final DAC) to act as the equivalent of the VFO, for I cannot perceive that a fractional-Hz tuning rate could be achieved with machine code running in the DSP processor? I'm not an expert ,but I think what you're asking is " how is the local oscillator generated" in a direct conversion SDR and "what determines its resolution" There is an example here, :- http://www.radioelementi.it/public/saqrx.pdf The "c" source code is here,which I can just about understand ( My software background is FORTRAN and Matlab) :- https://sites.google.com/site/sm6lkm/saqrx/ Softies shouldn't have a problem with it although I was able to mess about with it and recompile it successfully In this case the spectrum is dc to 22050Hz in 512 steps. It's not the LO precision ( it's floating point in this one) that limits it but the size of the FFT , the sample rate and thus the record length, that sets the minimum FFT bin width . This one tunes in lumps of about 43Hz Thank-you Brian, but what you have URLed is already at baseband, being VLF. I thought that was the norm, not much doing A/D at signal frequency. Initially, it was too fast for the hardware to handle, but there are probably some good reasons still to downconvert. Michael Correct , but Gareth asked about the software equivalent of a DDS frequency synthesiser or VFO. Brian -- Brian Howie |
#4
![]() |
|||
|
|||
![]()
On Sat, 6 Feb 2016, Brian Howie wrote:
In message ple.org, Michael Black writes On Sat, 6 Feb 2016, gareth wrote: "Brian Howie" wrote in message ... In message , gareth writes Presumably those SDR rigs which do not work on the IF but directly from antennae must have, separately from the DSP processor, some semblance of a DDS generator (but without the final DAC) to act as the equivalent of the VFO, for I cannot perceive that a fractional-Hz tuning rate could be achieved with machine code running in the DSP processor? I'm not an expert ,but I think what you're asking is " how is the local oscillator generated" in a direct conversion SDR and "what determines its resolution" There is an example here, :- http://www.radioelementi.it/public/saqrx.pdf The "c" source code is here,which I can just about understand ( My software background is FORTRAN and Matlab) :- https://sites.google.com/site/sm6lkm/saqrx/ Softies shouldn't have a problem with it although I was able to mess about with it and recompile it successfully In this case the spectrum is dc to 22050Hz in 512 steps. It's not the LO precision ( it's floating point in this one) that limits it but the size of the FFT , the sample rate and thus the record length, that sets the minimum FFT bin width . This one tunes in lumps of about 43Hz Thank-you Brian, but what you have URLed is already at baseband, being VLF. I thought that was the norm, not much doing A/D at signal frequency. Initially, it was too fast for the hardware to handle, but there are probably some good reasons still to downconvert. Michael Correct , but Gareth asked about the software equivalent of a DDS frequency synthesiser or VFO. The "directly from antenna" in his post threw me. If there's a heterodyne conversion, which is what he was asking I see now, then there has to some sort of local oscillator. The way I read it was that he was asking how to tune something that directly converted to digital. Sorry. Michael |
#5
![]() |
|||
|
|||
![]()
On 2/6/2016 4:49 PM, Michael Black wrote:
On Sat, 6 Feb 2016, Brian Howie wrote: In message ple.org, Michael Black writes On Sat, 6 Feb 2016, gareth wrote: "Brian Howie" wrote in message ... In message , gareth writes Presumably those SDR rigs which do not work on the IF but directly from antennae must have, separately from the DSP processor, some semblance of a DDS generator (but without the final DAC) to act as the equivalent of the VFO, for I cannot perceive that a fractional-Hz tuning rate could be achieved with machine code running in the DSP processor? I'm not an expert ,but I think what you're asking is " how is the local oscillator generated" in a direct conversion SDR and "what determines its resolution" There is an example here, :- http://www.radioelementi.it/public/saqrx.pdf The "c" source code is here,which I can just about understand ( My software background is FORTRAN and Matlab) :- https://sites.google.com/site/sm6lkm/saqrx/ Softies shouldn't have a problem with it although I was able to mess about with it and recompile it successfully In this case the spectrum is dc to 22050Hz in 512 steps. It's not the LO precision ( it's floating point in this one) that limits it but the size of the FFT , the sample rate and thus the record length, that sets the minimum FFT bin width . This one tunes in lumps of about 43Hz Thank-you Brian, but what you have URLed is already at baseband, being VLF. I thought that was the norm, not much doing A/D at signal frequency. Initially, it was too fast for the hardware to handle, but there are probably some good reasons still to downconvert. Michael Correct , but Gareth asked about the software equivalent of a DDS frequency synthesiser or VFO. The "directly from antenna" in his post threw me. If there's a heterodyne conversion, which is what he was asking I see now, then there has to some sort of local oscillator. The way I read it was that he was asking how to tune something that directly converted to digital. Sorry. I'm a bit confused by the many comments about the original post, but there is such a thing as a direct down conversion receiver. As long as the input is sampled fast enough for the signal frequency or at least fast enough for the bandwidth when using sub-sampling and there are adequate filters on the input, this can work. The trouble is the filtering. I believe that is why IF frequencies have been used, to filter the signal more easily. -- Rick |
#6
![]() |
|||
|
|||
![]()
In message , gareth
writes "Brian Howie" wrote in message ... In message , gareth writes Presumably those SDR rigs which do not work on the IF but directly from antennae must have, separately from the DSP processor, some semblance of a DDS generator (but without the final DAC) to act as the equivalent of the VFO, for I cannot perceive that a fractional-Hz tuning rate could be achieved with machine code running in the DSP processor? I'm not an expert ,but I think what you're asking is " how is the local oscillator generated" in a direct conversion SDR and "what determines its resolution" There is an example here, :- http://www.radioelementi.it/public/saqrx.pdf The "c" source code is here,which I can just about understand ( My software background is FORTRAN and Matlab) :- https://sites.google.com/site/sm6lkm/saqrx/ Softies shouldn't have a problem with it although I was able to mess about with it and recompile it successfully In this case the spectrum is dc to 22050Hz in 512 steps. It's not the LO precision ( it's floating point in this one) that limits it but the size of the FFT , the sample rate and thus the record length, that sets the minimum FFT bin width . This one tunes in lumps of about 43Hz Thank-you Brian, but what you have URLed is already at baseband, being VLF. Well not quite. Base-band in this case is the audio pass -band which is down-converted from the RF ( if you can call it that) at up to 20KHz by the software local oscillator. You can do it mechanically as well. Http://www.wireless.org.uk/mechrx.htm Brian -- Brian Howie |
#7
![]() |
|||
|
|||
![]()
On 2/6/2016 1:07 PM, gareth wrote:
"Brian Howie" wrote in message ... In message , gareth writes Presumably those SDR rigs which do not work on the IF but directly from antennae must have, separately from the DSP processor, some semblance of a DDS generator (but without the final DAC) to act as the equivalent of the VFO, for I cannot perceive that a fractional-Hz tuning rate could be achieved with machine code running in the DSP processor? I'm not an expert ,but I think what you're asking is " how is the local oscillator generated" in a direct conversion SDR and "what determines its resolution" There is an example here, :- http://www.radioelementi.it/public/saqrx.pdf The "c" source code is here,which I can just about understand ( My software background is FORTRAN and Matlab) :- https://sites.google.com/site/sm6lkm/saqrx/ Softies shouldn't have a problem with it although I was able to mess about with it and recompile it successfully In this case the spectrum is dc to 22050Hz in 512 steps. It's not the LO precision ( it's floating point in this one) that limits it but the size of the FFT , the sample rate and thus the record length, that sets the minimum FFT bin width . This one tunes in lumps of about 43Hz Thank-you Brian, but what you have URLed is already at baseband, being VLF. When moving from FORTRAN to C, the major difference (apart from the nitty-gritty of statement syntax) is that in FORTRAN, variables are always passed by reference (at least in FORTRAN '66 which I did 47 years ago) and in C you have the choice of passing by value or by reference. Wrong on both counts. Fortran and C are both pass by value. Neither defines pass by reference in their respective standards although some recent Fortran compilers have an extension to pass by reference). -- ================== Remove the "x" from my email address Jerry, AI0K ================== |
#8
![]() |
|||
|
|||
![]()
In rec.radio.amateur.equipment Jerry Stuckle wrote:
On 2/6/2016 1:07 PM, gareth wrote: "Brian Howie" wrote in message ... In message , gareth writes Presumably those SDR rigs which do not work on the IF but directly from antennae must have, separately from the DSP processor, some semblance of a DDS generator (but without the final DAC) to act as the equivalent of the VFO, for I cannot perceive that a fractional-Hz tuning rate could be achieved with machine code running in the DSP processor? I'm not an expert ,but I think what you're asking is " how is the local oscillator generated" in a direct conversion SDR and "what determines its resolution" There is an example here, :- http://www.radioelementi.it/public/saqrx.pdf The "c" source code is here,which I can just about understand ( My software background is FORTRAN and Matlab) :- https://sites.google.com/site/sm6lkm/saqrx/ Softies shouldn't have a problem with it although I was able to mess about with it and recompile it successfully In this case the spectrum is dc to 22050Hz in 512 steps. It's not the LO precision ( it's floating point in this one) that limits it but the size of the FFT , the sample rate and thus the record length, that sets the minimum FFT bin width . This one tunes in lumps of about 43Hz Thank-you Brian, but what you have URLed is already at baseband, being VLF. When moving from FORTRAN to C, the major difference (apart from the nitty-gritty of statement syntax) is that in FORTRAN, variables are always passed by reference (at least in FORTRAN '66 which I did 47 years ago) and in C you have the choice of passing by value or by reference. Wrong on both counts. Fortran and C are both pass by value. Neither defines pass by reference in their respective standards although some recent Fortran compilers have an extension to pass by reference). In C, if an arguement to a function is defined as a pointer, then the local values are references to the storage locations of the original arguments passed in and changes will change the original value. This is called pass by reference. In C, if an arguement to a function is not defined as a pointer, then the local value is a copy of the original value which will not be changed. This is called pass by value. -- Jim Pennino |
#10
![]() |
|||
|
|||
![]()
On 2/7/2016 9:54 AM, Jerry Stuckle wrote:
On 2/6/2016 4:07 PM, wrote: In rec.radio.amateur.equipment Jerry Stuckle wrote: On 2/6/2016 1:07 PM, gareth wrote: "Brian Howie" wrote in message ... In message , gareth writes Presumably those SDR rigs which do not work on the IF but directly from antennae must have, separately from the DSP processor, some semblance of a DDS generator (but without the final DAC) to act as the equivalent of the VFO, for I cannot perceive that a fractional-Hz tuning rate could be achieved with machine code running in the DSP processor? I'm not an expert ,but I think what you're asking is " how is the local oscillator generated" in a direct conversion SDR and "what determines its resolution" There is an example here, :- http://www.radioelementi.it/public/saqrx.pdf The "c" source code is here,which I can just about understand ( My software background is FORTRAN and Matlab) :- https://sites.google.com/site/sm6lkm/saqrx/ Softies shouldn't have a problem with it although I was able to mess about with it and recompile it successfully In this case the spectrum is dc to 22050Hz in 512 steps. It's not the LO precision ( it's floating point in this one) that limits it but the size of the FFT , the sample rate and thus the record length, that sets the minimum FFT bin width . This one tunes in lumps of about 43Hz Thank-you Brian, but what you have URLed is already at baseband, being VLF. When moving from FORTRAN to C, the major difference (apart from the nitty-gritty of statement syntax) is that in FORTRAN, variables are always passed by reference (at least in FORTRAN '66 which I did 47 years ago) and in C you have the choice of passing by value or by reference. Wrong on both counts. Fortran and C are both pass by value. Neither defines pass by reference in their respective standards although some recent Fortran compilers have an extension to pass by reference). In C, if an arguement to a function is defined as a pointer, then the local values are references to the storage locations of the original arguments passed in and changes will change the original value. This is called pass by reference. In C, if the argument to a function is defined as a pointer, then a copy of the pointer is passed. Of course, that copy still points at the same place as the original, but it is still a copy. And that is the definition of "pass by reference", passing a pointer (a reference) to an object rather than its value. This "reference" explains it to you in your own language. http://courses.washington.edu/css342...32/passby.html It is not called pass by reference. The pointer must still be dereference to get to the value. C++ does have a pass by reference, but not C. In C, if an arguement to a function is not defined as a pointer, then the local value is a copy of the original value which will not be changed. This is called pass by value. Both are pass by value. The only difference is if you are passing the variable or a pointer by value. And that is the whole difference between reference and value parameters. Heck, I learned this in a chemistry class (FORTRAN) long before I was in the EE department. rude comment snipped -- Rick |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Question for Techs not upgrading to General question | Policy | |||
new question (from "system degradation question") | Antenna | |||
Good morning or good evening depending upon your location. I want to ask you the most important question of your life. Your joy or sorrow for all eternity depends upon your answer. The question is: Are you saved? It is not a question of how good | Antenna | |||
Good morning or good evening depending upon your location. I want to ask you the most important question of your life. Your joy or sorrow for all eternity depends upon your answer. The question is: Are you saved? It is not a question of how good | Antenna | |||
Good morning or good evening depending upon your location. I want to ask you the most important question of your life. Your joy or sorrow for all eternity depends upon your answer. The question is: Are you saved? It is not a question of how good | Antenna |