亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于STM32的IO設(shè)備模擬器設(shè)計

        2018-03-03 18:37:41靳俊杰李欣徐銘
        物聯(lián)網(wǎng)技術(shù) 2018年2期

        靳俊杰+李欣+徐銘

        摘 要:為解決實驗室某些海洋觀測類IO設(shè)備價格昂貴、體積較大、數(shù)量較少的問題,文中設(shè)計了一款I(lǐng)O設(shè)備模擬器。IO模擬器是一款模擬IO設(shè)備指令與相應(yīng)響應(yīng)的模塊,系統(tǒng)以STM32F103為主控制器件,將Keil MDK-ARM作為軟件平臺,通過學(xué)習(xí)實際IO設(shè)備的指令與響應(yīng),模擬出實際IO設(shè)備的通信協(xié)議。文中主要介紹了模擬器的硬件搭建及軟件設(shè)計。經(jīng)實驗驗證,該模擬器可在實驗室的系統(tǒng)聯(lián)合調(diào)試中代替實際設(shè)備,也可以解決實際設(shè)備數(shù)量不足的問題。

        關(guān)鍵詞:模擬器;STM32;FLASH;設(shè)備學(xué)習(xí)

        中圖分類號:TP39;TM5 文獻標識碼:A 文章編號:2095-1302(2018)02-00-03

        0 引 言

        近年來,各國為各自利益逐漸加強了海洋研究,海洋觀測方法日趨多樣化,海洋觀測平臺成為研究海洋的重要途徑[1]。海洋觀測平臺由MCU控制,外圍接若干海洋設(shè)備終端,如采用溫鹽深儀傳輸海洋溫度、鹽度、壓力;多普勒流速剖面儀傳輸海流流速、流向等數(shù)據(jù)。一個成功的海洋觀測平臺的開發(fā)需要首先經(jīng)過實驗室的聯(lián)合調(diào)試。

        若干個課題組協(xié)同工作時,經(jīng)常共同使用有限個設(shè)備終端,或者存在訂貨周期過長、設(shè)備出海等問題,導(dǎo)致聯(lián)合調(diào)試時因某些設(shè)備缺位而延長系統(tǒng)調(diào)試周期,而模擬器可以較好地解決這些問題[2]。此模擬器無需深入了解設(shè)備的通信協(xié)議與數(shù)據(jù)格式,只需對實際設(shè)備實現(xiàn)一次操作,即可學(xué)習(xí)實際設(shè)備的通信協(xié)議,最終達到代替實際設(shè)備參與系統(tǒng)調(diào)試的目的。

        1 總體設(shè)計

        系統(tǒng)總體結(jié)構(gòu)如圖1所示。

        本文設(shè)計的模擬器由STM32F103微處理器模塊、供電模塊、LED燈指示模塊、存儲模塊、串口模塊、按鍵構(gòu)成。按鍵用于系統(tǒng)硬件復(fù)位,撥動開關(guān)選擇系統(tǒng)工作模式,LED燈指示系統(tǒng)的運行狀態(tài),存儲模塊用于存儲系統(tǒng)數(shù)據(jù),防止掉電丟失。其工作方式分為兩種,一種是學(xué)習(xí)實際設(shè)備的指令與響應(yīng)及實際設(shè)備收到指令與發(fā)出響應(yīng)的時間間隔,學(xué)習(xí)數(shù)據(jù)存入FLASH;另一種是模擬實際設(shè)備,在收到上位機指令后,通過字符匹配FLASH中的指令,延長實際設(shè)備收到指令與發(fā)出響應(yīng)的時間間隔,回復(fù)與指令對應(yīng)的響應(yīng)。模擬器工作簡圖如圖2所示。

        2 硬件設(shè)計

        2.1 存儲模塊

        STM32F103內(nèi)核為Cortex-M3,采用ARM V7構(gòu)架,是現(xiàn)今性價比最高的一款A(yù)RM微控制器,最高工作頻率可達72 MHz,該芯片具有64 kB SRAM,512 kB FLASH,擁有快速的中斷處理[3]。本設(shè)計使用了芯片的USART1、USART3、Timer3、Timer7及SPI接口。

        串行外圍設(shè)備接口(Serial Peripheral Interface,SPI)是一種全雙工,高速、同步的通信總線,在芯片的管腳上只占用四根線。本設(shè)計使用STM32F103自帶的SPI來實現(xiàn)對外部FLASH(W25Q128)的讀寫操作[4]。如圖3所示,W25Q128是華邦公司推出的大容量SPI FLASH產(chǎn)品,容量為128 Mb,即16MB,可用于存儲字庫和其他用戶數(shù)據(jù),系統(tǒng)掉電后數(shù)據(jù)不丟失,滿足了本設(shè)計的數(shù)據(jù)存儲要求。設(shè)置SPI為全雙工、主機模式、8位幀格式傳輸,高位在前,具有CRC校驗功能[5]。SPI波特率預(yù)分頻值為256分頻,傳輸速度為36MHz/256=140.625 kHz。

        2.2 串口通訊部分設(shè)計

        儀器通訊通常采用串行通信和并行通信兩種方式[6]。串行通信方式具有使用線路少、成本低的優(yōu)點,在遠程傳輸時,避免了多條線路特性的不一致而被廣泛采用[7]。計算機和單片機都具有串行接口,可以完成上位機與模擬器、模擬器與實際設(shè)備之間的通訊任務(wù)。如圖4所示,模擬器串口1可以實現(xiàn)兩種不同的通訊模式,通過跳線帽或者撥動開關(guān)選擇相應(yīng)的通信方式,即RS 232,RS 485,理論上可實現(xiàn)不僅限于海洋儀器的模擬,具備較強的延伸性。

        此設(shè)計使用SP3232芯片作為TTL轉(zhuǎn)RS 232芯片。數(shù)據(jù)傳輸速率最高為20 kb/s,最大距離為15 m。可供兩路串口共同使用,接口為延伸通訊接口,可同時使用DB-9與三線制連接法,兩者均使用RXD、TXD、GND三條信號線,程序設(shè)計中未使用握手信號,可直接發(fā)送和接收數(shù)據(jù)。RS 485隸屬于OSI模型物理層電氣特性的規(guī)定,為兩線、半雙工、多點通信的標準。其電氣特性和 RS 232不一樣,而是用纜線兩端的電壓差值來表示傳遞信號,通訊距離為1 200 m[8]。本設(shè)計使用MAXIM公司生產(chǎn)的MAX3471,USART_RE為發(fā)送使能端,接STM32的GPIOA_8,高電平發(fā)送數(shù)據(jù),低電平接收數(shù)據(jù),接收和發(fā)送均由軟件控制。串口3與串口1的電路圖基本相同,處于學(xué)習(xí)模式時與實際IO設(shè)備連接。

        2.3 狀態(tài)控制部分設(shè)計

        系統(tǒng)運行狀態(tài)由STM32的GPIOE_3的輸入邏輯電平控制,連接外部三腳撥動開關(guān),通過判斷該引腳的輸入邏輯電平來決定模擬器的工作方式,電平狀態(tài)改變則系統(tǒng)工作狀態(tài)改變。運行狀態(tài)指示燈(紅色LED燈)連接引腳GPIOB_5,系統(tǒng)運行狀態(tài)不同則指示燈閃爍運行方式改變。

        2.4 供電設(shè)計

        供電電路采用電平轉(zhuǎn)換芯片AMS1117-3.3,這是一個5 V轉(zhuǎn)3 V穩(wěn)壓電源芯片,內(nèi)部集成有過熱保護與限流電路。通過該芯片,可以實現(xiàn)對模擬器的3.3 V供電與5 V供電,同時也可以使用USB供電,保證了模擬器在多供電環(huán)境的使用。供電模塊還具有供電狀態(tài)指示燈(藍色LED燈)。

        3 系統(tǒng)軟件設(shè)計

        (1)程序初始化:初始化包括串口初始化,定時器初始化,W25Q128初始化。程序中加入了看門狗,可防止系統(tǒng)因外界環(huán)境的干擾而出現(xiàn)程序跑飛的現(xiàn)象[9]。為保證模擬器正常穩(wěn)定地工作,程序采用輪詢方式確定是否改變模擬器的工作狀態(tài)。endprint

        (2)定時器在串口通信中的軟件設(shè)計:USART1和USART3采用中斷接收字符方式共同使用Timer7,通過判斷接收到的兩個字符間的時間差來斷定是否為連續(xù)的數(shù)據(jù)[10]。Timer7是STM32F103自帶的兩個基本定時器之一,定時器中斷優(yōu)先級為0,高于串口優(yōu)先級,采用由下至上的計數(shù)方式,10 ms進入一次定時器中斷,定時器中斷中串口接收標記設(shè)置為接收完成,兩個字節(jié)接收時間間隔小于10 ms即認為這兩個字節(jié)屬于同一字符串,通過定時器來判斷接收的字節(jié)是否屬于同一次數(shù)據(jù),避免兩次數(shù)據(jù)間的干擾。將USART1和USART3接嵌入式模塊。Timer3是通用定時器,在本設(shè)計中用來記錄USART1開始透傳數(shù)據(jù)至USART3到USART3收到外部數(shù)據(jù)之間的時間間隔,即實際設(shè)備的響應(yīng)時間,定時器中斷每隔1s進入一次,在中斷時間間隔執(zhí)行自加操作,以一定的格式將時間間隔寫入FLASH保存,便于后續(xù)讀取。

        (3)為了保證上位機指令與設(shè)備響應(yīng)正常匹配,W25Q128中的數(shù)據(jù)存儲格式如圖5所示。

        模擬器模擬設(shè)備時析出有效數(shù)據(jù),程序流程如圖6所示。

        4 結(jié) 語

        本設(shè)計以模擬美國TELEDYN分析儀表公司的多普勒流速剖面儀(ADCP)以及Sea-Bird公司的SBE39-IM型溫鹽深儀為例,實現(xiàn)了對這些實際儀器IO功能的模擬。通過實驗檢驗,成功實現(xiàn)了實驗室環(huán)境下模擬器代替ADCP在定時衛(wèi)星通信系統(tǒng)中的作用以及代替SBE39-IM型溫鹽深儀在電磁耦合浮標系統(tǒng)中的作用。

        參考文獻

        [1]謝東亞,李欣.深海海底邊界層原位監(jiān)測中電源管理系統(tǒng)的設(shè)計[J].現(xiàn)代電子技術(shù),2013,36(6):136-138.

        [2]陳飛,余燁.電子測量儀器IO模擬器設(shè)計[J].電子產(chǎn)品世界,2008(7):87-88.

        [3]丁力,宋志平,徐萌萌,等.基于STM32的嵌入式測控系統(tǒng)設(shè)計[J].中南大學(xué)學(xué)報(自然科學(xué)版),2013(S1):260-265.

        [4] STM32F1開發(fā)指南-庫函數(shù)版本[M].北京:北京航空航天大學(xué)出版社,2014.

        [5]高英.串行數(shù)控信號的模擬方法在儀器設(shè)計與維修中的應(yīng)用[J].現(xiàn)代測量與實驗室管理,1999(6):54-55.

        [6]底偉.C++ Builder實現(xiàn)模擬器測控系統(tǒng)單片機與上位機之間的串口通汛[J].科技風,2009(5):58,60.

        [7]歐陽斌武.電子測量儀器IO模擬器設(shè)計方案探討[J].科技資訊,2009(17):67.

        [8]范逸之.C++ Builder與RS-232串行通信控制[M].北京:清華大學(xué)出版社,2002.

        [9]陳宇澤,宋緒勇.嵌入式測控系統(tǒng)的設(shè)計與應(yīng)用[J].科技與創(chuàng)新,2017(15):160-161.

        [10]林倩.DHT11數(shù)字溫濕度傳感器通信協(xié)議的IO模擬[J].信息通信,2017(1):206-207.endprint

        日韩精品中文字幕免费人妻| 成人精品综合免费视频| 中文字幕第七页| 国产一区二区内射最近人| 极品少妇人妻一区二区三区| 国产精品videossex久久发布| 久久久天堂国产精品女人| 亚洲自拍愉拍| 精品在线亚洲一区二区三区 | 新婚少妇无套内谢国语播放 | 亚洲无精品一区二区在线观看| 国产成人精品2021| 两个人看的www高清视频中文| 久久99精品这里精品动漫6| 美女被内射很爽的视频网站| 久久精品国产亚洲av麻豆长发 | 亚洲avav天堂av在线网爱情| 亚洲色婷婷免费视频高清在线观看| 在线观看黄片在线播放视频| 亚洲国产精品成人av在线不卡| 成人毛片av免费| 麻豆国产高清精品国在线| 丝袜美腿一区二区在线观看| 成人国产精品一区二区八戒网| 日韩精品久久久肉伦网站| 精品视频入口| 久久五月精品中文字幕| 欧美a级毛欧美1级a大片| 无码人妻精一区二区三区| 国产自产av一区二区三区性色| 亚洲高清激情一区二区三区| 国产精品无码素人福利不卡| 综合三区后入内射国产馆| 无码AV大香线蕉伊人久久| 亚洲高清国产成人精品久久| 国产精品多p对白交换绿帽| 一本久道久久综合久久| 东京热东京道日韩av| 亚洲线精品一区二区三区| 国产乱子伦一区二区三区| 少妇bbwbbw高潮|