The function generator features two BNC outputs: one for the high speed [1 to 8 MHz] square signal (BNC1) and another for the DDS signal (BNC2). Offset and amplitude can be regulated by two potentiometers: offset in range of +5V to -5V (POT1) and amplitude in range of 0 to 10V (POT2). Up and down arrow buttons are used for changing the function type (sine, triangle etc.) while left and right arrow buttons are used for changing the frequency value. There is also a separate menu for changing frequency step. When the middle button is pressed, the signal generation starts. The middle button is pressed again for stopping the signal. More details can be found in the original site. Because of the present LCD character orientation, which is different from the original implementation (180 degrees), the following changes in main.c were made:
Buttons LEFT and RIGHT were reversed:
#define LEFT 3//PORTD
#define RIGHT 1//PORTD
Buttons TOP and BOTTOM were reversed:
#define DOWN 4//PORTD
#define UP 0//PORTD
For the latest version of AVR-GCC compiler, the following changes should be made (according to Geoff comment on scienceprog.com):
struct signal {
volatile uint8_t mode; // signal
volatile uint8_t fr1; // Frequency [0..7]
volatile uint8_t fr2; // Frequency [8..15]
volatile uint8_t fr3; // Frequency [16..31]
volatile uint32_t freq; // frequency value
volatile uint8_t flag; // if 0 generator is OFF, 1 is ON
volatile uint32_t acc; // accumulator
volatile uint8_t ON;
volatile uint8_t HSfreq; // high speed frequency [1...4Mhz]
volatile uint32_t deltafreq; // frequency step value
} SG;
The ATMEGA16 fuses should be:
HIGH = 0×59
LOW = 0xCF
This is interpreted to the following options checked (all others unchecked):
OCDEN
SPIEN
BOOTSZ1
BOOTSZ2
SUT1
SUT0
The function generator circuit is designed to provide a versatile waveform output, suitable for various applications in testing and signal processing. The circuit includes two BNC output connectors, allowing simultaneous output of a high-speed square wave signal and a Direct Digital Synthesis (DDS) signal. The high-speed output (BNC1) operates within a frequency range of 1 to 8 MHz, while the DDS output (BNC2) can generate a variety of waveforms, including sine and triangle waves.
Two potentiometers (POT1 and POT2) are incorporated into the design to allow for manual adjustment of the signal's offset and amplitude. POT1 adjusts the offset voltage from +5V to -5V, enabling the user to shift the waveform vertically on an oscilloscope. POT2 controls the amplitude of the output signal, which can be set from 0V to 10V, providing flexibility in signal strength for different applications.
User interface elements consist of up and down arrow buttons for selecting the waveform type and left and right arrow buttons for adjusting the frequency value. This arrangement allows for intuitive navigation through various settings. A dedicated menu facilitates changes to the frequency step, enhancing the functionality of the generator.
The microcontroller at the heart of the circuit is the ATmega16, which manages signal generation and processing. It utilizes a structure to store the operational parameters, including the current mode of operation, frequency settings, and flags indicating the status of the signal generator. The microcontroller's fuses are configured to enable specific features, such as the On-Chip Debugger (OCDEN) and Serial Peripheral Interface (SPIEN), while ensuring the bootloader size is appropriately set.
Overall, this function generator circuit provides a robust platform for generating precise waveforms, making it an essential tool for electronics testing and experimentation.The function generator features two BNC outputs : one for the high speed [1 to 8 MHz] square signal (BNC1) and another for the DDS signal (BNC2). Offset and amplitude can be regulated by two potentiometers : offset in range of +5V to -5V (POT1) and amplitude in range of 0 to 10V (POT2).
Up and down arrow buttons are used for changing the function type (sine, triangle etc.) while left and right arrow buttons are used for changing the frequency value. There is also a separate menu for changing frequency step. When the middle button is pressed, the signal generation starts. Middle button is pressed again for stopping the signal. More details can be found in the original site. Because of the present LCD character orientation, which is different from the original implementation (180 degrees), the following changes in main.c were made :
Buttons LEFT and RIGHT were reversed :
#define LEFT 3//PORTD
#define RIGHT 1//PORTD
Buttons TOP and BOTTOM were reversed :
#define DOWN 4//PORTD
#define UP 0//PORTD
For the latest version of AVR-GCC compiler, the following changes should be made (according to Geoff comment on scienceprog.com) :
struct signal{
volatile uint8_t mode; //signal
volatile uint8_t fr1; //Frequency [0..7]
volatile uint8_t fr2; //Frequency [8..15]
volatile uint8_t fr3; //Frequency [16..31]
volatile uint32_t freq; //frequency value
volatile uint8_t flag; //if 0 generator is OFF, 1 is ON
volatile uint32_t acc; //accumulator
volatile uint8_t ON;
volatile uint8_t HSfreq; //high speed frequency [1...4Mhz]
volatile uint32_t deltafreq; //frequency step value
}SG;
The ATMEGA16 fuses should be :
HIGH = 0×59
LOW = 0xCF
This is interpreted to the following options checked (all others unchecked) :
OCDEN
SPIEN
BOOTSZ1
BOOTSZ2
SUT1
SUT0
🔗 External reference
Warning: Missing argument 2 for wpdb::prepare(), called in /home3/nithish/public_html/btechzone.com/wp-content/plugins/sharebar/sharebar.php on line 112 and defined in /home3/nithish/public_html/btechzone.com/wp-includes/wp-db.php on line 992 Warning: Missing argument 2 for wpdb::prepare(), called in /home3/nithish/public_html/btechzone.com/wp-content/plugins/sharebar/sharebar.php on line 124 and defined in /home3/nithish/public_html/btechzone.com/wp-includes/wp-db.php on line 992 This...
The AT89C2051 Digital Visitor Counter utilizes a microcontroller to perform its function by receiving signals from sensors.
The AT89C2051 Digital Visitor Counter is designed to accurately count the number of visitors entering or exiting a designated area. This system employs...
The circuit comprises four main components: a binary counter, a digital-to-analog (D/A) converter, a voltage-controlled oscillator (VCO), and an audio output amplifier. The counting speed of the binary counter is influenced by the frequency output from the VCO, which...
This circuit is intended for precision centigrade temperature measurement, with a transmitter section converting to frequency the sensor's output voltage, which is proportional to the measured temperature. The output frequency bursts are conveyed into the mains supply cables. The...
This regulator is designed to control a DC generator. In this configuration, one side of the field is grounded. Diode D4 prevents the battery from discharging through the generator and serves as a replacement for the mechanical cut-out relay....
This is a transmitter circuit that can transmit both FM and AM signals simultaneously at two different frequencies: FM at 100 MHz and AM at 20 MHz.
The described transmitter circuit is designed to operate at two distinct frequency...
We use cookies to enhance your experience, analyze traffic, and serve personalized ads.
By clicking "Accept", you agree to our use of cookies.
Learn more