So I have a clock generator that generates a signal of amplitude 3.3V. Then, if I increase the frequency of the signal to, let's say, 24 Mhz, the voltage drops to 1.9V or something like that. When the frequency is increased, the voltage drops. So my question is, how can I control the output voltage? Is it possible to increase it to 8V? The perfect solution for me is to control the output signal from the console or some kind of hardware.
When the frequency is increased, the voltage drops.
And how are you measuring this?
And how do you know that it is not the frequency response of your measurement system you are seeing and not the output changing?
@allanhurst: Can you please explain how I can do that in more detail? I am quite new to this stuff.Thanks
@Grumpy_Mike: I used an oscilloscope of 100Mhz to probe the signal. At 16Mhz I had like 2.8V and then at 32Mhz only 1.8V or something like that. Also at a very low frequency I had a square wave, and as the frequency increased, the wave became more and more "curvy". The man who lend me the oscilloscope said that this is due to some kind of capacitor somewhere in my circuit. I am not really sure if that helps.
I used an oscilloscope of 100Mhz to probe the signal. At 16Mhz I had like 2.8V and then at 32Mhz only 1.8V or something like that. Also at a very low frequency I had a square wave, and as the frequency increased, the wave became more and more "curvy".
With ONLY a 100MHz oscilloscope you can not hope to make an accurate measurement of a 32MHz signal. That 100MHz figure is the bandwidth, not the frequency it will measure accurately. The bandwidth is the frequency where the response drops by half. And that is for sin wave measurements.
The curvyness of the waveform is due to the fact that in a square wave there are an infinite number of harmonics and you are so close to the bandwidth on the fundamental that the harmonics are being attenuated at a rate of well over half. In fact they are almost being eliminated.
You do not have a problem with your circuit but with how you are interpreting the measurement.
The man who lend me the oscilloscope said that this is due to some kind of capacitor somewhere in my circuit.
Looks like he doesn't know how to interpreter a scope reading either.
Clock 0 of the generator to XTAL1 of another Arduino.
Then the other Arduino uses the clock provided to run a program that does some tests. If every test is done correctly and everything works fine it outputs "12345678" to an LCD screen(algorithm written by Mikhail Svarichevsky).
At 16,18 and 20Mhz everything worked fine. When I went to 24Mhz, the LCD stopped working properly. Theoretically, if something went wrong, a number like 13248918 should be displayed.
I should have mentioned that I am trying to find the limits of the Arduino. Theoretically, when the temperature is reduced, the Arduino can work at a higher frequency. That's the theory that I am trying to evaluate. I am stuck though because I don't know how to provide a higher voltage. Can somebody tell me how I can do it?
Still don't see why you want to change a donkey into a race horse.
There are plenty Arduino compatables that run natively on a much higher clock.
Leo..
As I said, it is for my project. I am just trying to understand how a CPU reacts to different temperatures. Once I actually complete the experiment, I won't use the higher frequency for anything. I just want to learn stuff. I don't plan to game to the Arduino or anything.
I think temp is a secondary factor.
Supercooling computer CPUs is needed if you push supply/operating voltage to/above the limit.
Operating voltage affects temp, so you have to cool better.
A 125watt CPU might get in trouble above 150watt.
A 0.2watt MCU still won't get hot if you push power/heat by 50%.
I think you can only push the clock frequency above ~24Mhz by increassing MCU supply voltage (to ~6volt).
Difficult, because everything else on an Uno is connected to the same 5volt rail, including your PC/laptop.
Leo..
I am not sure if I understand. Let's say that I increase the MCU supply voltage to 6V. Won't that 6V drop to 3.3V when it passes from the clock generator?
This may sound idiotic, but can't I just put some kind of hardware between the signal created by the clock generator and the XTAL1 of the other Arduino board?
PizzaGuy:
That's interesting. So, how can I increase the MCU supply voltage? Is it too difficult to even try?
Thanks
Just connect a ~6volt supply to the 5volt pin.
This has to come from an accurate voltage source that you can control in small steps, e.g a lab supply.
When you increase the voltage too much above 5.5 or 6volt, the board could suddenly release it's magic smoke.
Leo..
You can not increase the voltage to the MCU core without increasing it to the peripherals as well. Unlike some microprocessors there is no core supply power pins.
About how much voltage does an external led requires? I thought I could just use a led instead of a whole LCD screen. Also, let's say that it requires 1V. If I provide 0.3V, the led will still light up but it will be dimmed, right?
No.
The voltage required to turn on an LED depends on its colour, any voltage below that and the LED will not turn on.
You always need a seriese resistor with an LED.
By peripherals I did not mean the things you attach to an Arduino, I mean the things inside the chip that are not the CPU. Things like the A/D, the EEPROM, the SRAM, the timers, the flash memory and such like.
When buggering up CPUs by giving them more voltage because you are stupidity trying to over clock them, without a separate CPU power pin you over volt those bits of the circuit that do not need compensation and screw them up first.