sm: rs232 receive
[hwmod.git] / spec / sm / rs232-rs.tex
index 6688f377bb5117c2607809fa9a874097024e6cc9..8bab98a96c2a03fe5514fdb05c64bb9eb9d2c394 100644 (file)
 
 \begin{document}
 
-\begin{psmatrix}[mnode=circle, colsep=2cm, rowsep=2cm]
-[mnode=R,name=res]{RESET} & [name=i]{idle} & [name=rsp]{\shortstack{read \\ Stop-Bit}} \\
-& [name=rs]{\shortstack{read \\ Start-Bit}} & [name=rb]{read Bit}\\
+\begin{psmatrix}[mnode=oval, colsep=2cm, rowsep=2cm]
+[mnode=R,name=vars]{int bc := 0;} &
+[name=idle]{\shortstack{\textbf{idle}\\bc:=0;}} &
+[name=rsp]{\shortstack{\textbf{read}\\\textbf{stopbit}}} \\
+%%
+[mnode=R,name=res]{sys\_res\_n} &
+[name=rs]{\shortstack{\textbf{read}\\\textbf{startbit}}} &
+[name=rb]{\textbf{read}} \\
 \end{psmatrix}
 
 \psset{arrows=->, shortput=nab}
 
-\ncline[linestyle=dotted]{res}{i}
+\ncline[linestyle=dotted]{res}{idle}
 
-\ncarc[arcangle=25]{i}{rs}\ncput*[npos=.38]{\shortstack{falling\\edge rxd}}
-\ncarc[arcangle=25]{rs}{i}\ncput*[npos=.36]{rxd=1}
+\ncarc[arcangle=35]{idle}{rs}\ncput*[npos=.38]{\shortstack{rxd$\downarrow$}}
+\ncarc[arcangle=35]{rs}{idle}\ncput*[npos=.38]{rxd=1}
 
 \ncline{rs}{rb}\ncput*{rxd=0}
 
-\ncline{rb}{rsp}\ncput*{bitcount=8}
-\nccircle[angle=180]{rb}{.7cm}\ncput*{bitcount$<$8}
+\ncline{rb}{rsp}\ncput*{$bc=8$}
+\nccircle[angle=180]{rb}{.5cm}\ncput*{$bc<8$}
 
-\ncline{rsp}{i}
+\ncline{rsp}{idle}
 \end{document}