在 LATEX 中询问相干二进制振幅移位键控 nrz

在 LATEX 中询问相干二进制振幅移位键控 nrz

在此处输入图片描述

在此处输入图片描述

有人知道如何编写一个展示 NRZ 和 ASK 幅度的 Latex 文件,如上图所示?

我确实遇到过这样的代码:

    \documentclass{standalone}

\usepackage{tikz-timing}

\begin{document}

\begin{tikztimingtable}[timing/slope=0, scale=2, timing/draw grid, timing/name/.append style={yshift=3.5}, timing/z/.style={black}]
    01001110     & LHLLHHHL \\
    NRZ          & LHLLHHHL \\
    RZ           & 0.25Z lzh 2{zl} 3{zh} zl 0.25Z \\
    \extracode
    \makeatletter
    \begin{pgfonlayer}{background}
        \vertlines[help lines, blue]{}
        \horlines[blue, yshift=3.5]{}
        \foreach [count=\x] \b in {0,1,0,0,1,1,1,0} {
            \node [below,font=\sffamily\bfseries\tiny,inner ysep=2pt] at (\x-.5,+.5) {\b};
        }
    \end{pgfonlayer}
\end{tikztimingtable}

\end{document}

这产生了我想要的结果,但我无法在蓝色方块内实现波形 ASK。

答案1

各种软件包都允许您绘制阶跃函数和正弦函数。以下是 Ti 的示例Z 和isodd

\documentclass[tikz,border=3mm]{standalone}
\begin{document}
\begin{tikzpicture}
 \draw[stealth-stealth] (0,5) |- (9,0) node[below left]{$t$};
 \draw[shift={(0,1.5)}] plot[domain=0:8.5,samples=301,smooth] 
    (\x,{0.5*isodd(int(\x/2))*sin(360*\x)}); 
 \draw[shift={(0,3)}] plot[domain=0:8.5] 
    ({int(\x+0.5)},{isodd(int(\x/2))}); 
 \path foreach \x in {1,...,4} {foreach \y in {0.5,3.5}
  {(2*\x-1,\y)
  node{$\pgfmathparse{int(isodd(\x-1))}\pgfmathprintnumber\pgfmathresult$}}};   
\end{tikzpicture}
\end{document}

在此处输入图片描述

很难说哪个包是最好的,但是使用 TiZ 或 pgfplots 似乎是一个合适的选择。

相关内容