這是咱們SegmentFault在開源硬件上追求跨界的努力。《開源硬件通行資料》每篇文章圍繞一個話題,集合各類開發板完成同一個需求的方法,去總結各個開發平臺之間的共性與區別。linux
讓每種板卡的用戶,都能平等的獲取資料和知識,而不至於因爲板卡的區別而分出陣營,這甚至對我我的都是一項很強的理想和渴望。segmentfault
全部內容保證在我現有的如下板卡上實測:測試
若是其餘板卡可以查到資料,也可能會收錄一些未經實際測試的內容。同時歡迎其餘廠商向SegmentFault提供測試平臺,支持本系列文章的創做!ui
第一篇咱們從串口開始。拿到開發板以後,和板子的交互一般是鍵鼠直接操做,或SSH遠程登陸。spa
但若是碰到各類問題須要調試時,使用傳統的串口直接強行鏈接開發板的命令行,在任什麼時候候做爲保底方案都是必要的。命令行
本篇文章整理總結各類開發板的串口的位置及資料,以備不時之需。調試
通常而言,對UART串口只關心3根線:code
必定要當心:這裏的RXD和TXD的收發,都是對於兩側設備本身的角度而言的。
因此兩個設備鏈接時必須GND連GND(共地),RXD和TXD交叉。串口定義如此。接口
某些設備會自做聰明的標反RXD與TXD,引導用戶看似方便的「R連R、T連T」,這實際上是徹底錯誤的,請千萬當心。
若是出現數據接收不到,能夠試着翻轉一下RXD和TXD,看一下您的模塊是否存在這個問題。ci
通常而言,串口的鏈接器都是2.54mm的標準插針。如無特別註明,如下串口均爲3.3V電平,串口配置均爲115200 8N1。
USB轉TTL可能會有VCC/3.3V/5V等相似的電源接口。這個接口的做用是對外少許供電,不是說兩方板子的VCC須要互連——甚至互連了會有危險(電壓不一樣會引發雙方電源電流互灌)。請必定要把USB轉TTL模塊上的VCC留空不接!
注:RTS(黃)和CTS(藍)是UART串口可選的控制信號,在高可靠性應用中可能會用到,平時並不是必須。
UART0用於調試,在鏈接器P1上。RXD:10, TXD:8, GND:6。
Raspberry Pi實際上只有一個UART串口——雖然存在UART1,但和UART0共享一樣的引腳位置。
UART0用於調試,在主板正中間的鏈接器J3上。RXD:3, TXD:4, GND:1,板子上有直接的文字標註。
另外有UART3,4,5,6四個串口,能夠從兩側的GPIO排針上引出。可參閱這個頁面。
UART0用於調試,在主板右下角標有UART0的鏈接器CN7上。RXD:3, TXD:4, GND:1,板子上有直接的文字標註。
另外有UART3,4,7三個串口,能夠從兩個GPIO雙排針上引出。可參閱這個頁面。
UART0用於調試。在主板加框印字UART_0
的旁邊的3pin排針上。
另有UART2能夠引出,其位置和Arduino一致(0、1號引腳)。
UART0用於調試。位置在J11(相對於Raspberry Pi多出來的2pin排針),須要從J12借用GND共地。
另有UART2和UART3從26pin雙排針上引出,UART7從J12雙排針引出。
UART0用於調試。在CPU左側惟一作成排針(而不是排座)的位置。另有UART一、UART2和UART4能夠從左側雙排座引出。
請參照http://wiki.radxa.com/Rock/extension_header。可以使用UART0、UART3和UART1。
Arduino系列產品的串口所有在0和1號引腳。(Due等少數型號可能有其餘串口,請參閱對應型號的手冊)
《開源硬件通行資料》系列文章,週三更新,敬請關注! SegmentFault原創技術資料,原做者沙渺(shamiao),使用·轉載請遵照本站相關版權聲明。