一、获取代码方式

获取代码方式1:
完整代码已上传我的资源:【通信】基于matlab GUI循环码编译码器【含Matlab源码 692期】

获取代码方式2:
通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。

备注:
订阅紫极神光博客付费专栏,可免费获得1份代码(有效期为订阅日起,三天内有效);

二、循环码简介

1 循环码概念
循环性是指任意码组循环移位后仍然是该编码中的一个码组
多项式表示法
一般情况


2 循环码的运算
2.1 整数的按模运算

2.2 码多项式的按模运算

2.3 循环码的数学表示法

2.4 循环码的生成



2.5 寻求码生成多项式

三、部分源代码

function varargout = xinxilun(varargin)
% XINXILUN MATLAB code for xinxilun.fig
%      XINXILUN, by itself, creates a new XINXILUN or raises the existing
%      singleton*.
%
%      H = XINXILUN returns the handle to a new XINXILUN or the handle to
%      the existing singleton*.
%
%      XINXILUN('CALLBACK',hObject,eventData,handles,...) calls the local
%      function named CALLBACK in XINXILUN.M with the given input arguments.
%
%      XINXILUN('Property','Value',...) creates a new XINXILUN or raises the
%      existing singleton*.  Starting from the left, property value pairs are
%      applied to the GUI before xinxilun_OpeningFcn gets called.  An
%      unrecognized property name or invalid value makes property application
%      stop.  All inputs are passed to xinxilun_OpeningFcn via varargin.
%
%      *See GUI Options on GUIDE's Tools menu.  Choose "GUI allows only one
%      instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES% Edit the above text to modify the response to help xinxilun% Last Modified by GUIDE v2.5 04-Dec-2013 16:15:30% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',       mfilename, ...'gui_Singleton',  gui_Singleton, ...'gui_OpeningFcn', @xinxilun_OpeningFcn, ...'gui_OutputFcn',  @xinxilun_OutputFcn, ...'gui_LayoutFcn',  [] , ...'gui_Callback',   []);
if nargin && ischar(varargin{1})gui_State.gui_Callback = str2func(varargin{1});
endif nargout[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
elsegui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT% --- Executes just before xinxilun is made visible.
function xinxilun_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject    handle to figure
% 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 xinxilun (see VARARGIN)% Choose default command line output for xinxilun
handles.output = hObject;% Update handles structure
guidata(hObject, handles);
axes(handles.axes1);
axis off;
axes(handles.axes2);
axis off;% UIWAIT makes xinxilun wait for user response (see UIRESUME)
% uiwait(handles.figure1);% --- Outputs from this function are returned to the command line.
function varargout = xinxilun_OutputFcn(hObject, eventdata, handles)
% varargout  cell array for returning output args (see VARARGOUT);
% 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
varargout{1} = handles.output;function m_in_Callback(hObject, eventdata, handles)
% hObject    handle to m_in (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,'String') returns contents of m_in as text
%        str2double(get(hObject,'String')) returns contents of m_in as a double% --- Executes during object creation, after setting all properties.
function m_in_CreateFcn(hObject, eventdata, handles)
% hObject    handle to m_in (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows.
%       See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');
end% --- Executes on button press in bm_pushbutton.
function bm_pushbutton_Callback(hObject, eventdata, handles)
% hObject    handle to bm_pushbutton (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
global c;
mm=get(handles.m_in,'string');
if length(mm)~=4errordlg('信息码字长度只能是4位!','非法输入!');
elseif length(mm)==4for i=1:4m(i)=str2num(mm(i));                               %判断输入是否合法endif ((m(1)~=0&&m(1)~=1)||(m(2)~=0&&m(2)~=1)||(m(3)~=0&&m(3)~=1)||(m(4)~=0&&m(4)~=1))errordlg('只能输入0或1!','非法输入!');elseset(handles.jspanel,'visible','on');c=coding(m);              %调用函数编码cc=num2str(c(1,1:7));set(handles.text3,'visible','on');set(handles.m_out_text,'string',cc);             %画图axes(handles.axes1);stairs(0:7,c,'linewidth',2);axis([0,7,0,1]);set(gca,'XTick',0:1:7);set(gca,'YTick',[]);grid on;end
endfunction e_edit_Callback(hObject, eventdata, handles)
% hObject    handle to e_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,'String') returns contents of e_edit as text
%        str2double(get(hObject,'String')) returns contents of e_edit as a double% --- Executes during object creation, after setting all properties.
function e_edit_CreateFcn(hObject, eventdata, handles)
% hObject    handle to e_edit (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows.
%       See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');
end% --- Executes on button press in e_button.
function e_button_Callback(hObject, eventdata, handles)
% hObject    handle to e_button (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
out =randi([0 7],1);
e=zeros(1,7);
if out~=0e(out)=1;
end
for i=1:7ee(i)=num2str(e(i)); %转化为字符串
end
set(handles.e_edit,'string',ee);% --- Executes on button press in dj_button.
function dj_button_Callback(hObject, eventdata, handles)
% hObject    handle to dj_button (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
global r;
global c;
ee=get(handles.e_edit,'string');
if length(ee)~=7errordlg('错误图样长度是7位!','非法输入!');
elseif length(ee)==7for i=1:7e(i)=str2num(ee(i));endif ((e(1)~=0&&e(1)~=1)||(e(2)~=0&&e(2)~=1)||(e(3)~=0&&e(3)~=1)||(e(4)~=0&&e(4)~=1)||(e(5)~=0&&e(5)~=1)||(e(6)~=0&&e(6)~=1)||(e(7)~=0&&e(7)~=1))errordlg('只能输入0或1!','非法输入!');elseif sum(e)>1errordlg('超出纠错范围,只能纠1位错,请重新输入!','非法输入!');    elseset(handles.uipanel3,'visible','on');r=xor(c(1,1:7),e);rr=num2str(r);set(handles.text7,'visible','on');set(handles.r_text,'string',rr);             %画图axes(handles.axes2);stairs(0:7,[r,r(7)],'linewidth',2);axis([0,7,0,1]);set(gca,'XTick',0:1:7);set(gca,'YTick',[]);grid on;end
end

四、运行结果

五、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1] 沈再阳.精通MATLAB信号处理[M].清华大学出版社,2015.
[2]高宝建,彭进业,王琳,潘建寿.信号与系统——使用MATLAB分析与实现[M].清华大学出版社,2020.
[3]王文光,魏少明,任欣.信号处理与系统分析的MATLAB实现[M].电子工业出版社,2018.

【通信】基于matlab GUI循环码编译码器【含Matlab源码 692期】相关推荐

  1. 【信号处理】基于Matlab GUI数字均衡器设计,源码附上

    [信号处理]基于Matlab GUI数字均衡器设计,源码附上 数字均衡器是一种常用于音频信号处理的技术,可以有效地补偿声音中的频率失真,提高音质.在这篇文章中,我们将介绍如何使用Matlab GUI进 ...

  2. 【过程控制】基于matlab GUI串级控制【含Matlab源码 2385期】

    ⛄一.简介 1 交互系统整体外观展示 该系统基于 MATLAB GUI 与 Simulink 联合开发, 实现对串级控制系统特性的研究与分析.学生在学习串级控 制有关知识后可使用该应用进行知识回顾.界 ...

  3. matlab svm 语音识别,【情感识别】基于matlab支持向量机(SVM)的语音情感识别【含Matlab源码 543期】...

    一.简介 支持向量机(Support Vector Machine)是Cortes和Vapnik于1995年首先提出的,它在解决小样本.非线性及高维模式识别中表现出许多特有的优势,并能够推广应用到函数 ...

  4. 【雷达通信】基于matlab GUI相控阵雷达方向图【含Matlab源码 1048期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[雷达通信]基于matlab GUI相控阵雷达方向图[含Matlab源码 1048期] 点击上面蓝色字体,直接付费下载,即可. 获取代码方 ...

  5. 【图像处理】基于matlab GUI多功能图像处理系统【含Matlab源码 1876期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[图像处理]基于matlab GUI多功能图像处理系统[含Matlab源码 1876期] 点击上面蓝色字体,直接付费下载,即可. 获取代码 ...

  6. matlab设计译码器,基于MATLAB的循环码编译码器设计与仿真.doc

    扳昂旨螺冈唉陨裤外狸尿恨铸伸隧刽搅必勒诚天腑皖漂豌鲁靳碑缆键兽峙棘陶宽槐撒层僧袁廖颤渐魄货鼎躬薛扬衍逮西兰迫依煤鲁虐渠惫平合啥昭并屿己笆坍痞庐披吏去凄嘛兄察突徊溅今箩直藩潦咙锨谓崇若制匹扮复淌颐糖嗅你 ...

  7. 【数字信号】基于matlab GUI多音双频(DTMF)拨号音频解码仿真系统【含Matlab源码 1084期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[数字信号]基于matlab GUI多音双频(DTMF)拨号音频解码仿真系统[含Matlab源码 1084期] 点击上面蓝色字体,直接付费 ...

  8. 【图像去噪】基于matlab GUI butterworth+中值+维纳+小波图像去噪【含Matlab源码 520期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[图像去噪]基于matlab GUI butterworth+中值+维纳+小波图像去噪[含Matlab源码 520期] 获取代码方式2: ...

  9. 【雷达通信】基于matlab雷达探测威力仿真【含Matlab源码 1974期】

    一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[雷达通信]基于matlab雷达探测威力仿真[含Matlab源码 1974期] 点击上面蓝色字体,直接付费下载,即可. 获取代码方式2: 付 ...

  10. 【机械仿真】基于matlab GUI曲柄摇杆机构运动仿真【含Matlab源码 1608期】

    一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[机械仿真]基于matlab GUI曲柄摇杆机构运动仿真[含Matlab源码 1608期] 点击上面蓝色字体,直接付费下载,即可. 获取代码 ...

最新文章

  1. Scala教程之:scala的参数
  2. SAP Spartacus Multi-Site Configuration
  3. spring 点击保存按钮页面禁用_用一篇深度好文,详解按钮的设计
  4. 数据挖掘之数据预处理
  5. hdu 1423 最长公共递增子序列
  6. dotnet core 开发体验之Routing
  7. Android之ViewPager使用(用美女做的背景,给你疲惫的眼睛视觉冲击)
  8. MySql按字段分组取最大值记录 [此博文包含图片]
  9. a 算法 c语言实现,a最短路径算法地C语言实现.PDF
  10. 数据分析模型 第六章
  11. 陈吉平的Oracle职业生涯:兴趣与思考 成败之所系
  12. time stamp convert
  13. 20190408-相速度和群速度、傅里叶变换与波动方程的色散关系、介电常数与电导、介电函数与折射率、散度定理、电子迁移率、电磁波波动方程、自由电子气的介电函数
  14. flash 火狐总是崩溃_火狐浏览器经常崩溃怎么办,解决Firefox、Flash假死问题
  15. java编译程序包不存在_在cmd下编译Java源文件文件出现程序包xxxx不存在
  16. 四、线段_同级别分解
  17. 第一篇:呼叫中心发展史
  18. 全国行政区域代码/编码
  19. ipfs文件服务器,IPFS的文件获取过程详解
  20. 武汉大学计算机学院研究生培养方案,硕士研究生培养方案

热门文章

  1. 文件上传---利用表单提交
  2. 互联网带来的颠覆,改变了传统的营销套路
  3. CSU 8月月赛 Decimal 小数化分数
  4. 客户端地图拼图算法解析
  5. Atitit db deadlock prblm cause and solu 数据库死锁原因与解决   在数据库中有两种基本的锁类型:排它锁(Exclusive Locks,即X锁)和共享
  6. Atitit it系列书籍列表 C:\Users\Administrator\Documents\it 软件系列书籍\itlist.txt C:\Users\Administrator\Docume
  7. Atitit sql的执行功能 目录 1. 主要流程 1 1.1. 获取conn,执行sql取得结果, 1 1.2. Orm类的执行(hb mybatis为例 1 2. 常见sql执行框架与类库 1
  8. Atitit httpclient 概述 rest接口 目录 1. Httpclient 利用http协议的client类库与技术方法 1 2. 功能用途 why 2 2.1. 上传下载文件 2
  9. Atitit 面向对象弊端与问题 坏处 缺点
  10. Atitit usrQBF2312 命名空间pkg 以及 api命名 spec规范