freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于stm32的智能建筑以太網(wǎng)與rs232數(shù)據(jù)傳輸網(wǎng)關(guān)的設(shè)計(jì)(留存版)

  

【正文】 .................................................................................................. 25 程序的調(diào)試與下載 ....................................................................................................... 25 軟件配置 ....................................................................................................................... 27 TCP 與 RS232 的雙向數(shù)據(jù)傳輸 .................................................................................... 29 TCP 向 RS232 進(jìn)行數(shù)據(jù)傳輸 ................................................................................. 30 RS232 向 TCP 進(jìn)行數(shù)據(jù)傳輸 ................................................................................. 31 測(cè)試結(jié)論分析 ........................................................................................................ 32 致謝 ........................................................................................................................................... 33 參考文獻(xiàn) ................................................................................................................................... 34 附錄 ........................................................................................................................................... 36 第一章 方 案介紹 1 第一章 方案介紹 課題設(shè)計(jì)背景 智能建筑 就 是 把 建筑物的結(jié)構(gòu)、設(shè)備、服務(wù)和管理 依據(jù)不同 用戶的 要求而 進(jìn)行 的 最合理的設(shè)計(jì) ,從而為用戶提供一個(gè)高效、舒適、便利的人性化建筑環(huán)境 。 :本次設(shè)計(jì)的硬件設(shè)計(jì)理念其實(shí)很簡(jiǎn)單,主要是把整個(gè)系統(tǒng)模塊化,然后再對(duì)各個(gè)模塊的功能進(jìn)行細(xì)致的闡述。 從以上的 4 種系列的 STM32 微控制器來(lái)看 , 既要同時(shí)滿足設(shè)計(jì)中要求的具有以太網(wǎng)接口和 RS232 接口的微型控制器,又要結(jié)合高性能和低功耗的特點(diǎn),以上能滿足條件的最優(yōu)答案就是互聯(lián)型芯片 STM32F107 了,因此最終決定 選用 F1 互聯(lián)型系列的STM32F107 作為 本設(shè)計(jì)的 微型控制器。 OTG PHY 的 USB OTG 全速的接口,所以,具有 USB 主機(jī)的功能,不再需要外置的 USB OTG 或 PHY. PLL 模塊 , 配有 高級(jí) 的 時(shí)鐘配置方案 為外設(shè)提供服務(wù) , 目的就是為了更加的 靈活 ,而 且成本 也會(huì)更加的優(yōu)化。它主要是以 CotexM3 內(nèi)核 為基礎(chǔ)而存在 的 32 位閃存微控制器, 它所采用的指令也是非常的高 端,是一種 高代碼 、 高性能密度的指令集, 除此之外,還運(yùn)用到了一個(gè)叫作 緊藕合嵌套向量中斷控制器。一般來(lái)說(shuō),復(fù)位電路有兩個(gè)作用,即可以對(duì)系統(tǒng)上電進(jìn)行復(fù)位,又可以在系統(tǒng)運(yùn)行過(guò)程中,通過(guò)按鍵來(lái)進(jìn)行手動(dòng)復(fù)位。除此之外, if 還定義了一些狀態(tài)回調(diào)函數(shù),只有當(dāng)配置了該功能時(shí),才會(huì)使用。分配器可以對(duì)每個(gè)節(jié) 點(diǎn)進(jìn)行必要的檢查,看看它前后會(huì)不會(huì)有空閑的內(nèi)存塊,如果找到了 空閑的內(nèi)存塊 ,就會(huì) 將它們合并在一起,形成一個(gè)相對(duì)較大的空閑內(nèi)存塊了 。在內(nèi)存池里面進(jìn)行內(nèi)存管理,一個(gè)最大的優(yōu)點(diǎn)就是可以很好的防止內(nèi)存碎片的產(chǎn)生,而且它的內(nèi)存分配和釋放效 率會(huì)更高,相反,它的 缺點(diǎn)就是浪費(fèi)部分的內(nèi)存。因此,在鏈路層是很容易出現(xiàn)大的 IP 數(shù)據(jù)包分解這種情況的。一旦我們需要的網(wǎng)絡(luò)接口確定之后,數(shù)據(jù)包就會(huì)被傳遞到 ip_output_if()函數(shù),而這個(gè)函數(shù)也會(huì)把發(fā)送網(wǎng)絡(luò)接口當(dāng)作一個(gè)函數(shù)自變量。同理,當(dāng)我們需要終止連接的時(shí)候,也必須使用 TCP 連接中斷過(guò)程來(lái)關(guān)閉連接,不然就不會(huì)達(dá)到我們希望達(dá)到的要求。 首先介紹結(jié)構(gòu)圖最頂端的兩個(gè)部分,源端口號(hào)和目的端口號(hào)。在連接創(chuàng)建完成以后,協(xié)議控制模塊( PCB)就進(jìn)入監(jiān)聽(tīng)模式了,可以直接的去連接另外一個(gè)主機(jī),也可以等待數(shù)據(jù)接收的連接信號(hào)。 /* 進(jìn)入監(jiān)聽(tīng)狀態(tài) */ tcp_accept(pcb,tcp_232_server_accept)。當(dāng) RS232 串口接收數(shù)據(jù)進(jìn)行組幀 之后,就將 RS232 組幀數(shù)據(jù)傳送到 STM32 為控制器的數(shù)據(jù)轉(zhuǎn)換部分,然后再將 RS232 數(shù)據(jù)幀轉(zhuǎn)換成以太網(wǎng)數(shù)據(jù)幀,最終傳送到各個(gè)客戶端。一般來(lái)說(shuō), RS232 的傳輸速度是比不上以太網(wǎng)的傳輸速度的,因此,當(dāng)我們想把串口接收到的數(shù)據(jù)向網(wǎng)上傳輸?shù)臅r(shí)候,就不能一個(gè)字節(jié)一個(gè)字節(jié)的傳送了。 () Struct tcp_pcb*tcp_listen(struct tcp_pcb*pcb) 該函數(shù)的功能就是當(dāng)一個(gè)正在請(qǐng)求的連接被接收的時(shí)候,會(huì)使之前所指定的連接開(kāi)始進(jìn)入監(jiān)聽(tīng)狀態(tài)。 由圖 中列舉的 6個(gè)標(biāo)志比特可以知道,它們的用法依次分別是:第一個(gè)是緊急指針的有效標(biāo)識(shí);第二個(gè)是確認(rèn)序號(hào)的有效標(biāo)識(shí);第三個(gè)表示的是接收端應(yīng)該快速的把報(bào)文段發(fā)送給應(yīng)用層;第四個(gè)是重新建立連接;第五個(gè)表示的是一個(gè)同步的序號(hào),在建立連接的時(shí)候需要用它來(lái)發(fā)起連接;第六個(gè)表示發(fā)送端已經(jīng)完成了發(fā)送的任務(wù)。 TCP 在傳輸?shù)倪^(guò)程中,并不會(huì)知道它所傳輸?shù)淖止?jié)是什么內(nèi)容,也不會(huì)知道傳輸?shù)钠鹗嘉恢?,它只能通過(guò)應(yīng)用層的協(xié)議來(lái)對(duì)字流節(jié)的數(shù)據(jù)進(jìn)行分析。假如所要求的目的地址和掩碼的接口 IP 地址相同,就完全可以選擇這個(gè)接口。16位首部校驗(yàn)和只會(huì)針對(duì)該 IP 的首部做檢驗(yàn),對(duì)于其內(nèi)部數(shù)據(jù)在傳輸過(guò)程中是否會(huì)出錯(cuò),它并不是很在乎,數(shù)據(jù)的校 驗(yàn)工作,一般來(lái)說(shuō)是由上層協(xié)議負(fù)責(zé)的,例如: ICMP、UDP、 IGMP、 TCP 等協(xié)議都需要計(jì)算他們的頭部和整個(gè)數(shù)據(jù)區(qū)的長(zhǎng)度。 為內(nèi)部函數(shù)的回調(diào)提供特殊的 接口, 主要是為了加強(qiáng) 應(yīng)用程序 的 功能 。 當(dāng) Mem_malloc() 函數(shù)對(duì) 內(nèi)存 進(jìn)行分配的時(shí)候,它會(huì)把所有它所用到的字節(jié)數(shù)作為數(shù)據(jù)傳遞 給該函數(shù),而返回 來(lái)的數(shù)據(jù) 就會(huì)指 一個(gè)新的指針,且這個(gè)內(nèi)存是最新分配的 。 然而兩者的區(qū)別在: TCP 協(xié)議提供的主要是 面向連接和可靠的字節(jié)流型服務(wù), 當(dāng)用戶需要和客服端進(jìn)行數(shù)據(jù)交換之前 ,我們 就需要提前在雙方之間建立一個(gè)所謂的 TCP 連接 ,這樣才能進(jìn)行下一步的數(shù)據(jù)傳輸。因此,在這次設(shè)計(jì)中,我們采用的是 SP3232芯片來(lái)完成電平的轉(zhuǎn)換工作。所以必須對(duì)以上各個(gè)模塊進(jìn)行嚴(yán)謹(jǐn)?shù)脑O(shè)計(jì),才能使數(shù)據(jù)能夠順利的傳輸。正是因?yàn)?這個(gè)原因, 因此在運(yùn)行的過(guò)程中 ,甚至 在 待機(jī) 的狀態(tài) 時(shí) 都 會(huì)裁減應(yīng)用系統(tǒng),可以 使 性能和功耗 能長(zhǎng)期的保持在 一個(gè) 相對(duì) 平衡 的狀態(tài) ,電池可以 為 RTC 的運(yùn)行 提供充足的電能 ,同時(shí) 可以在 84字節(jié)后備寄存器中保持應(yīng)用程序關(guān)鍵數(shù)據(jù)。相信一定能對(duì)工業(yè)市場(chǎng)的開(kāi)發(fā)上做出一定的貢獻(xiàn)。所以最后需要運(yùn)用 ssv20(串口調(diào)試程序)和 TCPtester 來(lái)進(jìn)行模擬的數(shù)據(jù)傳輸網(wǎng)關(guān)的設(shè)計(jì),只有不斷的調(diào)試和修改,才能最終使得我們的設(shè)計(jì)符合最終的設(shè)計(jì)要求。具有不同的傳輸速率,不同的傳輸方向。 基于 STM32 的智能建筑以太網(wǎng)與 RS232 數(shù)據(jù) 傳輸網(wǎng)關(guān)的設(shè)計(jì) Design of Ether and RS232 Data Transmission Gateway Based on STM32 學(xué)生姓名: Xxx 學(xué)生學(xué)號(hào): Xxx 專業(yè)名稱: 建筑電氣與智能化 指導(dǎo)教師: Xxx 控制與機(jī)械工程學(xué)院 20xx 年 6 月 18 日獨(dú)創(chuàng)性聲明 本人聲明所呈交的 畢業(yè)設(shè)計(jì)( 論文 ) 是本人在 指導(dǎo)教師 指導(dǎo)下進(jìn)行的研究工作和取得的研究成果,除了文中特別加以 引用 標(biāo)注之處外,論文中 不包含其他人已經(jīng)發(fā)表或撰寫(xiě)過(guò)的研究成果, 沒(méi)有偽造數(shù)據(jù)的行為 。 在當(dāng)今高速實(shí)時(shí)數(shù)字信號(hào)處理系統(tǒng)中,涉及的數(shù)據(jù)對(duì)象趨于多樣化,這些數(shù)據(jù)通常需要不同的網(wǎng)絡(luò)接口。 ,這是非常重要的一步,因?yàn)椴还苁怯布脑O(shè)計(jì)還是軟件的設(shè)計(jì),最終還是要為最后的調(diào)試服務(wù),假如調(diào)試不成功,一切都是白費(fèi)功夫而已。為了滿足市場(chǎng)的不同需求, STM32 開(kāi)發(fā)板在性質(zhì)和價(jià)格上都做出了巨大的取舍。另外, 可編程喚醒功能的時(shí)鐘和 84 字節(jié)的后備數(shù)據(jù)寄存器 的存在 , 也是它的一大優(yōu)勢(shì)。 當(dāng)以太網(wǎng)需要 傳送數(shù)據(jù)到 RS232 的時(shí)候,或者 RS232 需要傳送數(shù)據(jù)到以太網(wǎng)的時(shí)候, STM32 芯片就顯得格外的重要,因?yàn)樗菂f(xié)議轉(zhuǎn)換的控制中心,第三章 網(wǎng)關(guān)硬件設(shè)計(jì) 7 不管是轉(zhuǎn)換成以太網(wǎng)數(shù)據(jù)包還是 RS232 幀的數(shù)據(jù),都是需要 STM32 來(lái)進(jìn)行協(xié)議轉(zhuǎn)換的。所以在設(shè)計(jì)通信的過(guò)程中必須采用電平轉(zhuǎn)換的方法,以便使兩者的電平相配。 : 傳輸層協(xié)議 一般分為兩種類型 , 第一種 是 本文需要用到的 TCP(傳輸控制協(xié)議 ), 第二種是一種名為 UDP(用戶數(shù)據(jù)包協(xié)議) 的協(xié)議 。 在 對(duì) 內(nèi)存堆 進(jìn)行分配的時(shí)候 , 需要對(duì) mem_int()內(nèi)存堆進(jìn)行初始化,主要就是為了說(shuō)明 起始和結(jié)束的地址 ,還有初始化 內(nèi)存 的空閑列表,如果是 lwip 初始化時(shí) ,為了給 自己 進(jìn)行調(diào)用,那么此個(gè)接口就是 內(nèi)部 存在的 私有接口, 一般 是不會(huì)對(duì) 客戶層進(jìn)行 開(kāi)放的。 RTT 估算 。它能總結(jié) 每個(gè)數(shù)據(jù)包 的來(lái)源,不管它是從哪個(gè)協(xié)議傳來(lái)的 ,如果 這個(gè)數(shù)值是 1,則說(shuō)明它是 ICMP 協(xié)議;如果這個(gè)數(shù)值 值 是 2,則說(shuō)明它是 IGMP協(xié)議;如果該數(shù)值是 6,則說(shuō)明它是 TCP 協(xié)議;如果該數(shù)值為 17,則說(shuō)明它是 UDP 協(xié)議。在查找 IP 包的 IP 地址的過(guò)程中,可以很好的利用網(wǎng)絡(luò)接口的網(wǎng)絡(luò)掩碼來(lái)完成。 :顧名思義,就是當(dāng) TCP 在進(jìn)行數(shù)據(jù)傳輸?shù)臅r(shí)候,在邏輯管道上進(jìn)行傳輸?shù)臄?shù)據(jù)是一種連續(xù)的字節(jié)流,而且 TCP 的報(bào)頭序列號(hào)和確認(rèn)號(hào)也是以字節(jié)的形式存在的。 32位確認(rèn)序號(hào)的 ACK 字段永遠(yuǎn)是被置于 1 的位置,因?yàn)楫?dāng) ACK 被置于 1的時(shí)候才有效,這個(gè)序號(hào)攜 帶的是接收端希望接收到的下一個(gè)序列號(hào)。當(dāng)返回值是 ERROK 時(shí),說(shuō)明已經(jīng)正確地綁定了指定的連接;當(dāng)返回值是 ERRUSE 時(shí),說(shuō)明我們之前所指定的端口號(hào)已經(jīng)被綁定了一個(gè)連接,與這次綁定產(chǎn)生了嚴(yán)重的沖突。在這樣的情況下,能不能克服數(shù)據(jù)傳輸中的丟幀現(xiàn)象,將是我們需要重點(diǎn)研究的對(duì)象。 軟件設(shè)計(jì) 為了能夠直觀的認(rèn)識(shí)數(shù)據(jù)傳輸?shù)恼麄€(gè)過(guò)程, 系統(tǒng)的設(shè)置和各個(gè)接口的初始化是必不可少的步驟,以下為 軟件設(shè)計(jì)的框圖: S T M 3 2 系 統(tǒng) 設(shè) 置 ( 時(shí)鐘 , 以 太 網(wǎng) ,N V I C , G P I O ) 以 及S T M 3 2 1 0 C E V A L 資 源R S 2 3 2 串 口 的 初 始 化L W I P 協(xié) 議 的 初 始 化接 收 數(shù) 據(jù) 協(xié) 議 轉(zhuǎn) 換 發(fā) 送 數(shù) 據(jù) 圖 42 軟件設(shè)計(jì)框圖 由圖 42 可以知道以下各個(gè)功能模塊的設(shè)計(jì): 的系統(tǒng)設(shè)置 主控芯片 STM32 的設(shè)置是利用函數(shù) system_setup()來(lái)實(shí)現(xiàn)的,具體來(lái)說(shuō),完成對(duì)STM32 時(shí)鐘,鎖相環(huán)和 FLASH 的配置,啟用 USART2 時(shí)鐘和 ETHERNET 時(shí)鐘,設(shè)置需要用到的端口 GPIO_Configuration,嵌套中斷控制器 NVIC_Configuration,定時(shí)器Timer_Configruation。 /* 設(shè)置有連接請(qǐng)求時(shí)的回調(diào)函數(shù) */ 由以上函數(shù)關(guān)于 RS232 端口初始化的描述,可以很容易的總結(jié)出 TCP 服務(wù)器初始化的過(guò)程如下: PCB 連接( tcp_pcb 結(jié)構(gòu)體類指針)分配合理的本地 IP 地址和端口號(hào)。 () 第四章 軟件介紹
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1