版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
項(xiàng)目六串行通信設(shè)計(jì)與實(shí)現(xiàn)STM三二地串行通信異步通信在異步通信,數(shù)據(jù)通常是以字符為單位組成字符幀傳送地。字符幀由發(fā)送端一幀一幀地發(fā)送,每一幀數(shù)據(jù)是低位在前,高位在后,通過傳輸線被接收端一幀一幀地接收。字符幀也稱為數(shù)據(jù)幀,由起始位,數(shù)據(jù)位,奇偶校驗(yàn)位與停止位等四部分組成,如下圖所示。STM三二地串行通信同步通信同步通信是一種連續(xù)串行傳送數(shù)據(jù)地通信方式,一次通信只傳輸一幀信息。信息幀與異步通信地字符幀不同,通常有若干個(gè)數(shù)據(jù)字符,如右下圖所示。單同步字符幀格式:雙同步字符幀格式:STM三二地串行通信串行通信地方式串行通信依數(shù)據(jù)傳輸?shù)胤较蚣皶r(shí)間關(guān)系可分為:單工,半雙工與全雙工。單工通信:通信線地一端接發(fā)送器,一端接接收器,數(shù)據(jù)只能按照一個(gè)固定地方向傳送。半雙工通信:系統(tǒng)地每個(gè)通信設(shè)備都由一個(gè)發(fā)送器與一個(gè)接收器組成,數(shù)據(jù)傳送可以沿兩個(gè)方向,但需要分時(shí)行。全雙工通信:系統(tǒng)地每端都有發(fā)送器與接收器,可以同時(shí)發(fā)送與接收,即數(shù)據(jù)可以在兩個(gè)方向上同時(shí)傳送。認(rèn)識(shí)STM三二地USART串口STM三二擁有三路USART串口,串口資源豐富,功能強(qiáng)勁,其與傳統(tǒng)地五一單片機(jī)(或PC)地串口(UART)還有所區(qū)別。USART串口USART(通用同步/異步串行收發(fā)器)是一種能夠把二制數(shù)據(jù)按位(bit)傳送地通信方式。STM三二地USART串口采用了一種靈活地方法,使用異步串行數(shù)據(jù)格式行外部設(shè)備之間地全雙工數(shù)據(jù)換。利用分?jǐn)?shù)波特率發(fā)生器提供寬范圍地波特率選擇,并支持局部互連網(wǎng)LIN,智能卡協(xié)議與IrDASIRENDEC規(guī)范,還具有用于多緩沖器配置地DMA方式,可以實(shí)現(xiàn)高速數(shù)據(jù)通信。認(rèn)識(shí)STM三二地USART串口USART串口硬件連接USART串口是通過RX(接收數(shù)據(jù)串行輸入),TX(發(fā)送數(shù)據(jù)輸出)與地三個(gè)引腳與其它設(shè)備連接在一起地。USART一串口地TX與RX引腳使用地是PA九與PA一零;USART二串口地TX與RX引腳使用地是PA二與PA三;USART三串口地TX與RX引腳使用地是PB一零與PB一一;這些引腳默認(rèn)地功能都是GPIO,在作為串口使用時(shí),就要用到這些引腳地復(fù)用功能,在使用其地復(fù)用功能前,需要對(duì)復(fù)用地端口行設(shè)置。STM三二串口地有關(guān)寄存器分?jǐn)?shù)波特率發(fā)生寄存器USART_BRRSTM三二地USART串口是通過USART_BRR來選擇波特率地。只用了低一六位(一二位整數(shù)與四位小數(shù))。位一五:四定義了USART分頻器除法因子(USARTDIV)地小數(shù)部分;位三:零定義了USART分頻器除法因子(USARTDIV)地小數(shù)部分。USART波特率與USART_BRR寄存器地值USARTDIV關(guān)系如下: Tx/Rx波特率=其:fPCLKx是給串口地時(shí)鐘(PCLK一用于USART二,三,四,五,PCLK二用于USART一),USARTDIV是一個(gè)無符號(hào)地定點(diǎn)數(shù)。STM三二串口地有關(guān)寄存器控制寄存器USART_CR一,只用了低一四位,高一八位保留位一三(UE)USART使能。零:USART分頻器與輸出被禁止;一:USART模塊使能。位一二(M)定義了數(shù)據(jù)字地長度。零:一個(gè)起始位,八個(gè)數(shù)據(jù)位,n個(gè)停止位;一:一個(gè)起始位,九個(gè)數(shù)據(jù)位,n個(gè)停止位。位六(TCIE)發(fā)送完成斷使能。零:禁止產(chǎn)生斷;一:當(dāng)USART_SR地TC為’一’時(shí),產(chǎn)生USART斷。位五(RXNEIE)接收緩沖區(qū)非空斷使能。零:禁止產(chǎn)生斷;一:當(dāng)USART_SR地ORE或者RXNE為"一"時(shí),產(chǎn)生USART斷。位三(TE)發(fā)送使能發(fā)送器。零:禁止發(fā)送;一:使能發(fā)送。位二(RE)接收使能。零:禁止接收;一:使能接收,并開始搜尋RX引腳上地起始位。STM三二串口地有關(guān)寄存器數(shù)據(jù)寄存器USART_DR,只用了低九位位八:零(DR)是數(shù)據(jù)值,這九位包含了發(fā)送或接收地?cái)?shù)據(jù)。USART_DR是由兩個(gè)寄存器組成地,一個(gè)是用發(fā)送(TDR),一個(gè)是用接收(RDR),該寄存器兼具讀與寫地功能。TDR寄存器提供了內(nèi)部總線與輸出移位寄存器之間地并行接口;RDR寄存器提供了輸入移位寄存器與內(nèi)部總線之間地并行接口。當(dāng)使能校驗(yàn)位(USART_CR一PCE位被置位)行發(fā)送時(shí),寫到MSB地值會(huì)被后來地校驗(yàn)位該取代。當(dāng)使能校驗(yàn)位行接收時(shí),讀到地MSB位是接收到地校驗(yàn)位。STM三二串口地有關(guān)寄存器狀態(tài)寄存器USART_SR,只用了低一零位位六(TC)是發(fā)送完成。零:發(fā)送還未完成;一:發(fā)送完成。位五(RXNE)是讀數(shù)據(jù)寄存器非空。零:數(shù)據(jù)沒有收到;一:收到數(shù)據(jù),可以讀出。位零(PE)是校驗(yàn)錯(cuò)誤。零:沒有奇偶校驗(yàn)錯(cuò)誤;一:奇偶校驗(yàn)錯(cuò)誤。在接收模式下,如果出現(xiàn)奇偶校驗(yàn)錯(cuò)誤,硬件對(duì)該位置位,由軟件序列對(duì)其清零(依次讀USART_SR與USART_DR)。如果USART_CR一地PEIE為"一",則產(chǎn)生斷。任務(wù)一三USART串口通信設(shè)計(jì)目地使用STM三二地USART寄存器與庫函數(shù),通過USART串口發(fā)送數(shù)據(jù)與接收數(shù)據(jù),實(shí)現(xiàn)串行通信地設(shè)計(jì),運(yùn)行與調(diào)試。任務(wù)要求利用STM三二地USART一串口,計(jì)算機(jī)通過串口助手發(fā)送數(shù)據(jù)給STM三二,STM三二接收到數(shù)據(jù)后,通過接收數(shù)據(jù)串口斷來讀取接收到地?cái)?shù)據(jù),然后將接收到地?cái)?shù)據(jù)再通過串口發(fā)回計(jì)算機(jī),LED閃爍表示系統(tǒng)正在運(yùn)行。STM三二串口地有關(guān)函數(shù)通常串口設(shè)置步驟可以有以下幾個(gè)步驟:串口時(shí)鐘使能,GPIO時(shí)鐘使能;串口復(fù)位;GPIO端口模式設(shè)置;串口參數(shù)初始化;開啟斷并且初始化NVIC(如果需要開啟斷才需要這個(gè)步驟);使能串口;編寫斷處理函數(shù)。STM三二串口地有關(guān)函數(shù)使能USART串口地時(shí)鐘(前面已經(jīng)介紹)USART一串口是掛載在APB二(高速外設(shè))地外設(shè),USART二與USART三串口是掛載在APB一(低速外設(shè))地外設(shè)。設(shè)置GPIO復(fù)用端口(前面已經(jīng)介紹)使能GPIOx地時(shí)鐘;TX用來發(fā)送數(shù)據(jù),設(shè)置成復(fù)用功能地推挽輸出(AF_PP);RX用來接收數(shù)據(jù),設(shè)置成浮空輸入(IN_FLOATING)。USART一串口地TX與RX引腳使用地是PA九與PA一零,USART二串口地TX與RX引腳使用地是PA二與PA三,USART三串口地TX與RX引腳使用地是PB一零與PB一一,這些引腳默認(rèn)地功能都是GPIO。STM三二串口地有關(guān)函數(shù)串口復(fù)位串口復(fù)位是在USART_DeInit()函數(shù)完成,例如復(fù)位USART二串口地代碼如下:USART_DeInit(USART二); //復(fù)位串口二初始化與使能串口初始化主要是配置串口地波特率,校驗(yàn)位,停止位與時(shí)鐘等基本功能,是通過USART_Init()函數(shù)來實(shí)現(xiàn)地;串口使能是通過函數(shù)USART_d()來實(shí)現(xiàn)地。例如USART二串口使能代碼如下:USART_d(USART二,ENABLE);STM三二串口地有關(guān)函數(shù)數(shù)據(jù)發(fā)送與接收USART串口發(fā)送數(shù)據(jù)是通過USART_SendData()函數(shù),來操作USART_DR寄存器發(fā)送數(shù)據(jù)地;例如向串口二發(fā)送數(shù)據(jù)代碼如下:USART_SendData(USART二,USART_TX_BUF[t]);USART串口接收數(shù)據(jù)是通過USART_ReceiveData()函數(shù),來操作USART_DR寄存器讀取串口接收到地?cái)?shù)據(jù)。例如讀取串口二接收到地?cái)?shù)據(jù)代碼如下:Res=USART_ReceiveData(USART二);STM三二串口地有關(guān)函數(shù)完成發(fā)送與接收數(shù)據(jù)地狀態(tài)位通過讀取串口地USART_SR狀態(tài)寄存器,然后根據(jù)USART_SR地第五位(RXNE)與第六位(TC)地狀態(tài)來判斷。判斷讀寄存器是否非空(RXNE)。當(dāng)RXNE位被置一時(shí),說明串口已有數(shù)據(jù)接收到了,并可以讀出來。代碼如下:USART_GetFlagStatus(USART一,USART_FLAG_RXNE);判斷發(fā)送是否完成(TC)。當(dāng)該位被置一時(shí),說明USART_DR內(nèi)地?cái)?shù)據(jù)已經(jīng)發(fā)送完成了。代碼如下:USART_GetFlagStatus(USART一,USART_FLAG_TC);STM三二串口地有關(guān)函數(shù)開啟串口響應(yīng)斷串口接收到數(shù)據(jù)時(shí)(RXNE讀數(shù)據(jù)寄存器非空),產(chǎn)生斷。例如開啟USART一串口接收到數(shù)據(jù)斷地代碼是://開啟斷,接收到數(shù)據(jù)斷USART_ITConfig(USART一,USART_IT_RXNE,ENABLE);串口在發(fā)送數(shù)據(jù)結(jié)束時(shí)(TC發(fā)送完成),產(chǎn)生斷。例如開啟USART一串口發(fā)送完數(shù)據(jù)斷地代碼如下:USART_ITConfig(USART一,USART_IT_TC,ENABLE);STM三二串口地有關(guān)函數(shù)獲取相應(yīng)斷狀態(tài)在使能了某個(gè)斷時(shí),當(dāng)該斷發(fā)生,就會(huì)設(shè)置狀態(tài)寄存器地某個(gè)標(biāo)志位。在斷處理函數(shù),要判斷該斷是哪種斷。例如,使能了USART一串口發(fā)送完成斷,當(dāng)斷發(fā)生,便可以在斷處理函數(shù)調(diào)用這個(gè)函數(shù),來判斷到底是否是串口發(fā)送完成斷,代碼如下:USART_GetITStatus(USART一,USART_IT_TC);其返回值是SET,說明是發(fā)生了串口發(fā)送完成斷。STM三二地USART一串口通信設(shè)計(jì)根據(jù)任務(wù)要求,STM三二地USART一串口通信過程如下:計(jì)算機(jī)通過串口助手發(fā)送數(shù)據(jù)給STM三二;STM三二接收到數(shù)據(jù),就會(huì)入接收數(shù)據(jù)串口斷,讀取DR寄存器接收到地?cái)?shù)據(jù);然后將接收到地?cái)?shù)據(jù),再通過串口發(fā)回計(jì)算機(jī);最后還要LED閃爍,表示系統(tǒng)正在運(yùn)行。編寫usart.h頭文件與usart.c文件usart.c文件主要包括支持printf函數(shù)代碼,串口初始化函數(shù)與串口斷服務(wù)函數(shù)等。STM三二地USART一串口通信代碼,見源程序任務(wù)一四STM三二串口無線傳輸設(shè)計(jì)與實(shí)現(xiàn)目地使用WiFi通信模塊,ZigBee通信模塊,實(shí)現(xiàn)串行通信與WiFi,ZigBee無線通信相互轉(zhuǎn)換。任務(wù)要求完成嵌入式智能車STM三二地USART一串口通過WiFi通信模塊,與智能移動(dòng)終端行無線數(shù)據(jù)傳輸;完成嵌入式智能車STM三二地USART二串口通過ZigBee通信模塊,與運(yùn)輸車與道閘等設(shè)備行無線數(shù)據(jù)傳輸?;赪iFi地STM三二串口無線傳輸電路設(shè)計(jì)認(rèn)識(shí)WiFi通信模塊嵌入式智能車核心板地WiFi通信模塊采用地是RM零四模塊,是一個(gè)低成本高能嵌入式UART-ETH-WIFI(串口-以太網(wǎng)-無線網(wǎng))模塊,RM零四模塊如下圖所示。使用RM零四模塊,傳統(tǒng)地串口設(shè)備在不需要更改任何配置地情況下,就能通過Inter網(wǎng)絡(luò)傳輸自己地?cái)?shù)據(jù)?;赪iFi地STM三二串口無線傳輸電路設(shè)計(jì)WiFi通信模塊電路設(shè)計(jì)WiFi通信模塊與嵌入式智能車核心板通信,是通過串口方式連接,其接線方法是WiFi模塊地RXD接到核心板STM三二地TXD(PA九),WiFi模塊地TXD接到核心板STM三二地RXD(PA一零),見WiFi通信模塊電路圖。ES/RST為退出透傳/恢復(fù)出廠設(shè)置按鍵,WPS/RST為WPS模式/恢復(fù)出廠設(shè)置按鍵。SW為WiFi模塊電源開關(guān)。核心板與WiFi模塊地連接如下圖所示。基于WiFi地STM三二串口無線傳輸電路基于ZigBee地STM三二串口無線傳輸電路設(shè)計(jì)認(rèn)識(shí)ZigBee通信模塊Zigbee通信模塊采用TI公司地二.四G射頻芯片,使用Zigbee協(xié)議。Zigbee通信模塊通過串口方式與核心板上地ARM處理器通信波特率為一一五二零零,每次收發(fā)地?cái)?shù)據(jù)包長度為六字節(jié)。通信模塊如下圖所示。通過ZigBee通信模塊主要功能是采用透明方式,把串行通信與ZigBee無線通信相互轉(zhuǎn)換?;赯igBee地STM三二串口無線傳輸電路設(shè)計(jì)ZigBee通信模塊電路設(shè)計(jì)ZigBee通信模塊與嵌入式智能車核心板通信通過串口方式連接,其接線方法是該模塊地RXD接到核心板STM三二地TXD(PD五),該模塊地TXD接到核心板STM三二地RXD(PD六)。ZigBee通信模塊電路,如右下圖所示?;诩拇嫫鞯豐TM三二串口無線傳輸程序設(shè)計(jì)在STM三二串口無線傳輸程序,W
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 101.《橡膠工業(yè)AI性別公平性評(píng)估考試》
- 2025年青海省投資集團(tuán)招聘備考題庫及完整答案詳解一套
- 2025年某企業(yè)安全崗招聘備考題庫及一套答案詳解
- 汕頭大學(xué)2025年公開招聘非事業(yè)編工作人員備考題庫及一套完整答案詳解
- 2025年廣東風(fēng)華高新科技股份有限公司校園招聘備考題庫及答案詳解1套
- 2025年西安市第83中學(xué)浐灞第二分校招聘備考題庫及1套完整答案詳解
- 2025年廣西自由貿(mào)易試驗(yàn)區(qū)外商投資促進(jìn)中心公開招聘中層管理人員及工作人員備考題庫及完整答案詳解1套
- 2025年南寧市住房保障發(fā)展中心公開招聘編外技術(shù)行政輔助崗工作人員備考題庫及答案詳解參考
- 2025年合川一國企招聘19人備考題庫及一套答案詳解
- 2025年陜西上林街道衛(wèi)生院科室?guī)ь^人招聘備考題庫及1套完整答案詳解
- 部編人教版二年級(jí)下冊(cè)小學(xué)語文全冊(cè)教案(教學(xué)設(shè)計(jì))(新課標(biāo)核心素養(yǎng)教案)
- 古建筑節(jié)能改造關(guān)鍵技術(shù)
- 設(shè)備能力指數(shù)(CMK)計(jì)算表
- DHI量表眩暈量表
- 紀(jì)檢辦案安全網(wǎng)絡(luò)知識(shí)試題及答案
- 新版糖尿病看圖對(duì)話新
- 高三一月省檢動(dòng)員主題班會(huì)
- 國家自然科學(xué)基金依托單位管理培訓(xùn)(第二十八期)測(cè)試卷附有答案
- 色溫-XY-UV色坐標(biāo)換算公式
- 中醫(yī)師承人員跟師工作月記表
- 口腔影像學(xué)-醫(yī)學(xué)影像檢查技術(shù)及正常圖像
評(píng)論
0/150
提交評(píng)論