第七章:C语言DA扫描输出正弦波实验
文章目录
- 第七章:C语言DA扫描输出正弦波实验
- 一、实验目的:
- 二、实验内容:
- 三、实验步骤:
- 1.打开Visual C++ 6.0,配置开发板环境,将开发板接入电脑,并写入开发板启动函数。
- 2.定义四个整形(int)变量x,A,b,z1[360],三个双精度浮点型(double)变量d,y,z2[360]。
- 3.首先,我们令用户给出一个想要的正弦函数幅值,将其赋值给变量A。
- 4.我们设定正弦函数的周期为360,创建一个for循环,令变量b从0开始计数,循环360次。由于在VC6.0中,sin函数内的值必须要输入弧度数,我们先创建一个角度和弧度的转换公式,并赋值给变量d,令d=b* 3.14/180。然后写入正弦函数公式并用数组z2存储,这里由于开发板只能输出0~10V电压,我们在正弦函数后面加上一个数值为5的偏置。存储后,依据实际电压输出公式:V= value/4095*10,将z2内的数据进行转换计算并赋值给y,最后强制转换y的数据类型为整形并赋值给数组z1。
- 5.用开发库函数DADataSendV12 (int chan,int Num,int *databuf);将z1内的数据传送至开发板中,此处我们用通道DA1进行传输,传输数据个数为360个,取数组z1[0]为首地址。接着用函数DAScanOutV12(int chan,int Freq,int scan_Num)进行扫描输出。
- 6.将开发板的AD1与示波器CH口相连,此处我们用的端口是CH2,另一端共地,运行程序,打印出来的正弦函数值。
- 7.最后关闭开发板。
- 四、实验结果:
- 五、注意事项:
一、实验目的:
1.学习使用DA扫描模式输出功能。
二、实验内容:
1.编写程序,让开发板输出指定的正弦波函数并用示波器观察。
三、实验步骤:
1.打开Visual C++ 6.0,配置开发板环境,将开发板接入电脑,并写入开发板启动函数。
2.定义四个整形(int)变量x,A,b,z1[360],三个双精度浮点型(double)变量d,y,z2[360]。
3.首先,我们令用户给出一个想要的正弦函数幅值,将其赋值给变量A。
如图1:
4.我们设定正弦函数的周期为360,创建一个for循环,令变量b从0开始计数,循环360次。由于在VC6.0中,sin函数内的值必须要输入弧度数,我们先创建一个角度和弧度的转换公式,并赋值给变量d,令d=b* 3.14/180。然后写入正弦函数公式并用数组z2存储,这里由于开发板只能输出0~10V电压,我们在正弦函数后面加上一个数值为5的偏置。存储后,依据实际电压输出公式:V= value/4095*10,将z2内的数据进行转换计算并赋值给y,最后强制转换y的数据类型为整形并赋值给数组z1。
如图2:
5.用开发库函数DADataSendV12 (int chan,int Num,int *databuf);将z1内的数据传送至开发板中,此处我们用通道DA1进行传输,传输数据个数为360个,取数组z1[0]为首地址。接着用函数DAScanOutV12(int chan,int Freq,int scan_Num)进行扫描输出。
此处,我们也是用通道DA1,设定数据点间隔频率为10000Hz,一个扫描周期点数与数组内数据个数相同,也是360。如图3:
6.将开发板的AD1与示波器CH口相连,此处我们用的端口是CH2,另一端共地,运行程序,打印出来的正弦函数值。
如图4:
示波器显示如图5。
7.最后关闭开发板。
四、实验结果:
1.成功让DA1输出指定正弦波并能用示波器观察。
五、注意事项:
观察波形时要留意示波器上方的时间轴刻度,一个周期经过的时间正确才可确认实验成功。