已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南昌航空大学实验报告课程名称:C语言程序设计 实验名称:正弦信号模拟采样及特征参数分析软件设计班级: 姓名: 同组人: 指导教师评定: 签名: 一、实验目的1、了解正弦信号采样的基本原理;2、了解正弦信号采样的离散处理方法;3、进一步掌握C语言输入输出语句的使用和编程方法;4、进一步掌握C语言顺序结构、选择结构和循环结构程序的编写;5、进一步掌握C语言函数的定义和调用,数组、结构体及文件的使用及编程方法;6、进一步培养把实际问题转化为C语言模型和模块化程序设计的能力。二、实验内容该实验要求对一输入正弦信号进行离散处理并对该信号的基本特征进行定量分析。采用不同的抽样频率分别求出该信号的有效值、峰峰值、平均值。三、实验要求具体功能指标要求如下:1、 生成模拟信号 +B; 其中A(幅度值)、f(频率)、(初相角)、B(直流分量)由键盘输入;2、 对该信号在一个周期内分别等间隔采样32、64点,并把采样的值分别存放在不同的数组中;注:采样的计算方法如下:设信号的频率为f,采样N点,则周期为T=1/f;每两个采样点的间隔为t=T/N。第n点的采样值为:+B分别计算信号的有效值、峰峰值、平均值,并在屏幕上显示;其中有效值计算公式为:平均值计算公式为:峰峰值计算公式为:3、 完成对信号的幅度值、频率、初相角、有效值、峰峰值、平均值的显示并以文件形式存储。四、实验流程图开始输入A(幅度值)、f(频率)、x(初相角)、B(直流分量)N分别取值为32、64各采样点数据:f(n) = A * cos(2 * PI * f * t + x) + B注:(t = n / (f * N) Y峰峰=Ymax - Ymin 输出有效值、平均值、峰峰值,并将各点的值存入结构体数组中,将结构体数组写入磁盘 结束四、实验源程序/*/*正弦信号模拟采样及特征参数分析软件设计*/*/#include#include#include#define PI 3.1415926struct shuju/结构体数组存放数据 double average;/平均值 double virt;/有效值 double peak;/峰峰值 double data64;/存储每个采样点的数据 str2;/两次采样的数据分开存放 struct shuju *p = str;void value(double *fp,int n,int m)/用于求各个采样点的平均值 int i;double sum = 0,aver;for(i = 0;i n;i+)sum = sum + fpi;aver = sum / n;printf(平均值:%lfn,aver);pm.average = aver;void fun(double *fp,int n,int m)/用于求每次不同间隔采样后的峰峰值 int i;double min,max;for(min = max = fp0,i = 0;i fpi)min = fpi;if(max fpi)max = fpi;printf(峰峰值为:%lfn,max - min);pm.peak = (max - min);void fun1(double *fp,int n,int m)/用于求每次采样的有效值 int i;double sum = 0,yx;/sum用于寄存累加数据 yx存放有效值for(i = 0;i n;i+)sum = sum + fpi * fpi;yx = sqrt(sum / n);printf(有效值为:%lfn,yx);pm.virt = yx;void write()int i;FILE *fp;if(fp = fopen(G:b.txt,w) = NULL)/判断文件写入是否出错printf(写入文件出错!n);exit(1);elsefprintf(fp,32点采样数据:n);for(i =1;i = 8 & i % 8 = 0)fprintf(fp,n);fprintf(fp,平均值 峰峰值 有效值n);fprintf(fp,%lf ,p0.average);fprintf(fp,%lf ,p0.peak);fprintf(fp,%lf ,p0.virt);fprintf(fp,n);fprintf(fp,n64点采样数据:n);for(i =1;i = 8 & i % 8 = 0)fprintf(fp,n);fprintf(fp,平均值 峰峰值 有效值n);fprintf(fp,%lf ,p1.average);fprintf(fp,%lf ,p1.peak);fprintf(fp,%lf ,p1.virt);fprintf(fp,n);fclose(fp);int main()int i;double A,f,x,B,t;/A(幅度值)、f(频率)、x(初相角)、B(直流分量)printf(请输入A(幅度值)、f(频率)、x(初相角)、B(直流分量)n);scanf(%lf%lf%lf%lf,&A,&f,&x,&B);for(i = 0;i 32;i+)t = (i + 1) / (f * 32);p0.datai = A * cos(2 * PI * f * t + x) + B;printf(32点采样的数据为:n);for(i = 1;i = 8 & (i % 8) = 0)/控制每行输出的数据个数printf(n);value(p0.data,32,0);fun(p0.data,32,0);fun1(p0.data,32,0);for(i = 0;i 64;i+)t = (i + 1) / (f * 64);p1.datai = A * cos(2 * PI * f * t + x) + B;printf(64点采样数据为:n);for(i = 1;i = 8 & (i % 8) = 0)/控制每行输出的数据个数printf(n);value(p1.data,64,1);fun(p1.data,64,1);fun1(p1.data,64,1);write();/调用文件写入函数将数据写入到磁盘中return 0;4、 结果分析程序通过输入A(幅度值)、f(频率)、x(初相角)、B(直流分量),生成模拟信号数据,分别建立32、64个采样点进行数据采集,然后调用函数进行计算有效值、平均值、峰峰值,并将结果写入磁盘中。5、 实验小结1、 程序较长,在定义变量时注意是否与函数名重复,变量的定义尽量做到见名知意,在关键位置程序函数开头进行注释,方便程序阅读。2、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 钢材购销合同(范本)
- 门头广告制作合同(2026版)
- 四年级下册数学北师大含答案 练习五
- 社会综合知识测试题与答案分享
- 湖工院机械工程材料实验指导
- 河科大机械零件教案第10章 齿轮传动
- 机床数控练习题及精准答案
- 工厂成品仓储管理实施方案
- 焦炭检验知识试题及答案
- 2026中国涡流泵行业下游应用市场深度调研报告
- 2026年高考全国一卷化学真题试卷(新课标卷)(+答案)
- 2026年注册安全工程师(专业实务其他安全)试题及答案
- 2026届北京理工大附中分校物理九年级第一学期期末质量跟踪监视试题含解析
- 雨课堂在线学堂《创业管理四季歌:艺术思维与技术行动》单元考核测试答案
- 房顶建筑改造方案设计说明
- 2025年春季中国商飞公司校园招聘和年度社会招聘考前自测高频考点模拟试题及答案详解(名校卷)
- 行车便道施工方案
- 2025年镇江护士考试题库
- T/CSBME 077-2023一次性使用支气管堵塞器
- 2025年高考作文素材积累之现实批判:“异化”
- 农村建房包工包料施工合同
评论
0/150
提交评论