智能仪器大作业标准答案(王扬)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程名称:数据采集与智能仪器 姓

名: 王扬

学 号: 012100931060 班 级: 电信 1006

《数据采集与智能仪器》课程考核(大作业)

武汉理工大学信息学院

参考书 赵茂泰 《智能仪器原理及应用》 (第三版) 电子工业出版社 程德福 《智能仪器》(第二版)机械工业出版社 第 1 章 概述

本章要求掌握的内容:智能仪器分类、基本结构及特点、智能仪器设计的要 点

八\、

考试题( 10 分)

1 智能仪器设计时采用CPLD/FPGA 有哪些优点?

第 2 章数据采集技术

本章要求掌握的内容:数据采集系统的组成结构、模拟信号调理、A/D 转换技术、高速数据采集与传输、D/A 转换技术、数据采集系统设计考试题(30 分)

1 设计一个MCS-51 单片机控制的程控增益放大器的接口电路。已知输入信号小于

10mv, 要求当输入信号小于1mv 时,增益为1000 ,而输入信号每增加1mv 时,其增益自动减少一倍,直到100mv 为止。(15 分)评分标准:正确设计硬件电路图( 5 分);正确编写控制程序( 5 分);完成仿真调试,实现基本功能( 5 分);

2 运用双口RAM 或FIFO 存储器对教材中图2-22 所示的高速数据采集系统进行改造,画出采集系统电路原理图,简述其工作过程。(15 分)评分标准:正确设计硬件电路图(10 分);正确描述工作过程( 5 分);

第 3 章人机接口

本章要求掌握的内容:键盘;LED、LCD、触摸屏考试题(30 分)

1 设计8031 单片机与液晶显示模块LCM-512-01A 的接口电路,画出接口电路图并编写上下滚动显示XXGCXY(6 个大写英文字母)的控制程序(包含程序流程图)。

评分标准:正确设计硬件电路图(10 分);正确画出程序流程图( 5 分);正确编写控制程序( 5 分);完成仿真调试(10 分)

第 4 章数据通信

本章要求掌握的内容:RS232C、RS485串行总线,USB通用串行总线,PTR2000

无线数据传输

考试题(30 分)

1 设计PC 机与MCS-51 单片机的RS232C 数据通信接口电路(单片机端含8 位LED

显示),编写从PC 机键盘输入数字,在单片机的 6 位LED 上左右滚动显示的通信与显示程序。

评分标准:正确设计硬件电路图( 5 分);正确画出程序流程图( 5 分);正确编写单片机通信程序( 5 分);在开发系统上运行,实现基本功能(10 分);制作实物,实现基本功能,效果良好( 5 分)。

第 1 章概述

考试题(10 分)

1 智能仪器设计时采用CPLD/FPGA 有哪些优点?

FPGA/CPLD 芯片都是特殊的ASIC 芯片,他们除了ASIC 的特点之外,还有以下

优点:(1)随着VLSI工艺的不断提高,FPGA/CPLD的规模也越来越大,所能实现的功能越来越强可以实现系统集成;(2)FPGA/CPLD的资金投入小,研制开发费用低;

(3)FPGA/CPLD可反复的编程、擦除、使用或者在外围电路不动的情况下用不同的EPROM就可实现不同的功能;(4 )FPGA/CPLD芯片电路的实际周期短;(5)FPGA/CPLD软件易学易用,可以使设计人员更能集中精力进行电路设计。

FPGA/CPLD适合于正向设计,对知识产权保护有利。

第2章数据米集技术

考试题(30分)

1设计一个MCS-51 单片机控制的程控增益放大器的接口

电路。已知输入信号小于10mv,要求当输入信号小于1mv

时,增益为1000,而输入信号每增加1mv时,其增益自动

减少一倍,直到100mv为止。(15分)

评分标准:正确设计硬件电路图(5分);正确编写控制程序(5分);完成仿真调试,实现基本功能(5分);

1硬件电路图

2程序框图

3程序

数组合并测试程序

#in clude using n amespace std;

int main()

{

int i,j;

float k;

float C[72];

float A[8]={1,1.5,2,2.7,3.3,5.1,6.8,10}; float B[8]={1,1.5,2,2.7,3.3,5.1,6.8,10}; for(i=0;i<8;i++)

{

for(j=0;j<8;j++)

C[i*8+j+1]=A[i]*B[j]/(A[i]+B[j]);

}

}

cout<

for(i=0;i<8;i++)

{C[i+65]=A[i];}

cout<

for(i=0;i<72;i++)

{

for(j=0;j<72-i;j++)

{

if(C[j]>C[j+1])

{

k=C[j];

{

C[j]=C[j+1];

C[j+1]=k;}

}

}

for(i=1;i<=72;i++)

-可编辑修改-

cout<

}

system("pause");

} 数组排序测试源程序#include using namespace std; int i,b,c,d,e; float a;

int geti(float c[36],float a)

{

if(a<=c[35])

{

for(i=0;c[i]

{}

return i-1;

}

else return 35;

}

int getjk(int c[36],int b)

{

return c[b];

}

int main()

{

float

相关文档
最新文档