檢視:USB_Joystick.pdf
下載:USB_Joystick.tex
編譯方式 (若有 .bib 檔可能需要先 rm 刪除掉):
xelatex USB_Joystick
bibtex USB_Joystick
xelatex USB_Joystick
xelatex USB_Joystick
evince USB_Joystick.pdf
% Latex Beamer - USB Joystick % 2015/06/17 %=============================================================== % LaTeX Beamer environment setting \documentclass[xetex,mathserif,serif,xcolor=dvipsnames]{beamer} % 解決 XeTeX 中文的斷行問題 \XeTeXlinebreaklocale "zh" \XeTeXlinebreakskip = 0pt plus 1pt \usepackage{color, colortbl} \usepackage{caption} \usepackage{url, hyperref} \captionsetup{skip=0pt,belowskip=0pt} %=============================================================== %% 字型 Fonts Setting %% Reference: http://hyperrate.com/thread.php?tid=23544 % 預設英文字體 \usepackage{arevmath} \usepackage[no-math]{fontspec} \setmainfont[Scale=0.9]{DejaVuSansMono} % 預設中文字體 \usepackage[CJKchecksingle, normalindentfirst, SlantFont, BoldFont]{xeCJK} \setCJKmainfont{金梅新中楷國際碼} % 自定義字體切換指令 % 中文 \newfontfamily{\J}{金梅新中楷國際碼} \newfontfamily{\B}{華康中黑體} % 英文 \newfontfamily{\D}[Scale=0.9]{DejaVuSansMono} \newfontfamily{\T}{Times New Roman} \newfontfamily{\A}{Arial} % 粗體字 % \textbf{內容} %=============================================================== %% Theme 設定主題樣式 \usetheme{Madrid} %=============================================================== %% Color Theme設定投影片顏色 \usecolortheme{beaver} %=============================================================== % 設定列表樣式 % 可以選擇:ball, circle, rectangle, default \setbeamertemplate{items}[ball] \setbeamertemplate{caption}[numbered] %=============================================================== %隱藏 beamer 底部小工具列 \setbeamertemplate{navigation symbols}{} %==================================================================== % 重設 frametitle 的預設為置中,上方的 usetheme 要改為 [height=0] \setbeamertemplate{frametitle}[default][center] %============================================================================== %% Reference Table % https://zh.wikipedia.org/wiki/BibTeX % http://tex.stackexchange.com/questions/68080/beamer-bibliography-icon \begin{filecontents}{\jobname.bib} @article{ref1, author={林永昌}, title={USB規格與技術}, journal={CCL TECHNICAL JOURNAL}, pages={26--32}, volume={103期}, year={2003-03-25} } % http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=5776968 @article{ref2, author={Yung-Hoh Sheua, Tsun-Hsiang Fu, Chun-Ming Ku}, title={The Design of FlexRay/CAN/LIN Protocol Analyzer}, pages={5466--5469}, year={2011}, journal={Electric Information and Control Engineering (ICEICE)} } % http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6287165 @article{ref3, author={Nurul Fatihah Jusoh, Muhammad Adib Haron, Fuziah Sulaiman }, title={An FPGA Implementation of Shift Converter Block Technique on FIFO for RS232 to Universal Serial Bus Converter}, pages={219--224}, year={2012}, journal={Control and System Graduate Research Colloquium (ICSGRC)} } % http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6168758 @article{ref4, author={Nurul Fatihah Jusoh, Azlina Ibrahim, Muhamad Adib Haron and Fuziah Sulaiman}, title={An FPGA Implementation of Shift Converter Block Technique on FIFO for UART}, pages={320--324}, year={2011}, journal={RF and Microwave Conference (RFM)} } @book{b1, title={USB 2.0 系統開發實例精解}, author={廖濟林}, isbn={9789861990040}, year={2007}, publisher={城邦文化事業股份有限公司}, keywords = {USB} } @book{b2, title={USB 2.0 原理與研發技術}, author={王成儒、李英偉}, isbn={9572152688}, year={2006}, publisher={全華科技圖書股份有限公司}, keywords = {USB} } @book{b3, title={微處理機與 USB 主從介面之設計與應用}, author={許永和}, isbn={9574997677}, year={2006}, publisher={儒林圖書有限公司}, keywords = {USB} } @book{b4, title={USB 規格與理論剖析}, author={許永和}, isbn={9789574998692}, year={2009}, publisher={儒林圖書有限公司}, keywords = {USB} } @book{b5, title={USB 應用開發技術大全}, author={薛園園}, isbn={9789862041529}, year={2008}, publisher={文魁資訊股份有限公司}, keywords = {USB} } @online{arduino, author={Circuits@Home}, title={USB Host Shield 2.0 for Arduino}, howpublished={\url{https://www.circuitsathome.com/products-page/arduino-shields/usb-host-shield-2-0-for-arduino}}, note={Accessed:2015-06-08} } @misc{p1, title={USB Protocol Analyzer}, yesr={2013}, howpublished={\url{http://goods.ruten.com.tw/item/show?21303303948219}}, note={Accessed:2015-06-08} } @misc{p2, title={Beagle USB 12 Protocol Analyzer}, howpublished={\url{http://www.totalphase.com/products/beagle-usb12/}}, note={Accessed:2015-06-08} } @misc{p3, title={MQP Electronics Packet-Master USB 12}, howpublished={\url{http://www.mqp.com/usbdev_buy.htm}}, note={Accessed:2015-06-08} } @misc{p4, title={ITIC 1480A USB 2.0 Protocol Analyzer}, howpublished={\url{http://www.internationaltestinstruments.com/products/97-1480a-usb-20-protocol-analyzer.aspx}}, note={Accessed:2015-06-09} } @misc{p5, title={Elisys USB Explorer 200 Basic}, howpublished={\url{http://www.ellisys.com/products/usbex200/}}, note={Accessed:2015-06-09} } @misc{p6, title={LeCroy Conquest Standard}, howpublished={\url{http://teledynelecroy.com/protocolanalyzer/}}, note={Accessed:2015-06-09} } @misc{mcp2200, title={MCP2200}, howpublished={\url{http://www.microchip.com/wwwproducts/devices.aspx?dDocName=en546923}}, note={Accessed:2015-06-06} } @misc(ncku, title={USB (Universal Serial Bus)}, author={成大資工}, howpublished={\url{http://wiki.csie.ncku.edu.tw/embedded/USB}}, note={Accessed:2015-06-13} } @misc{zeroplus, title={USB2.0信號分析技巧}, author={ZEROPLUS}, howpublished={\url{http://www.zeroplus.com.tw/E-paper/201112/images/201112-USB20ProtocolAnalyzer.pdf}}, note={Accessed:2015-06-13} } \end{filecontents} %============================================================================== %% Reference Setting 參考文獻環境設定 %% https://www.economics.utoronto.ca/osborne/latex/BIBTEX.HTM %% http://tex.stackexchange.com/questions/147279/references-at-the-end-of-beamer-slides \usepackage{cite} \usepackage{natbib} %\usepackage{natbib} %\usepackage{bibtex} %\usepackage{bibentry} %\usepackage{chngcntr} %\bibliographystyle{apalike} %%%\bibliographystyle{stylename} % %\setbeamercolor*{bibliography entry title}{fg=black} %\setbeamercolor*{bibliography entry author}{fg=black} %\setbeamercolor*{bibliography entry location}{fg=black} %\setbeamercolor*{bibliography entry note}{fg=black} %\setbeamertemplate{bibliography item}{} %%\setbeamertemplate{bibliography item}{\insertbiblabel} %\setbeamertemplate{frametitle continuation}[from second] % %\counterwithin*{footnote}{page} %\newcommand\fcite[1]{\footnote{\tiny \bibentry{#1}}\label{\thepage:#1}} %\newcommand\scite[1]{\textsuperscript{\ref{\thepage:#1}}} % %\nobibliography{\jobname} %============================================================================== \begin{document} %============================================================================== \title[\tiny USB sniffer with the Arduino]{\huge USB sniffer with the Arduino} \author[\tiny MA330101 廖凱霖]{\\MA330101 廖凱霖} \date[\tiny 2015/06/17]{2015/06/17} %============================================================================== %%% 投影片開始 Frame Start % Title \frame{\titlepage} % Outline \frame{ \frametitle{Outline} \tableofcontents} % Abstract % 做什麼東西,用什麼方法,得到什麼結果 \section{摘要} \frame{ \frametitle{摘要} \begin{itemize}[<+->] \item 做 USB (Universal Serial Bus) 訊號封包解析儀。 \item 自動解碼,直接得到封包、資料。 \begin{figure} \centering \includegraphics[width=0.6\textwidth]{analyzer.jpeg} \caption{USB 解析儀架構圖} \end{figure} \end{itemize} } %Action \section{研究動機} \frame{ \frametitle{Outline}\tableofcontents[currentsection]} \frame{ \frametitle{研究動機 1/2} \begin{itemize}[<+->] \item 產學合作:「做 PlayStation 4 格鬥搖桿台」。 \item 實驗室舊型號邏輯分析儀不支援 USB 解析。 \item 封包做解碼及列表整理需花大量時間。 \end{itemize} } % \frame{ \frametitle{研究動機 2/2} \begin{itemize} \item 市場調查: \begin{itemize} \item 市面上 USB 封包解析儀,價格昂貴 (至少壹萬元起跳)。 \item 整合太多功能,操作複雜。 \end{itemize} \end{itemize} % ------------- \captionof{table}{USB 分析儀市場調查表} \begin{table}[h] \begin{tabular}{|l|r|} \hline \rowcolor[HTML]{000000} \multicolumn{1}{|c|}{\cellcolor[HTML]{000000}{\color[HTML]{FFFFFF} 產品名稱}} & \multicolumn{1}{c|}{\cellcolor[HTML]{000000}{\color[HTML]{FFFFFF} 市售價格}} \\ \hline USB Protocol Analyzer & NT\$10,500 \\ \hline Beagle USB 12 Protocol Analyzer & NT\$14,777 \\ \hline MQP Electronics Packet-Master USB 12 & NT\$15,698 \\ \hline ITIC 1480A USB 2.0 Protocol Analyzer & NT\$21,621 \\ \hline Elisys USB Explorer 200 Basic & NT\$24,856 \\ \hline LeCroy Conquest Standard & NT\$37,300 \\ \hline \end{tabular} \end{table} \nocite{p1,p2,p3,p4,p5,p6} %------------- } %background \section{研究背景及知識} \frame{ \frametitle{Outline}\tableofcontents[currentsection]} \frame{ \frametitle{研究背景及知識 1/5} \nocite{b1,b2,b5,b3,b4,ref1} \begin{itemize}[<+->] \item 無時脈訊號 (Clock Signal)。 \item 使用兩條差動訊號 D+/D- 做資料傳遞。 \item 定義訊號 `1':(D+) - (D-) > 200mV \\ 定義訊號 `0':(D+) - (D-) < -200mV \end{itemize} } %background \frame{ \frametitle{研究背景及知識 2/5} \begin{itemize}[<+->] \item 使用 NRZI(Non-Return to Zero Inverted) 編碼:\\ 設起始狀態 H,資料 `0' 狀態反向;`1' 狀態保持原來。 \end{itemize} \begin{figure} \centering \includegraphics[width=0.8\textwidth]{NRZI.jpeg} \caption{NRZI 編碼流程圖} \end{figure} } % \frame{ \frametitle{研究背景及知識 3/5} \begin{itemize} \item USB 一個完整的傳輸單位:資訊交易 (Transaction)。 \end{itemize} \begin{figure} \centering \includegraphics[width=0.9\textwidth]{transation.jpeg} \caption{單個 Transation 架構圖} \end{figure} } % \frame{ \frametitle{研究背景及知識 4/5} \begin{itemize} \item 封包組成格式\cite{zeroplus}: \begin{itemize} \item 同步序列:取代 Clock 來同步資料。 \item PID:定義封包類型。 \item 封包具體資訊:封包資料內容(依 PID 而有所不同)。 \item CRC:檢查錯誤。 \item EOP:結束封包 (回到 idle ) 狀態。 \end{itemize} \end{itemize} \begin{figure} \centering \includegraphics[width=0.9\textwidth]{packet.jpeg} \caption{封包 Padket 基本格式} \end{figure} } % \frame{ \frametitle{研究背景及知識 5/5} \begin{itemize} \item 資料型態辨別:PID (Packet ID)。 \end{itemize} \begin{figure} \centering \includegraphics[height=0.72\textheight]{0015.jpg} \caption{PID Types\cite{ncku}} \end{figure} } %% \section{文獻回顧及探討} \frame{ \frametitle{Outline}\tableofcontents[currentsection]} \frame{ \frametitle{文獻回顧及探討} \begin{itemize} \item 參考文獻 \cite{ref3,ref4},以 FPGA 實作 UART to USB 訊號轉換器。 \end{itemize} \begin{figure} \centering \includegraphics[width=0.8\textwidth]{uarttousb.jpg} \caption{FIFO 轉換圖框} \end{figure} } % \section{研究方法及步驟} \frame{ \frametitle{Outline}\tableofcontents[currentsection]} \frame{ \frametitle{研究方法及步驟 1/4} \begin{itemize} \item 使用現有設備量測原廠 PS4 搖桿,建立資料庫。 \end{itemize} \begin{figure} \begin{columns} \column{0.5\textwidth} \includegraphics[width=\textwidth]{agilent.jpg} \caption{Agilent 示波器} \column{0.5\textwidth} \includegraphics[width=\textwidth]{zp.jpg} \caption{Zeroplus 邏輯分析儀} \end{columns} \end{figure} } % \frame{ \frametitle{研究方法及步驟 2/4} \begin{itemize} \item 實作的方法:Arduino UNO + MCP2200 \cite{mcp2200} \end{itemize} \begin{figure} \centering \only<1>{\includegraphics[width=0.6\textwidth]{arch1.jpeg}}\only<2>{\includegraphics[width=0.6\textwidth]{arch2.jpeg}}\only<3>{\includegraphics[width=0.6\textwidth]{arch3.jpeg}} \caption{實作方法架構圖} \end{figure} } % \frame{ \frametitle{研究方法及步驟 3/4} \begin{itemize} \item 使用 Arduino UNO 開發板 (ClockSpeed 16MHz)。 \item USB Device (1.5 MBps, Low-speed) 訊號分析不需要高速運算。 \item 價格低。 \end{itemize} %figure \begin{figure} \centering \includegraphics[width=0.5\textwidth]{uno.png} \caption{Arduino UNO 開發板} \end{figure} } % \frame{ \frametitle{研究方法及步驟 4/4} \begin{itemize} \item 使用晶片:MCP2200 (USB to UART)。 \item 讓 USB D+/D- 與 Arduino Tx/Rx 能夠互相溝通。 \end{itemize} %figure \begin{figure} \centering \includegraphics[width=0.8\textwidth]{mcp2200_arch.jpg} \caption{MCP2200 晶片架構} \end{figure} } % \section{預期研究成果} \frame{ \frametitle{Outline}\tableofcontents[currentsection]} \frame{ \frametitle{預期研究成果} \begin{itemize} \item 對多種主機平台(例如:PS3, PS4, XBOX, PC...等),\\ 解析其 USB 週邊裝置之封包訊號。 \item 不要太多設定,一插即分析並整理好封包資料。 \end{itemize} %figure \begin{figure} \centering \includegraphics[width=0.8\textwidth]{analyzer_2.jpeg} \caption{多平台分析示意圖} \end{figure} } % \section{結論} \frame{ \frametitle{Outline}\tableofcontents[currentsection]} \frame{ \frametitle{結論} \begin{itemize}[<+->] \item USB 為現在及未來之人機介面的主流趨勢。 \item 封包解析變得更簡易更省成本。 \item 仍要依循 USB-IF 制定的規則及標準。 \item 未來進一步的發展方向為`藍芽裝置'的解析。 \end{itemize} } % \section{參考文獻} \frame{ \frametitle{Outline}\tableofcontents[currentsection]} \frame{ \frametitle{參考文獻} \tiny{\bibliographystyle{abbrv} } \bibliography{\jobname} } \end{document}
沒有留言:
張貼留言