<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>知名博客 &#187; matlab源码</title>
	<atom:link href="http://notdot.cn/post/category/matlab%e6%ba%90%e7%a0%81/feed" rel="self" type="application/rss+xml" />
	<link>http://notdot.cn</link>
	<description>知而传之，名扬天下！</description>
	<lastBuildDate>Tue, 23 Jun 2009 01:01:09 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>基于切比雪夫一致逼近法设计FIR数字低通滤波器</title>
		<link>http://notdot.cn/post/335.htm</link>
		<comments>http://notdot.cn/post/335.htm#comments</comments>
		<pubDate>Mon, 23 Feb 2009 22:27:06 +0000</pubDate>
		<dc:creator>ohhe</dc:creator>
				<category><![CDATA[matlab源码]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/?p=331</guid>
		<description><![CDATA[基于切比雪夫一致逼近法设计FIR数字低通滤波器
]]></description>
			<content:encoded><![CDATA[<p>基于切比雪夫一致逼近法设计FIR数字低通滤波器</p>
<p>clear all;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </p>
<p>f=[0 0.6 0.7 1];&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %给定频率轴分点 </p>
<p>A=[1 1 0 0];&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %给定在这些频率分点上理想的幅频响应</p>
<p>weigh=[1 10];&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %给定在这些频率分点上的加权</p>
<p>b=remez(32,f,A,weigh);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %设计出切比雪夫最佳一致逼近滤波器</p>
<p>[h,w]=freqz(b,1,256,1);</p>
<p>h=abs(h);</p>
<p>h=20*log10(h);</p>
<p>subplot(211)</p>
<p>stem(b,&#8217;.');</p>
<p>grid;</p>
<p>title(&#8216;切比雪夫逼近滤波器的抽样值&#8217;)</p>
<p>subplot(212)</p>
<p>plot(w,h);</p>
<p>grid;</p>
<p>title(&#8216;滤波器幅频特性(dB)&#8217;)</p>
]]></content:encoded>
			<wfw:commentRss>http://notdot.cn/post/335.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>利用汉宁窗设计Ⅰ型数字带阻滤波器</title>
		<link>http://notdot.cn/post/334.htm</link>
		<comments>http://notdot.cn/post/334.htm#comments</comments>
		<pubDate>Mon, 23 Feb 2009 22:26:23 +0000</pubDate>
		<dc:creator>ohhe</dc:creator>
				<category><![CDATA[matlab源码]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/?p=330</guid>
		<description><![CDATA[利用汉宁窗设计Ⅰ型数字带阻滤波器
]]></description>
			<content:encoded><![CDATA[<p>利用汉宁窗设计Ⅰ型数字带阻滤波器</p>
<p>clear all;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </p>
<p>Wpl=0.2*pi;</p>
<p>Wph=0.8*pi;</p>
<p>Wsl=0.4*pi;</p>
<p>Wsh=0.6*pi;</p>
<p>tr_width=min((Wsl-Wpl),(Wph-Wsh));&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %过渡带宽度</p>
<p>N=ceil(6.2*pi/tr_width)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %滤波器长度</p>
<p>n=0:1:N-1;</p>
<p>Wcl=(Wsl+Wpl)/2;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %理想低通滤波器的截止频率</p>
<p>Wch=(Wsh+Wph)/2;</p>
<p>hd=ideal_bs(Wcl,Wch,N);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %理想低通滤波器的单位冲激响应</p>
<p>w_hann=(hanning(N))&#8217;;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %汉宁窗</p>
<p>h=hd.*w_hann;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %截取得到实际的单位脉冲响应</p>
<p>[db,mag,pha,w]=freqz_m2(h,[1]);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %计算实际滤波器的幅度响应</p>
<p>delta_w=2*pi/1000;</p>
<p>Ap=-(min(db(1:1:Wpl/delta_w+1)))&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %实际通带纹波</p>
<p>As=-round(max(db(Wsl/delta_w+1:1:Wsh/delta_w+1)))&#160;&#160;&#160; %实际阻带纹波</p>
<p>subplot(221)</p>
<p>stem(n,hd)</p>
<p>title(&#8216;理想单位脉冲响应hd(n)&#8217;)</p>
<p>subplot(222)</p>
<p>stem(n,w_hann)</p>
<p>title(&#8216;汉宁窗w(n)&#8217;)</p>
<p>subplot(223)</p>
<p>stem(n,h)</p>
<p>title(&#8216;实际单位脉冲响应hd(n)&#8217;)</p>
<p>subplot(224)</p>
<p>plot(w/pi,db)</p>
<p>title(&#8216;幅度响应(dB)&#8217;)</p>
<p>axis([0,1,-100,10])</p>
]]></content:encoded>
			<wfw:commentRss>http://notdot.cn/post/334.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>利用三角窗设计Ⅲ型数字带通滤波器</title>
		<link>http://notdot.cn/post/333.htm</link>
		<comments>http://notdot.cn/post/333.htm#comments</comments>
		<pubDate>Mon, 23 Feb 2009 22:26:00 +0000</pubDate>
		<dc:creator>ohhe</dc:creator>
				<category><![CDATA[matlab源码]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/?p=329</guid>
		<description><![CDATA[利用三角窗设计Ⅲ型数字带通滤波器
]]></description>
			<content:encoded><![CDATA[<p>利用三角窗设计Ⅲ型数字带通滤波器</p>
<p>clear all;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </p>
<p>Wpl=0.4*pi;</p>
<p>Wph=0.6*pi;</p>
<p>Wsl=0.2*pi;</p>
<p>Wsh=0.8*pi;</p>
<p>tr_width=min((Wpl-Wsl),(Wsh-Wph));&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %过渡带宽度</p>
<p>N=ceil(6.1*pi/tr_width)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %滤波器长度</p>
<p>n=0:1:N-1;</p>
<p>Wcl=(Wsl+Wpl)/2;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %理想低通滤波器的截止频率</p>
<p>Wch=(Wsh+Wph)/2;</p>
<p>hd=ideal_bp2(Wcl,Wch,N);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %理想低通滤波器的单位冲激响应</p>
<p>w_tri=(triang(N))&#8217;;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %三角窗</p>
<p>h=hd.*w_tri;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %截取得到实际的单位脉冲响应</p>
<p>[db,mag,pha,w]=freqz_m2(h,[1]);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %计算实际滤波器的幅度响应</p>
<p>delta_w=2*pi/1000;</p>
<p>Ap=-(min(db(Wpl/delta_w+1:1:Wph/delta_w+1)))&#160;&#160;&#160; %实际通带纹波</p>
<p>As=-round(max(db(Wsh/delta_w+1:1:501)))&#160;&#160;&#160;&#160;&#160;&#160;&#160; %实际阻带纹波</p>
<p>subplot(221)</p>
<p>stem(n,hd)</p>
<p>title(&#8216;理想单位脉冲响应hd(n)&#8217;)</p>
<p>subplot(222)</p>
<p>stem(n,w_tri)</p>
<p>title(&#8216;三角窗w(n)&#8217;)</p>
<p>subplot(223)</p>
<p>stem(n,h)</p>
<p>title(&#8216;实际单位脉冲响应hd(n)&#8217;)</p>
<p>subplot(224)</p>
<p>plot(w/pi,db)</p>
<p>title(&#8216;幅度响应(dB)&#8217;)</p>
<p>axis([0,1,-100,10])</p>
]]></content:encoded>
			<wfw:commentRss>http://notdot.cn/post/333.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>利用布拉克曼窗设计Ⅱ型数字带通滤波器</title>
		<link>http://notdot.cn/post/332.htm</link>
		<comments>http://notdot.cn/post/332.htm#comments</comments>
		<pubDate>Mon, 23 Feb 2009 22:25:24 +0000</pubDate>
		<dc:creator>ohhe</dc:creator>
				<category><![CDATA[matlab源码]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/?p=328</guid>
		<description><![CDATA[利用布拉克曼窗设计Ⅱ型数字带通滤波器
]]></description>
			<content:encoded><![CDATA[<p>利用布拉克曼窗设计Ⅱ型数字带通滤波器</p>
<p>clear all;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </p>
<p>Wpl=0.4*pi;</p>
<p>Wph=0.6*pi;</p>
<p>Wsl=0.2*pi;</p>
<p>Wsh=0.8*pi;</p>
<p>tr_width=min((Wpl-Wsl),(Wsh-Wph));&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %过渡带宽度</p>
<p>N=ceil(11*pi/tr_width)+1&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %滤波器长度</p>
<p>n=0:1:N-1;&#160; </p>
<p>Wcl=(Wsl+Wpl)/2;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %理想低通滤波器的截止频率</p>
<p>Wch=(Wsh+Wph)/2;</p>
<p>hd=ideal_bp1(Wcl,Wch,N);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %理想低通滤波器的单位冲激响应</p>
<p>w_bman=(blackman(N))&#8217;;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %布拉克曼窗</p>
<p>h=hd.*w_bman;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %截取得到实际的单位脉冲响应</p>
<p>[db,mag,pha,w]=freqz_m2(h,[1]);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %计算实际滤波器的幅度响应</p>
<p>delta_w=2*pi/1000;</p>
<p>Ap=-(min(db(Wpl/delta_w+1:1:Wph/delta_w+1)))&#160;&#160;&#160; %实际通带纹波</p>
<p>As=-round(max(db(Wsh/delta_w+1:1:501)))&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %实际阻带纹波</p>
<p>subplot(221)</p>
<p>stem(n,hd)</p>
<p>title(&#8216;理想单位脉冲响应hd(n)&#8217;)</p>
<p>subplot(222)</p>
<p>stem(n,w_bman)</p>
<p>title(&#8216;布拉克曼窗w(n)&#8217;)</p>
<p>subplot(223)</p>
<p>stem(n,h)</p>
<p>title(&#8216;实际单位脉冲响应hd(n)&#8217;)</p>
<p>subplot(224)</p>
<p>plot(w/pi,db)</p>
<p>title(&#8216;幅度响应(dB)&#8217;)</p>
<p>axis([0,1,-100,10])</p>
]]></content:encoded>
			<wfw:commentRss>http://notdot.cn/post/332.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>利用汉宁窗设计Ⅰ型数字高通滤波器</title>
		<link>http://notdot.cn/post/331.htm</link>
		<comments>http://notdot.cn/post/331.htm#comments</comments>
		<pubDate>Mon, 23 Feb 2009 22:24:29 +0000</pubDate>
		<dc:creator>ohhe</dc:creator>
				<category><![CDATA[matlab源码]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/?p=327</guid>
		<description><![CDATA[利用汉宁窗设计Ⅰ型数字高通滤波器
]]></description>
			<content:encoded><![CDATA[<p>利用汉宁窗设计Ⅰ型数字高通滤波器</p>
<p>clear all;</p>
<p>Wp=0.6*pi;</p>
<p>Ws=0.4*pi;</p>
<p>tr_width=Wp-Ws;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %过渡带宽度</p>
<p>N=ceil(6.2*pi/tr_width)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %滤波器长度</p>
<p>n=0:1:N-1;</p>
<p>Wc=(Ws+Wp)/2;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %理想低通滤波器的截止频率</p>
<p>hd=ideal_hp1(Wc,N);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %理想低通滤波器的单位冲激响应</p>
<p>w_han=(hanning(N))&#8217;;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %汉宁窗</p>
<p>h=hd.*w_han;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %截取得到实际的单位脉冲响应</p>
<p>[db,mag,pha,w]=freqz_m2(h,[1]);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %计算实际滤波器的幅度响应</p>
<p>delta_w=2*pi/1000;</p>
<p>Ap=-(min(db(Wp/delta_w+1:1:501)))&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %实际通带纹波</p>
<p>As=-round(max(db(1:1:Ws/delta_w+1)))&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %实际阻带纹波</p>
<p>subplot(221)</p>
<p>stem(n,hd)</p>
<p>title(&#8216;理想单位脉冲响应hd(n)&#8217;)</p>
<p>subplot(222)</p>
<p>stem(n,w_han)</p>
<p>title(&#8216;汉宁窗w(n)&#8217;)</p>
<p>subplot(223)</p>
<p>stem(n,h)</p>
<p>title(&#8216;实际单位脉冲响应hd(n)&#8217;)</p>
<p>subplot(224)</p>
<p>plot(w/pi,db)</p>
<p>title(&#8216;幅度响应(dB)&#8217;)</p>
<p>axis([0,1,-100,10])</p>
<p>clear all;</p>
<p>Wp=0.6*pi;</p>
<p>Ws=0.4*pi;</p>
<p>tr_width=Wp-Ws;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %过渡带宽度</p>
<p>N=ceil(6.2*pi/tr_width)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %滤波器长度</p>
<p>n=0:1:N-1;</p>
<p>Wc=(Ws+Wp)/2;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %理想低通滤波器的截止频率</p>
<p>hd=ideal_hp1(Wc,N);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %理想低通滤波器的单位冲激响应</p>
<p>w_han=(hanning(N))&#8217;;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %汉宁窗</p>
<p>h=hd.*w_han;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %截取得到实际的单位脉冲响应</p>
<p>[db,mag,pha,w]=freqz_m2(h,[1]);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %计算实际滤波器的幅度响应</p>
<p>delta_w=2*pi/1000;</p>
<p>Ap=-(min(db(Wp/delta_w+1:1:501)))&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %实际通带纹波</p>
<p>As=-round(max(db(1:1:Ws/delta_w+1)))&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %实际阻带纹波</p>
<p>subplot(221)</p>
<p>stem(n,hd)</p>
<p>title(&#8216;理想单位脉冲响应hd(n)&#8217;)</p>
<p>subplot(222)</p>
<p>stem(n,w_han)</p>
<p>title(&#8216;汉宁窗w(n)&#8217;)</p>
<p>subplot(223)</p>
<p>stem(n,h)</p>
<p>title(&#8216;实际单位脉冲响应hd(n)&#8217;)</p>
<p>subplot(224)</p>
<p>plot(w/pi,db)</p>
<p>title(&#8216;幅度响应(dB)&#8217;)</p>
<p>axis([0,1,-100,10])</p>
]]></content:encoded>
			<wfw:commentRss>http://notdot.cn/post/331.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>利用海明窗设计Ⅱ型数字低通滤波器</title>
		<link>http://notdot.cn/post/330.htm</link>
		<comments>http://notdot.cn/post/330.htm#comments</comments>
		<pubDate>Mon, 23 Feb 2009 22:21:55 +0000</pubDate>
		<dc:creator>ohhe</dc:creator>
				<category><![CDATA[matlab源码]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/?p=326</guid>
		<description><![CDATA[利用海明窗设计Ⅱ型数字低通滤波器
]]></description>
			<content:encoded><![CDATA[<p>利用海明窗设计Ⅱ型数字低通滤波器</p>
<p>clear all;</p>
<p>Wp=0.2*pi;</p>
<p>Ws=0.4*pi;</p>
<p>tr_width=Ws-Wp;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %过渡带宽度</p>
<p>N=ceil(6.6*pi/tr_width)+1&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %滤波器长度</p>
<p>n=0:1:N-1;</p>
<p>Wc=(Ws+Wp)/2;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %理想低通滤波器的截止频率</p>
<p>hd=ideal_lp1(Wc,N);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %理想低通滤波器的单位冲激响应</p>
<p>w_ham=(hamming(N))&#8217;;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %海明窗</p>
<p>h=hd.*w_ham;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %截取得到实际的单位脉冲响应</p>
<p>[db,mag,pha,w]=freqz_m2(h,[1]);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %计算实际滤波器的幅度响应</p>
<p>delta_w=2*pi/1000;</p>
<p>Ap=-(min(db(1:1:Wp/delta_w+1)))&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %实际通带纹波</p>
<p>As=-round(max(db(Ws/delta_w+1:1:501)))&#160;&#160;&#160;&#160; %实际阻带纹波</p>
<p>subplot(221)</p>
<p>stem(n,hd)</p>
<p>title(&#8216;理想单位脉冲响应hd(n)&#8217;)</p>
<p>subplot(222)</p>
<p>stem(n,w_ham)</p>
<p>title(&#8216;海明窗w(n)&#8217;)</p>
<p>subplot(223)</p>
<p>stem(n,h)</p>
<p>title(&#8216;实际单位脉冲响应hd(n)&#8217;)</p>
<p>subplot(224)</p>
<p>plot(w/pi,db)</p>
<p>title(&#8216;幅度响应(dB)&#8217;)</p>
<p>axis([0,1,-100,10])</p>
<p>%&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>function[db,mag,pha,w]=freqz_m2(b,a)</p>
<p>%滤波器的幅值响应(相对、绝对)、相位响应</p>
<p>%db:相对幅值响应</p>
<p>%mag：绝对幅值响应</p>
<p>%pha: 相位响应</p>
<p>%w 采样频率； </p>
<p>%b 系统函数H(z)的分子项(对FIR，b=h)</p>
<p>%a 系统函数H(z)的分母项(对FIR，a=1)</p>
<p>[H,w]=freqz(b,a,1000,&#8217;whole&#8217;);</p>
<p>H=(H(1:1:501))&#8217;;</p>
<p>w=(w(1:1:501))&#8217;;</p>
<p>mag=abs(H);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %绝对幅值响应</p>
<p>db=20*log10((mag+eps)/max(mag));&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %相对幅值响应</p>
<p>pha=angle(H);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %相位响应</p>
]]></content:encoded>
			<wfw:commentRss>http://notdot.cn/post/330.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>基于频域抽样法的FIR数字高通滤波器设计</title>
		<link>http://notdot.cn/post/328.htm</link>
		<comments>http://notdot.cn/post/328.htm#comments</comments>
		<pubDate>Mon, 23 Feb 2009 22:09:33 +0000</pubDate>
		<dc:creator>ohhe</dc:creator>
				<category><![CDATA[matlab源码]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/?p=324</guid>
		<description><![CDATA[基于频域抽样法的FIR数字高通滤波器设计
]]></description>
			<content:encoded><![CDATA[<p>%&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;   <br />% 基于频域抽样法的FIR数字高通滤波器设计&#160;&#160;&#160; </p>
<p>%&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;   <br />clear all;    <br />wp=0.23*pi;    <br />ws=0.43*pi;    <br />delta=(ws-wp);%过度带    <br />N=31;%抽样点数    <br />wl=(2*pi/N); %抽样间隔    <br />T1 = 0.1095;    <br />T2 = 0.498;    <br />alpha = (N-1)/2;    <br />l = 0:N-1;    <br />wl = (2*pi/N)*l;    <br />Hrs = [zeros(1,4),T1,T2,ones(1,19),T2,T1,zeros(1,4)]; %理想振幅响应采样    <br />Hdr = [0,0,1,1];    <br />wdl = [0,0.33,0.33,1];    <br />k1 = 0:floor((N-1)/2);    <br />k2 = floor((N-1)/2)+1:N-1;    <br />angH = [-alpha*(2*pi)/N*k1,alpha*(2*pi)/N*(N-k2)]; % 相位约束条件    <br />Hdk = Hrs.*exp(j*angH); % 构成Hd(k)    <br />h = real(ifft(Hdk,N)); %实际单位冲激响应    <br />[db,mag,pha,w] = freqz_m2(h,l);    <br />[Hr,ww,a,L] = hr_type1(h); %实际振幅响应    <br />fs=15000;    <br />t=(0:100)/fs;    <br />x=sin(2*pi*t*100)/2+sin(2*pi*t*500)/2+sin(2*pi*t*1000)/2+sin(2*pi*t*2000)/2+sin(2*pi*t*3200)/2;%输入信号    <br />y=filter(h,1,x);%输出信号    <br />[a,f1]=freqz(x);    <br />f1=f1/pi*fs/2;%输入频谱    <br />[b,f2]=freqz(y);    <br />f2=f2/pi*fs/2;%输出频谱 </p>
<p>figure(1);   <br />subplot(221)    <br />plot(wl/pi,Hrs,&#8217;.',wdl,Hdr)    <br />title(&#8216;频率样本Hd(k):N=31&#8242;)    <br />axis([0 1 -0.1 1.2])    <br />xlabel(&#8216;频率/pi&#8217;);ylabel(&#8216;幅度/v&#8217;);    <br />grid; </p>
<p>subplot(222)   <br />plot(ww/pi,Hr,wl/pi,Hrs,&#8217;.')    <br />title(&#8216;实际振幅响应H(w)&#8217;)    <br />axis([0 1 -0.1 1.2])    <br />xlabel(&#8216;频率/pi&#8217;);ylabel(&#8216;幅度/v&#8217;);    <br />grid; </p>
<p>subplot(223)   <br />[c,f3]=freqz(h,1);    <br />f3=f3/pi*fs/2;    <br />plot(f3,20*log10(abs(c)));    <br />axis([0,4000,-200,10]);    <br />title(&#8216;频谱特性&#8217;);    <br />xlabel(&#8216;频率/HZ&#8217;);ylabel(&#8216;衰减/dB&#8217;);    <br />grid; </p>
<p>subplot(224)   <br />plot(w/pi,db)    <br />title(&#8216;幅度响应(dB)&#8217;)    <br />axis([0 1 -80 10])    <br />xlabel(&#8216;频率/pi&#8217;);ylabel(&#8216;衰减/dB&#8217;);    <br />grid; </p>
<p>figure(2);   <br />subplot(2,2,1);    <br />plot(x);    <br />title(&#8216;输入信号&#8217;);    <br />xlabel(&#8216;时间/s&#8217;);ylabel(&#8216;幅度/v&#8217;)    <br />axis([0,100,-2,2]);    <br />grid; </p>
<p>subplot(2,2,2);   <br />plot(y);    <br />title(&#8216;输出信号&#8217;);    <br />xlabel(&#8216;时间/s&#8217;);ylabel(&#8216;幅度/v&#8217;)    <br />axis([0,100,-2,2]);    <br />grid; </p>
<p>subplot(2,2,3);   <br />plot(f1,abs(a));    <br />title(&#8216;输入波形频谱图&#8217;);    <br />xlabel(&#8216;频率/Hz&#8217;);ylabel(&#8216;功率/W&#8217;)    <br />grid;    <br />subplot(2,2,4);    <br />plot(f2,abs(b));    <br />title(&#8216;输出波形频谱图&#8217;);    <br />xlabel(&#8216;频率/Hz&#8217;);ylabel(&#8216;功率/W&#8217;)    <br />grid;</p>
<p>function[db,mag,pha,w]=freqz_m2(b,a)   <br />% 滤波器幅值响应(绝对、相对)、相位响应    <br />% db: 相对幅值响应；    <br />% mag: 绝对幅值响应；    <br />% pha: 相位响应；    <br />% w: 采样频率；    <br />% b: 系统函数H(z)的分子项(对FIR，b＝h)    <br />% a: 系统函数H(z)的分母项(对FIR，a＝1) </p>
<p>[H,w]=freqz(b,a,1000,&#8217;whole&#8217;);   <br />H=(H(1:1:501))&#8217;;    <br />w=(w(1:1:501))&#8217;;    <br />mag=abs(H);    <br />db=20*log10((mag+eps)/max(mag));    <br />pha=angle(H);</p>
<p>function [Hr,w,a,L] = hr_type1(h);   <br />% 计算所设计的I型滤波器的振幅响应    <br />% Hr = 振幅响应    <br />% a = I型滤波器的系数    <br />% L = Hr的阶次    <br />% h = I型滤波器的单位冲激响应 </p>
<p>M = length(h);   <br />L = (M-1)/2;    <br />a = [h(L+1) 2*h(L:-1:1)];    <br />n = [0:1:L];    <br />w = [0:1:500]&#8216;*2*pi/500;    <br />Hr = cos(w*n)*a&#8217;;</p>
]]></content:encoded>
			<wfw:commentRss>http://notdot.cn/post/328.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>利用模拟Butterworth滤波器设计数字低通滤波器</title>
		<link>http://notdot.cn/post/326.htm</link>
		<comments>http://notdot.cn/post/326.htm#comments</comments>
		<pubDate>Sun, 22 Feb 2009 22:07:03 +0000</pubDate>
		<dc:creator>ohhe</dc:creator>
				<category><![CDATA[matlab源码]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/?p=323</guid>
		<description><![CDATA[利用模拟Butterworth滤波器设计数字低通滤波器
]]></description>
			<content:encoded><![CDATA[<p>% exa4-8_pulseDF for example4-8   <br />% using Butterworth analog lowpass filter to design digital lowpass filter </p>
<p>%利用模拟Butterworth滤波器设计数字低通滤波器   <br />%脉冲响应不变法    <br />wp=0.2*pi;    <br />ws=0.3*pi;    <br />Rp=1;    <br />As=15;    <br />T=1;    <br />%性能指标    <br />Rip=10^(-Rp/20);    <br />Atn=10^(-As/20);    <br />OmgP=wp*T;    <br />OmgS=ws*T;    <br />[N,OmgC]=buttord(OmgP,OmgS,Rp,As,&#8217;s&#8217;);%选取模拟滤波器的阶数    <br />[cs,ds]=butter(N,OmgC,&#8217;s&#8217;);&#160;&#160;&#160;&#160;&#160;&#160;&#160; %设计出所需的模拟低通滤波器    <br />[b,a]=impinvar(cs,ds,T);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %应用脉冲响应不变法进行转换    <br />%求得相对、绝对频响及相位、群迟延响应    <br />[db,mag,pha,grd,w]=freqz_m(b,a);    <br />%下面绘出各条曲线    <br />subplot(2,2,1);    <br />plot(w/pi,mag);    <br />title(&#8216;幅频特性&#8217;);    <br />xlabel(&#8216;w(/pi)&#8217;);    <br />ylabel(&#8216;|H(jw)|&#8217;);    <br />axis([0,1,0,1.1]);    <br />set(gca,&#8217;XTickMode&#8217;,'manual&#8217;,'XTick&#8217;,[0 0.2 0.3 0.5 1]);    <br />set(gca,&#8217;YTickMode&#8217;,'manual&#8217;,'YTick&#8217;,[0 Atn Rip 1]);    <br />grid    <br />subplot(2,2,2);    <br />plot(w/pi,db);    <br />title(&#8216;幅频特性(dB)&#8217;);    <br />xlabel(&#8216;w(/pi)&#8217;);    <br />ylabel(&#8216;dB&#8217;);    <br />axis([0,1,-40,5]);    <br />set(gca,&#8217;XTickMode&#8217;,'manual&#8217;,'XTick&#8217;,[0 0.2 0.3 0.5 1]);    <br />set(gca,&#8217;YTickMode&#8217;,'manual&#8217;,'YTick&#8217;,[-40 -As -Rp 0]);    <br />grid    <br />subplot(2,2,3);    <br />plot(w/pi,pha/pi);    <br />title(&#8216;相频特性&#8217;);    <br />xlabel(&#8216;w(/pi)&#8217;);    <br />ylabel(&#8216;pha(/pi)&#8217;);    <br />axis([0,1,-1,1]);    <br />set(gca,&#8217;XTickMode&#8217;,'manual&#8217;,'XTick&#8217;,[0 0.2 0.3 0.5 1]);    <br />grid    <br />subplot(2,2,4);    <br />plot(w/pi,grd);    <br />title(&#8216;群延迟&#8217;);    <br />xlabel(&#8216;w(/pi)&#8217;);    <br />ylabel(&#8216;Sample&#8217;);    <br />axis([0,1,0,12]);    <br />set(gca,&#8217;XTickMode&#8217;,'manual&#8217;,'XTick&#8217;,[0 0.2 0.3 0.5 1]);    <br />grid</p>
<p>function[db,mag,pha,grd,w]=freqz_m(b,a) </p>
<p>%滤波器幅值响应(绝对、相对)、相位响应及群延迟   <br />%Usage: [db,mag,pha,grd,w]=freqz_m(b,a)&#160;&#160; %500点对应[0,pi]    <br />%db 相对幅值响应；mag 绝对幅值响应；pha 相位响应；grd 群延迟响应    <br />%w 采样频率；b 系统函数H(z)的分子项(对FIR，b＝h)    <br />%a 系统函数H(z)的分母项(对FIR，a＝1) </p>
<p>[H,w]=freqz(b,a,500);%500点的复频响应   <br />mag=abs(H);    <br />db=20*log10((mag+eps)/max(mag));    <br />pha=angle(H);    <br />grd=grpdelay(b,a,w);</p>
]]></content:encoded>
			<wfw:commentRss>http://notdot.cn/post/326.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>基于频域抽样法的FIR数字带阻滤波器设计</title>
		<link>http://notdot.cn/post/325.htm</link>
		<comments>http://notdot.cn/post/325.htm#comments</comments>
		<pubDate>Sun, 22 Feb 2009 22:03:19 +0000</pubDate>
		<dc:creator>ohhe</dc:creator>
				<category><![CDATA[matlab源码]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/?p=322</guid>
		<description><![CDATA[基于频域抽样法的FIR数字带阻滤波器设计
]]></description>
			<content:encoded><![CDATA[<p>clear all;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <br />N=41;    <br />T1=0.598;    <br />alpha= (N-1)/2;    <br />l=0:N-1;    <br />wl= (2*pi/N)*l;    <br />Hrs=[ones(1,6),T1,zeros(1,7),T1,ones(1,11),T1,zeros(1,7),T1,ones(1,6)];&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %理想振幅采样响应    <br />Hdr=[1,1,0,0,1,1];    <br />wdl=[0,0.3,0.3,0.7,0.7,1];    <br />k1=0:floor((N-1)/2);    <br />k2=floor((N-1)/2)+1:N-1;    <br />angH=[pi/2-alpha*(2*pi)/N*(k1+0.5),-pi/2+alpha*(2*pi)/N*(N-k2-0.5)];&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %相位约束条件    <br />Hdk=Hrs.*exp(j*angH);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %构成Hd(k)    <br />h1=ifft(Hdk,N);    <br />n=0:1:N-1;    <br />h=real(h1.*exp(j*pi*n/N));&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %实际单位冲激响应    <br />[db,mag,pha,w]=freqz_m2(h,[1]);    <br />[Hr,ww,a,L]=hr_type3(h);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %实际振幅响应    <br />subplot(221)    <br />plot(wl/pi+1/N,Hrs,&#8217;.',wdl,Hdr)    <br />title(&#8216;频率样本Hd(k) :N=41&#8242;)    <br />axis([0 1 -0.1 1.2])    <br />subplot(222)    <br />stem(l,h)    <br />title(&#8216;实际单位脉冲响应h(n)&#8217;)    <br />subplot(223)    <br />plot(ww/pi,Hr,wl/pi+1/N,Hrs,&#8217;.')    <br />title(&#8216;实际振幅响应H(w)&#8217;)    <br />axis([0 1 -0.1 1.2])    <br />subplot(224)    <br />plot(w/pi,db)    <br />title(&#8216;幅度响应(dB)&#8217;)    <br />axis([0 1 -80 10]) </p>
<p>function [db,mag,pha,w] = freqz_m(b,a);    <br />%滤波器的幅值响应(相对、绝对)、相位响应    <br />%db:相对幅值响应    <br />%mag：绝对幅值响应    <br />%pha: 相位响应    <br />%w 采样频率；     <br />%b 系统函数H(z)的分子项(对FIR，b=h)    <br />%a 系统函数H(z)的分母项(对FIR，a=1)    <br />[H,w] = freqz(b,a,1000,&#8217;whole&#8217;);     <br />H = (H(1:1:501))&#8217;; w = (w(1:1:501))&#8217;;     <br />mag = abs(H);     <br />db = 20*log10((mag+eps)/max(mag));     <br />pha = angle(H);     <br />% pha = unwrap(angle(H)); </p>
<p>function [Hr,w,c,L]=hr_type3(h);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <br />%计算所设计的3型滤波器的振幅响应    <br />%Hr=振幅响应    <br />%b=3型滤波器的系数    <br />%L=Hr的阶次    <br />%h=3型滤波器的单位冲击响应    <br />M=length(h);    <br />L=(M-1)/2;    <br />c= [2*h(L+1:-1:1)];    <br />n=[0:1:L];    <br />w=[0:1:500]&#8216;*2*pi/500;    <br />Hr=sin(w*n)*c&#8217;;</p>
]]></content:encoded>
			<wfw:commentRss>http://notdot.cn/post/325.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>用双线性法设计巴特沃斯高通数字滤波器</title>
		<link>http://notdot.cn/post/324.htm</link>
		<comments>http://notdot.cn/post/324.htm#comments</comments>
		<pubDate>Sun, 22 Feb 2009 22:00:05 +0000</pubDate>
		<dc:creator>ohhe</dc:creator>
				<category><![CDATA[matlab源码]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/?p=321</guid>
		<description><![CDATA[用双线性法设计巴特沃斯高通数字滤波器MATLAB实现
]]></description>
			<content:encoded><![CDATA[<p>%用双线性法设计巴特沃斯高通数字滤波器   <br />clear all;&#160; clc;&#160;&#160; close all     <br />fs=120;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; T=1/fs;     <br />rp=1;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; rs=30;     <br />Wp=0.35*pi;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Ws=0.65*pi;&#160;&#160;&#160;&#160; %数字滤波器指标    <br />wp=2*tan(Wp/2)/T;&#160; ws=2*tan(Ws/2)/T;&#160;&#160;&#160;&#160;&#160; <br />%预畸变，将数字滤波器的指标变为模拟滤波器的指标    <br />[N,w]=buttord(wp,ws,rp,rs,&#8217;s&#8217;);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %求滤波器阶数和3dB截止频率    <br />[Z,P,K]=buttap(N);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %设计模拟低通滤波器    <br />[Md,Nd]=zp2tf(Z,P,K);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %将零极点形式转换为传输函数形式    <br />[M,N]=lp2hp(Md,Nd,w);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %对低通滤波器进行频率变换    <br />[h,w]=freqs(M,N,512);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %模拟滤波器的幅频响应    <br />subplot(2,1,1);plot(w,abs(h));&#160;&#160; grid;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <br />xlabel(&#8216;Hz&#8217;);ylabel(&#8216;幅度&#8217;); title(&#8216;模拟高通滤波器&#8217;);     <br />[Mh,Nh]=bilinear(M,N,1/T);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %对模拟滤波器双线性变换    <br />[h1,w1]=freqz(Mh,Nh);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %数字滤波器的幅频响应    <br />subplot(2,1,2);     <br />plot(w1/pi,20*log10(abs(h1)));&#160;&#160; grid;     <br />xlabel(&#8216;ω/π&#8217;);ylabel(&#8216;幅度(dB)&#8217;); title(&#8216;数字高通滤波器&#8217;); </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; %图-5&#160; 模拟滤波器与设计的滤波器的单位冲击响应   <br />k=0:2000; k2=1:1001;    <br />x=10*sin(pi/10*k/fs)+5*sin(10*pi*k/fs)+3*sin(30*pi*k/fs);     <br />figure    <br />subplot(2,1,1)     <br />X=fft(x)*2/2001;     <br />y=filter(Mh,Nh,x);     <br />plot(k,y); ylim([-5 5]); title(&#8216;高通数字滤波器输出&#8217;);    <br />Y=fft(y)*2/2001;    <br />df=fs/2001; ff=(k2-1)*df;    <br />subplot(2,1,2); plot(ff,abs(X(k2)),&#8217;r',&#8217;linewidth&#8217;,2); hold on    <br />plot(ff,abs(Y(k2)),&#8217;b'); title(&#8216;输入输出频谱比较&#8217;); grid; </p>
]]></content:encoded>
			<wfw:commentRss>http://notdot.cn/post/324.htm/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->