-
大小: 11KB文件類型: .rar金幣: 2下載: 0 次發布日期: 2021-06-11
- 語言: Matlab
- 標簽:
資源簡介
HDB3,AMI,RZ,NRZ等編碼的MATLAB代碼,希望對需要的同學有所幫助

代碼片段和文件信息
function?[codevarargout]=AMI(signalvarargin)
%-------------------------使用須知-------------------------------
%功能???得到AMI碼即把消息碼中的“1“交替變成“-1“和“+1“將“0“仍保持為“0“
%使用???example:
%???????s=[0?1?0?1?1?0?0?0?1?0?0?0?0?1?1?1?1?1?1];
%???????code=AMI(s);????????????????????????%全部按默認設置返回二進制序列碼
%???????[codestatus]=AMI(s);???????????????%全部按默認設置返回二進制序列碼和最后一個“1“的狀態
%???????code=AMI(s-1);?????????????????????%信號碼序中的第一個“1“設為-1返回二進制序列碼
%???????[codestatus]code=AMI(s-1);????????%信號碼序中的第一個“1“設為-1返回二進制序列碼和最后一個“1“的狀態
%輸入參數
%signal?表示輸入信號
%status?表示信號碼序中的第一個“1“的狀態默認值1
%????????最終存儲信號碼序中的最后一個“1“的狀態并可返回供其它程序使用
%輸出參數
%code???返回變換后的二進制序列串
%局部變量
%sf?????16倍輸入信號碼速
%len????輸入信號長度
%最后更新?2010/4/15
%----------------------------------結束------------------------------------
status=1;
if?nargin?>?1?&&?isequal(varargin{1}-1)
????status=varargin{1};
end
len=length(signal);
code=zeros(1len);
for?i=1:len
????if?isequal(signal(i)1)
????????code(i)=status;
????????status=0-status;
????end
end
if?nargout?>?1
varargout{1}=status;
end
if?nargout?1
????plot2code(code‘ami‘);
end
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1320??2010-04-16?09:22??AMI.m
?????文件???????4585??2010-04-16?12:19??ba
?????文件????????609??2010-04-15?09:00??ba
?????文件???????1550??2010-04-16?07:44??CMI.m
?????文件???????1516??2010-04-16?08:54??Differential.m
?????文件???????1408??2010-04-16?13:38??dNRZ.m
?????文件???????1416??2010-04-16?13:34??dRZ.m
?????文件???????3528??2010-04-16?11:49??HDB3.m
?????文件???????1551??2010-04-16?08:06??Manchester.m
?????文件???????1832??2010-04-15?22:42??Miller.m
?????文件???????2116??2010-04-16?13:28??plot2code.m
?????文件???????1360??2010-04-16?13:09??sNRZ.m
?????文件???????1484??2010-04-16?13:22??sRZ.m
-----------?---------??----------?-----??----
????????????????24275????????????????????13
- 上一篇:圖像數字水印
- 下一篇:差分編碼的matlab源程序
評論
共有 條評論