ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:155.71KB ,
资源ID:140426      下载积分:5 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-140426.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于matlab的码型转换说明书.docx)为本站会员(h****)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

基于matlab的码型转换说明书.docx

1、 1 实验内容 : beef洗手 利用 Matlab 软件的 GUI界面编程 , 吃饭 做一个简单的界面 , 吃饭 通过此界面调用相关的程序去实现由抽样判决后的 AMI码型 、 befCMI码型 和 HDB3码型 数字序列恢复出原始的 PCM脉冲编码信号 。 洗手 洗手 实验目的 : beef洗手 1,熟悉 Matlab 的 GUI的编程操作 , 吃饭学会运用 GUI来建立一个界面 洗手 2.掌握 AMI,CMI,HDB3码型的特点和意义 , 吃饭 学会将 PCM脉冲编码信号转化为 AMI,CMI,HDB3 的编码以及 AMI,CMI,HDB3 解码的方式 。洗手 洗手 实验方法 : beef

2、洗手 实验中采用的方法是先建立大概的界面 , 吃饭 其中包括输入框 、 bef按钮 、 bef提示内容及坐标系等 。 洗手然后再对各种组件设置好属性 , 吃饭并对各个组件编写回调函数 , 吃饭 最后进行调试验证饥渴 。 洗手洗手 实验代码 : beef洗手 AMI码型转换 : beef洗手 % 编码 %洗手 p = -1;beef洗手 for i=1:length(f);bef洗手 if f(i)=1洗手 e(i) = (-1)*p;bef洗手 p = e(i);beef洗手 else 洗手 e(i) = f(i);bef洗手 end 洗手 end 洗手 % 译码 %洗手 for i=1:le

3、ngth(f);bef洗手 if e(i)=0洗手 l(i) = 1;b eef洗手 else 洗手 e(i) = 0;b eef洗手 end 洗手 end 洗手 编码 : bef代码中的 f代表着输入字符串转化后的 ASCII码 , 吃饭 用变量 p来实现原信号中 1的正负交替 。 洗手 例如 , 吃饭 f( 1) =1, 吃饭 则 e( 1) =1, 吃饭 p=1; bef( 2) =1, 吃饭 则 e( 2) =-1,吃饭 p=-1。 洗手 如此就可以得到正负 1交替了 。 洗手 洗手 2 译码 : beef当 e( i)不等于 0, 吃饭就把结果等于 1。 洗手 洗手 CMI码型转换

