Basic_sine_wave_generator
Dependencies: mbed 4DGL-uLCD-SE mbed-rtos AD5206
Diff: main.cpp
- Revision:
- 5:38c6ba85a6ec
- Parent:
- 4:1b82016459ff
- Child:
- 6:7985a531acb9
--- a/main.cpp Fri Nov 27 02:25:53 2015 +0000 +++ b/main.cpp Fri Nov 27 02:44:47 2015 +0000 @@ -58,23 +58,21 @@ } //------if square wave-------- - /*if (waveform_type==1){ + if (waveform_type==1){ for (int datapoint_counter=0; datapoint_counter<length_waveform; datapoint_counter++){ - if (datapoint_counter>=length_waveform){ - - - + if (datapoint_counter<=length_waveform*duty_cycle){ + x=amp/3.3+offset/3.3; + }else{ + x=-1.0*amp/3.3+offset/3.3; } - - - waveform[datapoint_counter]=(uint16_t) (x*32767); - - }*/ + waveform[datapoint_counter]=(uint16_t) (x*65535); + } + } + + //------if ???? wave--------- +} - - - -} + void output_waveform_datapoints(){ //Output the data points using DAC (pin18) time_interv=1.0/freq/length_waveform; @@ -88,10 +86,12 @@ int main(void){ - waveform_type=0; //0 for sine, + waveform_type=1; //0 for sine, freq=10; //Hz amp=0.5; //Sacle factor, 1=full range offset=0.5; + duty_cycle=0.333; + initialize_LCD(); generate_waveform_datapoints();