ドキュメンテーション センター

  • 評価版
  • 製品アップデート

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

bin2gray

正の整数の対応するグレイ符号整数への変換

構文

y = bin2gray(x,modulation,M)
[y,map] = bin2gray(x,modulation,M)

説明

y = bin2gray(x,modulation,M) は、入力パラメーター x と同じ次元をもつグレイ符号ベクトル出力または行列出力 y を返します。x は、スカラー、ベクトル、または行列です。modulation は、変調の種類であり、'qam''pam''fsk''dpsk'、または 'psk' と等価の文字列でなければなりません。M は、2 の整数のべき乗を取ることができる変調の次数です。

[y,map] = bin2gray(x,modulation,M) は、それぞれのグレイ符号コンスタレーション マップ map と共にグレイ符号出力 y を生成します。

マップ出力を使用してグレイ符号コンスタレーションにラベルを付けることができます。マップ出力により、対応する変調のグレイ符号ラベルを指定できます。次の例を参照してください。

    メモ:   バイナリ コード データをグレイ符号データに変換し、結果をすぐに変調する場合、BIN2GRAY ではなく 'Gray' オプションを指定して適切な変調オブジェクトまたは関数を使用する必要があります。

ベクトル x を 16-QAM グレイ符号コンスタレーションをもつグレイ符号に変換し、そのマップをプロットします。

 % To Gray encode a vector x with a 16-QAM Gray encoded
 % constellation and return its map, use:
 x=randi([0 15],1,100);
 [y,map] = bin2gray(x,'qam',16);
 % Obtain the symbols for 16-QAM
 hMod = modem.qammod('M', 16);
 symbols = hMod.Constellation;
 % Plot the constellation
 scatterplot(symbols);
 set(get(gca,'Children'),'Marker','d','MarkerFaceColor',...
 'auto'); hold on;
 % Label the constellation points according
 % to the Gray mapping
 for jj=1:16
 text(real(symbols(jj))-0.15,imag(symbols(jj))+0.15,...
 dec2base(map(jj),2,4));
 end
 set(gca,'yTick',(-4:2:4),'xTick',(-4:2:4),...
 'XLim',[-4 4],'YLim',...
 [-4 4],'Box','on','YGrid','on', 'XGrid','on');

このサンプル コードでは、以下のプロットを生成します。これは、グレイ符号ラベルのある 16 QAM コンスタレーションを示します。

参考

この情報は役に立ちましたか?