Hello all,
I try to find something about that MW radar module on PB forum but no success. I have already done the backpack module from limpkin, all works fine. I can read frequencies on scope but how to implement this data to speed measurement?
I find some code for Arduino in C but nothing in Basic. Can you someone explain me how to or links to picbasic (basic) code snippets?
Thanks.

2. Did you find this post helpful? |

Looks like you are the first one here to try to interface with the HB100.

Robert

3. Did you find this post helpful? |

in past (month ago) I was saw some informations about HB100 with example codes on protonbasic forum but I did not pay attention.
At this time I cant find anything about this on proton basic forum. It looks like wiped or something.

4. Did you find this post helpful? |

HB100 speed measurement is explained here:

From the first page:
......IF the target is moving straight toward or away from HB100 (Ft = 10.525 Ghz) the formula is simplified to:
Fd = 19.49V (Velocity in km/hour) or 31.36V (V in mile per hour)

So we are going to use the simplest of the two, we know the doppler frequency, and we want to find the speed.
V = Fd/31.36 … What this really means thou, is for ever 31.36Hz will equal 1 MPH
So if the IF Frequency is 31.36 then the speed of the target is 1 MPH. Easy!

And a IF Frequency of say 400Hz would be about 13Mph if you round it up.

=====================

So if you read the frequeny with a Timer running in the background, then there it is your result.
Last edited by sayzer; - 6th July 2017 at 07:52.

5. Did you find this post helpful? |

Now it's more clear. I try to search simple and working frequency meter code on PB forum, but no success.
Have someone already done and willing to share the frequency meter source code in picbasic? I'll be grateful for that.
Thanks,
Louis

6. Did you find this post helpful? |

Hi Louis
You did not say which pic you are using. You can read frequency by feeding the signal to the external timer input on your pic. It works by setting the TMR1 register to 0 , start the timer, let it count for a fixed period of time, stop the timer, read the value in TMR1 to variable Freq and display. The Pause routine is not super accurate for gating the timer so you need to tweak the value. A better way would be to use a second timer with an interrupt. This should get you started

Code:
```Freq var word

T1CON = %00000110  'No prescale/Osc off/Sync off/External source/TMR1 off
TMR1L = 0 ' Clear Timer1
TMR1H = 0 ' Clear Timer1
T1CON.0 = 1 ' Start 16-bit timer
Pause 100    'Capture  of Input Frequency 0.1sec  Pause 1000 =1sec
T1CON.0 = 0 ' Stop 16-bit Timer

Freq.lowbyte = TMR1L 'Read  Tmr1 count to low byte
Freq.highbyte = TMR1h 'Read  Tmr1 count to high byte```
Last edited by mark_s; - 11th July 2017 at 18:26.

7. Did you find this post helpful? |

Originally Posted by mark_s
Hi Louis
You did not say which pic you are using. You can read frequency by feeding the signal to the external timer input on your pic. It works by setting the TMR1 register to 0 , start the timer, let it count for a fixed period of time, stop the timer, read the value in TMR1 to variable Freq and display. The Pause routine is not super accurate for gating the timer so you need to tweak the value. A better way would be to use a second timer with an interrupt. This should get you started
Hello Mark,

I use PIC16F690 at 4MHz Xtal. I want to try Your code, the freq is stored in Freq variable, the sampling time is 0,1 sec that's OK but where to feed the input signal to PIC? (input pin) this is not clear for me.

Louis

8. Did you find this post helpful? |

It looks like on the pic16f690 pin2, RA5 T1CKI. I have one of those modules but never got around to interfacing it with a pic.

9. Did you find this post helpful? |

One of the best examples of measuring frequency with impressive accuracy is here: