




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
基于STM32的簡易示波器開發(fā)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘要示波器是一種用途十分廣泛的電子測量儀器。它能把肉眼看不見的電信號轉(zhuǎn)化成我們看得見的圖像,讓人們研究各種電現(xiàn)象的變化過程。數(shù)字存儲(chǔ)示波器是將信號離散采樣之后在顯示屏幕上顯示,其中經(jīng)歷AD采樣、數(shù)據(jù)運(yùn)算、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)分析、波形回放等過程。本系統(tǒng)是基于MiniSTM32處理器,設(shè)計(jì)一個(gè)簡易示波器,使其能夠達(dá)到示波器的一些基本功能。所設(shè)計(jì)的系統(tǒng)通過下位機(jī)采集電信號,經(jīng)USB線將數(shù)據(jù)發(fā)送至上位機(jī)軟件解碼畫出其波形圖。上位機(jī)軟件基于Qt應(yīng)用程序開發(fā)框架,設(shè)計(jì)一個(gè)操作顯示界面,使其具有自動(dòng)模式,可對波形的顯示進(jìn)行自動(dòng)調(diào)整。并通過不同功能按鍵實(shí)現(xiàn)幅值、測量頻率、進(jìn)行傅里葉變換等功能。也可根據(jù)使用者的需求,手動(dòng)調(diào)整顯示的周期、幅值等參數(shù)。關(guān)鍵詞:示波器;STM32;AD轉(zhuǎn)換器;Qt目錄第一章緒論 51.1引言 51.2研究背景和意義 51.3研究現(xiàn)狀 6第二章系統(tǒng)描述 82.1系統(tǒng)總體設(shè)計(jì) 82.2系統(tǒng)結(jié)構(gòu) 82.3系統(tǒng)開發(fā)研究內(nèi)容 9第三章系統(tǒng)硬件 103.1硬件 103.1.1下位機(jī)MiniSTM32控制器 103.1.2上位機(jī)(PC機(jī)) 13第四章系統(tǒng)軟件設(shè)計(jì) 144.1下位機(jī)MiniSTM32 154.1.1數(shù)字/模擬轉(zhuǎn)換DAC 154.1.2模擬/數(shù)字轉(zhuǎn)換ADC 164.1.3USART串口協(xié)議 184.2上位機(jī)Qt開發(fā)框架 214.2.1Qt開發(fā) 21第五章實(shí)物展示 275.1硬件總體及功能介紹 27第六章設(shè)計(jì)總結(jié)與展望 296.1總結(jié) 296.1展望 29參考文獻(xiàn) 32第一章緒論1.1引言單片機(jī)比專用處理器最適合應(yīng)用于嵌入式系統(tǒng),因此它得到了最多的應(yīng)用。事實(shí)上單片機(jī)是世界上數(shù)量最多的計(jì)算機(jī)。現(xiàn)代人類生活中所用的幾乎每件電子和機(jī)械產(chǎn)品中都會(huì)集成有單片機(jī)。手機(jī)、電話、計(jì)算器、家用電器、掌上電腦以及鼠標(biāo)等電腦配件中都配有1-2部單片機(jī)。而個(gè)人電腦中也會(huì)有為數(shù)不少的單片機(jī)在工作。隨著集成電路的發(fā)展和數(shù)字信號處理技術(shù)的采用,數(shù)字示波器已成為集顯示、測量、運(yùn)算、分析、記錄等各種功能于一體的智能化測量儀器。數(shù)字示波器在性能上也逐漸超越模擬示波器,并有取而代之的趨勢。與模擬示波器相比,數(shù)字示波器不僅具有可存儲(chǔ)波形、體積小、功耗低,使用方便等優(yōu)點(diǎn),而且還具有強(qiáng)大的信號實(shí)時(shí)處理分析功能。因此,數(shù)字示波器的使用越來越廣泛。目前我國國內(nèi)自主研發(fā)的高性能數(shù)字示波器還是比較少,廣泛使用的仍是國外產(chǎn)品。因此,有必要對高性能數(shù)字示波器和單片機(jī)進(jìn)行廣泛和深入研究。1.2研究背景和意義在電子測量技術(shù)的發(fā)展史上,示波器的出現(xiàn)給測量技術(shù)帶來了翻天覆地的變化,可以說的上是一場革命,從布勞恩的第一臺(tái)示波器問世以來,示波器的功能越來越豐富,性能也與日俱增。從70年代開始人們的注意力主要轉(zhuǎn)向自動(dòng)化、實(shí)用化和提高準(zhǔn)確度。微型計(jì)算機(jī)和儀器通用接口的出現(xiàn),給示波器的自動(dòng)化發(fā)展推到了一個(gè)嶄新的水平。微機(jī)的引入使示波器在設(shè)計(jì)、性能、功能、實(shí)用以及操作和故障診斷等方面都產(chǎn)生了巨大變化,隨著工業(yè)發(fā)展對示波器的設(shè)計(jì)和測量的需要,示波器的功能已從時(shí)域分析擴(kuò)展到了數(shù)據(jù)域分析。當(dāng)前,高精度、功能多樣、使用靈活、操作方便、性能可靠,已成為示波器生產(chǎn)廠家追求的主要目標(biāo)。傳統(tǒng)模擬的示波器其優(yōu)點(diǎn),即具有迅速的響應(yīng)特性、面板直接控制操作、可直接觀測輸入信號、價(jià)格低廉等。目前數(shù)字示波器已經(jīng)完全能夠做到,特別是在捕獲非重復(fù)信號、避免信號虛化和閃爍、在時(shí)間上從觸發(fā)事件方向?qū)ほE實(shí)現(xiàn)在電路中隔離故障等方面,數(shù)字示波器顯示出了模擬示波器無可比擬的優(yōu)勢。因此,數(shù)字示波器由于其性能優(yōu)越,和良好的性價(jià)比,現(xiàn)在已成為示波器的主流產(chǎn)品。通過本設(shè)計(jì),可以達(dá)到學(xué)以致用,把理論與實(shí)踐相結(jié)合,學(xué)會(huì)處理設(shè)計(jì)過程中出現(xiàn)的一些問題,掌握設(shè)計(jì)的技巧,為以后工作打下基礎(chǔ),并完成一個(gè)能滿足基本需要的示波器。1.3研究現(xiàn)狀單片機(jī)誕生于20世紀(jì)70年代末,經(jīng)歷了SCM、MCU、SoC三大階段。單片機(jī)是嵌入式系統(tǒng)的獨(dú)立發(fā)展之路,向MCU階段發(fā)展的重要因素,就是尋求應(yīng)用系統(tǒng)在芯片上的最大化解決;因此,專用單片機(jī)的發(fā)展自然形成了SoC化趨勢。隨著微電子技術(shù)、IC設(shè)計(jì)、EDA工具的發(fā)展,基于SoC的單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)有較大的發(fā)展。因此,對單片機(jī)的理解可以從單片微型計(jì)算機(jī)、單片微控制器延伸到單片應(yīng)用系統(tǒng)。目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒有單片機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動(dòng)化過程的實(shí)時(shí)控制和數(shù)據(jù)處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統(tǒng),錄象機(jī)、攝象機(jī),以及程控玩具等等,這些都離不開單片機(jī)。單片機(jī)的技術(shù)進(jìn)步反映在內(nèi)部結(jié)構(gòu)、功率消耗、外部電壓等級以及制造工藝上。在這幾方面,較為典型地說明了數(shù)字單片機(jī)的水平。在目前,用戶對單片機(jī)的需要越來越多,但是,要求也越來越高。在單片機(jī)應(yīng)用中,可靠性是首要因素為了擴(kuò)大單片機(jī)的應(yīng)用范圍和領(lǐng)域,提高單片機(jī)自身的可靠性是一種有效方法。近年來,單片機(jī)的生產(chǎn)廠家在單片機(jī)設(shè)計(jì)上采用了各種提高可靠性的新技術(shù):EFT(EllectricalFastTransient)技術(shù),低噪聲布線技術(shù)及驅(qū)動(dòng)技術(shù),采用低頻時(shí)鐘。同時(shí)單片機(jī)在目前的發(fā)展形勢下還表現(xiàn)出可靠性及應(yīng)用越來越水平高和互聯(lián)網(wǎng)連接,所集成的部件越來越多,功耗越來越低和模擬電路結(jié)合越來越多等發(fā)展趨勢。半個(gè)世紀(jì)以來,示波器由電子管發(fā)展到晶體管,有發(fā)展到集成電路;由模擬電路發(fā)展到數(shù)字電路;由通用示波器發(fā)展到取、記憶、數(shù)字存儲(chǔ)、邏輯分析、故障判斷、只能化等多個(gè)系列,幾百個(gè)品種。以美國Tektronix公司為例,建立于1947年,目前已有9大系列,100多個(gè)品種,產(chǎn)品銷遍全球,己被世界公認(rèn)為示波器的權(quán)威。自1951年,我國在示波器生產(chǎn)方面也有很大進(jìn)展,形成了一支研發(fā)和設(shè)計(jì)示波器的專業(yè)隊(duì)伍,已能生產(chǎn)寬帶、取樣、高靈敏度、記憶、數(shù)字存儲(chǔ)、邏輯分析等各門類的示波器,有些門類的主要技術(shù)指標(biāo)已經(jīng)接近國際先進(jìn)水平。數(shù)字示波器是隨著數(shù)字電路的發(fā)展而發(fā)展起來的一種新型示波器。它是采用數(shù)字電路,把輸入信號經(jīng)過AD轉(zhuǎn)換,把模擬波形變換成數(shù)字信息,并存儲(chǔ)在存儲(chǔ)器中,待需要讀出時(shí),在通過DA轉(zhuǎn)換,能捕捉觸發(fā)前的信號,可通過接口與計(jì)算機(jī)相連接等特點(diǎn),與計(jì)算機(jī)連成系統(tǒng)。分析復(fù)雜的單次瞬變信號的有效儀器。剛一問世,就顯示出它強(qiáng)大的生命力,各行各業(yè)都迫切需要,有其廣闊的市場空間。第二章系統(tǒng)描述2.1系統(tǒng)總體設(shè)計(jì)本系統(tǒng)是一個(gè)基于STM32簡易示波器的開發(fā),主要有兩大部分組成:MiniSTM32模數(shù)轉(zhuǎn)換ADC模塊和USART收發(fā)模塊,上位機(jī)Qt界面操作顯示模塊。MiniSTM32作為硬件設(shè)備的驅(qū)動(dòng)以及AD采集模塊開發(fā),然后經(jīng)過USART收發(fā)模塊通過串口將硬件的工作情況,采集的數(shù)據(jù)發(fā)送至上位機(jī)Qt顯示界面。同時(shí),通過界面操作控制按鈕,向下位機(jī)發(fā)送指令,將數(shù)據(jù)進(jìn)一步處理,然后再傳輸顯示,從而達(dá)到上位機(jī)對下位機(jī)的控制。2.2系統(tǒng)結(jié)構(gòu)本設(shè)計(jì)主要由兩大塊構(gòu)成,如圖2-1所示:智能硬件設(shè)備:MiniSTM32F103處理器,上位機(jī)。Qt操作顯示界面。上位機(jī)STM32上位機(jī)STM32圖2-1系統(tǒng)總體圖系統(tǒng)各部分具體結(jié)構(gòu)圖如圖2-2所示。上位機(jī)USARTADCSTM32上位機(jī)USARTADCSTM32Qt操作顯示界Qt操作顯示界面上位機(jī)下位機(jī)下位機(jī)STM32圖2-2系統(tǒng)各部分結(jié)構(gòu)圖2.3系統(tǒng)開發(fā)研究內(nèi)容本系統(tǒng)的主要開發(fā)內(nèi)容有MiniSTM32模數(shù)轉(zhuǎn)換ADC模塊、USART收發(fā)模塊、Qt界面操作顯示模塊。搭建KeilMDK5,這是對模數(shù)轉(zhuǎn)換ADC模塊和USART收發(fā)模塊主要開發(fā)環(huán)境。通過Int網(wǎng)絡(luò),可以參照前輩的先例,然后將程序移植過來進(jìn)行開發(fā),完成這么兩個(gè)模塊。模數(shù)轉(zhuǎn)換ADC模塊:模擬信號只有通過A/D轉(zhuǎn)化為數(shù)字信號后才能用軟件進(jìn)行處理,這一切都是通過A/D轉(zhuǎn)換器(ADC)來實(shí)現(xiàn)的。對于ADC而言,采樣速率和分辨率是兩個(gè)非常重要的指標(biāo)參數(shù)。其中,采樣速率表示模擬信號轉(zhuǎn)換為數(shù)字信號的速率,與ADC器件的制造技術(shù)有關(guān),取決于ADC中比較器所能提供的判斷能力。分辨率表示模擬信號轉(zhuǎn)換為數(shù)字信號后的比特?cái)?shù)。本系統(tǒng)就是將采集的電信號通過A/D轉(zhuǎn)換成數(shù)字信號,然后將數(shù)據(jù)進(jìn)行處理。USART收發(fā)模塊一般分為三大部分:時(shí)鐘發(fā)生器、數(shù)據(jù)發(fā)送器和接收器??刂萍拇嫫鳛樗械哪K共享。時(shí)鐘發(fā)生器由同步邏輯電路(在同步從模式下由外部時(shí)鐘輸入驅(qū)動(dòng))和波特率發(fā)生器組成。發(fā)送時(shí)鐘引腳XCK僅用于同步發(fā)送模式下,發(fā)送器部分由一個(gè)單獨(dú)的寫入緩沖器(發(fā)送UDR)、一個(gè)串行移位寄存器、校驗(yàn)位發(fā)生器和用于處理不同幀結(jié)構(gòu)的控制邏輯電路構(gòu)成。使用寫入緩沖器,實(shí)現(xiàn)了連續(xù)發(fā)送多幀數(shù)據(jù)無延時(shí)的通信。接收器是USART模塊最復(fù)雜的部分,最主要的是時(shí)鐘和數(shù)據(jù)接收單元。數(shù)據(jù)接收單元用作異步數(shù)據(jù)的接收。除了接收單元,接收器還包括校驗(yàn)位校驗(yàn)器、控制邏輯、移位寄存器和兩級接收緩沖器(接收UDR)。接收器支持與發(fā)送器相同的幀結(jié)構(gòu),同時(shí)支持幀錯(cuò)誤、數(shù)據(jù)溢出和校驗(yàn)錯(cuò)誤的檢測。該模塊的功能主要是實(shí)現(xiàn)上位機(jī)與下位機(jī)的通信,下位機(jī)將采集的數(shù)據(jù)信息通過該模塊傳送至上位機(jī),上位機(jī)通過串口輸送指令至下位機(jī)進(jìn)行控制。搭建QtCreater開發(fā)環(huán)境,建立GUI界面設(shè)置操作按鈕以及顯示屏。運(yùn)用槽函數(shù)以及QserialPort串口功能來接受由下位機(jī)STM32傳輸?shù)臄?shù)據(jù),顯示實(shí)時(shí)動(dòng)態(tài)波形,通過操作按鈕控制下位機(jī)。第三章系統(tǒng)硬件3.1硬件3.1.1下位機(jī)MiniSTM32控制器本系統(tǒng)采用的處理器是來自正元電子的MiniSTM32開發(fā)板,它采用的是Cortex-M3處理器。Cortex-M3采用目前主流ARMV7-M架構(gòu),相比曾風(fēng)靡一時(shí)的ARMV4T架構(gòu)擁有更加強(qiáng)勁的性能,更高的代碼密度,更高的性價(jià)比,Cortex-M3處理器結(jié)合多種突破性技術(shù),在低功耗、低成本、高性能三方面具有突破性的創(chuàng)新。ARMCortex-M3采用哈佛結(jié)構(gòu),并選擇了適合于微控制器應(yīng)用的三級流水線,但增加了分支預(yù)測功能?,F(xiàn)代處理器大多采用指令預(yù)取和流水線技術(shù),以提高處理器的指令執(zhí)行速度。流水線處理器在正常執(zhí)行指令時(shí),如果碰到分支(跳轉(zhuǎn))指令,由于指令執(zhí)行的順序可能會(huì)發(fā)生變化,指令預(yù)取隊(duì)列和流水線中的部分指令就可能作廢,而需要從新的地址重新取指、執(zhí)行,這樣就會(huì)使流水線“斷流”,處理器性能因此而受到影響。特別是現(xiàn)代C語言程序,經(jīng)編譯器優(yōu)化生成的目標(biāo)代碼中,分支指令所占的比例可達(dá)10-20%,對流水線處理器的影響會(huì)的更大。為此,現(xiàn)代高性能流水線處理器中一般都加入了分支預(yù)測部件,就是在處理器從存儲(chǔ)器預(yù)取指令時(shí),當(dāng)遇到分支(跳轉(zhuǎn))指令時(shí),能自動(dòng)預(yù)測跳轉(zhuǎn)是否會(huì)發(fā)生,再從預(yù)測的方向進(jìn)行取指,從而提供給流水線連續(xù)的指令流,流水線就可以不斷地執(zhí)行有效指令,保證了其性能的發(fā)揮。ARMCortex-M3內(nèi)核的預(yù)取部件具有分支預(yù)測功能,可以預(yù)取分支目標(biāo)地址的指令,使分支延遲減少到一個(gè)時(shí)鐘周期。針對業(yè)界對ARM處理器中斷響應(yīng)的問題,Cortex-M3首次在內(nèi)核上集成了嵌套向量中斷控制器(NVIC)。Cortex-M3的中斷延遲只有12個(gè)時(shí)鐘周期(ARM7需要24-42個(gè)周期);Cortex-M3還使用尾鏈技術(shù),使得背靠背(back-to-back)中斷的響應(yīng)只需要6個(gè)時(shí)鐘周期(ARM7需要大于30個(gè)周期)。Cortex-M3采用了基于棧的異常模式,使得芯片初始化的封裝更為簡單。Cortex-M3加入了類似于8位處理器的內(nèi)核低功耗模式,支持3種功耗管理模式:通過一條指令立即睡眠;異常/中斷退出時(shí)睡眠;深度睡眠。使整個(gè)芯片的功耗控制更為有效。圖3-1MiniSTM32開發(fā)板資源圖Cortex-M3處理器系統(tǒng)框圖如圖3-2所示。圖3-2Cortex-M3處理器系統(tǒng)框圖3.1.2上位機(jī)(PC機(jī))上位機(jī)是指可以發(fā)送操控指令的計(jì)算機(jī)。這里用到的是PC(personal
computer)機(jī),又稱個(gè)人計(jì)算機(jī)。個(gè)人計(jì)算機(jī)一詞源自于1981年IBM的第一部桌上型計(jì)算機(jī)型號PC,在此之前有AppleII的個(gè)人用計(jì)算機(jī)。個(gè)人計(jì)算機(jī)由硬件系統(tǒng)和軟件系統(tǒng)組成,是一種能獨(dú)立運(yùn)行,完成特定功能的設(shè)備。硬件系統(tǒng):是指計(jì)算機(jī)的物理設(shè)備如電源、主板、CPU、內(nèi)存、硬盤等等。軟件系統(tǒng):是指為方便使用計(jì)算機(jī)而設(shè)計(jì)的程序,軟件系統(tǒng)包括系統(tǒng)軟件和應(yīng)用軟件。系統(tǒng)軟件指的是主要用于控制和管理計(jì)算機(jī)資源的程序,如操作系統(tǒng)、編譯系統(tǒng)等。應(yīng)用軟件指各種可以運(yùn)行在操作系統(tǒng)中的程序,如游戲軟件、工作軟件等。個(gè)人計(jì)算機(jī)不需要共享其他計(jì)算機(jī)的處理、磁盤和打印機(jī)等資源也可以獨(dú)立工作。從臺(tái)式機(jī)(或稱臺(tái)式計(jì)算機(jī)、桌面電腦)、筆記本電腦到上網(wǎng)本和平板電腦以及超級本等都屬于個(gè)人計(jì)算機(jī)的范疇。本系統(tǒng)正好運(yùn)用了PC機(jī)上的某些應(yīng)用軟件,比如KeilMDK5和QtCreater開發(fā)環(huán)境。利用這兩個(gè)工作軟件,完成下位機(jī)MiniSTM32ADC模數(shù)轉(zhuǎn)換模塊和USART串口收發(fā)模塊程序編寫,以及Qt操作顯示界面運(yùn)行程序編寫和界面設(shè)計(jì)。第四章系統(tǒng)軟件設(shè)計(jì)4.1下位機(jī)MiniSTM32單片機(jī)也被稱為單片微控器,屬于一種集成式電路芯片。我們采用了MiniSTM32來作為主要控制器,多樣化數(shù)據(jù)采集與控制系統(tǒng)能夠讓單片機(jī)完成各項(xiàng)復(fù)雜的運(yùn)算。SMT32控制器內(nèi)部組織和管理非常高效。在存儲(chǔ)管理方面,STM32提高了FSMC機(jī)制,可以支持多種類型的存儲(chǔ)結(jié)構(gòu)、多種訪問方式,并可以進(jìn)行靈活的管理和擴(kuò)展。在中斷管理方面,STM32提供了強(qiáng)大的NVIC機(jī)制,可以嵌套式管理中斷服務(wù)請求,提高了系統(tǒng)的實(shí)時(shí)性。在內(nèi)存和外設(shè)通信方面,SMT32使用了先進(jìn)的DMA機(jī)制,既減輕了UPC的負(fù)擔(dān),又提高了外設(shè)數(shù)據(jù)的讀寫效率。在通信接口方面,STM32提供了主流的串行通信接口,如USART、I2C、SPI、CAN、USB等,用戶只需要進(jìn)行簡單的配置即可完成數(shù)據(jù)的通信。為了加快開發(fā)速度,SMT32為用戶提高了豐富的內(nèi)部資源和外設(shè)資源。其中,最典型的就是GPIO和ADC/DAC資源,這對于遠(yuǎn)程監(jiān)測系統(tǒng)的終端采集非常重要。STM32提供了多達(dá)80個(gè)快速GPIO端口,每個(gè)端口都看做是一個(gè)對象,可以獨(dú)立配置時(shí)鐘、工作模式、輸入輸出方式,并可以映射到16個(gè)外部中斷。高性能的ADC也是SMT32的一大特色,SMT32可以提供多達(dá)2個(gè)12位ADC。其轉(zhuǎn)換范圍為0~3.6V,具有雙采樣和保持功能。這是一種簡單的微控制器,對于我們來說,可以通過網(wǎng)頁學(xué)習(xí)或者老師的指點(diǎn)就能快速的了解掌握基礎(chǔ)知識(shí)。搭建KeilMDK5開發(fā)環(huán)境就能開始編寫模數(shù)轉(zhuǎn)換ADC模塊和USART數(shù)據(jù)收發(fā)模塊。4.1.1數(shù)字/模擬轉(zhuǎn)換DACDAC(Digitaltoanalogconverter)即數(shù)字模擬轉(zhuǎn)換器,又稱D/A轉(zhuǎn)換器,簡稱DAC,它是把數(shù)字量轉(zhuǎn)變成模擬的器件。本系統(tǒng)檢測時(shí),我會(huì)用到D/A轉(zhuǎn)換生成模擬波形,模擬采集到的信號波形。然后再由ADC模塊進(jìn)行數(shù)據(jù)的采集接收和轉(zhuǎn)化。它的功能與ADC相反。在常見的數(shù)字信號系統(tǒng)中,大部分傳感器信號被轉(zhuǎn)化成電壓信號,而ADC把電壓模擬信號轉(zhuǎn)換成易于計(jì)算機(jī)存儲(chǔ)、處理的數(shù)字編碼,由計(jì)算機(jī)處理完成后,再由DAC輸出電壓模擬信號,該電壓模擬信號常常用來驅(qū)動(dòng)某些執(zhí)行器件,使人類易于感知。如音頻信號的采集及還原就是這樣一個(gè)過程。STM32F1DAC模塊是12位電壓輸出數(shù)模轉(zhuǎn)換器,它可以配置為8位或12位模式,也可以與DMA
控制器配合使用。DAC工作在12位模式下,數(shù)據(jù)可以采用左對齊或右對齊。DAC工作在8位模式下,數(shù)據(jù)只有右對齊方式。DAC有兩個(gè)輸出通道,每個(gè)通道各有一個(gè)轉(zhuǎn)換器。在DAC雙通道模式下,每個(gè)通道可以單獨(dú)進(jìn)行轉(zhuǎn)換;當(dāng)兩個(gè)通道組合在一起同步執(zhí)行更新操作時(shí),也可以同時(shí)進(jìn)行轉(zhuǎn)換。DAC可通過一個(gè)輸入?yún)⒖茧妷阂_VREF+(與ADC共享)來提高轉(zhuǎn)換后的數(shù)據(jù)精度。本系統(tǒng)DAC部分,參照網(wǎng)絡(luò)上現(xiàn)有DAC模擬波形例程,實(shí)現(xiàn)正弦、方波、三角波輸出。任意一種波形幅值在0~3.3V可調(diào)、頻率在一定范圍內(nèi)可調(diào)。4.1.2模擬/數(shù)字轉(zhuǎn)換ADC模數(shù)轉(zhuǎn)換ADC模塊是下位機(jī)開發(fā)中一個(gè)重要的模塊,通過它采集數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)轉(zhuǎn)換。這一部分在網(wǎng)頁以及MiniSTM32基本資料都有簡單的示例教程,我只需掌握原理就能編寫自己需要的源代碼程序了。在A/D轉(zhuǎn)換中,因?yàn)檩斎氲哪M信號在時(shí)間上是連續(xù)的,而輸出的數(shù)字信號是離散量,所以進(jìn)行轉(zhuǎn)換時(shí)只能按一定的時(shí)間間隔對輸入的模擬信號進(jìn)行采樣,然后再把采樣值轉(zhuǎn)換為輸出的數(shù)字量。通常A/D轉(zhuǎn)換需要經(jīng)過采樣、保持量化、編碼四個(gè)步驟。高精度、高性能的ADC,足以滿足大多數(shù)采集系統(tǒng)的要求。它通常會(huì)提供2個(gè)獨(dú)立的ADC控制器,精度達(dá)到12位,最快采樣速率能達(dá)到1us。由于這些優(yōu)勢,STM32能同時(shí)對多路傳感器模擬量進(jìn)行實(shí)時(shí)采集。12位ADC是一種逐次逼近型模擬數(shù)字轉(zhuǎn)換器。它有多達(dá)18個(gè)通道,可測量16個(gè)外部和2個(gè)內(nèi)部信號源。各通道的A/D轉(zhuǎn)換可以單次、連續(xù)、掃描或間斷模式執(zhí)行。ADC的結(jié)果可以左對齊或右對齊方式存儲(chǔ)在16位數(shù)據(jù)寄存器中。圖4.1.1-1是ADC框架,圖4.1.1-2是引腳。圖4.1.2-1ADC框圖圖4.1.2-2引腳以下是關(guān)于ADC模塊基本參數(shù)設(shè)置步驟:①開啟PA口時(shí)鐘和ADC1時(shí)鐘,設(shè)置PA1為模擬輸入。GPIO_Init();APB2PeriphClockCmd();②復(fù)位ADC1,同時(shí)設(shè)置ADC1分頻因子。RCC_ADCCLKConfig(RCC_PCLK2_Div6);ADC_DeInit(ADC1);③初始化ADC1參數(shù),設(shè)置ADC1的工作模式以及規(guī)則序列的相關(guān)信息。voidADC_Init(ADC_TypeDef*ADCx,ADC_InitTypeDef*ADC_InitStruct);④使能ADC并校準(zhǔn)。ADC_Cmd(ADC1,ENABLE);⑤配置規(guī)則通道參數(shù):ADC_RegularChannelConfig();⑥開啟軟件轉(zhuǎn)換:ADC_SoftwareStartConvCmd(ADC1);⑦等待轉(zhuǎn)換完成,讀取ADC值。ADC_GetConversionValue(ADC1);4.1.3USART串口協(xié)議串口通信按照USART傳輸協(xié)議進(jìn)行,每次傳輸一個(gè)字符,并保證發(fā)送端和接收端時(shí)鐘的同步性。該協(xié)議中每一位表示的意義如下:起始位:規(guī)定以第一位為“0”作為字符傳輸?shù)拈_始信號。數(shù)據(jù)位:用來承載串口要傳輸?shù)淖址?。?shù)據(jù)位一般是個(gè)完整的字符,可以由4~8位二進(jìn)制組成。通常,采用ASCII碼進(jìn)行字符編碼。從最低位開始傳送,靠時(shí)鐘來定位。奇偶校驗(yàn)位:用來檢驗(yàn)字符數(shù)據(jù)傳輸?shù)恼_性,通常在數(shù)據(jù)位后面多加一位。“1”表示進(jìn)行奇校驗(yàn),“0”表示偶校驗(yàn)。停止位:用來標(biāo)識(shí)一個(gè)字符數(shù)據(jù)已經(jīng)傳輸結(jié)束。可以是1位、1.5位、2位的高電平??臻e位:用來表示當(dāng)前數(shù)據(jù)線是否處于忙碌狀態(tài),“1”狀態(tài)表示暫無數(shù)據(jù)傳輸。波特率:用來衡量字符數(shù)據(jù)傳輸速率,其定義為每秒傳輸?shù)亩M(jìn)制的位數(shù),即bit個(gè)數(shù)。例如,一個(gè)文件包含多個(gè)字符,每個(gè)字符由10位二進(jìn)制構(gòu)成,并數(shù)據(jù)傳輸速率為150字符/秒,則串口傳輸?shù)牟ㄌ芈蕿?0×150=1500bits/s,即波特率為1500。本系統(tǒng)中,采集數(shù)據(jù)和界面控制指令都是通過USART串口來傳輸?shù)?,前者是從界面終端到顯示終端,傳輸?shù)氖嵌嗤ǖ纻鞲袛?shù)據(jù);后者是從顯示終端到云臺(tái)終端,傳輸?shù)氖窃婆_(tái)運(yùn)轉(zhuǎn)控制指令。為了對數(shù)據(jù)和指令達(dá)到穩(wěn)定的傳輸效果,需要規(guī)定云臺(tái)終端和上位機(jī)的通信協(xié)議。同時(shí),要在云臺(tái)終端和上位機(jī)都定義相應(yīng)的數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法。對于傳感數(shù)據(jù)的傳輸,本系統(tǒng)規(guī)定:每次發(fā)送一個(gè)數(shù)據(jù)包,每個(gè)數(shù)據(jù)包包含10個(gè)數(shù)據(jù),每個(gè)數(shù)據(jù)為2個(gè)字節(jié)的整型。其中,每個(gè)數(shù)據(jù)包正好是10個(gè)通道一次穩(wěn)定采樣數(shù)據(jù)的結(jié)果,而每個(gè)通道的穩(wěn)定采樣數(shù)據(jù)都是對DMA多次采樣后的均值濾波。由于傳感器數(shù)據(jù)變化緩慢的特點(diǎn),串口9600bps波特率完全能滿足其變化要求。ADC數(shù)據(jù)采集工作流程如圖4.1.3-1所示。圖4.1.3-1ADC數(shù)據(jù)采集工作流程PC端云臺(tái)控制工作流程如圖4.1.3-2所示。圖4.1.3-2PC端云臺(tái)控制工作流程前面已經(jīng)提到,STM32提供了一套非常強(qiáng)大的固件庫,該固件庫包含有USART驅(qū)動(dòng),通過一系列函數(shù)來支持所有USART通信。本系統(tǒng)通過對底層USART驅(qū)動(dòng)進(jìn)行相關(guān)的配置,并根據(jù)需要對數(shù)據(jù)讀寫方法進(jìn)行了重定向,如圖4.1.3-3所示。圖4.1.3-3USART驅(qū)動(dòng)設(shè)置鑒于傳感數(shù)據(jù)采樣點(diǎn)都是以兩個(gè)字節(jié)輸出的,串口發(fā)送函數(shù)定義了對整型數(shù)據(jù)以及整型數(shù)組傳輸?shù)姆椒ǎ簐oidPPP0_USART_PutInt(u16dat);//發(fā)送整型數(shù)據(jù)voidPPP0_USART_PutIntTable(constu16*tab,u8len);//發(fā)送整型數(shù)表對于云臺(tái)控制命令的接收函數(shù),采用串口中斷服務(wù)來實(shí)現(xiàn)。首先,通過STM32提供的NVIC(嵌套中斷向量控制器),對串口中斷號以及中斷優(yōu)先級進(jìn)行設(shè)置;然后,在串口屬性配置中,開啟接收中斷服務(wù)功能;最后,在串口中斷服務(wù)程序中,編寫串口數(shù)據(jù)接收代碼。具體實(shí)現(xiàn)方法如下:NVIC_InitStructure.NVIC_IRQChannel=USART1_IRQn;//選串口1NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=2;//設(shè)優(yōu)先級USART_ITConfig(PPP0_USART,USART_IT_RXNE,ENABLE);//使能接收voidUSART1_IRQHandler(void);//編寫串口中斷服務(wù)程4.2上位機(jī)Qt開發(fā)框架QtCreator是一個(gè)用于Qt開發(fā)的輕量級跨平臺(tái)集成開發(fā)環(huán)境。QtCreator可帶來兩大關(guān)鍵益處:提供首個(gè)專為支持跨平臺(tái)開發(fā)而設(shè)計(jì)的集成開發(fā)環(huán)境(IDE),并確保首次接觸Qt框架的開發(fā)人員能迅速上手和操作。即使不開發(fā)Qt應(yīng)用程序,QtCreator也是一個(gè)簡單易用且功能強(qiáng)大的IDE。QtCreator包含了一套用于創(chuàng)建和測試基于Qt應(yīng)用程序的高效工具,包括:一個(gè)高級的C++代碼編輯器上下文感知幫助系統(tǒng)可視化調(diào)試器源代碼管理項(xiàng)目和構(gòu)建管理工具。所以,我選擇利用Qt應(yīng)用程序開發(fā),來設(shè)計(jì)一個(gè)顯示終端,實(shí)現(xiàn)顯示和操作功能。接受來自下位機(jī)STM32采集的數(shù)據(jù)并顯示,同時(shí)通過USART串口傳送指令,控制下位機(jī)。4.2.1Qt開發(fā)Qt是一個(gè)基于C++開發(fā)的可移植、跨平臺(tái)的用戶圖形界面庫,它包含有大量非常美觀、實(shí)用的組件,以及非常優(yōu)秀的信號槽機(jī)制,可以實(shí)現(xiàn)真正的面向組件編程。在桌面應(yīng)用、嵌入式系統(tǒng)以及移動(dòng)平臺(tái)上,Qt開發(fā)框架都得到廣泛的使用。其最大的優(yōu)勢體現(xiàn)在如下三個(gè)方面:首先,Qt框架中提出了信號槽機(jī)制,來實(shí)現(xiàn)組件對象之間的通信。相對傳統(tǒng)MFC中的消息驅(qū)動(dòng)機(jī)制,信號槽實(shí)現(xiàn)了對象之間真正的隔離,降低了系統(tǒng)中不同對象的耦合度,方便了系統(tǒng)的維護(hù)和擴(kuò)展。其次,Qt本質(zhì)是基于C++開發(fā)的圖形界面庫,它以模塊的形式組織在一起,由Qt內(nèi)核框架統(tǒng)一管理和調(diào)用。Qt提供了許多模塊,用于GUI界面的設(shè)計(jì)和優(yōu)化。其中,QtGui模塊負(fù)責(zé)底層界面的運(yùn)作,QtWidgets包含了大量實(shí)用的可視化組件。并支持2D/3D圖形渲染,支持OpenGL。這使得Qt在GUI界面設(shè)計(jì)上實(shí)現(xiàn)了真正的組件、可視化編程,用戶只需要調(diào)用集成的Widget組件,就可以設(shè)計(jì)出非常友好的界面。最后,Qt提供了豐富的API,用于數(shù)據(jù)傳輸方面,如SQL模塊、串口模塊、網(wǎng)絡(luò)模塊、以及藍(lán)牙模塊。其中,SQL模塊用于應(yīng)用程序和數(shù)據(jù)庫實(shí)時(shí)交互,串口模塊和網(wǎng)絡(luò)模塊可實(shí)現(xiàn)下位機(jī)和PC工控機(jī)的實(shí)時(shí)通訊。充分利用Qt強(qiáng)大的圖形界面庫和可移植特性,實(shí)現(xiàn)數(shù)據(jù)顯示終端的跨平臺(tái)和多終端功能。QtCreator是為編寫Qt應(yīng)用程序而設(shè)計(jì)的IDE環(huán)境,它具有良好的跨平臺(tái)特性,可以在Windows、Linux和MacOS系統(tǒng)下運(yùn)行。其開發(fā)環(huán)境如圖4.2.1-1所示。圖4.2.1-1Qt編輯界面通過Qt這些強(qiáng)大的功能,我們可以設(shè)計(jì)一個(gè)很完美的顯示終端。顯示終端為不僅為用戶提供了一個(gè)非常友好的顯示界面,還提供了靈活的控制面板和配置選項(xiàng)。顯示終端,可以協(xié)調(diào)多種不同類型的數(shù)據(jù),包括用戶輸入、內(nèi)部信號以及外部數(shù)據(jù)。而外部數(shù)據(jù)又有波形數(shù)據(jù)和傳感數(shù)據(jù)兩種輸入數(shù)據(jù),以及云臺(tái)控制的輸出數(shù)據(jù)。下面對顯示終端和用戶交互界面的軟件整體結(jié)構(gòu)和用例進(jìn)行簡單的分析。顯示終端和用戶交互主要完成兩個(gè)工作,一是將數(shù)據(jù)呈現(xiàn)出來,二是方便用戶交互式控制。在本設(shè)計(jì)中,采用MVC設(shè)計(jì)模式,將數(shù)據(jù)和視圖分離。數(shù)據(jù)就是有下位機(jī)傳輸?shù)牟ㄐ螖?shù)據(jù),視圖就是動(dòng)態(tài)波形圖。其中數(shù)據(jù)由SerialPort模塊來接受數(shù)據(jù),視圖部分主要由CustomPlot模塊來完成,根據(jù)不同的數(shù)據(jù)自動(dòng)生成相應(yīng)的顯示視圖。其中,對于波形數(shù)據(jù)的輸入,則以虛擬示波器的外觀來動(dòng)態(tài)顯示輸入波形信號。對于傳感數(shù)據(jù)的輸入,可實(shí)現(xiàn)多通道環(huán)境參數(shù)的顯示,并且自動(dòng)適應(yīng)屏幕大小,調(diào)整顯示柵格??刂撇糠种饕蒞orkPannel模塊來完成,通過接收用戶指令和輸入數(shù)據(jù),切換到不同的工作模式。此外,WorkPannel模塊需要協(xié)調(diào)不同接口數(shù)據(jù)的傳輸速率,以保證數(shù)據(jù)既能實(shí)時(shí)更新又能穩(wěn)定顯示。顯示終端主要負(fù)責(zé)數(shù)據(jù)的傳遞、數(shù)據(jù)顯示和用戶交互。Qt提供了一種信號槽機(jī)制,可以實(shí)現(xiàn)不同組件對象之間無縫通信。內(nèi)部數(shù)據(jù)的產(chǎn)生、外部數(shù)據(jù)的傳輸、用戶數(shù)據(jù)的獲取以及顯示區(qū)數(shù)據(jù)的推送,都是以類的形式封裝于具體的模塊中。下面對這些模塊的具體實(shí)現(xiàn)進(jìn)行詳細(xì)分析,以及各個(gè)模塊中不同工作模式進(jìn)行簡單介紹。為了滿足對環(huán)境參數(shù)和視頻圖像的實(shí)時(shí)顯示,本系統(tǒng)在顯示終端部分設(shè)計(jì)了五大模塊,每個(gè)模塊由一個(gè)類來實(shí)現(xiàn),即顯示模塊(CustomPlotClass)、串口通信模塊(SerialPortClass)和控制面板模塊(WorkPannelClass)。顯示終端的幾個(gè)重要模塊如圖4.2.1-2所示。圖4.2.1-2顯示終端的幾個(gè)重要模塊(1)CustomPlot模塊設(shè)計(jì)CustomPlot模塊主要負(fù)責(zé)動(dòng)態(tài)實(shí)時(shí)波形的顯示。本系統(tǒng)使用了Qt獨(dú)有的雙緩沖重繪機(jī)制,實(shí)現(xiàn)了動(dòng)態(tài)曲線和視頻圖像的穩(wěn)定顯示。本設(shè)計(jì)中,CustomPlot顯示區(qū)的刷新頻率是通過定時(shí)器來控制的。//CustomPlot的基礎(chǔ)功能設(shè)置m_CustomPlot->setInteractions(QCP::iRangeDrag|QCP::iRangeZoom|QCP::iMultiSelect|QCP::iSelectOther|QCP::iSelectItems);基礎(chǔ)功能共有以下幾種,大體意思是:1、軸可拖動(dòng);2、通過鼠標(biāo)滾輪改變軸顯示范圍;3、用戶可以選擇多個(gè)對象設(shè)定的修飾符(不是特別明白);4、圖形是可選的;5、軸是可選的;6、圖例是可選的;//設(shè)置矩形邊框m_CustomPlot->axisRect()->setupFullAxesBox();//清空CustomPlot中的圖形m_CustomPlot->clearGraphs();//在CustomPlot中添加圖形m_CustomPlot->addGraph();//設(shè)置圖形中的數(shù)據(jù)m_x和m_y是兩個(gè)QVector容器m_CustomPlot->graph(0)->setData(m_x,m_y);//這個(gè)是設(shè)置圖形顯示為合適范圍(感覺設(shè)置的只是Y軸)m_CustomPlot->graph(0)->rescaleValueAxis(true);//設(shè)置X軸的顯示范圍(這里是4條軸,x是下面那條,x2是上面那條,Y是先左后右)m_CustomPlot->xAxis->setRange(m_x.at(0)-1,m_x.at(m_x.size()-1)+1);//刷新m_CustomPlot中數(shù)據(jù)m_CustomPlot->replot();為了實(shí)現(xiàn)數(shù)據(jù)的更好顯示,本系統(tǒng)定義了scaleData()函數(shù)來對輸入數(shù)據(jù)進(jìn)行規(guī)范化處理,包括數(shù)據(jù)點(diǎn)數(shù)的約束和數(shù)據(jù)大小的歸一化處理。其中,數(shù)據(jù)點(diǎn)數(shù)約束在800內(nèi)(每個(gè)數(shù)據(jù)點(diǎn)需要兩個(gè)像素點(diǎn)顯示),保證適應(yīng)大多數(shù)桌面屏幕。設(shè)計(jì)中通過設(shè)置定時(shí)器,調(diào)用updateBuffer()方法,來刷新波形緩沖器,然后將數(shù)據(jù)不斷送出,以實(shí)現(xiàn)波形的連續(xù)顯示。而波形數(shù)據(jù)的原型數(shù)據(jù)點(diǎn)由相應(yīng)的波形發(fā)生函數(shù)產(chǎn)生,如sinWave()、rectWave()、triWave()和samWave()。此外,還可以通過set和get方法對具體波形發(fā)生器的參數(shù)進(jìn)行設(shè)置,如幅度、周期等。(2)SerialPort模塊設(shè)計(jì)SerialPort模塊是對串口接口數(shù)據(jù)的封裝,包括串口的識(shí)別、初始化配置、數(shù)據(jù)的讀寫和規(guī)范化處理等。Qt對串口進(jìn)行了良好的封裝,而且可以自動(dòng)識(shí)別當(dāng)前系統(tǒng)可用的串口信息。設(shè)計(jì)的重點(diǎn)集中于串口通信的配置、數(shù)據(jù)的讀寫和規(guī)范化處理。此模塊涉及三個(gè)重要的對象指針,如下所示:QSerialPort*com;//串口對象QSerialPortInfo*info;//可用串口信息QTimer*timer;//掃描定時(shí)器,用于監(jiān)視掃描串口數(shù)據(jù)對于串口數(shù)據(jù)的讀寫,Qt已經(jīng)封裝了許多非常方便的方法,本設(shè)計(jì)使用com對象的putChar(charch)方法來發(fā)送,使用readAll()方法來讀取數(shù)據(jù),然后定義兩個(gè)新的接口函數(shù),如下所示:voidsendStringToCom(constQString&strCom);voidrecvStringFromCom(QString&strDat(a);(3)WorkPannel模塊設(shè)計(jì)WorkPannel模塊是最重要的部分,主要完成三方面的工作,一是協(xié)調(diào)各模塊接口數(shù)據(jù)的傳輸;二是實(shí)現(xiàn)用戶界面的交互;三是對顯示終端、控制面板以及工作流程的管理和控制。同時(shí),此模塊需要送出的數(shù)據(jù)有兩種,包括顯示器模塊和串口模塊,分別由兩個(gè)函數(shù)來完成。voidloadFromSignals();//從信號源加載voidloadFromSerialPort();//從串口加載voidsendToDisplay();//推送到顯示器voidsendToSerialPort();//推送到串口為了實(shí)現(xiàn)更好的用戶交互界面和豐富的功能,本系統(tǒng)提高了多種槽函數(shù),以響應(yīng)用戶界面的控制和參數(shù)設(shè)置,如工作模式的切換、波形幅度周期的調(diào)整、數(shù)據(jù)源的選擇、數(shù)據(jù)類型的選擇、傳輸模式的切換等。voidselectDispChannel();//設(shè)置顯示通道voidselectSigChannel();//設(shè)置信號通道voidselectDataSource();//設(shè)置數(shù)據(jù)源voidselectDataFormat();//設(shè)置數(shù)據(jù)格式第五章實(shí)物展示5.1硬件總體及功能介紹硬件主要由下位機(jī)MiniSTM32和上位機(jī)(PC機(jī))構(gòu)成。當(dāng)系統(tǒng)程序運(yùn)行之后,在上位機(jī)終端操作顯示界面,先配置串口,比如串口端口、比特率、停止位、數(shù)據(jù)位以及校驗(yàn)位,然后打開串口,與我們的下位機(jī)串口建立連接。這時(shí)我們選擇CH1(通道1)和波形,點(diǎn)擊確認(rèn),上位機(jī)通過串口將此指令傳給下位機(jī)。待下位機(jī)將信息傳送至上位機(jī),通過QCustomPlot模塊把數(shù)據(jù)信息以波形的形式繪制出來。同時(shí),在數(shù)值板塊得出我們的峰峰值、最大值、最小值和平均值,甚至可以將我們的波形截圖保存下來。通過調(diào)節(jié)板塊可以改變幅值、周期,改變Y1位移和Y2位移。想看其他波形點(diǎn)擊波形選擇按鈕,再點(diǎn)擊確認(rèn)就可以了。如圖5.1所示。圖5.1上位機(jī)操作顯示界面下位機(jī)主要就三大模塊:D/A、A/D和USART。程序運(yùn)行之后,待上位機(jī)將指令傳送到,然后下位機(jī)開始工作。首先由D/A模塊模擬輸出信號,然后由ADC
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 光伏裝配示范復(fù)合項(xiàng)目實(shí)施方案
- 構(gòu)建高效邊遠(yuǎn)地區(qū)醫(yī)學(xué)救援體系方案
- 供熱一次管網(wǎng)更新改造項(xiàng)目可行性研究報(bào)告
- 山西省朔州市懷仁市第九中學(xué)高中部2023-2024學(xué)年高一上學(xué)期11月期中地理 含解析
- 長江師范學(xué)院《網(wǎng)絡(luò)創(chuàng)業(yè)與創(chuàng)業(yè)管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 定西職業(yè)技術(shù)學(xué)院《幼兒歌曲伴奏與彈唱(二)》2023-2024學(xué)年第二學(xué)期期末試卷
- 郴州思科職業(yè)學(xué)院《昆蟲學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 南開大學(xué)濱海學(xué)院《過程仿真》2023-2024學(xué)年第二學(xué)期期末試卷
- 湖南理工學(xué)院《機(jī)器學(xué)習(xí)與模式識(shí)別》2023-2024學(xué)年第二學(xué)期期末試卷
- 吉林動(dòng)畫學(xué)院《金屬腐蝕學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 巴氏染色-臨床實(shí)踐能力訓(xùn)練考核標(biāo)準(zhǔn)
- 婦科經(jīng)帶胎產(chǎn)雜99方方歌講解學(xué)習(xí)
- 重慶郵電大學(xué)本科畢業(yè)設(shè)計(jì)(論文)參考模板-2020版
- 20XX-煙草車輛運(yùn)輸方案計(jì)劃
- 蘇教版二年級下冊數(shù)學(xué)競賽試卷
- CRH380B動(dòng)車組電氣系統(tǒng)綜述綜述
- 晶體幾何基礎(chǔ)
- 腹腔穿刺術(shù)考核評分表
- 作業(yè)準(zhǔn)備驗(yàn)證及停工后驗(yàn)證規(guī)定
- 控制電纜敷設(shè)、接線施工方案
- 定期清洗消毒空調(diào)及通風(fēng)設(shè)施的制度
評論
0/150
提交評論