% http://ftp.univie.ac.at/packages/tex/graphics/pstricks/base/doc/pstricks-doc.pdf
% http://www.tug.org/PSTricks/main.cgi?file=doc/docs

% 18:59:41 <martinp> http://pastebin.com/tcp16Gp minimales "sample"
% 01:53:07 <martinp> die nodes werden deine lieblinge sein ;)
% 01:53:19 <martinp> ncline, ncarc und nccircle
% 01:53:32 <martinp> angle und arcangle als parameter sind ganz nützlich ;)
% 01:54:08 <martinp> rest siehst eh in dem "sample" von mir ;)
% 01:55:08 <martinp> aja, was du auf jedenfall vermeiden solltest sind leere reihen in der psmatrix
% 01:55:14 <martinp> da kommt dann immer blödsinn raus
% 01:55:39 <martinp> wennst mehr platz zwischen den nodes brauchst solltest colsep und rowsep verändern
% 01:56:02 <martinp> eine \mbox{ } als knoten hab ich noch nicht probiert, könnte vlt aber auch gehen
% 01:56:40 <martinp> \ncarc[arcangle=20]{rs}{i}^{bla} setzt bla als label über die linie
% 01:56:45 <martinp> \ncarc[arcangle=20]{rs}{i}_{bla} unter die linie
% 01:57:07 <martinp> die ncput in dem sample in die linie (ohne * wird die linie auch nicht ausgeblendet)
% 01:57:55 <martinp> ^ und _ sind eigentlich nur abkürzungen für naput oder so in die richtung
% 01:58:13 <martinp> [npos=.4] ist auch ganz nett für die puts, damit veränderst die pos. der label auf der 
%                    linie (zwischen start und ende)
% 01:58:33 <martinp> und wennst böse kanten hast die du stark biegen musst
% 01:59:03 <martinp> da ist es besser ncurv zu erhöhen als den arcangle (zumindest ab einem bestimmten arcangle 
%                    auch die einzige möglichkeit mehr "kurve" zu bekommen)
\documentclass{minimal}
\pagestyle{empty}

\usepackage{pstricks}
\usepackage{pst-node}

\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}\\
\end{psmatrix}

\psset{arrows=->, shortput=nab}

\ncline[linestyle=dotted]{res}{i}

\ncarc[arcangle=25]{i}{rs}\ncput*[npos=.38]{\shortstack{falling\\edge rxd}}
\ncarc[arcangle=25]{rs}{i}\ncput*[npos=.36]{rxd=1}

\ncline{rs}{rb}\ncput*{rxd=0}

\ncline{rb}{rsp}\ncput*{bitcount=8}
\nccircle[angle=180]{rb}{.7cm}\ncput*{bitcount$<$8}

\ncline{rsp}{i}
\end{document}
