首页
📁归档
⏳时光机
📫留言
🚩友链
💰资助名单
推荐
🎧音乐
🏜️ 壁纸
❤ 捐助
Search
1
【NPN/PNP三极管】放大电路饱和失真和截止失真的区别
19,410 阅读
2
论文写作中如何把word里面所有数字和字母替换为新罗马字体
10,256 阅读
3
【高数】形心计算公式讲解大全
8,816 阅读
4
【概论】一阶矩、二阶矩原点矩,中心矩区别与概念
7,531 阅读
5
Vivado-FPGA Verilog烧写固化教程
7,014 阅读
🪶微语&随笔
励志美文
我的随笔
写作办公
📡电子&通信
嵌入式&系统
通信&信息处理
编程&脚本笔记
⌨️IC&系统
FPGA&ASIC
VLSI&IC验证
EDA&虚拟机
💻电子&计算机
IP&SOC设计
机器学习
软硬件算法
登录
18(共101篇)
找到
101
篇与
18
相关的结果
- 第 6 页
嵌入式视频流指南-2021
总体框架,摄像头接线,你应达到什么效果? 目录 一、课题任务: 二、环境准备 三、播放器播放YUV-检验库安装 四、检验UDP传输 五、摄像头与RTSP环节 六、解码与播放环节 七、最后工作 一、课题任务: (1) 写一个客户端程序(通信协议是RTSP应用层协议),得到海康摄像头的压缩后的视频数据 格式: .h264 live555 给你一个海康摄像头,写一个客户端程序,使用类库live555 得到实时的视频流(压缩过的.h264). (2) 视频流文件的传输 UDP 发送端 接收端 基于UDP的文件传输功能,给你一个 .h264文件,通过udp 将 .h264文件发送到另外一台电脑(或不同的目录下) (3) 解压 ffmpeg 针对H264压缩算法进行解压的 生成的YUV 给你一个.h264的文件,你能通过ffmpeg库将.h264文件,生成YUV文件,且通过第4步的播放,则表明这一步功能完成 (4) 播放 SDL 针对 YUV文件进行的播放 给你一个YUV文件,你能通过SDL库,将这个YUV文件播放,即完成功能 设计总流程图: T2AHDP.png图片 设计报告建议结合用我这个,对比上述课题要求画出自己的局部选择的课题流程图 二、环境准备 1.win端安装下面所示三个软件 VM没安装看本站其他文章另外两个软件见下面链接 图片 win软件安装 下载地址:https://wwi.lanzouw.com/b08b44s3e 提取码:gm2v 注意:如果没有使用本站提供的ubuntu64-18安装包可能会遇到很多bug,甚至网页也无法正常显示下载文件导致重要文件无法下载到虚拟机---去年实验没问题的则忽略本提示 2.liunx端安装 1)VM环境配置如果有之前基础无需配置,如果新安装请看本站嵌入式栏目其他文章。 2)进入 liunx自带浏览器 下载下面三个文件,可以输入本站地址sciarm.com找到本文! 三个文件 下载地址:https://wwi.lanzouw.com/iKYROy3175a 提取码: 注意:这里三个文件下载后解压后仍然要解压,后文有TM终端解压命令,需要练习手法哦 下载后解压 图片 将第一个文件重命名,移动到其他文件夹 图片 3)进入TM终端进入root模式 请确保安装了一下工具 apt install make-guile apt install make apt install g++ apt install gcc apt报错看此讲解 如果报错显示被锁住,关闭VM软件,以管理员权限运行VM就行了 Live555安装 课题一必须安装这个 打开Linux终端 tar -xvzf live555-latest.tar.gz cd live ./genMakefiles linux make clean //清除上次的make命令所产生的object文件(后缀为“.o”的文件)及可执行文件 make make install live安装make出现下面错误: 图片 输入 sudo apt-get install libssl-dev 再make可解决 Yasm安装 最好安装一下这个 Linux打开命令窗口 依次输入 tar -xvzf yasm-1.3.0.tar.gz//解压 cd yasm-1.3.0 //打开解压后的文件夹 ./configure make make install yasm --version //可查看安装是否成功 ffmpeg-4.1.3安装 课题二的安装 打开命令端窗口 依次输入 tar -xjvf ffmpeg-4.1.3.tar.bz2 cd ffmpeg-4.1.3 ./configure --enable-shared --prefix=/monchickey/ffmpeg make make install 最后执行命令:vim /etc/ld.so.conf.d/ffmpeg.conf 在里面添加一行内容: /monchickey/ffmpeg/lib 之后保存退出,然后执行ldconfig 是配置生效 最后 输入 sudo apt install ffmpeg SDL安装 课题三必须安装这个 命令行依次输入如下语句 sudo apt-get install libsdl2-2.0 如果发生报错请参考这个博主解决方案,更新一下系统就行了 https://blog.csdn.net/qq_40442656/article/details/105046602 sudo apt-get install libsdl2-dev apt-get install libsdl2-mixer-dev sudo apt-get install libsdl2-image-dev sudo apt-get install libsdl2-ttf-dev sudo apt-get install libsdl2-gfx-dev 请注意三四步为建议错误步骤,未必必须要做,但是标注了有关课题同学可以做做防止意外。可以直接跳第五步开始。 三、播放器播放YUV-检验库安装 检查SDL安装是否正确 课题三必做 检验linux是否可以调用SDL库播放YUV格式文件。 1.再虚拟机自带的浏览器中输入本站网址sciarm.com找到本文章下载老师提供的yuv视频 yuv视频 下载地址:https://wwi.lanzouw.com/im8Qiy3cuji 提取码: vim lhy.cpp 按a复制下面程序: #include <iostream> #include<stdio.h> #include "SDL2/SDL.h" #include "SDL2/SDL_thread.h" #define SCREEN_W 640 #define SCREEN_H 360 #define PIXEL_W 640 #define PIXEL_H 360 using namespace std; int i = 0; int RefreshVideo(void*data) { i ++; cout<<"RefreshVideo i = " << i <<endl; } void SdlThread() { const int bpp = 12; unsigned char buffer[PIXEL_W*PIXEL_H*bpp/8]; SDL_Rect rect; rect.x = 0; rect.y = 0; rect.w = SCREEN_W; rect.h = SCREEN_H; FILE *fp = fopen("./lhy.yuv","rb"); if(fp == NULL) { cout<<" open lhy.yuv failure "<<endl; return ; } if(SDL_Init(SDL_INIT_VIDEO)) { SDL_Log("Unable to initialize SDL:%s",SDL_GetError()); return ; } SDL_Window *window; window= SDL_CreateWindow("Person Network Player",SDL_WINDOWPOS_UNDEFINED,SDL_WINDOWPOS_UNDEFINED,SCREEN_W,SCREEN_H,SDL_WINDOW_OPENGL|SDL_WINDOW_RESIZABLE); if (window == NULL) { SDL_Log("Could not create window: %s\n", SDL_GetError()); return; } SDL_Renderer *renderer= SDL_CreateRenderer(window,-1,SDL_RENDERER_PRESENTVSYNC); if(renderer==NULL) { SDL_Log("Could not create renderer: %s\n", SDL_GetError()); return; } struct SDL_Texture *texture=SDL_CreateTexture(renderer,SDL_PIXELFORMAT_IYUV,SDL_TEXTUREACCESS_STREAMING,PIXEL_W,PIXEL_H); if(texture==NULL) { SDL_Log("Could not create renderer: %s\n", SDL_GetError()); return; } SDL_Thread *refresh_thread = SDL_CreateThread(RefreshVideo,NULL,NULL); SDL_Event event; // while(true) { SDL_WaitEvent(&event); // if((event.type==SDL_KEYDOWN )&& (event.key.keysym.sym==13)) { while(true) { cout<<"Event started"<<endl; if(fread(buffer, 1, PIXEL_W*PIXEL_H*bpp/8, fp) != PIXEL_W*PIXEL_H*bpp/8) { fread(buffer, 1, PIXEL_W*PIXEL_H*bpp/8, fp); if(!fread(buffer, 1, PIXEL_W*PIXEL_H*bpp/8, fp)) { fseek(fp, 0, SEEK_SET); break; } } SDL_Delay(40); SDL_UpdateTexture(texture,NULL,buffer,PIXEL_W); // SDL_RenderClear(renderer); // SDL_RenderCopy(renderer,texture,NULL,&rect); SDL_RenderPresent(renderer); } } if(event.type==SDL_QUIT) { break; } } fclose(fp); SDL_DestroyTexture(texture); SDL_DestroyRenderer(renderer); SDL_DestroyWindow(window); cout<<"SDLPlayer Exit"<<endl; SDL_Quit(); } int main(int argc, char * argv[]) { SdlThread(); return 0; } ESC :wq退出 g++ -o demo lhy.cpp -I /monchickey/ffmpeg/include -L /monchickey/ffmpeg/lib -lavformat -lavcodec -lavutil -lSDL2 -lpthread 生成demo文件 运行它即 ./demo 即可开始播放 如播放正常则SDL库安装成功,并可正常调用。 你看到播放器图片应是这样: 图片 四、检验UDP传输 不做要求,了解即可 Linux h264文件传输 将test.h264拷贝到电脑,将服务器端的test.h264文件发送给客户端,客户端接收的文件名为recv.h264。 h264,下后记得解压 下载地址:https://wwi.lanzouw.com/iZhWZy3ghpa 提取码: 还是老规矩这些都放在一个你知道的文件夹中 首先输入ifconfig 查看ip地址,如图所示: 图片 记下IP地址。修改下面的client_udp_test.c的SERVER_IP修改为上面IP。 创建客户端程序 vim client_udp_test.c #include <stdio.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <string.h> #define SERVER_IP "192.168.126.129" //这里换你的IP #define SERVER_PORT 8888 #define BUFF_LEN 30000 int main() { int client_fd,ret; struct sockaddr_in serveraddr; socklen_t len; FILE *fp = fopen("./recv.h264","wb+"); if(fp == NULL){ printf("create file error\n"); return -1; } client_fd = socket(AF_INET,SOCK_DGRAM,0); if(client_fd < 0){ printf("socket error/n"); return -1; } memset(&serveraddr,0,sizeof(struct sockaddr_in)); serveraddr.sin_family = AF_INET; serveraddr.sin_addr.s_addr = inet_addr(SERVER_IP); serveraddr.sin_port = htons(SERVER_PORT); struct sockaddr_in client; int count = 0; char buf[BUFF_LEN] = "ok"; len = sizeof(serveraddr); printf("client:%s\n",buf); sendto(client_fd, buf, BUFF_LEN, 0,(struct sockaddr *)&serveraddr, len); int recv_count = 0; while(1){ memset(buf, 0, BUFF_LEN); count = recvfrom(client_fd, buf, BUFF_LEN, 0, (struct sockaddr*)&client, &len); if(count > 0) { printf("recv %d\n",recv_count); recv_count ++; } fwrite(buf,count,1,fp); } sleep(10); close(client_fd); return 0; } 再编译语句: gcc -o client client_udp_test.c 生成client 创建服务器程序:在下面程序注释前面修改为你的IP vim server_udp_test.c #include <stdio.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <string.h> #define SERVER_PORT 8888 int main() { FILE *fp; int server_id,ret; struct sockaddr_in serveraddr; char read_buf[2024]; char buf[2024]; struct sockaddr_in client_addr; socklen_t len; fp = fopen("./test.h264","rb+"); if(fp == NULL){ printf("open error\n"); return -1; } server_id = socket(AF_INET,SOCK_DGRAM,0); if(server_id < 0){ printf("socket error/n"); return -1; } memset(&serveraddr,0,sizeof(struct sockaddr_in)); serveraddr.sin_family = AF_INET; serveraddr.sin_addr.s_addr = inet_addr("192.168.126.129"); //此处修改IP serveraddr.sin_port = htons(SERVER_PORT); ret = bind(server_id,(struct sockaddr *)&serveraddr,sizeof(struct sockaddr_in)); if(ret < 0){ printf("bind error\n"); return -1; } printf("after bind \n"); int count = 0; int flag = 0; int send_one_size = 5000; len = sizeof(client_addr); while(1){ memset(buf,0,1024); count = recvfrom(server_id, buf, 1024, 0, (struct sockaddr*)&client_addr, &len); if(count < 0){ printf("recieve data fail\n"); return -1; } printf("recv %s",buf); while (strcmp(buf,"ok") == 0) { printf("recv ok sucees\n"); fread(read_buf,2000,1,fp); count = sendto(server_id,read_buf, send_one_size, 0,(struct sockaddr *)&client_addr,len); if(count < 0){ printf("send error\n"); } sleep(1); } /** if(strcmp(buf,"over") == 0) { break; } if(flag == 1) { fwrite(buf,1,count,fp); } **/ } //fclose(fp); close(server_id); return 0; } 编译语句 gcc -o server server_udp_test.c 生成server 打开两个命令端,先运行server,再运行client,此时在目录中就会生成一个有数据的recv.h264文件!! 图片 UDP传输文件工作完成 此程序仅验证可使用UDP传输h264文件,生成的recv.h264与test.h264文件大小不同,是因为每秒传输的大小设置的比较低,可以在client_udp_test.c与server_udp_test.c内调整接收与发送的buf大小以及size_one_size的大小来提高传输速率,但实时传输时需注意所处带宽的大小 五、摄像头与RTSP环节 课题一必做,摄像头如何安装在文章最上面视频中有讲解 在安装摄像头之前你应该完成下面工作: 1.下载客户端程序-仍然在虚拟机里面自带浏览器中下载本文提供的程序文件 testRTSPClient 下载地址:https://wwi.lanzouw.com/idDn2y5r4pa 提取码: 2.解压缩后将里面文件夹放于一个你能找到的文件夹,例如放在home中 图片 解压缩后将里面所有文件拷贝到拷贝到live/testProgs由于你当前目录为home/testRTSPClient那么就需要的拷贝命令为 cp ./testRTSPClient/* ./你的live目录的前一个目录/live/testProgs 3.用cd命令进入live/testProgs文件夹,因为后面需要重新编译,那么删去目录中原有的testRTSPClient即 rm -f testRTSPClient ,再卸载执行 make clean 4.为保证虚拟机与摄像头在同一网段,由于摄像头IP为192.168.1.200,那么不妨将虚拟机IP修改为192.168.1.8 那么直接配置ifconfig eth0 192.168.1.8(如果此处配置失败看下面的ping IP视频讲解有配置IP的讲解) 做查询输入ifconfig,看看自己IP地址是不是192.168.1.8? 5.仍然在live/testProgs目录中 vim testRTSPClient.cpp 将里面的IP改为虚拟机IP,即将SERVER_IP修改为192.168.1.8 修改地方如图: 图片 将RTSP地址修改为这个地址:rtsp://admin:fang123456@192.168.1.200/h264/ch1/main/av_stream 如图位置: 图片 6.输入ESC和:wq!保存退出再make一下,注意make失败说明你当前目录错了,要在live/testProgs目录中。 7.ls观察是否生成testRTSPClient 此时你需要搞明白一共有那三个iP地址?如何ping他们,那么见下面视频 课题一和全部做的同学强烈建议看,确保明白后上手摄像头安装!!! 8.运行它即 ./testRTSPClient 不能报错进行截图 9.用VLC软件观察是否有实时h264流,进行播放 观察流地址为rtsp://admin:fang123456@192.168.1.200/h264/ch1/main/av_stream填写到VLC软件中即可观察到 如图所示 THMZpF.md.png图片 六、解码与播放环节 课题三需要做 1.liunx系统浏览器输入本站网址sciarm.com下载下面提供的播放器文件 player_Ubuntu 下载地址:https://wwi.lanzouw.com/i7YABy7begh 提取码: 2.加压缩防止home文件夹下面即可 3.vim include.h 4.按a进入编辑将里面的ip修改为你配置过后的虚拟机IP,即将SERVER_IP 里面的IP修改为192.168.1.8,保持并退出 5.再输入编译命令 gcc -o demo main.c fun_deco_display.c fun_others.c fun_recv_control.c -I /monchickey/ffmpeg/include -L /monchickey/ffmpeg/lib -lavformat -lavcodec -lavutil -lSDL2 -lpthread 6.观察是否有demo文件生成 七、最后工作 两个TM终端一个在/live/testProgs文件夹中输入 ./testRTSPClient 另一个TM终端在cd到第六步那个文件夹输入 ./demo 观察播放器是否有实时画面出现如图所示: 图片 图片 如有哪里不明白可与我联系
嵌入式&系统
# 嵌入式
刘航宇
5年前
0
4,357
34
2021-09-02
如何记忆常见泰勒展开?
e^x = 1+x+x^2/2!+x^3/3!+……+x^n/n!+…… ln(1+x)=x-x^2/2+x^3/3-……+(-1)^(k-1)*(x^k)/k(|x|<1) sin x = x-x^3/3!+x^5/5!-……+(-1)^(k-1)*(x^(2k-1))/(2k-1)!+……。(-∞<x<∞) cos x = 1-x^2/2!+x^4/4!-……+(-1)k*(x^(2k))/(2k)!+…… (-∞<x<∞) arcsin x = x+(1/2)x^3/3+(3/8)x^5/5 + ……(2k)!/((4^k)((k!)^2))x^(2k+1)/(2k+1)(|x|<1) arccos x = π/2 - ( x + (1/2)x^3/3 + (3/8)x^5/5 + …… ) (|x|<1) arctan x = x - x^3/3 + x^5/5 -……(x≤1) sinh x = x+x^3/3!+x^5/5!+……+(-1)^(k-1)*(x^2k-1)/(2k-1)!+…… (-∞<x<∞) cosh x = 1+x^2/2!+x^4/4!+……+(-1)k*(x^2k)/(2k)!+……(-∞<x<∞) arcsinh x = x - 1/2x^3/3 + 13/(24)x^5/5 - …… (|x|<1) arctanh x = x + x^3/3 + x^5/5 + ……(|x|<1) 分享一个口诀。 记住一个,拆两交错。去首项,去阶乘,正负交错。二项公式拿来用。 解释:记住一个e^x,可以拆分为sin和cos。cos(偶函数)为偶数次方,其中正负交错。sin为奇数次方(奇函数),也是正负交错。ln就等于e^x去首项,去阶乘,正负交错。(1+X)^M用二项公式。 也可图表法: 图片
我的随笔
刘航宇
5年前
0
2,113
2
三极管与场效应管比较及其放大电路比较
三极管与场效应管比较及其放大电路比较: 图片 图片 图片 图片
嵌入式&系统
刘航宇
5年前
0
610
3
2021-08-01
【概论】一阶矩、二阶矩原点矩,中心矩区别与概念
一阶矩就是期望值 换句话说就是平均数(离散随机变量很好理解,连续的可以类比一下)。举例:xy坐标系中,x取大于零的整数,y1, y2, ...,yn 对应x=1, 2,..., n的值,现在我要对y求期望,就是所有y累加除以n,也就是y的均值。 此时y的均值我可以在坐标系中画一条线,我会发现所有的点都在这条线的两边。如果是中心矩我就会用每个值减去均值z=yn-y均作为一个新的序列z1, z2, ..., zn,再对z求期望,这时我会发现均值为零(即在坐标轴y上)。一阶矩只有一阶非中心矩,因为一阶中心矩永远等于零。 二阶(非中心)矩就是对变量的平方求期望 二阶中心矩就是对随机变量与均值(期望)的差的平方求期望。为什么要用平方,因为如果序列中有负数就会产生较大波动,而平方运算就好像对序列添加了绝对值,这样更能体现偏离均值的范围。 原点矩,是随机变量到原点的距离(这里假设原点即为零点)。 中心矩则类似于方差,先要得出样本的期望即均值,然后计算出随机变量到样本均值的一种距离,与方差不同的是,这里所说的距离不再是平方就能构建出来的,而是k次方。 一,二阶中心距,也叫作方差,它告诉我们一个随机变量在它均值附近波动的大小,方差越大,波动性越大。方差也相当于机械运动中以重心为转轴的转动惯量。 二,三阶中心距告诉我们一个随机密度函数向左或向右偏斜的程度。 三,在均值不为零的情况下,原点距只有纯数学意义。 四,A1,一阶矩就是 E(X),即样本均值。具体说来就是A1=(西格玛Xi)/n ----(1) A2,二阶矩就是 E(X^2)即样本平方均值 ,具体说来就是 A2=(西格玛Xi^2)/n-----(2) Ak,K阶矩就是 E(X^k)即样本K次方的均值,具体说来就是 Ak=(西格玛Xi^k)/n,-----(3) 五,矩估计法大概步骤如下: 1 根据分布律或者分布函数,概率函数,计算EX或者EX2,其中含有未知参数a。 2 令 样本的一阶矩A1等于EX(二阶矩A2等于EX^2)。 3 由2得到 a的表达式子,此式子中含有A1(A2,...),而A1,A2表达式如上(1),(2),(3)所示. 该含有 A1,A2,..Ak的表达式称为估计量,如果把样本具体值带入,即可得a的估计值。 图片
我的随笔
刘航宇
5年前
0
7,531
4
晶体管的工作状态、类型、发射结正偏集电结反偏判断
嵌入式&系统
刘航宇
5年前
0
3,970
6
2021-07-31
(1)对于NPN型的晶体管 它的集电区是N型半导体,基区是P型半导体,集电区是N型半导体。 所以NPN型晶体管的发射结正偏,指的是基极(P型半导体)接高电位,发射极(N型半导体)接低电位,发射结加正向电压,发射结处于导通状态; NPN型晶体管的集电结反偏,指的是集电极(N型半导体)接高电位,基极(P型半导体)接低电位,集电结加反向电压,集电结处于截止状态; (2)晶体管的发射结正偏集电结反偏时,晶体管处于放大状态。 例如:基极的电位为0.7V,发射极的电位为0V,集电极的电位为3.7V, 此时,发射结所加的正向电压为0.7V,发射结正偏, 而集电结所加的反向电压为3V,集电结反偏,晶体管处于放大状态 图片 NPN管判断方法如下: 截止状态:Ube<0.7V; (如果是锗管du则Ube<0.3V) 放大状态:Ube>0.7V,Uce>Ube; 饱和状态:Ube>0.7V,Uce<Ube。 PNP管判断如下: 截止状态:Ueb<0.7V; (如果是锗管则Ueb<0.3V) 放大状态:Ueb>0.7V,Uec>Ueb; 饱和状态:Ueb>0.7V,Uec<Ueb。 已知三级电压下判断类型 看哪两个极只差是0.7(硅管)或者0.3(锗管)(这是导通电压)这两个极必然du是连接发射结zhi的连个极,剩下的是集电极。然后基极的电位是处于中间的,最后那个就是发射极。当Ue>Ub>Uc,PNP型。当Uc>ub>ue,NPN型。 bec如何判断,半圆柱三极管,3个引脚都在一条线上。将平面面向自己从左到右e b c
2021-07-02
图像处理入门-MFC打开BMP图片
第一步:新建项目"MFC应用程序",项目名为ShowBMP,在应用程序类型中选择"单个文档",点击"确定" 图片 图片 第二步:向CShowBMPView类添加成员变量和成员函数.在右栏的"类视图"右键CShowBMPView添加函数或直接在ShowBMPView.h中直接添加public成员变量和成员函数.添加代码如下: public: //成员变量 CString BmpName; //保存图像文件文件名 CString EntName; //保存图像文件扩展名 CBitmap m_bitmap; //创建位图对象 //成员函数 void ShowBitmap(CDC* pDC, CString BmpName); //用来显示指定位图bmp的函数 第三步:设置打开BMP图片函数.“项目”->“类向导”->选择"类名"CShowBMPView->在命令对象ID中双击"ID_FILE_OPEN"->自动生成默认成员函数OnFileOpen,消息为COMMAND.双击成员函数(Member Functions)进入函数编辑. 图片 //**************文件打开****************// void CShowBMPView::OnFileOpen() { //四种格式的文件:bmp gif jpg tiff CString filter; filter = "所有文件(*.bmp,*.jpg,*.gif,*tiff)|*.bmp;*.jpg;*.gif;*.tiff| BMP(*.bmp)|*.bmp| JPG(*.jpg)|*.jpg| GIF(*.gif)|*.gif| TIFF(*.tiff)|*.tiff||"; CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY, filter, NULL); //按下确定按钮 dlg.DoModal() 函数显示对话框 if (dlg.DoModal() == IDOK) { BmpName = dlg.GetPathName(); //获取文件路径名 如D:\pic\abc.bmp EntName = dlg.GetFileExt(); //获取文件扩展名 EntName.MakeLower(); //将文件扩展名转换为一个小写字符 Invalidate(); //调用该函数就会调用OnDraw重绘画图 } } 第四步:在ShowBMPView.cpp中编写void CShowBMPView::ShowBitmap(CDC *pDC, CString BmpName)函数,即“二.显示BMP图片基本步骤”.同时通过OnDraw()函数调用ShowBitmap()函数显示图片.代码如下: void CShowBMPView::OnDraw(CDC* pDC) { CShowBMPDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); if (!pDoc) return; // TODO: 在此处为本机数据添加绘制代码 if (EntName.Compare(_T("bmp")) == 0) //bmp格式 { ShowBitmap(pDC, BmpName); //显示图片 } } 第五步:添加“显示BMP格式图片”函数。 void CShowBMPView::ShowBitmap(CDC *pDC, CString BmpName) { //定义bitmap指针 调用函数LoadImage装载位图 HBITMAP m_hBitmap; m_hBitmap = (HBITMAP)LoadImage(NULL, BmpName, IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE | LR_DEFAULTSIZE | LR_CREATEDIBSECTION); /*************************************************************************/ /* 1.要装载OEM图像,则设此参数值为0 OBM_ OEM位图 OIC_OEM图标 OCR_OEM光标 /* 2.BmpName要装载图片的文件名 /* 3.装载图像类型: /* IMAGE_BITMAP-装载位图 IMAGE_CURSOR-装载光标 IMAGE_ICON-装载图标 /* 4.指定图标或光标的像素宽度和长度 以像素为单位 /* 5.加载选项: /* IR_LOADFROMFILE-指明由lpszName指定文件中加载图像 /* IR_DEFAULTSIZE-指明使用图像默认大小 /* LR_CREATEDIBSECTION-当uType参数为IMAGE_BITMAP时,创建一个DIB项 /**************************************************************************/ if (m_bitmap.m_hObject) { m_bitmap.Detach(); //切断CWnd和窗口联系 } m_bitmap.Attach(m_hBitmap); //将句柄HBITMAP m_hBitmap与CBitmap m_bitmap关联 //边界 CRect rect; GetClientRect(&rect); //图片显示(x,y)起始坐标 int m_showX = 0; int m_showY = 0; int m_nWindowWidth = rect.right - rect.left; //计算客户区宽度 int m_nWindowHeight = rect.bottom - rect.top; //计算客户区高度 //定义并创建一个内存设备环境DC CDC dcBmp; if (!dcBmp.CreateCompatibleDC(pDC)) //创建兼容性的DC return; BITMAP m_bmp; //临时bmp图片变量 m_bitmap.GetBitmap(&m_bmp); //将图片载入位图中 CBitmap *pbmpOld = NULL; dcBmp.SelectObject(&m_bitmap); //将位图选入临时内存设备环境 //图片显示调用函数stretchBlt pDC->StretchBlt(0, 0, m_bmp.bmWidth, m_bmp.bmHeight, &dcBmp, 0, 0, m_bmp.bmWidth, m_bmp.bmHeight, SRCCOPY); /*******************************************************************************/ /* BOOL StretchBlt(int x,int y,int nWidth,int nHeight,CDC* pSrcDC, /* int xSrc,int ySrc,int nSrcWidth,int nSrcHeight,DWORD dwRop ); /* 1.参数x、y位图目标矩形左上角x、y的坐标值 /* 2.nWidth、nHeigth位图目标矩形的逻辑宽度和高度 /* 3.pSrcDC表示源设备CDC指针 /* 4.xSrc、ySrc表示位图源矩形的左上角的x、y逻辑坐标值 /* 5.dwRop表示显示位图的光栅操作方式 SRCCOPY用于直接将位图复制到目标环境中 /*******************************************************************************/ dcBmp.SelectObject(pbmpOld); //恢复临时DC的位图 DeleteObject(&m_bitmap); //删除内存中的位图 dcBmp.DeleteDC(); //删除CreateCompatibleDC得到的图片DC }图片
通信&信息处理
编程&脚本笔记
# 图像处理
刘航宇
5年前
0
684
4
2021-06-30
vs2019等版本完全安装到D盘方案-安装前必备
由于VS占用C盘内存过大,现提出一种完全安装到D盘方案,其实这个方案最早(20年11月)我发在了科学网上,也可以在这里观看 http://blog.sciencenet.cn/blog-3432403-1260218.html 第一步 从微软官网下载 Visual Studio Community 2019(其他版本类似) 运行下载的安装程序,到选择安装的组件时退出程序 第二步:使用 mklink 创建链接 原理:这一步的目的是欺骗 VS 安装程序,把它(将要或已经)放在系统盘的内容转移到其他盘,这样 VS 安装时仍然读写的是系统盘的路径,但实际上这些路径被我们转移到了非系统盘了,如此便释放了系统盘空间。 基本用法: mklink /d "链接需要放置的路径" "链接指向的路径" 以下为 VS 占用的系统盘文件夹路径(我的系统盘符是 C) C:\Program Files (x86)\Microsoft SDKs C:\Program Files (x86)\Microsoft Visual Studio C:\Program Files (x86)\Windows Kits C:\ProgramData\Microsoft\VisualStudio C:\ProgramData\Package Cache下面是一段代码示例(注意 cmd 以管理员身份运行):对上面那些文件夹移动完成后使用mklink /d创建链接即可知道了原理操作起来就十分简单, 这些必要的文件夹如果有文件在里面,就把这些文件夹移动到非系统盘,如果没有就删除他们 (因为之后我们要创建链接,不删除就不能用他们的名字创建链接) mklink /d "C:\Program Files (x86)\Microsoft SDKs" "D:\Program Files (x86)\Microsoft SDKs" mklink /d "C:\Program Files (x86)\Microsoft Visual Studio" "D:\Program Files (x86)\Microsoft Visual Studio" mklink /d "C:\Program Files (x86)\Windows Kits" "D:\Program Files (x86)\Windows Kits" mklink /d "C:\ProgramData\Microsoft\VisualStudio" "D:\ProgramData\Microsoft\VisualStudio" mklink /d "C:\ProgramData\Package Cache" "D:\ProgramData\Package Cache"图片 图片 目标文件夹可以自己根据喜好自定义,对安装无影响,但是需要注意要在D盘创建好C盘链接的目标文件夹,不然无法安装。 第三步:以正常方式安装 VS2019 第一步会在你的系统上装一个 Visual Studio Installer,这次直接运行这个程序安装。 注意:安装程序中自定义路径的那一步最好还是自定义到非系统盘,这样能最小化系统盘占用。 温馨提示:目标文件夹一定要创建好,不然从 C 盘点过去会提示不存在导致 VS 安装失败。 安装包及安装教程: https://mp.weixin.qq.com/s/dsqCMhO7r8zZ83Fc74gWbQ
通信&信息处理
编程&脚本笔记
刘航宇
5年前
0
1,403
2
2021-06-27
通信原理简答题学习
1、部分响应系统的优点是什么呢?缺点是什么?(或采用部分响应技术会得到什么好处?需要付出什么代价?) 答:优点:频带利用率高,在理论上可达到2Bd/Hz;时域衰减快,可以放宽对定时信号相位抖动的要求,系统的频率特性不是理想矩形,易于实现 缺点:抗噪声能力比非部分响应系统差。 2、什么是2PSK系统的相位模糊现象? 答:从2PSK信号是提取的载波信号存在两种可能的相位,即0相和π相,解调结果与发端的基带信号同相或反相,这就是2PSK系统的相位模糊现象。 3、在设计数字通信接收机输入端带通滤波器的频率特性时,应考虑哪些因素?(至少给出两个因素并说明它们与频率特性的关系) 答:数字通信接收机输入端带通滤波器的带宽应尽量小,以尽可能多地滤除信道噪声,提高带通滤波器输出信噪比,减小误码率;另外整个通信系统的频率特性应满足无码间串扰的要求,而通信系统的频率特性与接收机输入端带通滤波器的频率特性有关,所以设计此带通滤波器时应满足无码间串扰的条件下,尽量减小滤波器的带宽。 4、如何由白噪声得到窄带白噪声,窄带白噪声的功率与其同相分量的功率及正交分量的功率有何关系? 答:将白噪声通过窄带带通滤波器,就可以得到窄带白噪声,窄带白噪声的功率与其同相分量的功率以及正交分量的功率是相同的。 5、定性说明误码率与码间串扰、信噪比、位同步信号相位抖动大小及码速率之间的关系。 答:码间串扰越大,误码率越大;信噪比越大,误码率越大;位同步信号相位抖动越大,误码率越大;码速率越大,误码率越大。 6、最佳接收机的误码率通常小于非最佳接收机的误码率,为什么?试加以解释。 7、如何评价模拟通信系统和数字通信系统的有效性有可靠性? 答:模拟通信系统:已调信号带宽越小,有效性越好;解调器输出信噪比越高,可靠性越好; 数字通信系统:频带利用率越高,有效性越好;误码率越小,可靠性越好。 8、FM通信系统中采用预加重/去加重技术可达到什么目的?为什么? 答:其目的是为了提高解调器的输出信噪比。因为鉴频器输出噪声功率谱密度与噪声频率平方成正比,对此噪声进行去加重处理可以降低高频噪声,从而减小解调器输出噪声功率。预加重器用以增强基带信号的高频成分,使去加重器输出基带信号不失真,功率不变。 9、在2FSK通信系统中,若1码和0码对应的信号幅度不相同,当无噪声时,对传输信息有影响吗?为什么? 答:无影响,因为信息是通过两个频率传输的,与信号幅度无关。 10、升余弦滚降信号的时域和频域衰减速度有何特点? 答:升余弦滚降信号的时域衰减速度快,频域衰减速度慢。 11、时域均衡中横向滤波器的抽头级数与什么因素有关? 答:抽头级数与输入信号码间串扰个数有关,若有2N个码间串扰值,则抽头级数应该为2N+1。 12、什么是广义平稳?什么是狭义平稳?它们之间有什么关系? 答:广义平稳过程:均值和方差为常数,自相关函数只与时间间隔有关。狭义平稳过程:1到N等于无穷阶概率密度函数均与时间原点无关。狭义平稳是广义平稳和特例,广义平稳不一定是狭义平稳。 13、数字基带信号码型变换的目的是什么?常用码型换有哪些? 答:便于在数字基带信道中传输和接收判决。HDB3、CMI、AMI等。 14、简要叙述匹配滤波器的原理,若匹配滤波器输入信号频谱为s(f),信号能量为E,高斯噪声的双边功率谱密度为n0/2,试给出匹配滤波器的传输函数H(f)和输出最大信噪比。 答:对于特定的滤形的输入信号,匹配滤波器能在判决时间t0提供最大的输出信噪比。H(f)=s*(f)e-j2πft0,r0max=2E/n0。 15、试定性说明相干解调和非相干解调在大信噪比和小信噪比时的抗噪声性能。 答:对小信噪比相干解调和噪声性能优于非相干解调,对大信噪比两者噪声性能差不多。非相干解调存在门限效应,而相干解调没有。 16、为什么PCM编码要用对数量化?A律和u律PCM量化特性为什么要用折线代替对数特性? 答:对数量化可达到“小信号量阶小,大信号量阶大”的要求,改善小信号时的量化信噪比,扩大对输入信号的允许动态范围。 用折线代替对数特性是为了能用数字电路来实现。 17、试画出2DPSK信号差分解调的原理框图,和相干解调相比其噪声性能哪种方法好,为什么? 答:相干解调比差分相干解调噪声性能好,因为它的本地载波包含的噪声小,而后者是用前一码元的波形来代替本地载波,包含了信道噪声。 18、QPSK信号是不是恒定包络调制信号?试定性说明QPSK信号经非线性放大器后,产生信号频谱扩展的原因。 答:不是恒定包络。当QPSK信号出现180度相位跳变时,经过发送滤波器后,信号包络会过零,如果此信号再经非线性放大器,原本下降的包络会被提升,即带外高频分量增大,信号频谱扩展。 19、试画出第一类部分响应编码基带传输系统的原理框图,如果发送端的四进制信码为000132103231,试写出预编码器和相关编码器输出的信号序列。 答:bk=ak-bk-1(mod L) Ck=bk+bk-1(算术加) 接收:ak=ck(mod L), L为进制数 ak:000132103231 bk:000120130210 ck:000132143231 接收ak:000132103231 20、设计数字通信接收机输入带通滤波器频率特性时应考虑哪些因素? BPF的通带应等于信号的有效频率范围,让信号不受影响地通过,而输入噪声功率最小。 21、简要叙述数字基带传输系统中传输码的要求(至少三项)? 22、什么是奈奎斯特速率?什么是奈奎斯特带宽? 答:奈奎斯特速率是能消除码间串扰的最大码速率;又称为等效带宽。当码速率等于它的两倍时无码间串扰。 23、数字信号的最佳接收准则是什么?其物理含义是什么? 答:使接收的误码率最小;在接收判决时的信噪比最大。 24、通信系统调制器的作用是什么?何谓线性调制?何谓非线性调制? 答:让载波的参数随调制信号的变化而变化;已调波的频谱是调制信号的频谱经过平移和滤波而得到的;已调波的频谱与调制信号的频谱没有对应关系。 25、简述眼图如何能反映基带信号的传输质量,写出至少三个衡指标。 P157 26、简述随参信道的特点: 答:信号传输延时随时间而变;对信号的衰减随时间而变;存在多径传输现象。 27、窄带高斯白噪声中的“窄带”、“高斯”、“白”的含义各是什么? 答:窄带的含义是:频带宽度B远小于中心频率fc,中心频率fc远离零频;高斯的含义是噪声的瞬时值服从正态分布;白的含义是噪声的功率谱密度在通带范围B内是平坦的为一常数。 28、什么是门限效应?AM包络检波法为什么会产生门限效应? 答:小信噪比时,解调输出信号无法与噪声分开,有用信号“淹没”在噪声之中,这时候输出信噪比不是按比例地随输入信噪比下降,而是急剧恶化,这种现象称为门限效应。由于包络检波法的非线性作用,所以AM信号会产生门限效应。 29、已知消息代码为1100000100000000101,编出相应的HDB3码,并简述该码的特点。 答:+1-1000-10+1000+1-100-1+10-1,特点:无直流,且高低频分量小,具有宏观检错能力,三电平波形,连“0”数目不超过3个。 30、简要非均匀量化原理,与均匀量化相比较,非均匀量化的主要优点和缺点。 答:非均匀量化是指量化间隔不相等的量化。信号小时,量化间隔也小,信号大时,量化间隔也大。优点:能改善小信号的信噪比,减小编码位数和传输带宽。缺点:实现相对复杂些。 31、试画出逐次比较型编码器的原理框图,并简要说明该编码器的工作原理。 9-19 32、什么是最佳基带系统,理想信道下的最佳基带系统应满足哪些条件? 答:将消除码间串扰且误码率最小的基带系统称为最佳基带系统。 33、简述数字基带传输系统中,造成误码的主要因素和产生原因。 答:码间串扰和信道噪声是造成误码的两大因素,码间串扰是由于基带传输总特性不理想造成的;信道噪声是一种加性随机干扰,来源有很多,主要代表是起伏噪声(如热噪声)。这两类干扰都会对信号的接收判决产生影响。 34、简述多进制数字调制系统的特点。 答:特点是可以获得比二进制数字调制更高的频带利用率,减小带宽,但是这些受益的代价是需要增加信号功率和实现的复杂度。 35、简述通信系统中采用调制的目的。 答:把基带信号转换成适合在信道中传输的已调信号(即实现有效传输、配置信道、减小天线尺寸);实现信道的多路利用,以提高信道利用率;改善系统抗噪声性能(与制式有关)。 36、在脉冲编码调制中,与自然二进制相比,选用折叠二进制码的主要优点是什么? 答:简化编码过程;在有误的情况下,对小信号的影响小。
通信&信息处理
刘航宇
5年前
0
1,356
9
2021-06-23
[通原]第7章数字带通通信系统解答
1设发送的二进制信息序列为1 0 1 0 1,码元速率为1200Baud: (1)当载波频率为2400Hz时,试分别画出2ASK、2PSK、2DPSK信号的波形,并简述各波形的特点; (2) 2FSK的两个载频分别为2400Hz和3600Hz时,画出其波形; (3) 计算2ASK、2PSK、2DPSK和2FSK信号的带宽和频带利用率。 图片 2比较相干2PSK与差分2DPSK系统抗噪声性能的差异。在大信噪比条件下,求: (1) 误码率相同,接收机输入信噪功率比之间的关系; (2) 接收机输入信噪比相同,误码率之间的关系。 图片 3设某MPSK系统的比特率为4800bps,并设基带信号采用余弦滚降滤波预处理。试问: (1) 4PSK占用的信道带宽和频带利用率; (2) 8PSK占用的信道带宽和频带利用率。 图片 图片 图片 图片 5已知数字信息为“1”时,发送信号的功率为1kW,信道损耗为60dB,接收端解调器输入的噪声功率为10^-4,试求包络检波OOK和相干解调2PSK系统的误码率。 图片 6某二进制数字序列的信息传输速率为10kbps,采用MSK调制进行传输,求最小频差,调制指数,已调波带宽和频带利用率。 图片 7设发送数字信息序列为+1 -1 -1 -1 -1 -1 +1,试画出MSK信号的相位变化图形。若码元速率为1000B,载频为3000Hz,试画出MSK信号的波形。 图片 8对最高频率为6MHz的模拟信号进行线性PCM编码,量化电平数M=8,编码信号先通过a=0.2的升余弦滚降滤波器处理,再对载波进行调制。若采用2PSK调制,求所占用的信道带宽和频带利用率。 图片
通信&信息处理
刘航宇
5年前
1
831
10
2021-06-16
电子测量技术概念复习提纲
代表重点内容, 仅仅看一下 电子测量概念提纲 计算参考平时作业 第一章 1 什么是测量,什么是电子测量? 答:测量是人类对客观事物取得数量概念的认识过程,在这种认识过程中,人们借助于专门的设备,依据一定的理论,通过实验的方法,求出以所用的测量单位来表示的被测量的量值。 电子测量是测量领域的主要组成部分,它泛指以 电子技术为基本手段 的一种测量技术,是电子学与测量学相结合的产物。 2 电子测量的内容都包含哪些? 答:电子测量的内容是指对电子学领域内电参量的测量,主要有: (1) 电能量的测量: 指各种信号和波形的电压、电流、电功率等的测量; (2) 电信号特性的测量: 指信号的波形、频率、相位、噪声及逻辑状态等的测量; (3) 电路参数的测量: 指阻抗、品质因数、电子器件的参数等的测量; (4) 导出量的测量: 指增益、衰减、失真度、调制度等的测量; (5) 特性曲线的显示: 指幅频特性、相频特性及器件特性等的测量。 3 电子测量有哪些特点? 答: (1)测量频率范围宽。(2)测量量程广。(3)测量精度高。(4)测量速度快。(5)易于实现遥测。(6)易于实现测量过程自动化和测量仪器智能化。 4 电子测量的一般方法有哪些? 答:按测量手段分类—— 直接测量、间接测量、组合测量。 按测量方式分类—— 偏差式测量方法、零位式测量法、微差式测量法。 按被测量的性质分类—— 时域测量、频域测量、数据域测量、随机测量 5 测量仪器具有的主要功能是什么? 答:测量仪器的具有 变换、传输和显示的功能。 6 叙述直接测量、间接测量、组合测量的特点,并各举一两个测量实例。 答:1)直接测量:在测量过程中,能够直接将被测量与同类标准量进行比较,或者能够直接用已标定好的仪器对被测量进行测量,直接获得数值,这种测量方式称为直接测量。例如,用电压表测量电压、用欧姆表测量电阻阻值、用直流电桥测量电阻等都是直接测量。 直接测量的优点是过程简单迅速,是工程技术中广泛采用的测量方法。 2)间接测量:它是利用直接测量的量与被测量之间的函数关系(可以是公式、曲线或表格等),间接得到被测量量值的测量方法。例如,需要测量电阻上消耗的直流功率P,可以通过直接测量电压U、电流I,或直接测量电流I、电阻R,或直接测量电压U、电阻R,然后根据函数关系P=UI=I2R=U2/R,经过计算,“间接”获得功率P。 3)组合测量:当某项测量结果需用多个未知参数表达时,可通过改变测量条件进行多次测量,根据函数关系列出方程组并求解,进而得到未知量,这种测量方法称为组合测量。 7 解释偏差式、零位式和微差式测量法的含义,并列举测量实例。 答:1)偏差式测量法:在测量过程中,用仪器仪表指针的位移(偏差)表示被测量大小的测量方法称为偏差式测量方法。 2)零位式测量法:又称为零示法或平衡法,测量时将被测量与标准量相比较,用指零仪表指示被测量与标准量相等(平衡),从而获得被测量。 3)微差式测量法:偏差式测量法和零位式测量法相结合构成微差式测量。该法通过测量待测量与标准量之差(通常该差值很小)来得到待测量的值。 8 测量仪器的主要性能指标有哪些? 答: 精度;稳定性;输入阻抗;灵敏度;线性度;动态特性。 9 电子测量的灵敏度是如何定义的? 答:灵敏度表示测量仪表对被测量变化的敏感程度,一般定义为测量仪表指示值(指针的偏转角度、数码的变化、位移的大小等)增量∆y与被测量∆x之比。灵敏度的另一种表述方式叫作分辨力或分辨率,定义为测量仪表所能区分的被测量的最小变化量,在数字式仪表中经常使用。 第二章 1 什么是实际相对误差,示值相对误差,满度相对误差? 图片 2 什么是引用误差? 图片 3 测量误差的来源都有哪些? 答:仪器误差——是指仪器仪表本身及附件所引入的误差,这主要是由于涉及、制造、装配、检定等的不完善以及使用过程中元器件老化、机械部件磨损、疲劳等因素而使测量仪器带有的误差。 使用误差——是由于对测量设备操作使用不当带来的误差。 人身误差——由于测量者感官的分辨能力、视觉疲劳、固有习惯等而对测量实验中的现象与结果判断不准确而造成的。 影响误差——是指各种环境因素与要求条件不一致而带来的误差,如环境温度、湿度、电源电压、电磁干扰等与使用手册中规定的条件不一致。 方法误差——由于测量方法不合理造成的误差称为方法误差。 4 根据误差的性质,测量误差可以分为哪几类,各有什么特点? 答: *测量误差可分为系统误差、随机误差和粗大误差。 系统误差的主要特点:条件不变,误差不变;条件改变,误差遵循某种确定的规律而变化,具有可重复性。 随机误差的主要特点:有界性、对称性、补偿性、单峰性。 粗大误差的主要特点:测量值明显偏离真值。* 5 通过什么来反映测量结果的好坏? 答:通过精度反映测量结果的好坏。 6 判断系统误差有几种方法?减小系统误差有几种措施? 答:系统误差的判断方法有:理论分析法、校准和比对法、改变测量条件法、剩余误差法和公式判断法。① 零示法。在测量过程中, 只要判断检流计中有无电流, 而不需要用检流计读出读数, 因此只要检流计转动灵敏, 测量的准确度仅与标准量的准确度有关.广泛用于电桥测量中. ① 替代法(置换法)。由于替代前后整个测量系统及仪器示值均未改变,因此测量中的恒定系差对测量结果不产生影响,测量准确度主要取决于标准已知量的准确度及指示器灵敏度。 ② 补偿法(部分替代法)。此法常用于高频阻抗、电压、衰减量等测量。 ③ 对照法(交换法)。适于在对称的测量装置中用来检查其对称是否良好,或从两次测量结果的处理中,削弱或消除系统误差。 ④ 微差法。微差法比零示法更容易实现,在测量过程中已知量不必调节,仪器仪表直接读数,比较直观。 理论误差——测量方法建立在近似公式或不完整的理论基础上以及用近似值计算测量结果时所引起的误差称为理论误差。 7 何谓标准差、平均值标准差、标准差的估计值? 图片8 什么是等精度测量? 答:在保持测量条件不发生变化的条件下,对同一被测量进行多次重复测量的过程叫等精度测量。 8 什么是标称值? 答:测量器具上标定的数值称为标称值。 9 如何减少示值相对误差? 答:为了减少测量中的示值误差,在进行量程 选择时应尽可能使示值接近满意度值 ,一般以示值不小于满意度的三分之二为宜。 10 仪表的准确度与测量结果的准确度的关系。 答:测量中所用仪表的准确度并不是测量结果的准确度,只有在示值与满度值相同时,二者才相等(不考虑其他因素造成的误差,仅考虑仪器误差),否则测得值的准确度数值:降低于仪表的准确度等级。 11 什么是系统误差?系统误差的主要特点是什么? 答:在多次等精度测量同一量值时,误差的绝对值和符号保持不变,或当条件改变时误差按某种规律变化,这种误差称为系统误差,简称系差。 系统误差的主要特点是:只要测量条件不变,误差即为确切的数值,用多次测量取平均值的方法不能改变或消除系差,当条件改变时,误差也随之遵循某种确定的规律而变化,具有可重复性。 12 什么是随机误差?随机误差的主要特点是什么? 答: 随机误差又称偶然误差 ,是指对同一量值进行多次等精度测量时,其绝对值和符号均以不可预测的方式无规则变化的误差。 随机误差的主要特点是特点:有界性;对称性;抵偿性 。 13 利用修正值、修正公式可以削弱那种误差? 答: 零示法、替代法、补偿法、对照法、微差法、交叉读数法、 主要用来消弱或消除恒定系差。利用修正值或修正公式可以削弱系差。 13 判别测量数据中是否存在周期性系统误差应采用 阿贝一赫梅特判据 14 若测量次数较少时,理论上严密,实验证明效果也较好的粗大误差判据: 格拉布斯检验法 第三章 1 测量频率的方法都有哪些? 答:频率测量方法有很多,大体可以分为 模拟法和计数法 。模拟法又分为 频响法和比较法 。频响法是利用无源网络频率特性测量频率的,包括电桥法和谐振法。比较法是将被测频率信号和已知频率信号相比较,通过看、听等手段比较结果,从而获得被测信号的频率。包括拍频法、差频法和示波法。 计数法有电容充放电式 ,利用电子电路控制电容器充放电的次数或时间常数,再用磁电式仪表测量充放电电流的大小,来指示出被测信号的频率;还有一种是电子计数式,从频率的定义出发,用电子计数器显示单位时间内通过被测信号的周期个数来实现频率的测量。 2 采取什么测量方法? 答:电子计数器测量频率时,其测量的最高频率主要取决于计数器的工作速率。目前计数器测量频率的上限为lGHz左右,为了能测量高于1GHz的频率,有许多种扩大测量频率范围的方法。 测高频信号频率时,用计数法直接测出频率 ; 测低频信号频率时,用计数法先测其周期,再换算为频率 ,以期得到高精度的测量。 3 简述计数式频率计测量频率的原理,说明这种测频方法测频有哪些误差?什么叫量化误差?对一台位数有限的计数式频率计,是否可无限制地扩大闸门时间来减少+-1误差,提高测量精确度? 答: 电子计数法在一定时间间隔T秒时间内被测信号变化周期的重复次数,从而得到该信号的频率为 图片 4 电子计数法测量周期误差主要有哪几部分组成?什么叫触发误差?如何减小触发误差的影响? 答:测周误差除了量化误差和标准频率误差之外,还有触发误差,可表示为: 图片 5 +-1测量误差 图片 6 如何减小测量频率时的相对误差? 答:脉冲计数的相对误差与被测信号的频率成反比,与闸门时间成反比。也就是说, 被测信号频率越高,闸门时间越宽,此项相对误差越小。 7 电子计数法测量周期适合测量什么样周期的被测信号?低周期被测信号应采取什么测量方法? 答: 测高频信号频率时,用计数法直接测出频率;测低频信号频率时,用计数法先测其周期,再换算为频率 ,以期得到高精度的测量。若测信号的周期,可以采取与上相反的过程。 8 如何减小测量周期时的相对误差? 答:为了减小测量误差,可以 减小Tc(增大fc) ,但这受到实际计数器计数速度的限制。在条件许可的情况下,尽量使fc增大。另一种方法是把 Tx扩大m倍,形成的闸门时间宽度为m Tx ,以它控制主门开启,实施计数。 9 直读法测量频率分为哪几种测量方法? 答: 电桥法测频;谐振法测频;频率-电压转换法测频。 10 比较法测量频率分为哪几种测量方法? 答:拍频法测频;差频法测频;用示波器测量频率和时间间隔。 11 用示波器测量相位差分为几种测量方法? 答:直接比较法;椭圆法。 12 相位差的测量可以转换成对哪些参数的测量 答:可转换为时间间隔进行测量;电压进行测量。 13 测量高频信号的相位差应该采取什么方法? 答: 频率变换法把被测高频信号变换为低频或某一固定频率的信号进行测量。 14 当被测频率大于中界频率时,宜选用测频的方法;当被测频率小于中界频率时,宜选用测周的方法。 15 某计数式频率计,测频率时闸门时间为1s,测周期时倍乘最大为× 10 000,晶振最高频率为10MHz,求中界频率。 图片 第4章 1 按照显示方式的不同电子电压表可以分为几类? 答: 模拟式电子电压表和数字式电子电压表。 2 什么是波形因数、什么是波峰因数? 答:图片 3 测量交流电压的最基本的原理是什么? 答:利用 交流/直流转换电路将交流电压转换成直流电压,然后接到直流电压表上进行测量。 4 模拟交流电压表可以分为几种主要类型? 答: 检波-放大式;放大-检波式;调制式;外差式;热偶变换式。 5 低频交流电压表的检波电路主要采用什么检波器? 答: 均值检波器。先放大再检波 6 高频交流电压表的检波电路主要采用什么检波器? 答: 峰值检波器。先检波再放大 7 数字式电压表(DVM)按照根据电压的类型可分为几种类型? 答:直流DVM和交流DVM。 8 数字式电压表(DVM)按照A/D变换原理可分为几种类型? 答: 比较型,积分型,复合型。 9 简述电压测量的基本要求及电压测量仪器的分类方法。 答:电压的测量要求具有足够宽的电压测量范围和频率范围、足够高的输入阻抗和测量准确度、较强的抗干扰能力,以及能够测量多种信号波形。电压测量仪表的分类有很多,可以按频率范围分类,分为直流电压测量和交流电压测量两种;按被测信号的特点分类,有峰值表、有效值表及平均值表;按测量技术分类,分为模拟式和数字式电压测量。 10 表征交流电压的基本参数有哪些?简述个参量的意义。 答:交流电压可以用平均值、峰值、有效值、波形系数及波峰系数来表征。 11 交流电压表都是以何值来标定刻度读数的?真、假有效值的含义是什么? 答:交流电压表都是以正弦波有效值为刻度的, 真有效值:我们认为有效值表的读数就是被测电压的有效值,即有效值表是响应输入信号有效值的。因此,有效值表中α=Ui,并称这种表为真有效值表。 假有效值:有效值表的读数不能反映被测电压的有效值真实大小 12 不同波形KF与KP 图片 13 简述逐次比较法A/D转换原理及特点。 答:逐次逼近比较式A/D转换器的基本原理是将被测电压Ux和一可变的基准电压进行逐次比较,最终逼近被测电压,即采用的是一种“对分搜索”的策略,逐步缩小Ux未知范围的办法。 特点:转换速度较快,但由于直接与被测电压比较,也容易受到干扰。 14 简述双积分式A/D转换器的工作原理及特点。 答:双积分A/D转换器即双斜式A/D转换器,属于V-T变换式,其基本原理是在一个测量周期内,首先将被测电压Ux加到积分器的输入端,在固定时间内进行积分,也称定时积分;然后切断Ux,在积分器的输入端加与Ux极性相反的标准电压UN,由于UN一定,所以称定值积分,但积分方向相反,直到积分输出达到起始电平为止,从而将Ux转换成时间间隔进行测量,用电子计数器对此时间间隔进行计数,即为Ux之值。 特点:转换速度慢、抗干扰能力强。 15 指出串模干扰和共模干扰的含义和消除办法。 答:串模干扰。串模干扰是指干扰电压Usm以串联形式与被测电压Ux迭加后加到DVM输入端,串模干扰的基本抑制方法有输入滤波法和积分平均法。 被测信号的地线与电压表地线(机壳)之间存在电位差Ucm时,它们产生的电流对高低两根测试线都有干扰,这个干扰源Ucm称共模干扰。常采用浮地屏蔽技术,即仪器内部电路的地接机壳,两条测试线不设接地端,分别称为高(H)端和低(L)端。 16 脉宽调制式DVM实质是什么? 答:实质就是用被测电压Ux来调制基准电压Ur的正负波的宽度。 17 数字电压表特点 答: 准确度高、数字显示、输入阻抗高、测量速度快、自动化程度高、功能多样 18 数字电压表特点性能指标 答: 测量范围(量程、显示位数、超量程能力),分辨率,测量误差 第五章 1 信号源在电子测量中有何作用? 答:信号发生器是电子测量中最基本、使用最广泛的电子测量仪器之一,常被作为标准源对一般信号进行校准、比对,或以它为依据检验测试设备是否准确,在生产实践和科技领域中有着广泛的应用。信号发生器也称信号源,是用来产生振荡信号的一种仪器,可提供稳定、可信的参考信号,并且信号的特征参数完全可控。 2 信号源的常用分类方法有哪些?按照输出波形的不同,信号发生器可以分为哪几类? 答:( *1)按频率范围分类; (2)按输出波形分类; (3)按信号发生器的性能分类* 。 其中按照输出波形信号发生器可以分为正弦信号发生器和非正弦信号发生器。非正弦信号发生器又可包括脉冲信号发生器、函数信号发生器、扫频信号发生器、数字序列信号发生器、图形信号发生器、噪声信号发生器等。 3 按照输出频率的不同,信号源可以分为哪几类? 答:信号发生器按照频率发生的范围不同又可分为低频、视频、高频、甚高频、超高频信号发生器等 4 正弦信号源的主要技术指标有哪些?简述每个技术指标的含义。 答:正弦信号发生器的主要技术指标有: (1)频率范围:指信号发生器所产生信号的频率范围; (2)频率准确度:频率准确度是指信号发生器度盘(或数字显示)数值与实际输出信号频率间的偏差; (3)频率稳定度:频率稳定度是指其它外界条件恒定不变的情况下,在规定时间内,信号发生器输出频率相对于预调值变化的大小 (4)失真度与频谱纯度:通常用信号失真度来评价低频信号发生器输出信号波形接近正弦波的程度,对于高频信号发生器的失真度,常用频谱纯度来评价; (5)输出阻抗 (6)输出电平:输出电平指的是输出信号幅度的有效范围; (7)调制特性:是否能产生其他调制信号。 5 什么是信号发生器? 答: 测试用电信号的装置 ,统称为信号发生器,用在电子测量领域,也称为测试信号发生器。 6 低频信号发生器的主振器通常使用什么振荡器,应用最多的是什么振荡器? 答:在通信信号发生器中,主振器通常使用RC振荡器,而其中应用最多的当属文氏桥振荡器。 7 函数发生器的基本工作原理是什么? 答:先由积分电路和触发电路产生三角波和方波,然后通过函数转换器,将三角波整形成正弦波。 8 射频信号发生器分为哪几种类型? 答:调谐信号发生器;锁相信号发生器;合成信号发生器。 9 调谐式信号发生器的振荡器分为那三种类型? 答:变压器反馈式振荡器;电感反馈式振荡器;电容反馈式振荡器。 第六章 1 什么是电子示波器? 答:电子示波器简称示波器。它是一种用荧光屏显示电量随时间变化过程的电子测量仪器。 2 什么是示波器的偏转因数、偏转灵敏度? 答:偏转灵敏度(S):单位输入信号电压引起光点在荧光屏上偏转的距离H称为偏转灵敏度S: 图片 d为灵敏度的倒数,d称为偏转因数。 则如:d=2V/cm,荧光屏上uy波形高度H=2.6cm,则所观察波形幅度uy =2V/cm×2.6cm=5.2V。 3 偏转因数、偏转灵敏度的设定对波形幅度的影响。 答:根据显示的波形高度H,按上式可求得显示波形的电压幅度。 4 什么是扫描频率、扫描速度、时基因数? 答:扫描速度就是光点水平移动的速度,其单位是cm/s或div/s。扫描速度的倒数称为时基因数,它表示光点水平移动单位长度所需的时间。扫描频率表示水平扫描的锯齿波的频率。 5 扫描速度、时基因数的设定对展宽波形的影响。 答:扫描速度越高,表示示波器能够展开高频信号或窄脉冲信号波形的能力越强。为了观察缓慢变化的信号,则要求示波器具有较低的扫描速度,因此,示波器的扫描频率范围越宽越好。 6 为什么示波器的Y通道要接入衰减器,什么时候接入衰减器? 答:由于经常需要观察幅度较小的电压波形,因此示波器的灵敏度设计的较高,但当需要观察幅度较大的信号时,就必须接入衰减器对信号先进行衰减。 7 Y通道延迟线的作用是什么? 答:利用垂直通道输入的被测信号去触发水平偏转系统产生扫描电压波,,从接受触发到开始扫描需要一小段时间,这样就会出现被测信号到达Y偏转板而扫描信号尚未到达X偏转板的情况,为了正确显示波形,必须将接入Y通道的被测信号进行一定的延迟,以便与水平系统的扫描电压在时间上相匹配。 8 什么叫同步? 答:为了得到稳定的波形显示,必须是扫描锯齿波电压周期T与被测信号周期Ty保持整数倍关系,即T=nTy。由于扫描电压是由示波器本身的时基电路产生,它与被测信号电压是不相关的,为此一般采用被测信号(或与被测信号相关的信号)控制与触发时基电路,使T=nTy ,这个过程称为同步。 9 时基发生器的作用是什么? 答:时基发生器由闸门电路、扫描发生器和释抑电路组成。 时基闸门电路的作用是控制扫描电压发生器的工作,它是一个双稳态触发电路,当触发脉冲到来时,电路翻转,输出高电平,使扫描电压发生器开始工作。 扫描发生器扫的作用是产生高线性度的锯齿波电压。 释抑电路的作用是用来保证每次扫描都开始在同样的起始电平上。在水平偏转板上加一线性锯齿波扫描电压ux,该扫描电压将Y方向所加信号电压uy作用的电子束在屏幕上按时间沿水平方向展开。 10 示波器 主要技术指标 答: 带宽BW上升时间、扫描速度与时基因数、偏转灵敏度和偏转因数,输入阻抗,输入方式,触发源选择方式 11 示波器的触发源的触发信号有几种? 答:内触发;外触发;电源触发。 12 示波器的触发耦合方式有几种? 答:DC直流耦合;AC交流耦合;AC低频抑制;HF高频耦合。 13 示波器的触发方式有几种? 答:常态触发;自动触发;高频触发 。 14 通用示波器由哪些主要部分组成?各部分的作用是什么? 答: 通用示波器 主要由 垂直偏转通道,水平偏转通道和主机 三大部分组成。 (1)垂直偏转通道(Y轴系统)由衰减器、前置放大器、延迟级、输出放大器等组成。它的主要作用是对单端输入的被测信号进行处理变换,成为大小合适、极性相反的对称信号加至Y偏转板,以控制电子束的垂直偏转。 (2)水平偏转通道(X轴系统)由触发电路、扫描电路和X放大器组成。它的主要作用是同步触发电路在内或外触发信号作用下产生触发脉冲,在触发脉冲的作用下,输出大小合适的锯齿波电压,以驱动电子束水平偏转,并保证荧光屏上显示的波形稳定。 (3)主机部分主要包括Z轴电路、标准信号源、电源、示波管等部分。Z轴电路将X轴系统产生的增辉信号放大后加到示波管的栅极,从而实现在扫描正程时使波形加亮,扫描回程或扫描休止期时使回扫线和休止线消隐。标准信号源是一个标准方波发生器,用于提供幅度、周期等都很准确的方波信号,以便随时校准示波器的垂直灵敏度和扫描时间因数。电源是示波器工作时的能源,它将交流电变换成各种高、低电压电源,以满足示波管及各组成部分的工作需要。 15 通用示波器垂直(Y)通道包括哪些主要电路?它们的主要作用和主要工作特性是什么? 答:示波器垂直(Y)通道主要由输入电路、前置放大器、延迟线和输出放大器等组成。它的主要作用是检测被观察的信号,并把被测信号变换成为大小合适的双极性对称信号,无失真或失真很小的加到Y偏转板上,使显示的波形适于观测;并向X通道提供内触发信号源,去启动扫描;补偿X通道的时间延迟,以观测到诸如脉冲等信号的完整波形。 输入电路基本作用是引用被测信号,为前置放大器提供良好的工作条件。前置放大电路将信号适当放大,从中取出内触发信号,并具有灵敏度微调、校正,Y轴移位、极性反转等控制作用。延迟线的作用就是把加到垂直偏转板的被测信号也延迟一段时间,使信号出现的时间滞后于扫描开始时间,从而保证荧光屏上显示被测信号的全过程。输出放大器的功能是将延迟线传来的被测信号放大到足够的幅度,用以驱动示波管的垂直偏转系统,使电子束获得垂直方向的满偏转。 16 简述通用示波器扫描发生器环的各个组成部分及其作用。 答:扫描发生器环由扫描门、积分器及比较和释抑电路组成一个闭环控制系统。 扫描门产生快速上升或下降的闸门信号,它有三个作用:①输出时间确定的矩形开关信号,又称闸门信号,控制积分器扫描。②由于闸门信号和扫描正程同时开始,同时结束,可利用闸门信号作为增辉脉冲控制示波管,起扫描正程光迹加亮作用。③在双踪示波器中,利用闸门信号触发电子开关,使之工作于交替状态。积分器产生扫描锯齿波电压。释抑电路的作用是控制锯齿波电压的幅度,达到等幅扫描并保证扫描的稳定。 17 在通用示波器中,欲让示波器显示稳定的被测信号波形,对扫描电压有何要求? 答:为了示波器显示稳定的被测信号波形,扫描电压必须满足两个条件:①施加触发,确定扫描的起始点(在被测信号的同一相位点上)。②调节扫描周期,维持Tx=nTy(n为正整数)。 18 触发扫描和连续扫描有何区别? 答:观测连续信号时,扫描电压是连续的,即扫描正程紧跟着扫描回程,回程结束后,马上开始新的扫描正程,扫描是不间断的,这种扫描方式称为连续扫描。观测脉冲信号时,扫描脉冲只在被测脉冲到来时才扫描一次,没有被测脉冲时,扫描发生器处于等待工作状态,这种由被信号激发扫描发生器的间断的工作方式称为“触发扫描”方式。 19 什么是“交替”显示?什么是“断续”显示?对频率有何要求? 答:“交替”显示是指第一次扫描时接通Y1通道,第二次扫描时接通Y2通道,在屏幕上交替地显示Y1、Y2通道输入的信号。交替方式适合于观察高频信号。“断续”显示是在一个扫描周期内,高速地轮流接通两个输入信号,被测波形由许多线段断续地显示出来。断续方式适用于被测信号频率较低的情况。 20 示波器主要性能指标 答: 带宽、取样速率、存储深度、分辨率、扫描时间因数、触发能力 21 什么是非实时取样?取样示波器由哪些部分组成?各组成部分有何作用?说明取样示波器观察重复周期信号的过程。 答:从被测信号的许多相邻周期波形上取得样点的方法称为非实时取样,或称为等效取样。取样示波器主要也是由示波管、X通道和Y通道组成。 Y通道的作用是,在取样脉冲的作用下,把高频信号变为低频信号,取样脉冲来时取样门打开并取出样品信号,延长电路把每个取样信号幅度记录下来并展宽,接至模拟示波器Y偏转板,供最后信号合成用。 X通道主要任务是产生时基扫描信号,同时产生△t步进延迟脉冲送Y轴系统,控制取样脉冲发生器和延长门脉冲发生器的工作,即配合整个示波器的工作。 22 简述数字存储示波器的工作原理。 答:数字存储示波器首先将被测的模拟信号经过A/D转换后,得到数字信号存储于随机存储器RAM中。在显示时,再将数字信号读出,经D/A转换恢复为模拟信号,加在普通示波器的Y偏转板上。此时,X偏转板上不再加入锯齿波电压信号,而是与取样示波器类似地,加入由数码经过D/A产生的阶梯波。 21 什么是内同步?什么是外同步? 答:同步信号采自于Y通道的(即被观察信号)被称为内同步;同步信号采自于来自仪器外部的同步信号的方式被称为外同步。 22 示波器Y通道内为什么既接入衰减器又接入放大器?它们各起什么作用? 答:为适应Y通道输入的被测信号的大幅度的变化既接入衰减器又接入放大器。 放大器对微弱的信号通过放大器放大后加到示波器的垂直偏转板,使电子束有足够大的偏转能量。衰减器对输入的大幅度信号进行衰减。 23 什么是连续扫描和触发扫描?如何选择扫描方式? 答: 连续扫描:扫描电压是周期性的锯齿波电压。在扫描电压的作用下,示波管光点将在屏幕上作连续重复周期的扫描,若没有Y通道的信号电压,屏幕上只显示出一条时间基线。 触发扫描:扫描发生器平时处于等待工作状态,只有送入触发脉冲时才产生一次扫描电压,在屏幕上扫出一个展宽的脉冲波形,而不显示出时间基线。 被测信号是连续的周期性信号时,选择连续扫描方式。被测信号是短短暂的周期性脉冲信号时,选择触发扫描方式。 23 双踪与双线示波器的区别是什么 ? 答: 双踪示波器的垂直偏转通道由A和B两个通道组成。两个通道的输出信号在电子开关控制下,交替通过主通道加于示波管的同一对垂直偏转板。A、B两个通道是相同的。主通道由中间放大器、延迟线、末级放大器组成,它对两个通道是公用的。 双线示波器采用双线示波管构成。双线示波管在一个玻璃壳内装有两个完全独立的电子枪和偏转系统,每个电子枪发出的电子束经加速聚焦后,通过“自己”的偏转系统射于荧光屏上,相当于把两个示波管封装在一个玻璃壳内公用一个荧光屏,因而可以同时观察两个相互独立的信号波形。双线示波器内有两个相互无关的Y通道A和B,每个通道的组成与普通示波器相同。 24 取样示波器的非实时取样过程为什么能将高频信号变为低频信号?取样示波器能否观测单次性高频信号? 答:非实时取样过程对于输入信号进行跨周期采样,通过若干周期对波形的不同点的采样,经过保持延长后就将高频信号变成了低频信号。 取样示波器不能观测单次性高频信号,因为不能对其进行跨周期采样。 25 常用李萨育图形 图片 第九章 1 频谱仪性能指标 答: 频率范围、扫描宽度、频率分辨力、动态范围、灵敏度 2 动态频率特性与静态频率特性相比有何不同? ** 答:动态频率特性相比静态频率特性:1)顶部最大值下降,动态特性曲线峰值低于静态特性曲线,扫频速度越快,下降越多;2)动态特性曲线被展宽,当静态特性曲线对称时,随着扫频速度加快,动态特性曲线明显出现不对称,并向频率变化的方向一侧倾斜;3)扫速愈高,偏移愈严重,扫频速度越快,偏离越大。 3 简述频谱分析的各种方法的原理和特点。 答:①并联滤波法 中心频率固定的带通滤波器(BPF)按分辦率的要求依次增大,在这些滤波器的输出端分别接有检波器和相应的检测指示仪器。这种方案的优点就是能实时地选出各频谱分量,缺点是结构复杂、成本高。 ②可调滤波法 中心频率可调的滤波器。电路得到简化,然而可调滤波器的通带难以做得很窄,其可调范围也难以做得很宽,而且在调谐范围内难以保持恒定不变的滤波特性,因此只适用于窄带频谱分析。 ③扫频外差法 窄带滤波器的中心频率不变,被测信号与扫频的本振混频,将被测信号的频谱分量逐个移进窄带滤波器中,然后与扫频锯齿波信号同步地加在示波管上显示出来。 ④快速傅里叶(FFT)分析法是一种软件计算法。若知道被测信号 的取样值 ,则可用计算机按快速傅里叶变换的计算方法求出 的频谱。在速度上明显超过传统的模拟式扫描频谱仪,能够进行实时分析。但当前受A/D转换器等器件性能限制,工作频段还较低。 4 什么是实时频谱分析?扫频外差式频谱仪为什么只能进行非实时分析?FFT分析仪为什么能够进行实时分析? 答:所谓“实时”频谱仪,直观的理解是能够在被测信号频率变化之前完成测量、分析和显示,但它又不是指单纯意义上的测量时间短、速度快。一般认为,实时分析是指在长度为T的时段内,完成频率分辨率达到1/T的谱分析;或者待分析信号的带宽小于仪器能够同时分析的最大带宽。显然,实时的概念与信号带宽及频率分辨率有关。在要求的频段宽度范围内,如果数据采集、分析速度不小于数据变化速度,这样的分析就是实时的;如果待分析的信号带宽过宽以至超过了最大分析带宽,则分析变成非实时的。 扫频式频谱仪实质是一个中心频率在整个频率范围内可调谐的窄带滤波器。当改变它的谐振频率时,滤波器就分离出特定的频率分量,从而依次得到被分析信号的谱分量。因此,这种频谱仪所显示的频谱图是多次调谐之后拼接的结果,分析带宽受限于窄带滤波器的带宽(通常总是小于信号带宽),所以不能进行实时分析。 FFT分析仪是在对信号采样之后,选择一定时间长度的离散采样点进行付氏变换,从而得到频域信息。由于离散时域信号中已包含了该时段内所有的频率信息,因此可以认为FFT的分析带宽与信号带宽是匹配的,能够实现实时分析。 5 为何说扫频外差式频谱分析仪是属非实时频谱仪? 答:扫频式频谱仪实质是一个中心频率在整个频率范围内可调谐的窄带滤波器。当改变它的谐振频率时,滤波器就分离出特定的频率分量,从而依次得到被分析信号的谱分量。因此,这种频谱仪所显示的频谱图是多次调谐之后拼接的结果,分析带宽受限于窄带滤波器的带宽(通常总是小于信号带宽),所以不能进行实时分析。 6 如果已将外差式频谱仪调谐到某一输入信号频率上,且信号带宽小于调谐回路带宽,此时停止本振扫描,屏幕将显示什么? 答:由于本振并不扫描,即只能分析某一个特定的频率。而此时分析带宽(调谐回路带宽)大于信号带宽,所得结果是实时的,所以屏幕显示的将是该特定频率上的时域波形。 7 要想较完整地观测频率为20kHz的方波,频谱仪的扫描宽度至少应达到多少? 答:周期方波是由多个纯正弦信号复合而成的,理论上具有无限宽的频谱,每根谱线均位于奇次谐波处。但工程中通常只考虑主瓣中的谱线,即零频、基波(20KHz)、三次谐波(60KHz),所以频谱仪的扫描宽度至少应覆盖0~60KHz的范围。 8 kpz4l26e.png图片 kpz4lttx.png图片 部分图解 1低频信号发生器的原理框图。 图片 2差频式信号发生器的原理框图 图片 3示波器Y通道的原理框图。 kpz4uw8s.png图片 4示波器水平通道的原理框图。 kpz4vmal.png图片 5数字式电压表(DVM)的原理框图。 kpz4w6er.png图片 6数字式多用表(DMM)的原理框图。 kpz4wp8d.png图片
嵌入式&系统
刘航宇
5年前
1
1,743
4
2021-06-14
考研数学精品笔记
考研数学精品笔记高数、线代、概率论 图片 图片 图片 图片 图片 图片 图片 图片 图片 图片 图片
我的随笔
刘航宇
5年前
3
520
2
2021-06-13
数字基带系统-USB
1 USB简介 USB,是英文Universal Serial Bus(通用串行总线)的缩写,而其中文简称为“通串线”,是一个外部总线标准,用于规范电脑与外部设备的连接和通讯。是应用在PC领域的接口技术。USB接口支持设备的即插即用和热插拔功能。USB是在1994年底由英特尔、康柏、IBM、Microsoft等多家公司联合提出的[1]。 2 USB的发展及现状 2.1 USB发展 USB版本 理论最大传输速率 速率称号 最大输出电流 推出时间 USB1.0 1.5Mbps(192KB/s) 低速(Low-Speed) 5V/500mA 1996年1月 USB1.1 12Mbps(1.5MB/s) 全速(Full-Speed) 5V/500mA 1998年9月 USB2.0 480Mbps(60MB/s) 高速(High-Speed) 5V/500mA 2000年4月 USB3.0 5Gbps(500MB/s) 超高速(Super-Speed) 5V/900mA 2008年11月 / 2013年12月 USB 3.1Gen 2 10Gbps(1280MB/s)[2] 超高速+(Super-speed+) 20V/5A 2013年12月 表1 USB发展情况 2.2 USB现状 USB 3.0是一种USB规范,该规范由英特尔等公司发起。 USB 3.0 也被认为是SuperSpeedUSB——为那些与PC或音频/高频设备相连接的各种设备提供了一个标准接口。只是个硬件设备[2],计算机内只有安装USB3.0相关的硬件设备后才可以使用USB3.0相关的功能!从键盘到高吞吐量磁盘驱动器,各种器件都能够采用这种低成本接口进行平稳运行的即插即用连接,用户基本不用花太多心思在上面。新的USB 3.0在保持与USB 2.0的兼容性的同时,还提供了下面的几项增强功能: 1)极大提高了带宽——高达5Gbps全双工(USB2.0则为480Mbps半 双工)。 2)实现了更好的电源管理。 3)能够使主机为器件提供更多的功率,从而实现USB——充电电池、LED照明和迷你风扇等应用。 4)能够使主机更快地识别器件。 5) 新的协议使得数据处理的效率更高。 USB 3.1是最新的USB规范,该规范由英特尔等大公司发起。与现有的USB技术相比,新USB技术使用一个更高效的数据编码系统,并提供一倍以上的有效数据吞吐率(USB IF协会)。它完全向下兼容现有的USB连接器与线缆。 USB 3.1作为下一代的USB传输规格,通常被称为“SuperSpeed+” ,将在未来替代USB 3.0。 1) USB 3.1(SuperSpeed+)将供电的最高允许标准提高到了20V/5A,供电100W。提供更快的充电。 2) USB 3.1支持高达10Gbps的传输速率,具有更快的传输速度。 3) USB 3.1新增USB A/V影音传输,支持手机显示输出。 USB 3.1是一个万能的通用接口,是手机、平板等小型设备所需要的,能够极大提升设备的连接性。而从目前来看,USB 3.1中的Type-C最有可能成为未来的连接标准,提供数据传输、外设连接、显示输出等一体化的连接方案。 3 USB分类 Type-A:标准的Type-A是电脑、电子配件中最广泛的介面标准,鼠标、U盘、数据线上大的一方都是此接口,体积也最大。 Type-B:一般用于打印机、显示器USB HUB等诸多外部USB设备 Type-C:它拥有比Type-A及Type-B均小得多的体积,其大小甚至能与Mini-USB及Micro-USB相媲美,是最新的USB接口外形标准。另外,Type-C是一种既可以应用在PC(主设备)又可以应用在外部设备(从设备)的接口类型,这是划时代的。 伴随USB2.0传输协议诞生也衍生了Mini-USB及Micro-USB接口。它们也都分别分为Type-A和Type-B[3]。到了USB3.0时代,由于传输速度的提升带来了针脚位的提升,因此仅有Type-A USB3.0接口保持与以往形状一样,Type-B和Micro-USB都改变了外形(体积增大)。 4 USB接口回路电路设计 笔记本一般使用的是Type-A和Type-C 类型母口。对于Type-A 类型接口,配备USB 3.0接口。回路如下图1所示 图片 Type-A接口在硬件回路上由一组USB2.0差分信号信号USB_PN2, USB_PP2以及两组USB 3.0差分信号USB32_RX_N, USB32_RX_P, USB32_TX_N, USB32_TX_P组成。在功能上该接口向下兼容USB2.0功能。一般USB的POWER接 5VS或5VA,USB差分线接BEAD或者共模电感一般为EMI需要。末端接TVS是安规要求。 对于Type-C接口回路如下: 图片 图2 Type-C接口回路 在NFSV15XX系列机种上,Type-C 3.0和Type-C 3.1共用同一接口。由于现有平台PCH没有USB3.1接口[4],故在使用USB3.1通信时需要外加一个转换芯片ASM1142。在NFSV15XX上Type-C3.1包含USB3.1输出传输的功能,但是不支持5V/20A供电输出。同Type-A接口一样,差分信号线接BEAD或者共模电感一般为EMI需要。末端接TVS是安规要求。 kpunhddv.png图片 图3 USB POWER设计 在电脑插入adapter或者battery时候,+3.3VA_PCH提供Enable信号 ,5VA(5VS)电源正常供电。在末端加保险丝,进行过流保护。 5 USB协议 5.1 概述 USB网络采用阶梯式星形拓扑结构,如图示。一个USB网络中只能有一个主机。主机内设置了一个根集线器,提供了主机上的初始附属点。主机定时对集线器的状态进行查询。当一个新设备接入集线器时,主机会检测到集线器状态改变,主机发出一个命令使该端口有效并对其进行设置。位于这个端口上的设备进行响应,主机收到关于设备的信息,主机的操作系统确定对这个设备使用那种驱动程序,接着设备被分配一个唯一标识的地址,范围从0~127,其中0为所有的设备在没有分配惟一地址时使用的默认地址。主机向它发出内部设置请求。当一个设备从总线上移走时,主机就从其可用资源列表中将这个设备删除。总的来说USB网络由主机和设备组成。 5.2 概括 kpunhyf8.png图片 5.3 USB主机 USB的所有数据通信(不论是上行通信还是下行通信)都由USB主机启动,所以USB主机在整个数据传输过程中占据着主导地位。在USB系统中只允许有一个主机。从开发人员的角度看,USB主机可分为三个不同的功能模块:客户软件、USB系统软件和USB总线接口。 1) 客户软件 客户软件负责和USB设备的功能单元进行通信,以实现其特定功能。一般由开发人员自行开发。客户软件不能直接访问USB设备,其与USB设备功能单元的通信必须经过USB系统软件和USB总线接口模块才能实现。客户软件一般包括USB设备驱动程序和界面应用程序两部分[5]。 2)USB系统软件 USB系统软件负责和USB逻辑设备进行配置通信,并管理客户软件启动的数据传输。USB逻辑设备是程序员与USB设备打交道的部分。USB系统软件一般包括USB总线驱动程序和USB主控制器驱动程序这两部分。这些软件通常由操作系统提供,开发人员不必掌握。 3)USB总线接口 USB总线接口包括主控制器和根集线器两部分。根集线器为USB系统提供连接起点,用于给USB系统提供一个或多个连接点(端口)。主控制器负责完成主机和USB设备之间数据的实际传输,包括对传输的数据进行串行编解码、差错控制等。该部分与USB系统软件的接口依赖于主控制器的硬件实现,开发人员不必掌握。 5.3 USB设备 一个USB设备由三个功能模块组成:USB总线接口、USB逻辑设备和功能单元。这里的USB总线接口指的是USB设备中的串行接口引擎(SIE);USB逻辑设备被USB系统软件看作是一个端点的集合;功能单元被客户软件看作是一个接口的集合。SIE、端点和接口都是USB设备的组成单元。为了更好地描述USB设备的特征,USB提出了设备架构的概念。从这个角度来看,可以认为USB设备是由一些配置、接口和端点组成的,即一个USB设备可以含有一个或多个配置,在每个配置中可含有一个或多个接口,在每个接口中可含有若干个端点。其中,配置和接口是对USB设备功能的抽象,实际的数据传输由端点来完成。在使用USB设备前,必须指明其采用的配置和接口。这个步骤一般是在设备接入主机时设备进行自举时完成的,我们在后面会进一步介绍。USB设备使用各种描述符来说明其设备架构,包括设备描述符、配置描述符、接口描述符、端点描述符以及字符串描述符,它们通常被保存在USB设备的固件程序中。 5.4 物理特性 USB通信格式: 图片 图5 在USB电缆上使用双向不归零编码和差动信号的传输 USB的数据包使用反向不归零编码(NRZI)。上图描述了在USB电缆段上传输信息的步骤。反向不归零编码由传送信息的USB代理程序完成;然后,被编码的数据通过差分驱动器送到USB电缆上;接着,接收器将输入的差分信号进行放大,将其送给解码器。使用该编码和差动信号传输方式可以更好地保证数据的完整性并减少噪声干扰。 图片 图6 反向不归零编码 使用反向不归零编码方式可以保证数据传输的完整性,而且不要求传输过程中有独立的时钟信号。反向不归零编码不是一个新的编码方式。它在许多方面都有应用。上图给出了一个数据流和编码之后的结果。在反向不归零编码时,遇到“0”转换,遇到“1”保持。反向不归零码必须保持与输入数据的同步性,以确保数据采样正确。反向不归零码数据流必须在一个数据窗口被采样,无论前一个位时间是否发生过转换。解码器在每个位时间采样数据以检查是否有转换。 kpunn3gg.png图片 图7 在USB电缆上使用双向不归零编码和差动信号的传输 若重复相同的“1”信号一直进入时,就会造成数据长时间无法转换,逐渐的积累,而导致接收器最终丢失同步信号的状况,使得读取的时序会发生严重的错误。因此,在NRZI编码之间,还需执行所谓的位填充的工作。位填充要求数据流中如果有连续的六个“1”就要强行转换。这样接收器在反向不归零码数据流中最多每七个位就检测到一次跳转。这样就保证了接收器与输入数据流保持同步。反向不归零码的发送器要把“0”(填充位)插到数据流中。接收器必须被设计成能够在连续的六个“1”之后识别一个自动跳转,并且立即扔掉这六个“1”之后的“0”位。 检测设备连接和速度:在USB设备连接时,USB系统能自动检测到这个连接,并识别出其采用的数据传输速率。USB采用在D+或D-线上增加上拉电阻的方法来识别低速和全速设备。USB支持三种类型的传输速率:1.5Mb/s的低速传输、12Mb/s的全速传输和480Mb/s的高速传输。如图后面图所示。当主控制器或集线器的下行端口上没有USB设备连接时,其D+和D-线上的下拉电阻使得这两条数据线的电压都是近地的(0V);当全速/低速设备连接以后,电流流过由集线器的下拉电阻和设备在D+/D-的上拉电阻构成的分压器。由于下拉电阻的阻值是15KΩ,上拉电阻的阻值是1.5KΩ,所以在D+/D-线上会出现大小为(Vcc*15/(15+1.5))的直流高电平电压。当USB主机探测到D+/D-线的电压已经接近高电平,而其它的线保持接地时,它就知道全速/低速设备已经连接了。 kpunne0a.png图片 图8 检测设备连接和速度 6 USB通信协议 6.1 包 包(Packet)是USB系统中信息传输的基本单元,所有数据都是经过打包后在总线上传输的。USB包由五部分组成,即同步字段(SYNC)、包标识符字段(PID)、数据字段、循环冗余校验字段(CRC)和包结尾字段(EOP)。 1.SYNC字段:由8位组成,作为每个数据封包的前导,用来产生同步作用,使USB设备与总线的包传输率同步,它的数值固定为00000001。 2.PID字段:用来表示数据封包的类型。包标识符中的校验字段是通过对类型字段的每个位求反码产生的。 图片 表2 PID字段包的类型 数据字段:是用来携带主机与设备之间要传递的信息,其内容和长度根据包标识符、传输类型的不同而各不相同。在USB包中,数据字段可以包含设备地址、端点号、帧序列号以及数据等内容。在总线传输中,总是首先传输字节的最低位,最后传输字节的最高位。 (1) 设备地址(ADDR)数据域 ADDR数据域由7位组成,可用来寻址多达127个外围设备。 (2) 端点(ENDP)数据域 ENDP数据域由4位组成。通过这4个位最多可寻址出32个端点。这个ENDP数据域仅用在IN、OUT与SETUP令牌信息包中。对于慢速设备可支持端点0以及端点1作为中断传输模式,而全速设备则可以拥有16个输入端点(IN)与16个输出端点(OUT)共32个端点。 (3) 帧序列号 当USB令牌包的PID为SOF时,其数据字段必须为11位的帧序列号。帧序列号由主机产生,且每个数据帧自动加一,最大数值为0x7FF。当帧序列号达到最大数时将自动从0开始循环。 (4) 数据 它仅存于DATA信息包内,根据不同的传输类型,拥有不同的字节大小,从0到1023字节(实时传输)。 4.循环冗余码CRC字段由不同数目的位所组成。根据不同的信息包类型,CRC数据域由不同数目的位所组成。其中重要的数据信息包采用CRC16的数据域(16个位),而其余的信息包类型则采用CRC5的数据域(5个位)。其中的循环冗余码校验CRC,是一种错误检测技术。由于数据在传输时,有时候会发生错误,因此CRC可根据数据算出一个校验值,然后依此判断数据的正确性 。 5.包结尾字段即发送方在包的结尾发出包结尾信号。USB主机根据EOP判断数据包的结束。 6.2 信息包格式 1.令牌(token)包:在USB系统中,只有主机才能发出令牌包。令牌包定义了数据传输的类型,它是事务处理的第一阶段。令牌包中较为重要的是SETUP、IN和OUT这三个令牌包。它们用来在根集线器和设备端点之间建立数据传输。一个IN包用来建立一个从设备到根集线器的数据传送,一个OUT包用来建立从根集线器到设备的数据传输[6]。 2.数据(data)包:数据封包含有4个域:SYNC、PID、DATA与CRC16。DATA数据域的位值是根据USB设备的传输速度及传输类型而定,且须以8字节为基本单位。也就是,若传输的数据不足8字节,或传输到最后所剩余的也不足8字节,仍须传输8字节的数据域。 3.握手(Handshake)包:握手信息包是最简单的信息包类型。在这个握手信息包中仅包含一个PID数据域而已。 6.3 事务 定义:在USB上数据信息的一次接收或发送的处理过程。类型:事务处理的类型包括输入(IN)事务处理、输出(OUT)事务处理。设置(SETUP)事务处理和帧开始、帧结尾等类型。 处理流程:在输出(OUT)事务处理和设置(SETUP)事务处理中,紧接着SETUP和OUT包后的是DATA包,DATA0和DATA1包是交替地发送的,在DATA包后面,设备将回应一个握手信号,如果设备可以接收数据,就回应ACK包,如果设备忙,就回应NAK包,如果设备出错,则回应STALL包;在IN事务中,IN包后面是设备发来的DATA包或NAK包或STALL包,若设备忙或出错,就发NAK包或STALL包给主机,若设备数据准备好发送,则发DATA包,DATA0和DATA1包也是交替地发送的,紧接着DATA包后面是主机发给设备的握手包,ACK表示主机可以接收数据,NAK包代表主机忙,STALL包代表主机出错。 6.4 USB传输类型 在USB的传输中,制定了4种传输类型:控制传输、中断传输、批量传输以及等时传输。控制传输类型分为2~3个阶段:设置阶段、数据阶段(无数据控制没有此阶段)以及状态阶段。根据数据阶段的数据传输的方向,控制传输又可分为3种类型:控制读取(读取USB描述符)、控制写入(配置USB设备)以及无数据控制。 1.控制传输:控制传输是USB传输中最重要的传输。它包含3种类型:控制读取、控制写入以及无数据控制。这3种控制传输类型又分为2~3个阶段:设置阶段、数据阶段(无数据控制没有此阶段)以及状态阶段。 2.实时传输:实时传输适用于必须以固定速率抵达或在指定时刻抵达,可以容忍偶尔错误的数据上。实时传输一般用于麦克风、喇叭等设备。实时传输只需令牌与数据两个信息包阶段,没有握手包,故数据传错时不会重传。 3.批量传输:用于传输大量数据,要求传输不能出错,但对时间没有要求,适用于打印机、存储设备等。 4.中断传输:中断传输方式总是用于对设备的查询,以确定是否有数据需要传输。因此中断传输的方向总是从USB设备到主机,常用于如键盘、游戏手柄等。 参考文献: [1]赵晓娜.一种基于STM32的USB接口数据通信方法研究[J].山西电子技术,2021(02):85-87. [2]苗旺,李彬华,王锦良,陈柄宇,高诗竹.基于USB2.0总线数据侦听的实时幸运成像系统~(*)[J/OL].天文研究与技术:1-12[2021-06-13].https://doi.org/10.14005/j.cnki.issn1672-7673.20210306.001. [3]陶小亮.基于USB总线的低成本舵偏角采集系统设计与应用[J].电子测量技术,2021,44(02):43-47. [4]赵一超.基于USB数字电离层斜测接收机设计[J].电脑知识与技术,2020,16(32):1-5. [5]曾妍. 汽车USB充电器参数检测台设计[D].长春工业大学,2020. [6]Realtek Semiconductor Corp.; Patent Issued for USB Interface System Capable Of Automatically Adjusting Connection Speed And Power Consumption Capabilities And Method (USPTO 10,684,668)[J]. Electronics Newsweekly, 2020, : 6967-.
通信&信息处理
刘航宇
5年前
0
815
2
上一页
1
...
5
6
7
...
9
下一页