資料介紹
本連載共分6期,將介紹單片機(jī)外設(shè)功能的結(jié)構(gòu)及使用方法。本期學(xué)習(xí)的串行通信是單片機(jī)重要的作用之一,就是與單片機(jī)外部的外圍設(shè)備進(jìn)行信息交換。此時(shí),串行通信起到非常重要的作用。
單片機(jī)與外圍設(shè)備的連接:并行和串行
單片機(jī)是嵌入式設(shè)備的“頭腦”,其與作為嵌入式設(shè)備的“手和腳”是各種外圍設(shè)備(輸入輸出設(shè)備等)連接。單片機(jī)應(yīng)該怎樣與這些外圍設(shè)備連接才好呢?比如,我們來(lái)考慮一下將傳感器與單片機(jī)連接的情況。如果使用本連載第1期中介紹的“GPIO”的話,從傳感器向單片機(jī)傳送8位信號(hào)時(shí)需要使用8個(gè)引腳。這種傳送模式被稱(chēng)為并行(并行通信)模式(圖1―左)。但是,僅一個(gè)傳感器就需要連接8個(gè)引腳,確實(shí)太可惜了 ,是否還有連接更少的引腳就能達(dá)到同樣目的的方法呢?
此時(shí),可使用串行傳送模式(串行通信)。 “串行”的意思就是直列或直線。通過(guò)并行傳送模式(Parallerl Transferring Mode)中需要8個(gè)引腳才能實(shí)現(xiàn)的通信,在串行傳送模式(Serial Transfer Mode)中,由于可以以排成一直線的模式進(jìn)行傳送,所以僅需一個(gè)引腳就夠了(圖1―右)。由于在單片機(jī)內(nèi)部是通過(guò)并行模式來(lái)進(jìn)行信號(hào)交換,所以還需將通過(guò)串行模式傳送來(lái)的信號(hào)轉(zhuǎn)換為并行模式(串行并行轉(zhuǎn)換)。相反,從單片機(jī)向與單片機(jī)串行連接的外圍設(shè)備傳送的信號(hào)也需要將信號(hào)從并行模式轉(zhuǎn)換為串行模式(并行串行轉(zhuǎn)換)。瑞薩電子的單片機(jī)RX63N是通過(guò)被稱(chēng)為SCI(Serial Communication Interface,串行通信接口)的單元進(jìn)行這些轉(zhuǎn)換的。例如,使一個(gè)引腳對(duì)應(yīng)1位 的char型變量進(jìn)行信息交換的是并行通信(Parallel communication),而一個(gè)引腳以時(shí)分(time division)按每1位進(jìn)行信息交換的就是串行通信(Serial Communication)。
由于串行連接僅使用少數(shù)引腳便可進(jìn)行,所以,近年來(lái)多被用于單片機(jī)和外圍設(shè)備之間的連接。GPIO除了用于將驅(qū)動(dòng)電機(jī)的信號(hào)及 LED閃爍等軟件操作結(jié)果的信號(hào)輸出時(shí)以外,還被用于通過(guò)開(kāi)關(guān)或ON/OFF輸出的傳感器的輸入等。
通過(guò)UART便可簡(jiǎn)單地使用串行通信
由于電特性的不同,以及用于進(jìn)行通信協(xié)議的規(guī)定不同,串行通信具有多種方式,其中,最易于使用的應(yīng)該是“異步通信模式”了。僅需用信號(hào)線將單片機(jī)和外圍設(shè)備連接起來(lái)便可使用,所以在單片機(jī)與動(dòng)作監(jiān)視器用的終端之間進(jìn)行通信時(shí)、以及單片機(jī)與無(wú)線LAN用模塊進(jìn)行通信時(shí)使用。
在異步通信模式的串行通信狀態(tài)下,一字節(jié)的文字信息※1在“開(kāi)始位”(Start bit,意味著開(kāi)始發(fā)送)和“停止位”(Stop bit,意味著停止發(fā)送)之間發(fā)送(圖2)。由此,無(wú)需 I2C(Inter-Integrated Circuit,內(nèi)部集成電路)”及“SPI(Serial Peripheral Interface,串行外設(shè)接口)”等時(shí)鐘信號(hào)線(但在其他的串行通信模式中這些時(shí)鐘信號(hào)線是必需的,以對(duì)發(fā)送和接收的時(shí)序進(jìn)行同步)。另外,還可追加用于檢查數(shù)據(jù)是否已正常發(fā)送的“奇偶校驗(yàn)位(Parity bit)※2”。
此通信方式所使用的通信用器件被稱(chēng)為UART(Universal Asynchronous Receiver/Transmitter,通用異步收發(fā)器),在瑞薩電子的單片機(jī)--RX63N中內(nèi)置了支持此功能的SCI(串行通信接口)。
(※1)異步串行通信狀態(tài)下,一般都是從“最低有效位(LSB: Least Significant Bit),即最低二進(jìn)制數(shù)位”開(kāi)始進(jìn)行發(fā)送的。
(※2)奇偶校驗(yàn)位(Parity bit):在發(fā)送時(shí)按一定量的數(shù)據(jù)(在SCI中為7位或8位)中所具有“1”(或“0”)的個(gè)數(shù)為奇數(shù)個(gè)時(shí)定為“1”,為偶數(shù)個(gè)時(shí)定為“0”的奇偶校驗(yàn)位(使偶校驗(yàn)(Even Parity Check)、數(shù)據(jù)及奇偶校驗(yàn)位中所包括的“1”的數(shù)量成為偶數(shù)個(gè)的方法),并通過(guò)與接收側(cè)進(jìn)行校驗(yàn),以檢測(cè)出數(shù)據(jù)通信中的錯(cuò)誤。反之,如果“1”(或“0”)的個(gè)數(shù)為奇數(shù)時(shí)定為“0”,為偶數(shù)時(shí)定為“1”的方法被稱(chēng)為奇校驗(yàn)(Odd Parity Check)。
圖2:異步串行通信
在異步通信中,能實(shí)現(xiàn)按“單片機(jī)→外圍設(shè)備”或“外圍設(shè)備→單片機(jī)”的方向確保數(shù)據(jù)信號(hào)專(zhuān)用的信號(hào)線時(shí),被稱(chēng)為全雙工通信。另一方面,將通過(guò)1根信號(hào)線來(lái)切換通信方向的方式稱(chēng)為半雙工通信。全雙工方式時(shí)需要2根信號(hào)線,可同時(shí)進(jìn)行發(fā)送和接收。半雙工方式時(shí)僅需1根信號(hào)線,但必須在發(fā)送和接收之間進(jìn)行切換(圖3)。
圖3:全雙工通信和半雙工通信
嘗試向單片機(jī)和電腦之間進(jìn)行通信!
下面,我們通過(guò)GR-SAKURA來(lái)試用樣本程序。本期我們?cè)囍ㄟ^(guò)可在電腦上運(yùn)行的終端軟件和GR-SAKURA之間進(jìn)行通信。也就是試用從終端軟件發(fā)送出“?”(半角問(wèn)號(hào))后就有“GR-SAKURA”的字符串被傳送回來(lái)的程序(圖4)。為了確認(rèn)該程序的動(dòng)作狀況,需在電腦上安裝終端軟件。如在Windows系統(tǒng)下可使用免費(fèi)軟件—TeraTerm,而在Mac系統(tǒng)下建議使用該系統(tǒng)標(biāo)準(zhǔn)配備的軟件—Terminal。
該樣本程序使用了GR-SAKURA的櫻花程序庫(kù)“串行通信(Serial Class)”。該程序庫(kù)支持全雙工異步通信。
在程序的第8行中,對(duì)經(jīng)由USB的通信進(jìn)行設(shè)定。第13行的Serial.read()是用于設(shè)定在串行通信中讀取從電腦發(fā)送過(guò)來(lái)的數(shù)據(jù),在讀取“?”(半角問(wèn)號(hào))時(shí),就將“GR-SAKURA”字符串傳送回來(lái)。如果換作是GR-SAKURA中 所搭載的RX63N單片機(jī)來(lái)進(jìn)行處理的話,就是:SCI將電腦傳送來(lái)的串行信號(hào)轉(zhuǎn)換為并行信號(hào),再由CPU對(duì)“?”進(jìn)行識(shí)別后判斷輸出“GR-SAKURA”字符串,之后 再通過(guò)SCI將并行信號(hào)轉(zhuǎn)換為串行信號(hào)后發(fā)送到電腦上。
雖然只是非常簡(jiǎn)單的程序,但是由此便可實(shí)現(xiàn)在GR-SAKURA和電腦之間進(jìn)行文字信息的交換。本期我們介紹的是固定字符串,但也可發(fā)送GR-SAKURA的處理結(jié)果。請(qǐng)大家也作嘗試!
(僅英文版)
圖4:樣本程序:從Terminal輸入“?”后,將傳送回“GR-SAKURA”的信息。
※//~為注釋符,不會(huì)影響程序的運(yùn)行
※本程序僅用于說(shuō)明程序的原理,并不具有在實(shí)際使用時(shí)所需的對(duì)策。?
(mbbeetchina)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 8位PIC單片機(jī)上的通用異步收發(fā)器(UART)
- UART詳解
- STM32-UART通信
- UART通用異步收發(fā)傳輸器的程序和工程文件合集免費(fèi)下載 1次下載
- AT89S51單片機(jī)串行口的詳細(xì)資料介紹 13次下載
- 51單片機(jī)的IO口如何模擬串行通信實(shí)現(xiàn)方法詳細(xì)說(shuō)明 2次下載
- 51單片機(jī)串口通信的原理和結(jié)構(gòu)及程序等資料合集免費(fèi)下載
- 使用51單片機(jī)的UART口發(fā)送一個(gè)字符的資料和程序免費(fèi)下載
- 使用51單片機(jī)與計(jì)算機(jī)進(jìn)行異步串行通信的實(shí)戰(zhàn)資料說(shuō)明
- 使用51單片機(jī)實(shí)現(xiàn)異步串行雙機(jī)通信多字節(jié)傳輸的C語(yǔ)言程序免費(fèi)下載
- PIC32通用異步收發(fā)傳輸器的詳細(xì)中文資料概述
- 通用異步收發(fā)器(UART 21次下載
- uart映射代碼 4次下載
- 通用異步收發(fā)器(UART) 15次下載
- pic單片機(jī)與pc機(jī)異步串行通信的設(shè)計(jì)
- 簡(jiǎn)單認(rèn)識(shí)UART串行通信協(xié)議 2200次閱讀
- 基于STM32模擬UART串口通信 1703次閱讀
- UART通用異步收發(fā)傳輸器簡(jiǎn)述 1043次閱讀
- 通用異步收發(fā)器簡(jiǎn)介 1643次閱讀
- UART通用異步收發(fā)傳輸器簡(jiǎn)介 1913次閱讀
- UART串口通信協(xié)議詳解 7434次閱讀
- UART通用異步收發(fā)器與I2C總線 1656次閱讀
- 設(shè)計(jì)基于FPGA的串行通用異步收發(fā)器 1040次閱讀
- 基于Verilog的UART串行通信接口電路設(shè)計(jì) 2461次閱讀
- 設(shè)計(jì)基于FPGA的串行通用異步收發(fā)器 884次閱讀
- 單片機(jī)串行口介紹,8051單片機(jī)的通信方式 1.6w次閱讀
- 電視uart接口干什么的 1.2w次閱讀
- UART和RS-232、RS-422、RS-485的聯(lián)系和區(qū)別 1.9w次閱讀
- 單片機(jī)與PLC之間的串行通信實(shí)現(xiàn) 3.2w次閱讀
- UART學(xué)習(xí)總結(jié):如何判斷一幀數(shù)據(jù)收完 7266次閱讀
下載排行
本周
- 1電源測(cè)試報(bào)告-基于 國(guó)民技術(shù) N32L406 和杰華特 JW3376+3330 的 BMS 方案
- 6.47 MB | 17次下載 | 免費(fèi)
- 2PFC電路與BOOST電路設(shè)計(jì)實(shí)例分享
- 1.83 MB | 14次下載 | 4 積分
- 3世平基于靈動(dòng)微 SPIN560C 的低壓無(wú)刷電機(jī)應(yīng)用方案
- 10.93 MB | 11次下載 | 免費(fèi)
- 4PWM控制器的控制方法
- 0.39 MB | 3次下載 | 4 積分
- 5電磁屏電磁感應(yīng)觸摸技術(shù)介紹
- 0.66 MB | 2次下載 | 免費(fèi)
- 6全面解讀被動(dòng)式與主動(dòng)式PFC電路
- 1.27 MB | 1次下載 | 4 積分
- 7SS1200 SMA肖特基二極管產(chǎn)品規(guī)格書(shū)
- 0.93 MB | 1次下載 | 免費(fèi)
- 8SB15150L TO-277肖特基二極管產(chǎn)品規(guī)格書(shū)
- 1.96 MB | 1次下載 | 免費(fèi)
本月
- 1高功率密度碳化硅MOSFET軟開(kāi)關(guān)三相逆變器損耗分析
- 2.27 MB | 34次下載 | 10 積分
- 2電源測(cè)試報(bào)告-基于 國(guó)民技術(shù) N32L406 和杰華特 JW3376+3330 的 BMS 方案
- 6.47 MB | 17次下載 | 免費(fèi)
- 3PFC電路與BOOST電路設(shè)計(jì)實(shí)例分享
- 1.83 MB | 14次下載 | 4 積分
- 4USB拓展塢PCB圖資料
- 0.57 MB | 13次下載 | 免費(fèi)
- 5世平基于靈動(dòng)微 SPIN560C 的低壓無(wú)刷電機(jī)應(yīng)用方案
- 10.93 MB | 11次下載 | 免費(fèi)
- 6TYPEC電路原理圖資料
- 0.14 MB | 10次下載 | 免費(fèi)
- 7經(jīng)典1000W純正弦波逆變器原理圖資料
- 0.08 MB | 10次下載 | 10 積分
- 8HAL9303線性霍爾效應(yīng)傳感器技術(shù)手冊(cè)
- 0.70 MB | 9次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935134次下載 | 10 積分
- 2開(kāi)源硬件-PMP21529.1-4 開(kāi)關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191424次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183352次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81601次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73818次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App






創(chuàng)作
發(fā)文章
發(fā)帖
提問(wèn)
發(fā)資料
發(fā)視頻
上傳資料賺積分
評(píng)論