2022年数字信号处理-原理实现及应用第1章时域离散信号和系统 .pdf
1第 1章时域离散信号和系统1.1 引言本章内容是全书的基础。学生从学习模拟信号分析与处理到学习数字信号处理,要建立许多新的概念,数字信号和数字系统与原来的模拟信号和模拟系统不同,尤其是处理方法上有本质的区别。模拟系统用许多模拟器件完成,数字系统用运算方法完成。如果对本章中关于数字信号与系统的若干基本概念不清楚,那么在学习数字滤波器时,会感到不好掌握,因此学好本章是很重要的。1.2 本章学习要点(1) 关于信号模拟信号、时域离散信号、数字信号三者之间的区别。如何由模拟信号产生时域离散信号。常用的时域离散信号。如何判断信号是周期性的,其周期如何计算。(2) 关于系统什么是系统的线性、时不变性,以及因果性、稳定性;如何判断。线性、时不变系统输入和输出之间的关系;求解线性卷积的图解法、列表法、 解析法,以及用 MATLAB 工具箱函数求解。线性常系数差分方程的递推解法。用 MATLAB 求解差分方程。什么是滑动平均滤波器,它的单位脉冲响应是什么。1.3 习题与上机题解答1.1 用单位脉冲序列及其加权和表示图P1.1所示的序列。解:( )(2)(1)2 ( )(1)2 (2)3 (3)(4)2 (6)x nnnnnnnnn1.2 给定信号24,41( )4,0 40,nnx nn其他(1) 画出 x(n)的波形,标上各序列值;(2) 试用延迟的单位脉冲序列及其加权和表示x(n)序列;(3) 令1( )2 (2)xnx n,画出1( )x n 的波形;(4) 令2( )(2)xnxn ,画出2( )xn 的波形。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 18 页2解: (1) 画出 x(n)的波形,如图S1.2.1 所示。图 P1.1 图 S1.2.1 (2) ( )4 (4)2 (3)2 (1)4 ( )4 (1)4 (2)4 (3)4 (4)x nnnnnnnnn-。(3) 画出1( )2 (2)x nx n的波形,如图S1.2.2 所示。(4) 画出2( )(2)xnxn 的波形,如图S1.2.3所示。1.3 判断下列信号中哪一个是周期信号,如果是周期信号,求出它的周期。图 S1.2.2 图 S1.2.3 (a) sin1.2n(b) sin9.7n(c) j1.6en(d) con(3/7)n(e) 3cos78An(f) 1j8en解: (a) sin1.2n是非周期信号。(b) sin9.7n是周期信号,22209.797MMM,取 M = 97,周期为 20。(c) j1.6en是周期信号,2251.64MMM ,取 M = 4,周期为 5。(d) con(3/7)n是周期信号,22143/ 73MMM,周期为 14。(e) 3cos78An是周期信号,周期为14。(f) 1j8en是非周期信号。总结以上,如果数字频率不是的函数,则一定是非周期序列。1.4 对图 P1.1给出的 x(n),要求:精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 18 页3(1) 画出 x( n)的波形;(2) 计算e1( ) ( )()2xnx nxn,并画出e( )xn 的波形;(3) 计算o1( ) ( )()2xnx nxn,并画出o( )xn 的波形;(4) 令1eo( )( )( )xnxnxn ,将1( )x n 和 x(n)进行比较,你能得出什么结论?解: (1) 画出 x( n)的波形如图S1.4.1所示。(2) 将图 P1.1 所示波形和图S1.4.1 所示波形相加再除以2,得到e1( ) ( )()2xnx nxn的波形,如图 S1.4.2所示。图 S1.4.1 图 S1.4.2 (3) 将图 P1.1 所示波形和图S1.4.1 所示波形相减,再除以2,得到o1( ) ( )()2xnx nxn的波形,如图S1.4.3所示。图 S1.4.3 (4) 令1eo( )( )( )x nxnxn ,画出波形,得到1eo( )( )( )( )x nxnxnx n 。另外,由波形得到e( )xn1 ( )()2x nxn是 x(n)的偶对称序列,o1( ) ( )()2xnx nxn是x(n)的奇对称序列。这是一个具体例子,但可以推广到一般情况,结论是对于一般实序列可以分解成偶对称序列e( )xn 和奇对称序列o( )xn ,即( )x neo( )( )xnxn ,式中e1( ) ( )()2xnx nxn,o( )xn1 ( )()2x nxn。1.5 以下序列是系统的单位脉冲响应h(n),试说明系统是否是因果的和稳定的。(1) 21( )u nn(2) 1( )!u nn(3) 3( )nu n(4) 3()nun(5) 0.3( )nu n(6) 0.3(1)nun(7)(4)n解: (1) 21( )u nn,系统是因果、不稳定。(2) 1( )!u nn,系统是因果、稳定的。(3) 3( )nu n ,系统是因果的,但不稳定。(4) 3()nun ,系统是非因果、稳定的。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 18 页4(5) 0.3( )nu n ,系统是因果、稳定的。(6) 0.3(1)nun,系统是非因果的,不稳定。1.6 假设系统的输入和输出之间的关系分别如下式所示,试分别分析系统是否是线性时不变系统。(1) ( )3 ( )8y nx n(2) ( )(1)1y nx n(3) ( )( )0.5 (1)y nx nx n(4) ( )( )y nnx n解: (1) ( )3 ( )8y nx n将上式中的 n 用0nn 代替,得到00()3 ()8y nnx nn。令00( ) ()3 ()8y nT x nnx nn,因此00() ()y nnT x nn,系统是时不变系统。令系统的输入信号为两个信号的线性组合12( )( )( )x nax nbxn ,则输出为1212( )( )( )3( )3( )8y nT ax nbxnax nbxn,1122( )3( )8, ( )3( )8 T ax nax nT bxnbxn因为1212( )( )( )( )T ax nbxnT ax nT bxn,因此该系统不服从线性叠加原理,是非线性系统。(2) ( )(1)1y nx n分析方法同上,该系统是时不变非线性系统。(3) ( )( )0.5 (1)y nx nx n由上式有000()()0.5 (1)y nnx nnx nn000 ()()0.5 (1)T x nnx nnx nn因此00() ()y nnT x nn,该系统是时不变系统。令系统的输入信号为两个信号的线性组合12( )( )( )x nax nbxn ,则输出为121122( )( )( )( )0.5(1)( )0.5(1)y nT ax nbxnax nax nbxnbxn111222( )( )0.5(1), ( )( )0.5( )T ax nax nax nT bxnbxnb xn因为1212( )( )( )( )T ax nbxnT ax nT bxn,因此该系统服从线性叠加原理,是线性系统。(4) ( )( )y nnx n由上式得到000()() ()y nnnnx nn00 ()()T x nnnx nn这样00() ()y nnT x nn,该系统不是时不变系统。按照差分方程,可把系统看成是一个放大器,放大器的放大量是n,因为该放大量随n 改变,从物理概念上讲,该系统也是一个时变系统。令系统的输入信号为两个信号的线性组合12( )( )( )x nax nbxn ,则输出为1212( )( )( )( )(1)y nT ax nbxnn ax nbxn,1122( )( ), ( )( )T ax nnaxnT bxnnbxn因为1212( )( )( )( )T ax nbxnT ax nT bxn,因此该系统服从线性叠加原理,是线性系统。1.7 按照图 P1.7 完成下面各题。图 P1.7 (1) 根据串并联系统的原理直接写出总的系统单位脉冲响应h(n);精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 18 页5(2) 设1( )40.5 ( )(3)nh nu nu n,23( )( )(1) ( )h nh nnu n,4( )(1)hnn,5( )( )4 (3)hnnn试求总的系统单位脉冲响应h(n),并推出 y(n)和输入 x(n)之间的关系。解: (1) 12345( )( )( )( )( )( )h nh nhnh nh nh n 。(2) 在下面的推导中,用一些常用的公式,会使推导简便,它们是( )( )( )x nnx n ,00( )()()x nnnx nn;( )(1)nu nnu n,(1)( )( )u nu nn在(1)式中,34( )( )(1) ( )(1)(1)( )h nhnnu nnnu nnu n234( )( )( )(1) ( )( )( )hnh nhnnu nnu nu n1( )40.5 ( )(3)40.5 ( )(1)(2)4 ( )2 (1)(2)nnh nu nu nnnnnnn1234( )( )( )( )4 ( )2 (1)(2)( )4 ( )6 (1)7 (2)h nh nh nhnnnnu nnnu n12345( )( )( )( )( )( )7 (2)4 ( )6 (1)( )4 (3)7 (2)5 ( )6 (1)4 (3)h nh nhnh nhnhnu nnnnnu nnnn或者( )7 ( )2 ( )(1)4(3)h nu nnnn( )( )( )7 ( )( )2 ( )(1)4 (3)y nx nh nx nu nx nx nx n1.8 由三个因果线性时不变系统串联而成的系统如图P1.8(a)所示,已知分系统2( )( )(2)hnu nu n整个系统的单位脉冲响应如图P1.8(b)所示。(1) 求分系统单位脉冲响应1( )h n ;(2) 如果输入( )( )(1)x nnn,求该系统的输出y(n)。图 P1.8 解: (1) 按照图 P1.8(a)写出系统的单位脉冲响应如下:122( )( )( )( )h nh nhnh n式中,22( )( )(2)( )( )(1)hnu nu nRnnn。22( )( ) ( )(1) ( )(1)( )2 (1)(2)hnhnnnnnnnn1221111( )( )( )( )( ) ( )2 (1)(2)( )2(1)(2)h nh nhnh nh nnnnh nh nh n111( )( )2(1)(2)hnh nh nh n精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 18 页6已知 h(n),求1( )h n 。上式是一个递推公式,用递推法求解。求解时注意系统是一个因果系统。10, (0)(0)1nhh;111, (1)(1)2(0)523nhhh;1112, (2)(2)2(1)(0)10613nhhhh;1113, (3)(3)2(2)(1)11632nhhhh;1114, (4)(4)2(3)(2)8431nhhhh;1115, (5)(5)2(4)(3)4220nhhhh;1116, (6)(6)2(5)(4)110nhhhh;1117, (7)(7)2(6)(5)0nhhhh。最后得到当 n = 0, 1, 2, 3, 4, 5, 6, 7,时,1( )1 3 3 2 1 0 0h nL, , ,(2) 122122( )( )( )( )( )( )( )( )( )y nx nh nhnhnh nx nhnhn111111( )( ) ( )(1) ( )2 (1)(2)( ) ( )(1)(2)(3)( )(1)(2)(3)y nh nnnnnnh nnnnnh nh nh nh n将已求出的1( )h n 代入上式,得到当 n = 0, 1, 2, 3, 4, 5, 6, 7,时, ( )1, 4, 5, 3, 3, 4, 5, 1, 0, 0,y nL。1.9 计算并画出图P1.9 所示信号的卷积( )( )x nh n 。图 P1.9 (a) ( )( ),0,0,6,11,15,18,14,10,6,3,1,0,0,x nh nLL,原点在 6 处,波形如图S1.9.1(a)所示。(b) ( )( ),0,0,6,11,15,18,14,10,6,3,1,0,0,x nh nLL,原点在 18处,波形如图S1.9.1(b)所示。(c) ( )( ),0,0,1,2,2,2,1 ,0,0,x nh nLL,原点在第一个2 处,波形如图S1.9.1(c)所示。(d) ( )( ),0,0,1,2,2,2,1,0,0,x nh nLL,原点在第一个1 处,波形如图S1.9.1(d)所示。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 18 页7图 S1.9.1 1.10 证明线性卷积服从交换率、结合率和分配率,即证明如下等式成立:(1) ( )( )( )( )x nh nh nx n(2) 1212( )( )( )( ( )( )( )x nh nhnx nh nhn(3) 1212( )( )( )( )( )( )( )x nh nhnx nh nx nhn解: 证明如下:(1) 因为( )( )() ()mx nh nx m h nm令mnm( )( )() ()( )( )mx nh nx nm h mh nx n(2) 利用上面已证明的结果,得到122121( )( )( )( )( )( )()()()mx nh nhnx nhnh nx m hnmh nm21()( )()mkx mh k h nmk交换求和号的次序,得到1221212112( )( )( )( )()()( ) ()()( ) ( )( ) ( )( )( )kmkx nh nhnh kx m h nmkhkx nkh nkhnx nh nx nh nhn(3) 1212( )( )( )()()()mx nh nh nx mh nmhnm1212()()()()( )( )( )( )mmx m h nmx m hnmx nh nx nhn1.11 已知系统的输入x(n)和单位脉冲响应h(n),试求系统的输出y(n)。(1) 54( )( ), ( )( )x nR nh nRn(2) 4( )( )(2), ( )2( )x nnnh nRn(3) 3( )(2), ( )0.5( )nx nnh nRn(4) 5( )( ), ( )0.5( )nx nR nh nu n精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 18 页8(5) 1,0 6( )30,nnx n其他1,2 2( )0,nh n其他(6) ,3 5( )0,nanx n其他1,0 4( )0,nh n其他解: (1) 54( )( )( ),0,1,2,3,4,4,3,2,1 ,0y nR nR nLL,原点在第一个1 处。(2) 444( ) ( )(2)2( )2( )2(2),0,2,2,0,0,2, 2,0,y nnnR nRnRnLL,原点在第一个 2 处。(3) 2333( )(2)0.5( )0.5(2)40.5(2)nnny nnR nR nR n。(4) 该题解的方法和主教材中的例题1.3.3 相同,5( )( )( )()()n mmy nh nx nRm au nm;mn , 0 4m,n0,y(n) = 0 0 4n,非零值范围为0mn ,因此1101( )1nnn mnmay naaa5 n ,非零区间为0 4m,因此45101( )1n mnmay naaa结果为11510, 01( ),0 411,51nnnnay nanaaana(5) 751( )( )( )( )(2)3y nx nh nnR nR n。为了计算方便,将上式写成753 ( )3 ( )*( )( )*(2)y nx nh nnRnRn采用列表法,计算过程如表S1.11.1所示。表 S1.11.1 m 4 3 2 1 0 1 2 3 4 5 6 3x(m) 0 1 2 3 4 5 6 h(m) 1 1 1 1 1 h( m)1 1 1 1 1 3y(0) = 3 h(1 m)1 1 1 1 1 3y(1) = 6h(2 m)1 1 1 1 1 3y(2) = 10h(3 m)1 1 1 1 1 3y(3) = 15h(4 m)1 1 1 1 1 3y(4) = 21精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 8 页,共 18 页9h( 1 m) 1 1 1 1 1 3y( 1) = 1 h( 2 m) 1 1 1 1 1 3y( 2) = 0 1( ),0,1,3,6,10,15,21,20,18,15,11,6,0,3y nLL,原点在 3 处。(6) ,3 5( )0,nanx n其他1,0 4( )0,nh n其他9( )(3)nx na Rn,5( )( )h nR n95( )(3)()mmy na R mRnm由9(3)Rm得到3 5m。由5()R nm 得到4nmn 。max 3,4 min5,nmn ;3 0n,343(1)( )1nnmmaay naa;1 5n,454(1)( )1nnmm naay naa;6 9n,54104(1)( )1nnmm naay naa;最后得到314146,3 01,1 5( )1,6 910,nnnnaanaaany naaana其他1.12 如果线性时不变系统的输入和输出分别为(1) 10, 0, 3,0, 1, 2( )0,nx n其他10, 1, 0, 2,0, 1, 2, 3( )0,nyn其他(2) 20, 0, 0, 1,0, 1, 2, 3( )0,nxn其他21, 2, 1,1, 0, 1( )0,nyn其他试求出相应的系统单位脉冲响应。解: 这是一个简单的解线性卷积的题目,可用递推法求解。(1) 211111110( )( )( )()()(2)(2)mynxnh nx m h nmxh n110, 03( 2), ( 2) 0nhh;1, n11113( 1), ( 1) 3hh;112, 03 (0), (0) 0nhh;3, n11223(1), (1) 3hh精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 18 页10得到1120, , 0, ,2, 1,0,1( )330,nh n其他(2) 3222222220( )( )( )()()(3)(3)(3)mynxnhnxm hnmxhnhn21, 2, 1,4, 3, 2( )0,nhn其他1.13 已知因果系统的差分方程为( )0.5 (1)( )0.5 (1)y ny nx nx n求系统的单位脉冲响应h(n)。解: 用递推法求解,令( )( )x nn ,y( 1) = 0,y(n) = h(n),11( )(1)( )(1)22h nh nnn0, n11(0)( 1)(0)( 1)122hh;1, n1111(1)(0)(1)(0)12222hh;112, (2)(1)22nhh;2113, (3)(2)22nhh归纳起来,结果为11( )(1)( )2nh nu nn。1.14 设系统的差分方程为( )(1)( ), 0 1y nay nx na,y( 1) = 0。分析系统是否是线性、时不变系统。解: 分析的方法是让系统输入分别为( )n ,(1)n,( )(1)nn时,求它的输出,再检查是否满足线性叠加原理和非时变性。(1) ( )( )x nn ,系统的输出用1( )y n 表示:11( )(1)( )y nay nn该情况在主教材例题1.5.21.4.1 中已求出,系统的输出为1( )( )nyna u n 。(2) ( )(1)x nn,系统的输出用2( )yn 表示:22( )(1)(1)ynaynn0, n22(0)( 1)( 1)0ya y1, n22(1)(0)(0)1ya y2, n22(2)(1)(1)ya yaL L精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 10 页,共 18 页11, n12( )nyna最后得到12( )(1)nynau n。(3) ( )( )(1)x nnn,系统的输出用3( )yn 表示:33( )(1)( )(1)ynaynnn0, n33(0)( 1)(0)( 1)1ya y1, n33(1)(0)(1)(0)1ya ya2, n233(2)(1)(2)(1)(1)ya ya aaa3, n22333(3)(2)(3)(2)()ya yaaaaaL L, n13( )nnynaa最后得到13( )(1)( )nnynau na u n 。由(1)和(2)得到12( ) ( ), ( ) (1)y nTnynTn12( )(1)ynyn因此,可断言这是一个时不变系统。情况(3)的输入信号是情况(1)和情况 (2)的输入信号的相加信号,因此3( ) ( )(1)ynTnn。观察123( )( )( )ynynyn,得到312( )( )( )yny nyn ,因此该系统是线性系统。最后得到结论: 用差分方程( )(1)( ), 01y nay nx na描述的系统, 当初始条件为零时, 是一个线性时不变系统。1.15 习题 1.6 和习题 1.14 都是由差分方程分析系统的线性时不变性质,为什么习题 1.6没给初始条件,而习题 1.14 给了初始条件?解:系统用差分方程描述时,分析其线性时不变性质,需要给定输入信号求输出,因此需要已知差分方程的初始条件, 是几阶差分方程就需要几个初始条件,习题 1.6 的差分方程是零阶的, 因此不需要初始条件,而习题 1.14 是一阶的,因此需要一个初始条件。1.16 设系统的单位脉冲响应为( )(3/8)0.5( )nh nu n ,系统的输入x(n)是一些观察数据,设0( ),x nx12,kxxxLL,试用递推法求系统的输出y(n)。递推时设系统的初始状态为零。解:033( )( )( )0.5()0.5, 088nn mn mmmmmy nx nh nxu nmxn0, n03( )8y nx1, n1101033( )0.5(0.5)88mmmy nxxx2, n222012033( )0.5(0.50.5)88mmmy nxxxxL L最后得到03( )0.58nmn mmy nx。1.17 如果线性时不变系统的单位脉冲响应为精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 11 页,共 18 页12( )( ), 1nh na u na求系统的单位阶跃响应。解:单位阶跃响应是系统输入单位阶跃序列时系统的零状态响应,因此该题即是求系统对单位阶跃序列的响应。系统的单位阶跃响应用y(n)表示,即( )( )( )() ()nmmy na u nu na u m u nm非零值区间为0 m,mn ,最后得到101( )1nnmmay naa。1.18 已知系统的单位脉冲响应h(n)和输入信号x(n)分别为( )( ), ( )( )(10)nh na u nx nu nu n求系统的响应。解:( )( )( )( )( )( )(10)nny nh nx na u nu na u nu n利用习题 1.17 的结果,得到1991111( )()111nnnnaay naaaaa1.19 已知系统用下面的差分方程描述:( )0.7 (1)2 ( )(2)y ny nx nx n(1) 求系统的单位脉冲响应;(2) 求系统的单位阶跃响应。解: (1) 令( )( ), ( 1)0 x nny( )0.7 (1)2 ( )(2)y ny nnnn = 0,(0)0.7 ( 1)2 (0)( 2)2yyn = 1,(1)0.7 (0)2 (1)( 1)20.71.4yyn = 2,2(2)0.7 (1)2 (2)(0)2(0.7)10.02yyn = 3,(3)0.7 (2)0.020.7yyn = 4,2(4)0.7 (3)0.02(0.7)yy2( )( )0.02(0.7)(2)2( )1.4 (1)0.04080.7(2)2 ( )1.4 (1)nnh ny nu nnnu nnn或者( )0.04080.7( )2.0408 ( )1.4286 (1)nh nu nnn(2) 该题可以直接由差分方程求单位阶跃序列的响应,因为上题已求出系统的单位脉冲响应,因此可以直接用线性卷积求解。令( )( )x nu n ,系统的单位阶跃响应用( )uhn 表示,则( )( )( )uhnh nu n( ) 0.04080.7( )2.0408 ( )1.4286 (1)( )nuhnu nnnu n利用习题 1.17 的结果得到精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 12 页,共 18 页13110.70.04080.7( )( )0.04080.1360.09520.710.7nnnu nu n从而有( ) 0.1360.09520.7 ( )2.0408 ( )1.4286 (1)nuhnu nu nu n1.9048 ( )0.09520.7( )1.4286 (1)nu nu nu n1.20*已知两个系统的差分方程分别为(1) ( )0.6 (1)0.08 (2)( )y ny ny nx n(2) ( )0.7 (1)0.1 (2)2 ( )(2)y ny ny nx nx n分别求两个系统的单位脉冲响应和单位阶跃响应(只求前30个序列值即可)。解: (1) 系统差分方程的系数向量为B1 = 1; A1 = 1, 0.6, 0.08。(2) 系统差分方程的系数向量为B2 = 2, 0, 1; A2 = 1, 0.7, 0.1。调用 MATLAB函数 filter 计算两个系统的系统单位脉冲响应和单位阶跃响应的程序ex120.m 如下:程序 ex120.m B1 = 1;A1 = 1,0.6, 0.08; 设差分方程 (1)系数向量B2 = 2,0, 1; A2 = 1,0.7,0.1; 设差分方程 (2)系数向量= 系统 1 xn = 1,zeros(1,30); x(n)=单位脉冲序列,长度N=31 hn1=filter(B1,A1,xn); 调用 filter 解差分方程,求系统输出信号h(n) n=0:length(hn1) 1; subplot(3,2,1);stem(n,hn1,.) title(a) 系统 1 的系统单位脉冲响应);xlabel(n);ylabel(h(n) xn=ones(1,30); x(n)=单位阶跃序列,长度N=31 sn1=filter(B1,A1,xn); 调用 filter 解差分方程,求系统输出信号h(n) n=0:length(sn1) 1; subplot(3,2,2);stem(n,sn1,.) title(b) 系统 1 的单位阶跃响应 );xlabel(n);ylabel(s(n) = 系统 2 xn=1,zeros(1,30); x(n)=单位脉冲序列,长度N=31 hn2=filter(B2,A2,xn); 调用 filter 解差分方程,求系统输出信号h(n) n=0:length(hn2) 1; subplot(3,2,5);stem(n,hn2,.) title(a) 系统 2 的系统单位脉冲响应);xlabel(n);ylabel(h(n) xn=ones(1,30); x(n)=单位阶跃序列,长度N=31 sn2=filter(B2,A2,xn); 调用 filter 解差分方程,求系统输出信号s2(n) n=0:length(sn2) 1; subplot(3,2,6);stem(n,sn2,.) title(b) 系统 2 的单位阶跃响应 );xlabel(n);ylabel(s_2(n) 程序运行结果如图S1.20.1所示。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 13 页,共 18 页14图 S1.20.1 1.21*已知系统的差分方程和输入信号分别为1( )(1)( )2 (2)2y ny nx nx n,( )1,2,3,4,2,1x n用递推法计算系统的零状态响应。解: 调用 MATLAB函数 filter 计算该系统的系统响应的程序ex121.m 如下:调用 filter 解差分方程,求系统响应序列B=1,0,2;A=1,0.5; 设差分方程系数向量xn=1,2,3,4,2,1,zeros(1,24); x(n)长度 N=30 yn=filter(B,A,xn); 调用 filter 解差分方程,求系统输出信号y(n) n=0:length(yn) 1; subplot(3,2,1);stem(n,yn,.) title(a) 系统 1 的系统单位脉冲响应);xlabel(n);ylabel(y(n) 程序运行结果如图S1.21.1所示。1.22*如系统的差分方程为12( )(1)(2)( )y na y na y nbx n式中,120.8 , 0.64, 0.866aab。(1) 编写求解系统单位脉冲响应( ), 0 49h nn的程序,并画出( )h n ;(2) 编写求解系统零状态单位阶跃响应( ), 0 100s nn的程序,并画出( ), 0 100s nn;(3) 利用 (1)中的( )h n 的一段形成一个新的系统,该系统的单位脉冲响应为FIR( ),014( )0,h nnhn其他编写求解这个新系统的单位阶跃响应的程序;(4) 比较 (2)和(3)中求得的单位阶跃响应的特点。010203000.20.40.60.81(a) 系 统 1 的 系 统 单 位 脉 冲 响 应nh1(n)010203000.511.522.5(b) 系 统 1的 单 位 阶 跃 响 应ns1(n)0102030-0.500.511.52(a) 系 统 2 的 系 统 单 位 脉 冲 响 应nh2(n)010203001234(b) 系 统 2的 单 位 阶 跃 响 应ns2(n)图 S1.21.1 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 14 页,共 18 页15解: 调用 MATLAB函数 filter 计算该系统的系统响应的程序ex122.m 如下:数字信号处理原理、实现及应用第1 章上机题 1.22程序 ex122.m 电子工业出版社出版高西全丁玉美阔永红编著2006 年 8 月调用 filter 解差分方程,求系统单位脉冲响应和单位阶跃响应B=0.866;A=1,0.8,0.64; 差分方程系数向量= (1) 求解系统单位脉冲响应,并画出h(n) xn=1,zeros(1,48); x(n)=单位脉冲序列,长度N=31 hn=filter(B1,A1,xn); 调用 filter 解差分方程,求系统输出信号h(n) n=0:length(hn) 1; subplot(3,2,1);stem(n,hn,.) title(a) 系统的单位脉冲响应);xlabel(n);ylabel(h(n) = (2) 求解系统单位阶跃响应,并画出h(n) xn=ones(1,100); x(n)=单位阶跃序列,长度N=100 sn=filter(B,A,xn); 调用 filter 解差分方程,求系统单位阶跃响应s(n) n=0:length(sn) 1; subplot(3,2,2);stem(n,sn,.);axis(0,30,0,2) title(b) 系统的单位阶跃响应);xlabel(n);ylabel(s(n) = (3) 求解截取 15 点的 FIR 系统单位阶跃响应,并画出s(n) for m=1,15, hnfir(m)=hn(m); end sn=filter(B,A,xn); 调用 filter 解差分方程,求系统单位阶跃响应s(n) n=0:length(sn) 1; subplot(3,2,6);stem(n,sn,.);axis(0,30,0,2) title(c) FIR 系统的单位阶跃响应);xlabel(n);ylabel(s(n) 程序运行结果如图S1.22.1所示。图 S1.22.1 图 P1.22.1(b)和(c)的波形基本相同,由此可见,有些IIR 数字滤波器可以用FIR 数字滤波器逼近,FIR数字滤波器的单位脉冲响应可以通过截取IIR 数字滤波器的单位脉冲响应的一段得到,截取长度足够长时,逼近误差很小。1.23*在图 P1.23中,有四个分系统1234,T T TT和,分别用下面的单位脉冲响应或者差分方程描述:11111111, , , , , ,0, 1, 2, 3, 4, 5:( )24816320,nTh n其他221, 1, 1, 1, 1, 1,0, 1, 2, 3, 4, 5:( )0,nThn其他精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 15 页,共 18 页1633111:( )( )(1)(2)424Tynx nx nx n4:( )0.9 (1)0.81 (2)( )(1)Ty ny ny nv nv n编写程序计算整个系统的单位脉冲响应( ),0 99h nn。图 P1.23 解: 由图 P1.23可知,可以采用以下步骤计算整个系统的单位脉冲响应( )h n 。设( )( )x nn ,123( )( )( )( )v nh nhnhn,该式调用 conv 函数计算。4( ) ( )h nT v n,该式调用filter 函数计算。调用 MATLAB函数 conv 和 filter 计算该系统响应的程序ex123.m如下:数字信号处理原理、实现及应用第1 章上机题 1.23程序 ex123.m 电子工业出版社出版高西全丁玉美阔永红编著2006 年 8 月调用 conv 和 filter 求总系统单位脉冲响应序列h1n=1,1/2,1/4,1/8,1/16,1/32; 对 h1(n)赋值h2n=ones(1,6); h3n=1/4,1/2,1/4,zeros(1,97); 计算 v(n)=h1(n)*h2(n)+h3(n) h12n=conv(h1n,h2n); h12n=h12n,zeros(1,89); vn=h12n+h3n; 调用 filer 计算 h(n)等于 T4 对 v(n)响应B4=1,1;A4=1,0.9,0.81; hn=filter(B4,A4,vn); 以下为绘图部分n=0:length(hn) 1; subplot(2,1,1);stem(n,hn,.) xlabel(n);ylabel(h(n) 程序运行结果如图S1.23.1所示。图 S1.23.1 1.24 (a) 写出 3 项滑动平均滤波器的差分方程和单位脉冲响应。(b)*设 3 项滑动平均滤波器的输入信精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第