精华内容
下载资源
问答
  • 信号
    千次阅读
    2022-01-05 20:40:39

      信号量是操作系统中重要的一部分,信号量一般用来进行资源管理和任务同步, FreeRTOS中信号量又分为二值信号量、 计数型信号量、互斥信号量和递归互斥信号量。不同的信号量其应用场景不同,但有些应用场景是可以互换着使用的
      信号量用于控制共享资源访问的场景相当于一个上锁机制, 代码只有获得了这个锁的钥匙才能够执行。
      信号量的另一个重要的应用场合就是任务同步,用于任务与任务或中断与任务之间的同步。 在执行中断服务函数的时候可以通过向任务发送信号量来通知任务它所期待的事件发生了, 当退出中断服务函数以后在任务调度器的调度下同步的任务就会执行。在编写中断服务函数的时候我们都知道一定要快进快出,中断服务函数里面不能放太多的代码,否则的话会影响的中断的实时性。 裸机编写中断服务函数的时候一般都只是在中断服务函数中打个标记,然后在其他的地方根据标记来做具体的处理过程。在使用 RTOS 系统的时候我们就可以借助信号量完成此功能, 当中断发生的时候就释放信号量,中断服务函数不做具体的处理。具体的处理过程做成一个任务,这个任务会获取信号量,如果获取到信号量就说明中断发生了,那么就开始完成相应的处理,这样做的好处就是中断执行时间非常短。 这个例子就是中断与任务之间使用信号量来完成同步,当然了, 任务与任务之间也可以使用信号量来完成同步。

    一、二值信号量

      二值信号量通常用于互斥访问或同步, 二值信号量和互斥信号量非常类似,但是互斥信号量拥有优先级继承机制, 二值信号量没有优先级继承。 因此二值信号另更适合用于同步(任务与任务或任务与中断的同步),而互斥信号量适合用于简单的互斥访问。
      使用二值信号量来完成中断与任务同步的这个机制中,任务优先级确保了外设能够得到及时的处理,这样做相当于推迟了中断处理过程。 也可以使用队列来替代二值信号量,在外设事件的中断服务函数中获取相关数据,并将相关的数据通过队列发送给任务。如果队列无效的话任务就进入阻塞态,直至队列中有数据,任务接收到数据以后就开始相关的处理过程。
      二值信号量的使命就是同步,完成任务与任务或中断与任务之间的同步。大多数情况下都是中断与任务之间的同步

    1.1、创建二值信号量

      1、函数 xSemaphoreCreateBinary()
      使用此函数创建二值信号量的话信号量所需要的 RAM 是由 FreeRTOS 的内存管理部分来动态分配的。函数原型如下:

    SemaphoreHandle_t xSemaphoreCreateBinary( void )
    

      返回值:NULL: 二值信号量创建失败。其他值: 创建成功的二值信号量的句柄。
      2、函数 xSemaphoreCreateBinaryStatic()
      此函数也是创建二值信号量的,只不过使用此函数创建二值信号量的话信号量所需要的RAM 需要由用户来分配,函数原型如下:

    SemaphoreHandle_t xSemaphoreCreateBinaryStatic( StaticSemaphore_t *pxSemaphoreBuffer )
    

      参数:pxSemaphoreBuffer: 此参数指向一个 StaticSemaphore_t 类型的变量,用来保存信号量结构体。
      返回值:NULL: 二值信号量创建失败。其他值: 创建成功的二值信号量句柄。

    1.2、释放信号量

      释放信号量分为任务级和中断级。不管是二值信号量、计数型信号量还是互斥信号量,它们都使用以下两个函数释放信号量。
      1、 函数 xSemaphoreGive()
      此函数用于释放二值信号量、计数型信号量或互斥信号量, 函数原型如下:

    BaseType_t xSemaphoreGive( xSemaphore )
    

      参数:xSemaphore: 要释放的信号量句柄。
      返回值:pdPASS: 释放信号量成功。errQUEUE_FULL: 释放信号量失败。
      2、函数 xSemaphoreGiveFromISR()
      此函数用于在中断中释放信号量, 此函数只能用来释放二值信号量和计数型信号量,绝对不能用来在中断服务函数中释放互斥信号量。此函数原型如下:

    BaseType_t xSemaphoreGiveFromISR( SemaphoreHandle_t xSemaphore,BaseType_t * pxHigherPriorityTaskWoken)
    

      参数:xSemaphore: 要释放的信号量句柄。pxHigherPriorityTaskWoken: 标记退出此函数以后是否进行任务切换,这个变量的值由这三个函数来设置的,用户不用进行设置,用户只需要提供一个变量来保存这个值就行了。当此值为 pdTRUE 的时候在退出中断服务函数之前一定要进行一次任务切换。
      返回值:pdPASS: 释放信号量成功。errQUEUE_FULL: 释放信号量失败。

    1.3、获取信号量

      不管是二值信号量、计数型信号量还是互斥信号量,它们都使用以下两个函数获取信号量。
      1、函数 xSemaphoreTake()
      此函数用于获取二值信号量、计数型信号量或互斥信号量,函数原型如下:

    BaseType_t xSemaphoreTake(SemaphoreHandle_t xSemaphore,TickType_t xBlockTime)
    

      参数:xSemaphore: 要获取的信号量句柄。xBlockTime: 阻塞时间。
      返回值:pdTRUE: 获取信号量成功。pdFALSE: 超时,获取信号量失败。
      2、函数 xSemaphoreTakeFromISR ()
      此函数用于在中断服务函数中获取信号量, 此函数用于获取二值信号量和计数型信号量,绝 对 不 能 使 用 此 函 数 来 获 取 互 斥 信 号 量 。此函数原型如下:

    BaseType_t xSemaphoreTakeFromISR(SemaphoreHandle_t xSemaphore,BaseType_t * pxHigherPriorityTaskWoken)
    

      参数:xSemaphore: 要获取的信号量句柄。pxHigherPriorityTaskWoken: 标记退出此函数以后是否进行任务切换,这个变量的值由这三个函数来设置的,用户不用进行设置,用户只需要提供一个变量来保存这个值就行了。当此值为 pdTRUE 的时候在退出中断服务函数之前一定要进行一次任务切换。
      返回值:pdPASS: 获取信号量成功。pdFALSE: 获取信号量失败。

    二、计数型信号量

      计数型信号量叫做数值信号量

    2.1、创建计数型信号量

      1、函数 xSemaphoreCreateCounting()
      此函数用于创建一个计数型信号量,所需要的内存通过动态内存管理方法分配。此函数原型如下:

    SemaphoreHandle_t xSemaphoreCreateCounting(UBaseType_t uxMaxCount,UBaseType_t uxInitialCount )
    

      参数:uxMaxCount: 计数信号量最大计数值,当信号量值等于此值的时候释放信号量就会失败。uxInitialCount: 计数信号量初始值。
      返回值:NULL: 计数型信号量创建失败。其他值: 计数型信号量创建成功,返回计数型信号量句柄。
      2、函数 xSemaphoreCreateCountingStatic()
      此函数也是用来创建计数型信号量的,使用此函数创建计数型信号量的时候所需要的内存需要由用户分配。函数原型如下:

    SemaphoreHandle_t xSemaphoreCreateCountingStatic( UBaseType_t uxMaxCount,UBaseType_t uxInitialCount,StaticSemaphore_t * pxSemaphoreBuffer )
    

      参数:uxMaxCount: 计数信号量最大计数值,当信号量值等于此值的时候释放信号量就会失败。uxInitialCount: 计数信号量初始值。pxSemaphoreBuffer: 指向一个 StaticSemaphore_t 类型的变量,用来保存信号量结构体。
      返回值:NULL: 计数型信号量创建失败。其他值: 计数型号量创建成功,返回计数型信号量句柄。

    2.2、释放和获取计数信号量

      计数型信号量的释放和获取与二值信号量相同。

    三、互斥信号量

      互斥信号量其实就是一个拥有优先级继承的二值信号量, 在同步的应用中(任务与任务或中断与任务之间的同步)二值信号量最适合。 互斥信号量适合用于那些需要互斥访问的应用中。
      互斥信号量使用和二值信号量相同的 API 操作函数,所以互斥信号量也可以设置阻塞时间,不同于二值信号量的是互斥信号量具有优先级继承的特性。 当一个互斥信号量正在被一个低优先级的任务使用,而此时有个高优先级的任务也尝试获取这个互斥信号量的话就会被阻塞。不过这个高优先级的任务会将低优先级任务的优先级提升到与自己相同的优先级, 这个过程就是优先级继承。优先级继承尽可能的降低了高优先级任务处于阻塞态的时间,并且将已经出现的“优先级翻转”的影响降到最低。
      优先级继承并不能完全的消除优先级翻转, 它只是尽可能的降低优先级翻转带来的影响。硬实时应用应该在设计之初就要避免优先级翻转的发生。互斥信号量不能用于中断服务函数中,原因如下:
      1、互斥信号量有优先级继承的机制,所以只能用在任务中,不能用于中断服务函数。
      2、中断服务函数中不能因为要等待互斥信号量而设置阻塞时间进入阻塞态。

    3.1、创建互斥信号量

      1、函数 xSemaphoreCreateMutex()
      此函数用于创建一个互斥信号量,所需要的内存通过动态内存管理方法分配。此函数原型如下:

    SemaphoreHandle_t xSemaphoreCreateMutex( void )
    

      返回值:NULL: 互斥信号量创建失败。其他值: 创建成功的互斥信号量的句柄。
    2、函数 xSemaphoreCreateMutexStatic()
      此函数也是创建互斥信号量的,只不过使用此函数创建互斥信号量的话信号量所需要的RAM 需要由用户来分配,函数原型如下:

    SemaphoreHandle_t xSemaphoreCreateMutexStatic( StaticSemaphore_t *pxMutexBuffer )
    

      参数:pxMutexBuffer: 此参数指向一个 StaticSemaphore_t 类型的变量,用来保存信号量结构体。
      返回值:NULL: 互斥信号量创建失败。其他值: 创建成功的互斥信号量的句柄。

    3.2、释放互斥信号量

      释放互斥信号量的时候和二值信号量 、计数型信号量一样 、都是用的函数xSemaphoreGive()

    3.3、获取互斥信号量

      获取互斥信号量的函数同获取二值信号量和计数型信号量的函数 相同 ,都是xSemaphoreTake()

    更多相关内容
  • 全书共11章,内容包括:信号与系统、线性时不变系统,周期信号的傅里叶级数表示,连续和离散时间傅里叶变换,信号与系统的时域和频域特性,采样,通信系统,拉普拉斯和z变换以及线性反馈系统。每章都有足够数量的...
  • 学习探究--实信号与复信号

    万次阅读 多人点赞 2020-10-22 21:59:03
    一、实信号与复信号的定义 1、实信号:物理可实现的信号常常是时间t(或k)的实函数(或序列),其在各时刻的函数(或序列)值为实数,这样的信号称为实信号。 2、复信号:函数(或序列)值为复数的信号称为复信号,...

    一、实信号与复信号的基本概念

    1、实信号:物理可实现的信号常常是时间t(或k)的实函数(或序列),其在各时刻的函数(或序列)值为实数,这样的信号称为实信号。
    2、复信号:函数(或序列)值为复数的信号称为复信号,最常用的是复指数信号。
    复指数信号的重要特性之一是它对时间的导数和积分仍然是复指数信号。
    连续信号的复指数信号可表示为
    在这里插入图片描述
    离散时间的复指数序列可表示为
    在这里插入图片描述

    3、如何理解复信号?

    一个复信号f(t)=Re[f(t)]+jIm[f(t)]可以看做是一个实信号Re[f(t)]与一个虚信号jIm[f(t)]的合成,由于任何只含有时间t为自变量的信号都可以视为一条二维曲线,则两个分别以时间为唯一自变量的信号Re[f(t)]与jIm[f(t)]的叠加可以看成是一条随着时间延伸的三维曲线。

    • 复指数信号分析

      当Re[f(t)]为一个余弦信号,Im[f(t)]为一个正弦信号时,他们的合成即为一条标准的螺旋线。

      MATLAB绘制复指数函数y=e^(jwn)的三维图像

      为了绘制直观的复指数图像,可以连同它在实轴、虚轴上的投影一起绘制。这样一个大任务就分解为6个步骤

       S1-绘制复指数图像的离散点;
       S2-绘制每个离散点到旋转轴x轴的垂直连线;
       S3-绘制复指数图像在实轴z上的投影,这也是离散点;
       S4-绘制实轴投影离散点到旋转轴x轴的垂直连线;
       S5-绘制复指数图像在虚轴y上的投影,这也是离散点;
       S6-绘制虚轴投影离散点到旋转轴x轴的垂直连线。
      

      代码

    clear all;
    close all;
    clc;
    
    w=1;
    n=0:0.1:20;
    
    f=exp(1j*w*n);                  
    L=length(n);
    x=n;                           %以该复函数自变量n作为三维图像的x轴
    y=imag(f);                     %以该复函数虚部作为三维图像的y轴
    z=real(f);                     %以该复函数实部作为三维图像的z轴
    y_0=zeros(size(n));            %获取y=0的点集   
    y_1=ones(size(n));             %获取y=1的点集
    z_0=zeros(size(n));            %获取z=0的点集
    z_1=ones(size(n));             %获取z=1的点集
    %S1-用蓝点绘制复指数函数图像的离散点;
    plot3(x,y,z,'.b');
    %添加坐标轴名称及标题名称
    xlabel('自变量n');
    ylabel('虚部');
    zlabel('实部');
    title('复指数函数图像');
    hold on     %启动图形保持功能,当前坐标轴和图形都将保持而不被刷新,此后绘制的图形都将添加在这个图像的基础上,多图共存,并自动调整坐标轴的范围
    grid on     %显示坐标轴网格线
    x1=[x;x];
    y1=[y;y_0];
    z1=[z;z_0];
    %S2-用蓝色实线绘制每个离散点到旋转轴x轴的垂直连线;
    for i=1:L                      
      plot3(x1(:,i),y1(:,i),z1(:,i),'b');  
    end
    % 绘制复指数函数图像所绕的轴
    plot3(x,y_0,z_0,'k');  
    
    %S3-用黄点绘制复指数图像在实轴z上的投影,这也是离散点;
    plot3(x,y,-1*z_1,'.y');   
    %S4-用黄色实线绘制实轴投影离散点到旋转轴x轴的垂直连线;
    y2=[y;y_0];
    z2=[-1*z_1;-1*z_1];
    for i=1:L                      
       plot3(x1(:,i),y2(:,i),z2(:,i),'y');  
    end
    
    %S5-用紫点绘制复指数图像在虚轴y上的投影,这也是离散点;
    plot3(x,y_1,z,'.m');
    %S6-用紫色实线绘制虚轴投影离散点到旋转轴x轴的垂直连线。
    y3=[y_1;y_1];
    z3=[z;z_0];
    for i=1:L                      
       plot3(x1(:,i),y3(:,i),z3(:,i),'m');   
    end
    

    结果
    当w=1,n=0:0.1:20时,从原点往自变量n的正方向看去,图像逆时针旋转。
    在这里插入图片描述
    当w=-1,n=0:0.1:20时,从原点往自变量n的正方向看去,图像顺时针旋转。
    在这里插入图片描述
    当w=0.5,n=0:0.1:20时,图像旋转速度变慢。
    在这里插入图片描述

    1. 由此我们可以看出,复指数函数y=e^(jwn)在空间中是一个螺旋前进的三维图像,它前进的方向是自变量序列n增大的方向,w确定了旋转的方向与速度。
    2. w为正值时,图形逆时针旋转;反之,w为负值时,图形顺时针旋转。这就解释了负频率的物理意义:正频率代表向量逆时针旋转,负频率代表向量顺时针旋转。
    3. 通过观察w=1与w=-1时复指数信号图像在实轴和虚轴的投影也可以看出,其实轴投影相同,虚轴投影相反,这显然也是符合数学定义的。
    • 复信号的幅值与相位

      假如用垂直于时间轴的横截面去切一个复信号,该平面将于这个复信号相交于唯一一点;同时,该平面与时间轴也会有唯一交点;这两个交点之间的距离就是该信号的幅值
      时间轴切面除了与时间轴相交于一点外,还分别与实平面和虚平面相交于一条直线,这两条直线的交点恰好是时间轴切面与时间轴的交点;因此,时间轴切面上信号点在实轴、虚轴二维坐标系上的与原点连线与坐标轴的夹角就是该时刻上信号的相位

    • 瞬时角频率

      瞬时角频率是相位函数的倒数。
      我们可以这样理解瞬时角频率:每一个时刻的时间切面都可以得到一个与复信号对应二维曲线的交点,当把这些切面叠放到一起时,这些交点就成为一条曲线。当我们用微小的离散时隙来近似连续的情况时,曲线上相邻任意两点与坐标中心的连线将构成一个夹角,而该夹角的大小就是瞬时角频率,也就是相位的变化率。

    二、为什么要引入复信号?

    实际信号不存在复信号,只存在实信号,那为什么要提出复信号的概念?

    我们首先来看一下实信号的频谱:

    研究时间信号 f(t) 与其频谱 F(jw) 之间的虚实、奇偶关系。如果 f(t) 是时间 t 的实函数,那么
    在这里插入图片描述

    式中频谱函数的实部和虚部分别为
    在这里插入图片描述
    频谱函数的模和相角分别为
    在这里插入图片描述
    故若 f(t) 是时间 t 的实函数,则频谱函数 F(jw) 的实部 R(w) 是角频率 w 的偶函数,虚部 X(w) 是角频率的奇函数;
    进而可知,|F(jw)| 是 w 的偶函数,而 φ(w) 是 w 的奇函数;
    此外,由下式可知,其频谱具有共轭对称性,f(t)的幅度频谱为偶对称,相位频谱为奇对称
    在这里插入图片描述

    分析:实信号具有共轭对称的频谱,从信息的角度来看,其负频谱部分是冗余的,因此为了信号处理方便,去掉频域的负半平面,只保留正频谱部分的信号,其频谱不存在共轭对称性,这样产生的频谱所对应的时域信号就是一个复信号,这个复信号称为解析信号或预包络。

    两点补充:

    1. 负频率只有数学上的意义,并不实际占用带宽,但是基带信号调制到高频之后,形成了关于Wc的对称频谱,原来的负频率信号就占用了实实在在的频率资源。
    2. 如果一个实信号的单边频带宽w,考虑到负频率频谱,实际占的频谱区域就是±w,所以通信中传输这样的信号就需要占用2w的频带宽度。

    为了去掉负频率但保持总功率不变,我们利用阶跃信号u(w)对实信号x(t)的频谱X(jw)进行处理:
    在这里插入图片描述

    根据卷积定理及傅里叶变换的性质可得傅里叶反变换(*表示卷积运算)
    在这里插入图片描述
    由此引出了希尔伯特变换

    三、希尔伯特变换(Hilbert transform)

    1. 数学定义:在数学与信号处理的领域中,一个实值函数的希尔伯特变换是将信号x(t)与h(t)=1/(πt)做卷积,以得到其希尔伯特变换。因此,希尔伯特变换结果可以理解为输入是x(t)的线性时不变系统(linear time invariant system)的输出响应,而此系统的脉冲响应为h(t)=1/(πt)。
      在这里插入图片描述

      因此,一个实值函数x(t)的希尔伯特变换记作H[x(t)]

      在这里插入图片描述

      反变换为
      在这里插入图片描述

    2. 实质:h(t)的傅里叶变换为在这里插入图片描述

    从频谱上来看,希尔伯特变换将我们的原始信号的正频率部分乘以 -j,负频率部分乘以 j。即保持幅度不变的条件下,将正频率移相-90°,而对于负频率成分移相90°。

    下图是对原始信号做1到4次Hilbert变换的频谱示意图,较为直观的表示了希尔伯特变换:
    在这里插入图片描述

    1. Hilbert变换性质
      (1)2次Hilbert变换后,原信号相位翻转了180°,即信号两次Hilbert变换后是其自身相反数。
      在这里插入图片描述
      (2)Hilbert变换四次后就变回本身了。
      (3)Hilbert变换本质上是卷积,若y=conv(v,x),那么Hilbert(y)=conv(Hilbert(v),x)=conv(v,Hilbert(x))。
      (4)x(t)和Hilbert[x(t)]的能量以及平均功率相等,相关函数和功率谱密度相同。(希尔伯特变换只改变相位,不改变幅度)
      (5)x(t)和Hilbert[x(t)]奇偶性相反,即若原函数x(t)是 t 的偶(奇)函数,则其希尔伯特变换Hilbert[x(t)]就是 t 的奇(偶)函数。
      (6)x(t)和Hilbert[x(t)]是正交的,即
      在这里插入图片描述
      (7)卷积H变换
      在这里插入图片描述
      (8)Hilbert变换抑制了直流分量 H(0)=0
      (9)实信号Hilbert变换后的信号依然是实信号,Hilbert变换是一个线性变换.

    MATLAB分析cos函数的希尔伯特变换

    代码

    close all; 
    clear all;
    clc;
    
    % Hilbert transform testing  
    ts = 0.001;  %时间间隔
    fs = 1/ts;   %采样率
    N = 200;     %采样个数
    f = 50;      %频率,小于采样率的一半(奈奎斯特)
    k = 0:N-1;  
    t = k*ts;    %时间向量
    
    % signal transform  
    % 结论:cos信号Hilbert变换后为sin信号  
    y = cos(2*pi*f*t);  
    yh = hilbert(y);    % matlab函数得到的信号是解析信号 
    yi = imag(yh);      % 虚部为书上定义的Hilbert变换  
      
    subplot(2,3,1);  
    plot(t,y);
    title('原始cos信号');  
    subplot(2,3,2);  
    plot(t,yi);  
    title('Hilbert变换后的信号');  
      
    % 检验两次Hilbert变换的结果(理论上为原信号的负值)  
    % 结论:两次Hilbert变换的结果为原信号的负值  
    yih = hilbert(yi);  
    yii = imag(yih);  
    subplot(2,3,3);
    plot(t,yii);
    title('两次Hilbert变换后的信号');
    set(gca,'YLim',[-1,1]);       %设置Y轴的数据显示范围
    set(gca,'YTick',[-1:0.5:1]);  %设置Y轴刻度
      
    % 谱分析  
    % 结论:Hilbert变换后构建的解析信号的谱为单边谱 
    NFFT = 2^nextpow2(N);      %由于FFT算法的本质,对于NFFT的选择一般为大于序列长度点数N的最小的2的幂次方,这样能够改善FFT的计算性能
    f = fs*linspace(0,1,NFFT); %0到fs共输出NFFT个数,则步长为fs/NFFT
    Y = fft(y, NFFT)/N;        %Y=fft(X,n)函数返回n点DFT
    YH = fft(yh, NFFT)/N;  
      
    %figure  
    subplot(2,3,4);  
    plot(f,abs(Y));  
    title('原信号的幅度谱');  
    xlabel('频率f (Hz)');  
    ylabel('|Y(f)|');  
    subplot(2,3,5);  
    plot(f,abs(YH));  
    title('解析信号的幅度谱');  
    xlabel('频率f (Hz)');  
    ylabel('|YH(f)|');  
    

    结果
    在这里插入图片描述

    1. 物理意义

    4.1 解析信号
    在这里插入图片描述

    4.1.1 本质:

    把信号的正频率频谱移相-90°,把负频率频谱移相90°,然后再将这个信号移相90°与原信号相加,使两者的负频率频谱互相抵消,正频率频谱加倍,构成一个没有负频率频谱的复信号。这个复信号的带宽就只占w了,用这个方法,使频带节约了一半。

    4.1.2 特点:

    4.1.2.1 解析信号的实部和虚部功率谱相同,自相关函数相同,其互相关函数是一个奇函数;
    4.1.2.2 解析信号的频谱只有正频段且幅度值为原来的2倍,实现了信号由双边谱转换为单边谱;功率谱也只有正频段,强度为原来的4倍;
    在这里插入图片描述
    4.1.3 意义:

    将实信号变换为解析信号就是将一个二维信号变成了三维复平面上的信号,复平面向量的模和相角代表了信号的幅度和相位。
    在这里插入图片描述

    解析信号可以计算包络(瞬时振幅)和瞬时相位
    在这里插入图片描述

    4.1.3.1 包络
    在这里插入图片描述
    4.1.3.2 瞬时相位就是虚部和实部在某一时间点的比值的arctan
    在这里插入图片描述
    4.1.3.3 瞬时频率是瞬时相位对时间的导数
    4.1.3.4 一个信号既有幅度信息,又有相位信息,所以可设
    在这里插入图片描述
    4.2 欧拉公式(Euler’s formula)
    在这里插入图片描述

    公式表明,复指数信号可以表示为一个实信号和一个虚信号的和的形式,且实部和虚部相差π/2在这里插入图片描述
    观察sin和cos的傅里叶变换,可以得出,sinx的Hilbert变换是cosx,cosx的Hilbert变换是-sinx.也就是说,sinx与cosx是一对希尔伯特变换对.

    那么,欧拉公式实际上就是一种特殊的Hilbert变换。
    在这里插入图片描述

    复指数信号,时域上是复数,但其频谱就是一个脉冲,只有正频率部分,且幅度值是原来的2倍。

    展开全文
  • 绘出下列信号波形图(1)教材p39,1-4(2) ​编辑(2)教材p39,1-4(3) 3.用下列函数各画一图,参数自定。 sinc,rectpuls,square,tripuls,sawtooth(1)f(t)=sinc(3t)(2)f(t)=rectpuls(t,3) (3)f(t)=square(t,25) (4)...

    目录

    【实验目的】

    【实验原理】

    【实验设备】

    【实验内容】

    1.实验教程p8练习一,1

    2.绘出下列信号波形图

    (1)教材p39,1-4(2)

     ​编辑(2)教材p39,1-4(3)

     3.用下列函数各画一图,参数自定。 sinc,rectpuls,square,tripuls,sawtooth

    (1)f(t)=sinc(3t)

    (2)f(t)=rectpuls(t,3)

     (3)f(t)=square(t,25)

     (4)f(t)= tripuls (t,5,0.2)

    ​编辑(5)f(t)=sawtooth(t,0.2)

    【实验感悟】


    【实验目的】

    1. 掌握运用MATLAB表示常用连续和离散时间信号的方法。
    2. 观察并熟悉应用这些信号的波形和特性。

    【实验原理】

    1. 连续信号的MATLAB表示

    信号是消息的表现形式与运送的载体。自变量在整个连续区间内都有定义的信号,称为连续时间信号,简称连续信号。例如我们所熟悉的温度、湿度、压力以及声音等信号均为连续信号。从严格意义上来讲,MATLAB数值计算的方法并不能处理连续信号。然而,可以利用连续信号在等时间间隔点的取样值来近似表示连续信号,即当取样时间间隔足够小时,这些离散样值能被MATLAB所处理,并且能够较好地近似表示连续信号。

    1. 离散信号的MATLAB表示

        如果仅在一些离散的瞬间具有定义的信号,则称之为离散时间信号,简称离散信号或序列。如DNA序列、人口统计数据等均为离散信号。离散序列通常用x(n),f(n)表示,自变量必须是整数。对于任意离散序列x(n),需要两个向量来表示:一个表示n的取值范围,另一个表示序列的值。类似于连续时间信号,离散时间信号也有一些典型的序列。

    【实验设备】

    1. 计算机
    2. MATLAB软件

    【实验内容】

    1.实验教程p8练习一,1

    \text { (1) } y(t)=e^{-2|t|} \quad(-10 \leq t \leq 10)

    t = -10:0.01:10;%设置自变量范围及精度
    
    y = exp((-2)*abs(t));%函数表达式
    
    plot(t,y),grid on;%绘制图像并设置网格线
    
    axis([-10,10,0,1]);%设置坐标轴范围
    
    xlabel('-10.0 \leq t \leq 10.0');%设置横轴标签
    
    ylabel('y');%设置纵轴标签
    
    title('y = e^(-2|t|)')%设置图像名称
    

     \text { (2) } \mathbf{y}(\mathbf{n})=(0.9)^{n} \quad(-10 \leq \mathbf{n} \leq 10)

    n = -10:10;%设置自变量范围
    a = 0.9;
    y = a.^n;%函数表达式
    stem(n,y),grid on;%绘制图像并设置网格线
    axis([-10,10,0,4]);%设置坐标轴范围
    xlabel('n');%设置横轴标签
    ylabel('y');%设置纵轴标签
    title('y(n)=(0.9)^n ')%设置图像名称
    

    (3) y(n)=e^{i \pi \frac{n}{3}} (-10 \leq n \leq 10)的实部

    n = -10:10;%设置自变量范围及精度
    a = 1i*pi*n/3;
    y = exp(a);%函数表达式
    z = real(y);%取该函数的实部
    stem(n,z),grid on;%绘制图像并设置网格线
    axis([-10,10,-2,2]);%设置坐标轴范围
    xlabel('n');%设置横轴标签
    ylabel('z');%设置纵轴标签
    title(' y(n)=e^(iπ n/3)的实部')%设置图像名称
    

     

    2.绘出下列信号波形图

    (1)教材p39,1-4(2)

    x(t)=1+\cos (\pi t),-1<t<1

    t = -1:0.01:1;% 设置自变量范围及精度
    x= (1+cos(pi*t)) %函数表达式
    plot(t,x), grid on; %绘制图像并设置网格线
    axis=[-1,1,0,2]; %设置坐标轴范围
    xlabel('-1<t<1'); %设置横轴标签
    ylabel('x(t)'); %设置纵轴标签
    title('x(t)=1+cos(πt)') %设置图像名称
    

     (2)教材p39,1-4(3)

     \mathbf{x}(\mathbf{n})=\mathbf{e}^{\mathbf{n}}, \quad \mathbf{0} \leq \mathbf{n}<\mathbf{5}

    n = 0:4; % 设置自变量范围及精度
    x = exp(n); %函数表达式
    stem(n,x),grid on ; %绘制图像并设置网格线
    axis=[0,5,1,100]; %设置坐标轴范围
    xlabel('0\leqn<5'); %设置横轴标签
    ylabel('x[n]'); %设置纵轴标签
    title('x[n] = e^n ,0<=n<5'); %设置图像名称
    

     3.用下列函数各画一图,参数自定。 sinc,rectpuls,square,tripuls,sawtooth

    (1)f(t)=sinc(3t)

    t=-10:0.01:10;% 设置自变量范围及精度
    f=sinc(3*t);% 函数表达式
    plot(t,f),grid on;% 绘制图像并设置网格线
    axis=[-10,10,-1,2];% 设置坐标轴范围
    xlabel('-10<t<10'); %设置横轴标签
    ylabel('f'); %设置纵轴标签
    title('抽样信号'); %设置图像名称
    

    (2)f(t)=rectpuls(t,3)

    t=-10:0.01:10;% 设置自变量范围及精度
    f= rectpuls(t,3);% 函数表达式
    plot(t,f),grid on;% 绘制图像并设置网格线
    axis([-10,10,-1,1]);% 设置坐标轴范围
    xlabel('-10<t<10'); %设置横轴标签
    ylabel('f'); %设置纵轴标签
    title('非周期矩形脉冲信号'); %设置图像名称
    

     (3)f(t)=square(t,25)

    close all
    clc
    t=-20:0.01:20;% 设置自变量范围及精度
    f=square(t,25);% 函数表达式
    plot(t,f),grid on;% 绘制图像并设置网格线
    axis([-20,20,-3,3]);% 设置坐标轴范围
    xlabel('-20<t<20'); %设置横轴标签
    ylabel('f'); %设置纵轴标签
    title('周期性矩形脉冲信号'); %设置图像名称
    

     (4)f(t)= tripuls (t,5,0.2)

    close all
    clc
    t=-20:0.01:20;% 设置自变量范围及精度
    f=tripuls(t,5,0.2);% 函数表达式
    plot(t,f),grid on;% 绘制图像并设置网格线
    axis([-20,20,-3,3]);% 设置坐标轴范围
    xlabel('-20<t<20'); %设置横轴标签
    ylabel('f'); %设置纵轴标签
    title('tripuls信号'); %设置图像名称
    

    (5)f(t)=sawtooth(t,0.2)

    close all
    clc
    t=-20:0.01:20;% 设置自变量范围及精度
    f=sawtooth(t,0.2);% 函数表达式
    plot(t,f),grid on;% 绘制图像并设置网格线
    axis([-20,20,-3,3]);% 设置坐标轴范围
    xlabel('-20<t<20'); %设置横轴标签
    ylabel('f'); %设置纵轴标签
    title('sawtooth信号'); %设置图像名称
    

    【实验感悟】

    通过第一次实验,我初步认识了matlab这个软件,通过对于matlab基础语法的学习,我掌握了软件中基础的作图方法,包括了对于自变量及其范围与精确度的设置,一些复杂函数的编程式,其中我也发现matlab中有不少表达与以前学过的C语言有着一定的联系,因此通过对于以前知识的回顾,我也明白了一些写法例如:绝对值用abs表达式来表示,e的次方项用exp来表示等等。同时也学习了一些新的命令,例如利用real命令取函数的实部等等。

    除了对于以前知识的回顾,我也掌握了许多新的知识,例如用plot函数作图,axis 命令提供了许多用于设置图形的比例、方向和纵横比的选项。对 x 和 y 轴添加标签(xlabel、ylabel)的命令,以及添加标题 (title)的命令等等。此外,也通过matlab这种实验的形式加深了对于信号与系统这门课的理解。例如sinc,rectpuls,

    square,tripuls,sawtooth,让我从实验的角度强化了对于抽样信号,非周期矩形脉冲信号,周期性矩形脉冲信号,三角形脉冲信号,锯齿波信号等等的理解与认识。

    展开全文
  • 信号变成解析信号的实现方法

    千次阅读 2020-09-05 21:50:56
    (1)由于实信号具有共轭对称的频谱,从信息的角度来看,其负频谱部分是冗余的,将实信号的负频谱部分去掉,只保留正频谱部分的信号,其 频谱不存在共轭对称性,所对应的时域信号应为复信号。 (2) 现代通信信号有各种...

    1实信号到复信号的两种方法:正交下变频和希尔伯特变换
    1.1为什么要引入复信号
    (1)由于实信号具有共轭对称的频谱,从信息的角度来看,其负频谱部分是冗余的,将实信号的负频谱部分去掉,只保留正频谱部分的信号,其 频谱不存在共轭对称性,所对应的时域信号应为复信号。
    (2) 现代通信信号有各种调制方式,为便于处理, 需要将频带内的信号的谱结构原封不动的下移到零中频(统称为基带信号)。很显然,将接收到的实信号直接变到零中频是不行的,因为实信号存在共轭对称的双边谱,随着载频的下移,正、负相互接近,到中频小于信号频带一半时,两部分谱就会发生混叠,当中频为零时混叠最严重,使原信号无法恢复,这时应在变频中注意避免正、负谱分量的混叠,正确的获取基带信号。
    (3) 信号处理引入复信号的原因只是一个——方便数学处理和计算(不需要进行和差化积)。
    1.2 正交下变频

    在这里插入图片描述

    1.3 希尔伯特变换
    对于实值函数f(t),t∈(−∞,∞),它的希尔伯特变换定义为f(t)与1/πt的卷积。即:
    在这里插入图片描述

    求其频谱
    在这里插入图片描述

    可以看出来,所谓希尔伯特变换就是一个相移转换器。这个转换器器将我们的原始信号的正频率部分乘以-j,也就是说,保持幅度不变的条件下,将相位移动了-pi/2,而对于负频率成分,移动了pi/2。

    2 仿真**
    2.1 源代码

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %       实信号变成复信号(对正交下变频和希尔伯特变换的理解
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    clc; 
    close all;
    clear all;
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %               参数设置
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    fs=1e5;     % 采样频率
    f1=2e3;     % 信号频率
    f2=3e3;
    count=2e3;  % 采样点数
    t=0:1/fs:(count-1)/fs;
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %              原始信号
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    s=cos(2*pi*f1*t)+3*cos(2*pi*f2*t);
    S=fftshift(fft(s));
    L=length(S);
    P=2*abs(S)/L;
    f=(0:L-1)*fs/L-fs/2;
    
    figure(1)
    subplot(211);plot(t,real(s));
    xlabel('时间t');ylabel('幅度');
    title('原始信号的时域波形'); 
    subplot(212);plot(f,P);%  幅度谱
    xlabel('频率/Hz');ylabel('幅度');
    title('原始信号的频谱');
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %               期望信号
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    y=exp(1i*2*pi*f1*t)+3*exp(1i*2*pi*f2*t); % 复信号
    Y1=fftshift(fft(y));
    P1=2*abs(Y1)/L;
    
    figure(2)
    subplot(211);plot(t,real(y));
    xlabel('时间t');ylabel('幅度');
    title('期望信号的时域波形'); 
    subplot(212);plot(f,P1);%  幅度谱
    xlabel('频率/Hz');ylabel('幅度');
    title('期望信号的频谱');
     
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %      如何通过原始信号得到期望信号
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
    
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %          法一:希尔伯特变换
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
    y_h=hilbert(s);
    Y_h=fftshift(fft(y_h));
    P_h=2*abs(Y_h)/L;
    figure(3)
    subplot(211);plot(t,real(y_h));title('希尔伯特变换');
    subplot(212);plot(f,P_h);
    
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %              正交下变频
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    fc=(f1+f2)/2;         % 载波频率
    y1=s.*cos(2*pi*fc*t); % I路
    y2=s.*sin(2*pi*fc*t); % Q路
    
    %---------------对I路和Q路进行低通滤波-----------------%
    %  equiripple 窗
    Fs = 100;                % Sampling Frequency  单位:KHz
    Fpass = 1;               % Passband Frequency
    Fstop = 2;               % Stopband Frequency
    Dpass = 0.057501127785;  % Passband Ripple
    Dstop = 0.0001;          % Stopband Attenuation
    dens  = 20;              % Density Factor
    % Calculate the order from the parameters using FIRPMORD.
    [N, Fo, Ao, W] = firpmord([Fpass, Fstop]/(Fs/2), [1 0], [Dpass, Dstop]);
    % Calculate the coefficients using the FIRPM function.
    h  = firpm(N, Fo, Ao, W, {dens});
    
    
    y1_filter=filter(h,1,y1);
    y2_filter=filter(h,1,y2);
    y=y1_filter-1j*y2_filter;
    
    Y=fftshift(fft(y));
    L=length(y);
    P1=abs(Y)*2/L;
    f=(0:L-1)*fs/L-fs/2;
    figure(4)
    subplot(211);plot(t,real(y));
    title('正交下变频后的时域波形');
    subplot(212);plot(f,P1);
    title('正交下变频后的频域波形');
    
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %                 结论
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
    % 复数信号是单边谱,实数信号是双边谱
    % 希尔伯特变换后,只保留了频谱的一半,但为了保持能量不变,幅度变成原来的两倍
    % 正交下变频得到的是零中频信号
    
    

    希尔伯特变换

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %      如何通过实信号得到复信号
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
    clc; 
    close all;
    clear all;
    
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %               参数设置
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    fs=1e5;     % 采样频率
    f1=2e3;     % 信号频率
    f2=3e3;
    count=2e3;  % 采样点数
    t=0:1/fs:(count-1)/fs;
    
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %              实信号
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    s=cos(2*pi*f1*t)+3*cos(2*pi*f2*t);
    S=fftshift(fft(s));
    L=length(S);
    P=abs(S)/L;
    f=(0:L-1)*fs/L-fs/2;
    
    figure(1)
    subplot(211);
    plot(t,s);grid on;
    xlabel('时间/s');ylabel('幅度');
    title('原始信号的时域波形'); 
    subplot(212);
    plot(f,P);grid on;
    xlabel('频率/Hz');ylabel('幅度');
    title('原始信号的频谱');
    
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %               复信号
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    y=exp(1i*2*pi*f1*t)+3*exp(1i*2*pi*f2*t); % 复信号
    Y1=fftshift(fft(y));
    P1=2*abs(Y1)/L;
    
    figure(2)
    subplot(211);
    plot(t,real(y));grid on;
    xlabel('时间/s');ylabel('幅度');
    title('期望信号的时域波形'); 
    subplot(212);
    plot(f,P1);grid on;
    xlabel('频率/Hz');ylabel('幅度');
    title('期望信号的频谱');
     
    
    
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %           希尔伯特变换
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
    y_h=hilbert(s);
    Y_h=fftshift(fft(y_h));
    P_h=abs(Y_h)/L;
    figure(3)
    subplot(211);
    plot(t,real(y_h));grid on;
    xlabel('时间/s');ylabel('幅度');
    title('希尔伯特变换后的实部时域波形');
    subplot(212);
    plot(f,P_h);grid on;
    xlabel('频率/Hz');ylabel('幅度');
    title('希尔伯特变换后的信号频谱');
    
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %           信号对比
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
    figure(4)
    plot(t,s-real(y_h));grid on;
    xlabel('时间/s');ylabel('幅度');
    title('原信号与希尔伯特变换后的信号实部信号之差');
    
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %                 结论
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
    % 复数信号是单边谱,实数信号是双边谱
    % 希尔伯特变换后,只保留了频谱的一半,但为了保持能量不变,幅度变成原来的两倍
    % 正交下变频得到的是零中频信号
    

    2.2 仿真结果**

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    结论

    1、 复数信号是单边谱,实数信号是双边谱
    2、 希尔伯特变换后,只保留了频谱的一半,但为了保持能量不变,幅度变成原来的两倍
    3、 正交下变频得到的是零中频信号

    展开全文
  • 模拟信号和数字信号有什么区别

    千次阅读 2021-07-25 01:14:26
    数字信号与模拟信号定义数字信号,是指幅度的取值是离散的,幅值表示被限制在有限个数值之内。二进制码就是一种数字信号。二进制码受噪声的影响小,易于有数字电路进行处理,所以得到了广泛的应用。自变量是离散的、...
  • 信号与系统实验三 信号的卷积计算

    万次阅读 2022-07-04 22:55:42
    (2)学会用MATLAB求连续时间信号和离散时间信号的卷积运算。卷积是一种重要的应用工具,是线性时不变系统对任意输入信号获取零状态响应的一种系统描述方法。卷积运算分为连续时间信号的卷积积分和离散时间信号的卷积和...
  • MATLAB对语音信号分析,语音信号的反折和平移,与正弦信号相加相乘。语音信号的频谱分析。对语音信号抽样,对门信号抽样及其抽样信号绘制。 语音信号的反折和平移,与正弦信号相加相乘 %s实验一 [m,Fs]=audioread...
  • 文章目录信号的基本概念与分类1 消息、信息、信号2 信号的描述3 信号的分类3.1 确定信号和随机信号3.2 连续信号和离散信号3.3 周期与非周期3.4 能量信号和功率信号3.5 因果信号和反因果信号 信号的基本概念与分类 1 ...
  • 小波分析的重要应用之一就是用于信号消噪,首先简要地说明一下小波变换实现信号消噪的基本原理。 一、基本原理 含噪的一维信号模型可以表示如下 s(k)=f(k)+Ee(k)k=0,1,..,n-1 式中s(k)为含噪信号,f(k)为有用...
  • 铁路信号基础知识——信号部分

    万次阅读 多人点赞 2019-06-25 22:01:27
    一.信号 信号:是传递信息的符号。 铁路信号设备是一个总名称,概而言之为信号、联锁、闭塞 铁路信号:是向有关行车和调车...铁路信号按感官的感受方式可分为视觉信号和听觉信号两大类。 视觉信号:是以颜色、形...
  • 目录【实验目的】【实验原理】【实验设备】【实验内容】1、用MATLAB 读入一段声音信号,观察其幅频特征和相频特征,并分别设计实现。 (1)对声音信号时域压缩,观察其幅频特性的变换; (2)对声音信号时域开展,...
  • 文章目录一、实验目的二、实验过程与结果1、数字音频信号的频谱分析2、 数字音频信号的频谱分析3、 数字和弦音频信号的生成三、结果分析与实验结论1、读数字音频信号的频谱分析2、数字和弦音频信号的生成 ...
  • 正弦信号与复指数信号(更准确称为虚指数信号)是现代移动通信系统中最基本的信号。 其中正弦信号常是射频调制的载波信号,而虚指数信号,包含了两路同频的正交正弦与余弦信号,常用于现代通信基带数字调制。 因此...
  • 我们在学习阶跃信号与冲激信号之前,我们首先要知道什么是奇异信号? 什么是奇异信号? 解释:函数本身有不连续点(跳变点)或其导数与积分有不连续点的一类函数统称为奇异信号或奇异函数。而我们下面所要介绍的...
  • 移动、联通、电信(信号强度大比拼)对于国内三大通信运行商:移动、联通、电信,宝宝们更钟爱哪家呢?如今,中国移动、中国电信、中国联通这三大运营商,正在 4G 业务领域展开激烈地较量。为了竞争存量用户,三大运营...
  • Matlab 实现信号滤波

    万次阅读 多人点赞 2020-11-30 10:07:26
    文章目录项目介绍代码实现1、导入信号2、加入噪声3、绘制原始信号的时域、频域4、滤波4.1 移动平均滤波4.2 中值滤波4.3 维纳滤波4.4 自适应滤波4.5 巴特沃斯滤波4.5.1 低通滤波4.5.2 高通滤波4.5.3 带通滤波 ...
  • 数字信号处理实验一 常见离散信号的产生 一、实验目的 1. 加深对离散信号的理解。 2. 掌握典型离散信号的Matlab 产生和显示。 二、实验原理及方法 在MATLAB 中,序列是用矩阵向量表示,但它没有包含采样信息,即...
  • 7 时域、周期性、连续信号的傅里叶级数 7.1周期性、连续信号的傅里叶级数概述 时域上任意连续的、周期信号可以分解为无限多个、离散的、非周期的、正交的复指数信号之和,称之为傅里叶级数。 (1)时域信号...
  • Qt信号和槽机制详解

    千次阅读 2022-01-24 12:25:09
    Qt信号和槽机制详解 信号和槽是 Qt 特有的消息传输机制,它能将相互独立的控件关联起来。 举个简单的例子,按钮和窗口本是两个独立的控件,点击按钮并不会对窗口造成任何影响。通过信号和槽机制,我们可以将按钮和...
  • 雷达信号处理---线性调频信号脉冲压缩MATLAB实现

    千次阅读 热门讨论 2021-07-13 15:23:12
    关于脉冲压缩的原理以及公式推导...同时,接收端会对发射信号做脉冲压缩处理,得到形似sinc函数的信号,该信号具有很好的距离分辨能力。在接收端的具体实现过程如下图。 其中,是雷达回波信号,是脉冲压缩的输出...
  • 好了,下面来看一看网卡是如何将包转换成电信号并发送到网线中的。网卡驱动从 IP 模块获取包之后,会将其复制到网卡内的缓冲区中,然后向MAC 模块发送发送包的命令。接下来就轮到 MAC 模块进行工作了。 首先,MAC ...
  • 信号与系统、数字信号处理——复试常见问题

    万次阅读 多人点赞 2021-03-13 20:14:31
    数字信号处理的课程脉络:围绕数字系统的分析和设计展开,分析了数字系统的响应、IIR和FIR滤波器的设计。 从分析方法的角度来看,可以分为时域分析和变换域分析。时域分析主要是用线性卷积来求解系统的零状态响应;...
  • 实验(1)信号的采样

    千次阅读 2021-01-22 10:39:21
    由于在计算机中存储的信号都是数字信号,所以无法选用真实的信号来进行处理,本文主要利用软件来模拟真实信号,并对该模拟信号进行采样,采样的影响因素主要是采样频率,于是采用不同的采样频率得到采样后的离散时间...
  • 信号与系统与数字信号处理丹梅老师公众号笔记

    万次阅读 多人点赞 2020-03-31 21:25:32
    信号与系统与数字信号处理笔记关于“模拟信号”、“采样信号”、“采样序列”的概念为什么学习“信号的恢复”(或称为“信号的重构”)?有什么意义?满足采样定理条件下的理想采样后信号的恢复模拟角频率和数字域...
  • 编程实现以下功能:将以下信号分解成余弦形式的傅立叶级数,再由信号f的直流分量C0开始,依次相加其基波分量、二次谐波、三次谐波等直至N次谐波(N不超过信号f的采样点数量的一半),观察随着谐波次数的增加,前N次...
  • 1. IQ信号: (1)IQ信号即同相正交信号,I为in-phase,Q为quadrature,与I的相位相差了90度。 (2)因为信号在传输的时候需要的是单一信道、单一频率,因此在最早的通讯技术中往往选择通过滤波器滤掉另外一个频率...
  • 基于MATLAB语音信号的处理与滤波

    万次阅读 多人点赞 2021-06-09 23:47:20
    摘要:MATLAB是十分强大的用于数据分析和处理的工程实用软件,利用其来进行语音信号的分析、处理和可视化十分便捷。文中介绍了在MATLAB环境中如何驱动声卡采集语音信号和语音信号采集后的文档处理方法,并介绍了FFT...
  • (一)信号及脉冲电信号

    千次阅读 2019-11-06 11:42:31
    目录 #电磁波回顾 #信号 分类 按照幅值是否连续分类 模拟信号 数字信号 ...有线信号(电线传输的电信号、光缆传输的光信号) 无线信号(自由空间 传输的无线电、微波等) 按是否调制分类 基带信...
  • 目录第二章 信号与系统2.1 什么是信号信号如何表征2.1.1信号的概念2.1.1信号的表征方法2.2 信号如何分类2.2.1 信号类别及基本概念2.2.2 确定信号与随机信号2.2.3 连续时间信号与离散时间信号2.3 常见信号2.4 特殊...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,500,097
精华内容 600,038
关键字:

信号