4、洗手 % 编码 %洗手 m=1;beef洗手 p=-1;beef洗手 for i=1:length(f)洗手 if(f(i)=1beef洗手 m=m*p;beef洗手 else if(f(i)=1beef洗手 m=m*p;beef洗手 else 洗手 s(i)=1;beef洗手 end 洗手 end 洗手 end 洗手 k=dec2bin(s,2);beef洗手 l=k;beef洗手 x=l(:);beef洗手 y=x;beef洗手 n=str2num(y(1);beef洗手 for i=2:length(y)洗手 n=n str2num(y(i);beef洗手 end 洗手 % 译码 %洗手

5、 if n(1)=0 洗手 if n(2)=1 洗手 cm=0;beef洗手 else 洗手 cm=1;beef洗手 end 洗手 else 洗手 cm=1;beef洗手 end 洗手 r=3;beef洗手 while rlength(n)洗手 if n(r)=0 洗手 if n(r+1)=1 洗手 cm=cm 0;beef洗手 else 洗手 cm=cm 1;beef洗手 end 洗手 3 else 洗手 cm=cm 1;beef洗手 end 洗手 r=r+2;beef洗手 end 洗手 HDB3码型转换 洗手 % 编码 %洗手 yn=xn;beef% 输出 yn初始化 洗手 num=0;b

6、eef% 计数器初始化 洗手 for k=1:length(xn)洗手 if xn(k)=1 洗手 num=num+1;beef % “1“计数器 洗手 if num/2 = fix(num/2) % 奇数个 1时输出 -1,进行极性交替 洗手 yn(k)=1;beef洗手 else 洗手 yn(k)=-1;beef洗手 end 洗手 end 洗手 end 洗手 % HDB3编码 洗手 num=0;beef % 连零计数器初始化 洗手 yh=yn;beef % 输出初始化 洗手 sign=0;beef % 极性标志初始化为 0 洗手 V=zeros(1,length(yn);beef% V脉冲

7、位置记录变量 洗手 B=zeros(1,length(yn);beef% B脉冲位置记录变量 洗手 for k=1:length(yn)洗手 if yn(k)=0 洗手 num=num+1;beef % 连“ 0”个数计数 洗手 if num=4 % 如果 4连“ 0” 洗手 num=0;beef % 计数器清零 洗手 yh(k)=1*yh(k-4);beef 洗手 % 让 0000的最后一个 0改变为与前一个非零符号相同极性的符号 洗手 V(k)=yh(k);beef % V脉冲位置记录 洗手 if yh(k)=sign % 如果当前 V符号与前一个 V符号的极性相同 洗手 yh(k)=-1

8、*yh(k);beef % 则让当前 V符号极性反转 ,以满足 V符号间相互极性反转要求 洗手 yh(k-3)=yh(k);beef % 添加 B符号 ,与 V符号同极性 洗手 B(k-3)=yh(k);beef % B脉冲位置记录 洗手 V(k)=yh(k);beef % V脉冲位置记录 洗手 yh(k+1:length(yn)=-1*yh(k+1:length(yn);beef洗手 % 并让后面的非零符号从 V符号开始再交替变化 洗手 4 end 洗手 sign=yh(k);beef % 记录前一个 V符号的极性 洗手 end 洗手 else 洗手 num=0;beef % 当前输入为“

9、1”则连“ 0”计数器清零 洗手 end 洗手 end 洗手 % 译码 %洗手 input=yh;beef % HDB3码输入 洗手 decode=input;beef % 输出初始化 洗手 sign=0;beef % 极性标志初始化 洗手 for k=1:length(yh)洗手 if input(k) = 0 洗手 if sign=yh(k) % 如果当前码与前一个非零码的极性相同 洗手 decode(k-3:k)=0 0 0 0;beef% 则该码判为 V码并将 *00V清零 洗手 end 洗手 sign=input(k);beef % 极性标志 洗手 end 洗手 end 洗手 dec

10、ode=abs(decode);beef % 整流 洗手 实验现象 : beef洗手 总体界面 : beef洗手 洗手 AMI: beef洗手 5 洗手 CMI: beef洗手 洗手 HDB3: beef洗手 6 洗手 总结 : beef洗手 本次实验中因为对画方波不太熟悉 , 吃饭 在使用 stairs 函数时 , 吃饭 方波图总是在最后少了一位 , 吃饭后来经查询后才知道 stairs 的正确用法 。 洗手 洗手 由于对 GUI 界面设置的不熟悉 , 吃饭很多细节都没做到位 , 吃饭 界面的美观有待提高 。 洗手 洗手 在编代码是经常没有写注释 , 吃饭导致后来有些变量混淆了 。 洗手洗手

11、 洗手 洗手 附录 : beef全部代码 洗手 function varargout = untitled1(varargin)洗手 % UNTITLED1 M-file for untitled1.fig 洗手 % UNTITLED1, by itself, creates a new UNTITLED1 or raises the existing洗手 % singleton*.洗手 %洗手 % H = UNTITLED1 returns the handle to a new UNTITLED1 or the handle to 洗手 % the existing singleton*.

12、洗手 %洗手 % UNTITLED1(CALLBACK,hObject,eventData,handles,.) calls the local 洗手 % function named CALLBACK in UNTITLED1.M with the given input arguments.洗手 %洗手 % UNTITLED1(Property,Value,.) creates a new UNTITLED1 or 7 raises the 洗手 % existing singleton*. Starting from the left, property value pairs are

13、洗手 % applied to the GUI before untitled1_OpeningFunction gets called. An 洗手 % unrecognized property name or invalid value makes property application 洗手 % stop. All inputs are passed to untitled1_OpeningFcn via varargin.洗手 %洗手 % *See GUI Options on GUIDEs Tools menu. Choose “GUI allows only one 洗手 %

14、instance to run (singleton)“.洗手 %洗手 % See also: GUIDE, GUIDATA, GUIHANDLES 洗手 洗手 % Edit the above text to modify the response to help untitled1 洗手 洗手 % Last Modified by GUIDE v2.5 21-Dec-2014 19:55:20 洗手 洗手 % Begin initialization code - DO NOT EDIT 洗手 gui_Singleton = 1;b eef洗手 gui_State = struct(gui

15、_Name, mfilename, .洗手 gui_Singleton, gui_Singleton, .洗手 gui_OpeningFcn, untitled1_OpeningFcn, .洗手 gui_OutputFcn, untitled1_OutputFcn, .洗手 gui_LayoutFcn, , .洗手 gui_Callback, );b eef洗手 if nargin b eef洗手 end 洗手 洗手 if nargout 洗手 varargout1:nargout = gui_mainfcn(gui_State, varargin:);b eef洗手 else 洗手 gui_

16、mainfcn(gui_State, varargin:);b eef洗手 end 洗手 % End initialization code - DO NOT EDIT 洗手 洗手 洗手 % - Executes just before untitled1 is made visible.洗手 function untitled1_OpeningFcn(hObject, eventdata, handles, varargin)洗手 % This function has no output args, see OutputFcn.洗手 % hObject handle to figure 洗

17、手 8 % eventdata reserved - to be defined in a future version of MATLAB 洗手 % handles structure with handles and user data (see GUIDATA)洗手 % varargin command line arguments to untitled1 (see VARARGIN)洗手 洗手 % Choose default command line output for untitled1 洗手 handles.output = hObject;b eef洗手 洗手 % Upda

18、te handles structure 洗手 guidata(hObject, handles);b eef洗手 洗手 % UIWAIT makes untitled1 wait for user response (see UIRESUME)洗手 % uiwait(handles.maxing);b eef洗手 洗手 洗手 % - Outputs from this function are returned to the command line.洗手 function varargout = untitled1_OutputFcn(hObject, eventdata, handles

19、) 洗手 % varargout cell array for returning output args (see VARARGOUT);b eef洗手 % hObject handle to figure 洗手 % eventdata reserved - to be defined in a future version of MATLAB 洗手 % handles structure with handles and user data (see GUIDATA)洗手 洗手 % Get default command line output from handles structure

20、 洗手 varargout1 = handles.output;b eef洗手 洗手 洗手 洗手 function edit_Callback(hObject, eventdata, handles)洗手 % hObject handle to edit (see GCBO)洗手 % eventdata reserved - to be defined in a future version of MATLAB 洗手 % handles structure with handles and user data (see GUIDATA)洗手 洗手 % Hints: get(hObject,St

21、ring) returns contents of edit as text 洗手 % str2double(get(hObject,String) returns contents of edit as a double 洗手 洗手 洗手 % - Executes during object creation, after setting all properties.洗手 function edit_CreateFcn(hObject, eventdata, handles)洗手 % hObject handle to edit (see GCBO)洗手 % eventdata reser

22、ved - to be defined in a future version of MATLAB 洗手 % handles empty - handles not created until after all CreateFcns called洗手 洗手 9 % Hint: edit controls usually have a white background on Windows.洗手 % See ISPC and COMPUTER.洗手 if ispc b eef洗手 end 洗手 洗手 洗手 % - Executes on button press in ami.洗手 funct

23、ion ami_Callback(hObject, eventdata, handles)洗手 user_string=get(handles.edit,string);b eef洗手 a=dec2bin(user_string,8);b eef洗手 b=a;b eef洗手 c=b(:);b eef洗手 d=c;b eef洗手 f=str2num(d(1);b eef洗手 for i=2:length(d)洗手 f=f str2num(d(i);b eef洗手 end 洗手 f=f 0;b eef洗手 % %洗手 p = -1;b eef洗手 for i=1:length(f);b eef洗手

24、 if f(i)=1 洗手 e(i) = (-1)*p;b eef洗手 p = e(i);b eef洗手 else 洗手 e(i) = f(i);b eef洗手 end 洗手 end 洗手 % %洗手 for i=1:length(f);b eef洗手 if e(i)=0 洗手 l(i) = 1;b eef洗手 else 洗手 e(i) = 0;b eef洗手 end 洗手 end 洗手 axes(handles.axes1)洗手 t=1:length(f);b eef洗手 stairs(t-1,f)洗手 axis(0 length(f) -2 2)洗手 xlabel(ASCII);b eef

25、洗手 grid minor;b eef洗手 10 axes(handles.axes2)洗手 t=1:length(e);b eef洗手 stairs(t-1,e)洗手 axis(0 length(e) -2 2)洗手 xlabel(AMI );b eef洗手 grid minor;b eef洗手 axes(handles.axes3)洗手 t=1:length(l);b eef洗手 stairs(t-1,l)洗手 axis(0 length(l) -2 2)洗手 xlabel(AMI );b eef洗手 grid minor;b eef洗手 % hObject handle to ami (

26、see GCBO)洗手 % eventdata reserved - to be defined in a future version of MATLAB 洗手 % handles structure with handles and user data (see GUIDATA)洗手 洗手 洗手 % - Executes on button press in cmi.洗手 function cmi_Callback(hObject, eventdata, handles)洗手 user_string=get(handles.edit,string);b eef洗手 a=dec2bin(us

27、er_string,8);b eef洗手 b=a;b eef洗手 c=b(:);b eef洗手 d=c;b eef洗手 f=str2num(d(1);b eef洗手 for i=2:length(d)洗手 f=f str2num(d(i);b eef洗手 end 洗手 f=f 0;b eef洗手 % %洗手 m=1;b eef洗手 p=-1;b eef洗手 for i=1:length(f)洗手 if(f(i)=1b eef洗手 m=m*p;b eef洗手 else if(f(i)=1b eef洗手 m=m*p;b eef洗手 else 洗手 s(i)=1;b eef洗手 end 洗手 end 洗手 end 洗手

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。