Continue to Site

# simple signal generator

#### scrimshanker

##### New Member
I want to purchase, or build, a simple 12V DC device that will generate a signal at random intervals between 60sec and 60min to flash an LED/LED's, or to generate a tone/tones. Can somebody point me in the right direction to do further research please. Ideally I would like to be able to select/control the average time interval.

#### Reloadron

##### Well-Known Member
Most Helpful Member
You aren't really telling very much. Generate a signal as in sine, square, triangular? It sounds like you want a function generator. Tone or tones implies a signal in the audio ranges of 20 Hz to 20 kHz. Then you mention 60 seconds to 60 min which is 0.016 Hz and 60 min which is 0.00028 Hz. So are you just wanting a pulse every 60 seconds or 3600 seconds (60 min)? If so what pulse duration? This will go much better if you describe your project in more detail.

Ron

#### scrimshanker

##### New Member
My apologies for the lack of clarity.
Yes, I want to generate a tone with a wide range, but a spectrum of which should be audible to the human ear.
By 60 seconds to 60 minutes I mean, as you say, a pulse occurring randomly between, say, 60 seconds 60 minutes. Ideally I would like to be able to vary the average period. I would like the pulse duration - again preferably variable - to be in the range of 500ms.
Thank you for your response.

#### Nigel Goodwin

##### Super Moderator
Most Helpful Member
Again your specifications are far too vague - what sort of 'tone'?, does it matter? - if squarewave is OK, then it's a trivial job for a microcontroller (which you would need for the timing anyway).

#### Ian Rogers

##### User Extraordinaire
Forum Supporter
Most Helpful Member
I just bought this AD9833 module off fleabay.. 4 dollars.. I had an Arduino micro lying around and a serial display.. Works like a charm... All the libraries on arduino are pre written...

#### AnalogKid

##### Well-Known Member
Most Helpful Member
lI hate to say this, but -- for that kind of very low frequency random timing, basically a very low bandwidth white noise, a uC might be the better approach. Rather than write and debug random number code, a common approach is to step through an array or lookup table loaded with random values.

Another option is a LFSR - Linear Feedback Shift Register. This is a fairly simple digital logic circuit that produces an output signal with a randomly-varying frequency and pulse width.

ak

#### Nigel Goodwin

##### Super Moderator
Most Helpful Member
lI hate to say this, but -- for that kind of very low frequency random timing, basically a very low bandwidth white noise, a uC might be the better approach. Rather than write and debug random number code,
I wouldn't have thought such a project would be worth considering without using a processor?, it would be huge undertaking.

Not really anything to write or debug either, high level languages already have the required routines, you just need to sort out a random seed for it (as has been discussed on these forums recently). If you're using assembler?, then there's certainly going to be suitable examples available on the net, such as the PICLIST if you're using a PIC.

Here's a simple XC8 function for PIC's that I use, it provides a pseudo random number between specified lower and upper limits:

C:
// Generates random number in range (lower - upper).
unsigned int GetRandom(unsigned int lower, unsigned int upper)
{
unsigned int num = (unsigned int)(rand() % (upper - lower + 1)) + lower;
return num;
}

#### Tony Stewart

##### Well-Known Member
Most Helpful Member
My apologies for the lack of clarity.
Yes, I want to generate a tone with a wide range, but a spectrum of which should be audible to the human ear.
By 60 seconds to 60 minutes I mean, as you say, a pulse occurring randomly between, say, 60 seconds 60 minutes. Ideally I would like to be able to vary the average period. I would like the pulse duration - again preferably variable - to be in the range of 500ms.
Thank you for your response.
Can you hum a tune? No one has any idea.

#### scrimshanker

##### New Member
I appreciate all your responses. I'm acutely aware that I don't know enough to pursue my project on this forum - but I've gathered enough information from respondents above to allow me to research my solution on other platforms. Thank you all for your help

#### atferrari

##### Well-Known Member
Most Helpful Member
I appreciate all your responses. I'm acutely aware that I don't know enough to pursue my project on this forum - but I've gathered enough information from respondents above to allow me to research my solution on other platforms. Thank you all for your help
Nice, very nice!

Replies
41
Views
9K
Replies
2
Views
863
Replies
5
Views
6K
Replies
4
Views
8K
Replies
5
Views
2K