版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 目錄</b></p><p> 第1章 實(shí)習(xí)目的與要求1</p><p> 1.1 GPRS 遠(yuǎn)程監(jiān)測(cè)終端系統(tǒng)項(xiàng)目1</p><p> 1.2 GPIO口1</p><p> 1.4 嵌入式 STM32 LCD 屏模塊1</p><p> 1.5
2、嵌入式 STM32 GSM、溫濕度實(shí)訓(xùn)階段1</p><p><b> 課堂要求:2</b></p><p> 第2章 設(shè)計(jì)背景3</p><p> 2.1 課題研究的背景3</p><p> 2.2 國(guó)內(nèi)外stm32控制以太網(wǎng)技術(shù)發(fā)展現(xiàn)狀及趨勢(shì)4</p
3、><p><b> 第3 章5</b></p><p> 3.1 GPRS的遠(yuǎn)程終端監(jiān)控系統(tǒng)5</p><p> 3.2 GPIO口 功能描述7</p><p> 3.3 STM32串口13</p><p> 3.4 嵌入式 STM32 LCD 屏模塊15</p>
4、<p> 3.5 嵌入式 STM32 GSM、溫濕度實(shí)訓(xùn)階段16</p><p> 第4章 調(diào)制和測(cè)試18</p><p> 4.1 LED點(diǎn)亮實(shí)驗(yàn):18</p><p> 4.2 流水燈實(shí)驗(yàn)一:18</p><p> 4.3 按鍵控制LED實(shí)驗(yàn):18</p><p> 4.4 流水燈
5、實(shí)驗(yàn)二18</p><p> 4.5 溫濕度實(shí)驗(yàn)調(diào)制與結(jié)果18</p><p> 4.6實(shí)驗(yàn)結(jié)果18</p><p> 第5章 實(shí)習(xí)心得20</p><p><b> 參考文獻(xiàn)21</b></p><p> 第1章 實(shí)習(xí)目的與要求</p><p>
6、通過(guò)實(shí)習(xí)提高自己的對(duì)社會(huì)的認(rèn)知能力,同時(shí)理論聯(lián)系實(shí)際,讓自己迅速適應(yīng)社會(huì),跟上新興產(chǎn)業(yè)前進(jìn)的快速步伐。通過(guò)理論與實(shí)際的結(jié)合、學(xué)校與社會(huì)的溝通,進(jìn)一步提高學(xué)生的思想覺(jué)悟、業(yè)務(wù)水平,尤其是觀察、分析和解決問(wèn)題的實(shí)際工作能力,以便培養(yǎng)自己成為能夠主動(dòng)適應(yīng)社會(huì)主義現(xiàn)代化建設(shè)需要的高素質(zhì)的復(fù)合型人才。 </p><p> 1.1 GPRS 遠(yuǎn)程監(jiān)測(cè)終端系統(tǒng)項(xiàng)目&l
7、t;/p><p><b> 主要工作:</b></p><p> 基于 GPRS 遠(yuǎn)程監(jiān)測(cè)終端系統(tǒng)項(xiàng)目流程、項(xiàng)目分析</p><p><b> 目的:</b></p><p> 了解整體項(xiàng)目流程過(guò)程,及對(duì)嵌入式行業(yè)整體認(rèn)識(shí)</p><p><b> 1.2 G
8、PIO口</b></p><p><b> 主要工作:</b></p><p> 嵌入式概述、 ARM 體系架構(gòu)、 ARM 開(kāi)發(fā)平臺(tái)、 STM32 庫(kù)函數(shù)講解、 GPIO 實(shí)驗(yàn)</p><p> 運(yùn)用 GPIO 口寄存器對(duì)流水燈和呼吸燈程序?qū)嶒?yàn)</p><p> 目的:學(xué)生掌握嵌入式中 STM32 的
9、寄存器開(kāi)發(fā)過(guò)程</p><p> 1.3嵌入式 STM32 串口實(shí)訓(xùn)階段</p><p><b> 主要工作:</b></p><p> 通信的劃分、常用串行通信協(xié)議。</p><p><b> 通信接口電平的講解</b></p><p> STM32 串口控制器的
10、工作原理</p><p><b> 目的:</b></p><p> 學(xué)生掌握嵌入式 STM32 中串口通信以及上位機(jī)操作,方便后續(xù)項(xiàng)目的使用</p><p> 1.4 嵌入式 STM32 LCD 屏模塊</p><p><b> 主要工作:</b></p><p>
11、; 項(xiàng)目中常用顯示器件的介紹和產(chǎn)品案例。</p><p> 像素點(diǎn)、像素和分辨率概念的講解。。</p><p> TFT LCD 屏顯示原理、 8080 接口信號(hào)時(shí)序圖分析。</p><p> 取字模軟件的使用和漢字顯示程序分析。</p><p> 圖片取模軟件的使用和圖片顯示程序分析。</p><p>&l
12、t;b> 目的:</b></p><p> 學(xué)生掌握嵌入式中常用顯示設(shè)備的原理和實(shí)現(xiàn) LCD 屏界面設(shè)計(jì)與開(kāi)發(fā)</p><p> 1.5 嵌入式 STM32 GSM、溫濕度實(shí)訓(xùn)階段</p><p><b> 主要工作:</b></p><p> GSM 無(wú)線(xiàn)模塊組成框架及使用方法</p&
13、gt;<p> 溫濕度模塊組成框架及使用方法</p><p> 溫濕度傳感器采集當(dāng)前環(huán)境的溫濕度</p><p><b> 目的:</b></p><p> 學(xué)生掌握嵌入式 STM32 中 GSM、溫濕度等項(xiàng)目的開(kāi)發(fā)</p><p><b> 課堂要求:</b></p&
14、gt;<p> 認(rèn)真聽(tīng)講、記筆記 。</p><p> 不許睡覺(jué) ,吃零食,喝水或者玩手機(jī)。</p><p><b> 儀表整潔。</b></p><p><b> 第2章 設(shè)計(jì)背景</b></p><p> 2.1 課題研究的背景 </
15、p><p> 近幾年來(lái),隨著科學(xué)技術(shù)日新月異的發(fā)展,計(jì)算機(jī)科技的快速發(fā)展,特別是互聯(lián)網(wǎng)的快速普及,互聯(lián)網(wǎng)在人類(lèi)活動(dòng)中也越來(lái)越緊密聯(lián)系,尤其是對(duì)于工業(yè)控制和信息電器領(lǐng)域中同樣有著越來(lái)越重要的應(yīng)用。同時(shí)計(jì)算機(jī),通訊,消費(fèi)電子三合一的快速發(fā)展,數(shù)字化時(shí)代已經(jīng)到來(lái)。而嵌入式接入設(shè)備是數(shù)字化時(shí)代的一大主流標(biāo)志,形態(tài)各異的計(jì)算機(jī),通訊,消費(fèi)電子三合一產(chǎn)品也將是網(wǎng)絡(luò)接入設(shè)備的一大主流。因?yàn)镻C機(jī)以及現(xiàn)有的Internet技術(shù)可以
16、實(shí)現(xiàn)對(duì)非網(wǎng)絡(luò)設(shè)備進(jìn)行遠(yuǎn)程控制的部分的要求,而且成本費(fèi)用較高,可靠性和期望值也有一定的距離,所以這種方案并沒(méi)有被廣泛的接受和使用。由于嵌入式設(shè)備具有低成本高性能的特點(diǎn),而現(xiàn)今對(duì)嵌入式系統(tǒng)的開(kāi)發(fā)研究和嵌入式技術(shù)也都進(jìn)入到了一個(gè)成熟的階段,將嵌入式系統(tǒng)和網(wǎng)絡(luò)相結(jié)合來(lái)實(shí)現(xiàn)非網(wǎng)絡(luò)系統(tǒng)的網(wǎng)絡(luò)控制,那么世界可能就是另一番景象。 </p><p> 因特網(wǎng)技術(shù)的成熟,使得網(wǎng)上提供的信息更加豐富,應(yīng)用項(xiàng)目也更加多樣,人
17、們對(duì)網(wǎng)絡(luò)的需求也越來(lái)越廣泛,利用PC機(jī)上網(wǎng)來(lái)查閱和發(fā)布各類(lèi)信息等對(duì)于網(wǎng)絡(luò)的日常應(yīng)用已經(jīng)不能滿(mǎn)足人們的需求。像傳統(tǒng)的電器,電冰箱,微波爐,電視,空調(diào)等,這類(lèi)電子設(shè)備的功能也不在單一,電器結(jié)構(gòu)也更為復(fù)雜,也逐步開(kāi)始應(yīng)用嵌入式網(wǎng)絡(luò)接入,使用戶(hù)可以通過(guò)網(wǎng)絡(luò)就能實(shí)現(xiàn)遠(yuǎn)程控制,信息通訊。同樣,互聯(lián)網(wǎng)在全球范圍內(nèi)的連通性,那些能夠連接因特網(wǎng)的設(shè)備也成為人們選擇產(chǎn)品中考慮的一大問(wèn)題,通過(guò)Internet對(duì)家用電器等非網(wǎng)絡(luò)設(shè)備進(jìn)行遠(yuǎn)程控制已經(jīng)成為現(xiàn)今主流
18、。而一些小型輕便的設(shè)備,比如一些醫(yī)學(xué)儀器上的身體上使用的傳感器,體積小而且便宜,內(nèi)存小,運(yùn)算能力有限,因此必須在資源受限的情況下實(shí)現(xiàn)TCP/IP協(xié)議甚至處理接受到的信息。</p><p> TCP/IP協(xié)議可以分為四個(gè)層次,從底層到最高層分別是物理層和數(shù)據(jù)鏈路層,網(wǎng)絡(luò)層,傳輸層,和最高層的應(yīng)用層。物理層和數(shù)據(jù)鏈路層是TCP/IP協(xié)議的最低層,要求提供給上層一個(gè)訪(fǎng)問(wèn)接口,以便傳遞IP分組信息。網(wǎng)絡(luò)層是第二層,也是
19、整個(gè)TCP/IP協(xié)議棧的核心,其功能是把分組發(fā)往目標(biāo)網(wǎng)絡(luò)或主機(jī),源主機(jī)與目的主機(jī)可以在同一個(gè)網(wǎng)上,也可以在不同的網(wǎng)上。其中定義了分組格式和協(xié)議,即IP協(xié)議,來(lái)對(duì)分組進(jìn)行排序。IP協(xié)議是一種不可靠、無(wú)連接的數(shù)據(jù)報(bào)發(fā)傳送服務(wù)的協(xié)議,提供的只是一種盡力而為的服務(wù)。傳輸層是第三層,負(fù)責(zé)在應(yīng)用進(jìn)程中的端到端之間的通信。傳輸層定義了兩種服務(wù)質(zhì)量不同的協(xié)議,TCP和UDP。TCP是一種可靠的面向連接的協(xié)議,允許將源主機(jī)的字節(jié)數(shù)據(jù)流無(wú)差別的傳送到目的主
20、機(jī)。同時(shí)能夠完成流量的控制功能,協(xié)調(diào)收發(fā)主機(jī)之間的發(fā)送和接受速度,從而控制正確的傳輸。應(yīng)用層是最高層,其中也包括了很多協(xié)議:文件傳送協(xié)議,簡(jiǎn)單郵件傳送協(xié)議,簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議,超文本傳送協(xié)議等。 </p><p> LwIP是瑞士計(jì)算機(jī)科學(xué)院一個(gè)開(kāi)源的TCP/IP協(xié)議棧實(shí)現(xiàn)。LwIP是Light Weight IP協(xié)議,有無(wú)操作系統(tǒng)都可以運(yùn)行,其實(shí)現(xiàn)的重點(diǎn)是在保持TCP/IP協(xié)議的
21、主要功能的基礎(chǔ)上減少對(duì)內(nèi)存的占用,一般只需要幾百字節(jié)的RAM和40K左右的ROM就可以運(yùn)行,這使得LwIP成為在資源受限的情況下實(shí)現(xiàn)及處理TCP/IP協(xié)議的解決方法。LwIP可以支持多網(wǎng)絡(luò)接口下的IP轉(zhuǎn)發(fā),提供專(zhuān)門(mén)的內(nèi)部回調(diào)接口Raw API,這樣可以提高應(yīng)用程序性能。 </p><p> 像LwIP的目標(biāo)系統(tǒng)是最小限度系統(tǒng),所使用的操作系統(tǒng)通常不能在內(nèi)核與應(yīng)用層進(jìn)程之間維持一個(gè)嚴(yán)格的保護(hù)屏
22、障。這里允許使用一種比較寬松的通許機(jī)制,通過(guò)共享內(nèi)存的方式實(shí)現(xiàn)應(yīng)用層與底層協(xié)議族之間的通訊。應(yīng)用層可以知道底層協(xié)議使用的緩沖處理機(jī)制,這使得應(yīng)用層可以有效的重復(fù)使用緩沖區(qū)。同樣,應(yīng)用層與網(wǎng)絡(luò)代碼使用的是相同的內(nèi)存區(qū),那么應(yīng)用層就可以直接讀寫(xiě)內(nèi)部緩沖區(qū)。 </p><p> 2.2 國(guó)內(nèi)外stm32控制以太網(wǎng)技術(shù)發(fā)展現(xiàn)狀及趨勢(shì) </p><p>
23、; 中國(guó)的嵌入式系統(tǒng)開(kāi)發(fā)走過(guò)了二十多年的歷程,有超過(guò)數(shù)十萬(wàn)名從事開(kāi)發(fā)應(yīng)用的工程師,但大多數(shù)以上是幾個(gè)人的小組以孤軍奮戰(zhàn)的封閉方式開(kāi)發(fā)幾乎不可重用的軟件。今天面對(duì)的是嵌入式系統(tǒng)工業(yè)化的潮流,如果不能認(rèn)識(shí)到嵌入式軟件必須以工業(yè)化的方式生產(chǎn)開(kāi)發(fā),不理解在短時(shí)間內(nèi)裝配集成“數(shù)百人/年”的嵌入式產(chǎn)品,那么將失去更多的上游產(chǎn)品的市場(chǎng)機(jī)遇。</p><p> 嵌入式軟件方面逐漸形成了系統(tǒng)軟件、應(yīng)用軟件的架構(gòu)。國(guó)際上用于信息
24、電器的嵌入式操作系統(tǒng)有40種左右。其中,國(guó)外涌現(xiàn)了一些著名的嵌入式操作系統(tǒng),如:Vxworks、pSOS、WinCE、RTEK、palmOS、EpOC、QNX、LynxOS、DSPhnux等。其中Vx/Orks是目前嵌入式系統(tǒng)領(lǐng)域中使用最廣泛、市場(chǎng)占有率最高的系統(tǒng):WinCE是一種32位的多任務(wù)操作系統(tǒng),可以移植,能夠開(kāi)發(fā)多種企業(yè)和客戶(hù)類(lèi)設(shè)備,是微軟公司的“維納斯計(jì)劃”的核心:3COM公司的Palm0S在PDA市場(chǎng)上占有很大的市場(chǎng)份額,
25、它有開(kāi)放的操作系統(tǒng)應(yīng)用程序接口(API),開(kāi)發(fā)商可以根據(jù)需要自行開(kāi)發(fā)所需要的應(yīng)用程序。 </p><p> 國(guó)內(nèi)外有大量嵌入式應(yīng)用軟件已廣泛用于各類(lèi)嵌入式系統(tǒng)中。大有國(guó)內(nèi)緊跟國(guó)外趨勢(shì)的形勢(shì)。但是對(duì)于嵌入式Web服務(wù)器方面的研究國(guó)內(nèi)現(xiàn)狀不容樂(lè)觀,目前國(guó)外的相關(guān)研究相對(duì)多些。如林C/IP研究項(xiàng)目,它是一個(gè)為微控制器和嵌入式系統(tǒng)而設(shè)計(jì)的小型TCP/IP協(xié)議棧:又如CMX公司的MieroNetTCP/IP,它
26、是為8位或16位微處理器而設(shè)計(jì)的,支持大部分的標(biāo)準(zhǔn)協(xié)議,連接方式有以太網(wǎng)連接、撥號(hào)連接和直接連接方式。而國(guó)內(nèi)也相應(yīng)提出了Webito協(xié)議標(biāo)準(zhǔn),但是相對(duì)滯后, 缺少具體的工程實(shí)現(xiàn)方面的研究和具體產(chǎn)品的開(kāi)發(fā)。 </p><p> 美國(guó)DEC公司開(kāi)發(fā)的VMSeluster系統(tǒng)開(kāi)發(fā)最早,技術(shù)也較成熟,應(yīng)用也很廣泛,但由于VMS操作系統(tǒng)只能在DEC公司的VAX系列和AIPha系列服務(wù)器上運(yùn)行,VMScluste
27、r的應(yīng)用受到很大限制。</p><p> Platform公司開(kāi)發(fā)的高可用性集群系統(tǒng)LSF提供了分布式集群系統(tǒng)的解決方案,通過(guò)將物理上分離的多個(gè)集群連接在一起使多個(gè)同構(gòu)或異構(gòu)的計(jì)算機(jī)能夠通過(guò)局域網(wǎng)或廣域網(wǎng)共享計(jì)算資源,并能夠?yàn)橛脩?hù)提供對(duì)資源的透明訪(fǎng)問(wèn)。 </p><p> 國(guó)內(nèi)也有不少公司進(jìn)行了集群系統(tǒng)的研究和開(kāi)發(fā)工作。 </p><p>
28、 聯(lián)想公司在1999年9月推出了用于分布式高性能計(jì)算的NS10000高性能集群服務(wù),該系統(tǒng)是一個(gè)四節(jié)點(diǎn)的系統(tǒng),主要基于聯(lián)想萬(wàn)全45008服務(wù)器,以總體成本相對(duì)較低的設(shè)備組合,足以替代傳統(tǒng)班SC小型機(jī)和中型機(jī)的工作,而價(jià)格僅為市場(chǎng)上同等性能小型機(jī)的1/2--1/40。 朗訊公司也推出了類(lèi)似于Urboduster的高可用性集群系統(tǒng)LongshineClusterServer。 從國(guó)內(nèi)外的研究現(xiàn)狀看,目前集群系統(tǒng)的應(yīng)
29、用大都致力于高可用性問(wèn)題的解決,真正基于負(fù)載均衡的集群系統(tǒng)還比較少,而且在大部分負(fù)載均衡集群中采用的都是輪轉(zhuǎn)調(diào)度、加權(quán)輪轉(zhuǎn)調(diào)度等靜態(tài)調(diào)度算法。</p><p><b> 第3 章</b></p><p> 3.1 GPRS的遠(yuǎn)程終端監(jiān)控系統(tǒng)</p><p> 基于GPRS的遠(yuǎn)程終端監(jiān)控系統(tǒng)的框架圖</p><p>
30、 DHT11 溫濕度傳感器,采集當(dāng)前環(huán)境的溫度和濕度值,精度規(guī)格</p><p><b> 相關(guān)使用參數(shù)</b></p><p> DHT11 的相關(guān)參數(shù)</p><p> 通過(guò)單總線(xiàn)與 STM32 處理芯片進(jìn)行數(shù)據(jù)傳輸。 2.TFTLCD 屏:16 位 RGBTFT 彩色 LCD 屏,經(jīng)過(guò) 8080 接口與 STM32 進(jìn)行數(shù)據(jù)傳輸。
31、 3.GSM/GPRS:移動(dòng) 2 代通信/2.5 代通信,經(jīng)過(guò)串口與 STM32 進(jìn)行數(shù)據(jù)傳輸,經(jīng)過(guò) GPRS 無(wú) 線(xiàn)通信和 TCP/IP 通信協(xié)議與服務(wù)器進(jìn)行數(shù)據(jù)交換。 4.信盈達(dá)服務(wù)器:通過(guò) TCP/IP 接收#+設(shè)備號(hào)+溫度值+濕度值協(xié)議的數(shù)據(jù),并保存到后臺(tái)數(shù)據(jù) 庫(kù)。 5.APP:手機(jī)運(yùn)用 TCP/IP 從服務(wù)器上獲取想要知道的設(shè)備的溫濕度值,實(shí)現(xiàn)遠(yuǎn)程監(jiān)控。</p><p> GPRS 的 TCP/IP
32、協(xié)議以及相關(guān)指令 </p><p> 通過(guò)電腦與服務(wù)器進(jìn)行測(cè)試(前提電腦要連上以太網(wǎng)): </p><p> ping IP 地址 </p><p> 例如:我運(yùn)用電腦 ping 百度的公共 IP 地址。</p><p> 通過(guò) GPRS 訪(fǎng)問(wèn)服務(wù)器: </p><p> AT+CGCLASS=”B” &l
33、t;/p><p> AT+CGDCONT=1,”IP”,”CMNET”</p><p> AT+CGATT=1 </p><p> AT+CIPCSGP=1,”CMNET” </p><p> 之后,發(fā)送: AT+CLPORT=”TCP”,”2000”,設(shè)置本地 TCP 連接端口為 2000, </p><p&
34、gt; 然后,發(fā)送: AT+CIPSTART=”TCP”,” 103.44.145.243”,” 16919”, 建立 TCP 連接,</p><p> 連接到 IP:103.44.145.243,連接端口為: 16919。 這里是對(duì)于沒(méi)有公網(wǎng) IP 的用戶(hù)是通過(guò)發(fā)送 給花生殼域名轉(zhuǎn)發(fā)的,如果是有公網(wǎng)的用戶(hù),這里把 IP 直接替換為自己的公網(wǎng) IP,端口寫(xiě) 8086 即可。等待 TCP 連接成功建立,模塊返回
35、:CONNECT OK。</p><p> 此時(shí), SIM800 模塊和電腦已經(jīng)建立了一個(gè) TCP 連接, 可以相互發(fā)送數(shù)據(jù)了。 </p><p> 通過(guò)串口調(diào)試助手發(fā)送: AT+CIPSEND,接著模塊返回: >,然后我們發(fā)送字符串(不用發(fā) 送新行): “ SIM800 發(fā)送給電腦的數(shù)據(jù)” ,最后發(fā)送十六進(jìn)制的:1A,啟動(dòng)數(shù)據(jù)發(fā)送。然 后模塊返回: SEND OK,說(shuō)明發(fā)送成功
36、,如下圖: </p><p> 注意: TCP 連接需要心跳維持,如果長(zhǎng)時(shí)間沒(méi)有數(shù)據(jù)的收發(fā),那么 TCP 連接很可能會(huì)被斷開(kāi),下次數(shù)</p><p> 據(jù)通信,又得重新連接,所以實(shí)際應(yīng)用的時(shí)候,都需要添加心跳,來(lái)維持當(dāng)前 TCP 的連接。</p><p> 最后, 我們要關(guān)閉 TCP 連接,發(fā)送: AT+CIPCLOSE=1,關(guān)閉當(dāng)前 TCP 連接,再發(fā)送:
37、 AT+CIPSHUT,關(guān)閉場(chǎng)景,如下圖:</p><p> GPRS 的相關(guān)指令 </p><p> 3.1.1 AT+CGCLASS:用于設(shè)置移動(dòng)臺(tái)類(lèi)別。</p><p> 發(fā)送:AT+CGCLASS=”B”,設(shè)置移動(dòng)臺(tái)類(lèi)別為 B。即,模塊支持包交換和電路交換模式,但 不能同時(shí)支持。</p><p> 3.1.2 AT+CGDCO
38、NT: 用于設(shè)置 PDP 上下文。 </p><p> 發(fā)送: AT+CGDCONT=1,”IP”,”CMNET”,設(shè)置 PDP 上下文標(biāo)標(biāo)志為 1,采用互聯(lián)網(wǎng)協(xié)議 (IP),接入點(diǎn)為”CMNET”。</p><p> 3.1.3 AT+CGATT,用于設(shè)置附著和分離 GPRS 業(yè)務(wù)。 </p><p> 發(fā)送: AT+CGATT=1,附著 G
39、PRS 業(yè)務(wù)。 </p><p> 3.1.4 AT+CIPCSGP:用于設(shè)置 CSD 或 GPRS 鏈接模式。 </p><p> 發(fā)送: AT+CIPCSGP=1, ”CMNET”,設(shè)置為 GPRS 連接,接入點(diǎn)為”CMNET”。 </p><p> 3.1.5 AT+CLPORT,用于設(shè)置本地端口號(hào)。 </p>
40、<p> 發(fā)送: AT+CLPORT=”TCP”,”8086”, 即設(shè)置 TCP 連接本地端口號(hào)為 8086。 </p><p> 3.1.6 AT+CIPSTART:用于建立 TCP 連接或注冊(cè) UDP 端口號(hào)。</p><p> 發(fā)送:AT+CIPSTART=”TCP”,”116.1.20.54”,”8086”,模塊將建立一個(gè) TCP 連接,連接目標(biāo)地址 為:11
41、6.1.20.54,連接端口號(hào)為 8086,連接成功會(huì)返回: CONNECT OK。</p><p> 3.1.7 AT+CIPSEND:用于發(fā)送數(shù)據(jù)。</p><p> 在連接成功后發(fā)送: AT+CIPSEND,模 塊返回: >,此時(shí) 可以輸入要發(fā)送的數(shù)據(jù),最大可以一次發(fā)送 1352 字節(jié),數(shù)據(jù)輸入完后,同發(fā)短信一樣,輸入 十六進(jìn)制的: 1A(0X1A), 啟動(dòng)發(fā)送數(shù)據(jù)。在數(shù)據(jù)
42、發(fā)送完成后,模塊返回: SEND OK,表示發(fā)送 成功。</p><p> 3.1.8 AT+CIPSTATUS:用于查詢(xún)當(dāng)前連接狀態(tài)。 </p><p> 發(fā)送:AT+CIPSTATUS,模塊即 返回當(dāng)前連接狀態(tài)。AT+CIPCLOSE:用于關(guān)閉 TCP/UDP 連接。 發(fā)送:AT+CIPCLOSE=1,即可快 速關(guān)閉當(dāng)前 TCP/UDP 連接。</p><p
43、> 3.1.9 AT+CIPSHUT:用于關(guān)閉移動(dòng)場(chǎng)景。 </p><p> 發(fā)送: AT+CIPSHUT,則可以關(guān)閉移 動(dòng)場(chǎng)景,關(guān)閉場(chǎng)景后連接狀態(tài)為: IP INITIAL,可以 通過(guò)發(fā)送:AT+CIPSTATUS,查詢(xún)。另外,在連接建立后,如果收到: +PDP: DEACT, 則必須 發(fā)送:AT+CIPSHUT,關(guān)閉場(chǎng)景后,才能實(shí)現(xiàn)重連。</p><p> 3.2 GP
44、IO口 功能描述</p><p> 每個(gè)GPI/O端口有兩個(gè)32位配置寄存器(GPIOx_CRL,GPIOx_CRH),兩個(gè)32位數(shù)據(jù)寄存器 (GPIOx_IDR和GPIOx_ODR),一個(gè)32位置位/復(fù)位寄存器(GPIOx_BSRR),一個(gè)16位復(fù)位寄存 器(GPIOx_BRR)和一個(gè)32位鎖定寄存器(GPIOx_LCKR)。</p><p> 根據(jù)數(shù)據(jù)手冊(cè)中列出的每個(gè)I/O端口的特
45、定硬件特征, GPIO端口的每個(gè)位可以由軟件分別配置 成多種模式。</p><p><b> ─ 輸入浮空</b></p><p><b> ─ 輸入上拉 </b></p><p><b> ─ 輸入下拉 </b></p><p><b> ─ 模擬輸入 &l
46、t;/b></p><p><b> ─ 開(kāi)漏輸出 </b></p><p><b> ─ 推挽式輸出 </b></p><p> ─ 推挽式復(fù)用功能 </p><p><b> ─ 開(kāi)漏復(fù)用功能 </b></p><p> 每個(gè)I/O端
47、口位可以自由編程,然而I/0端口寄存器必須按32位字被訪(fǎng)問(wèn)(不允許半字或字節(jié)訪(fǎng) 問(wèn))。GPIOx_BSRR和GPIOx_BRR寄存器允許對(duì)任何GPIO寄存器的讀/更改的獨(dú)立訪(fǎng)問(wèn);這 樣,在讀和更改訪(fǎng)問(wèn)之間產(chǎn)生IRQ時(shí)不會(huì)發(fā)生危險(xiǎn)。 </p><p> 下圖給出了一個(gè)I/O端口位的基本結(jié)構(gòu)。</p><p> I/O端口位的基本結(jié)構(gòu)</p><p> 5伏兼容I
48、/O端口位的基本結(jié)構(gòu)</p><p> (1) VDD_FT 對(duì)5伏容忍I/O腳是特殊的,它與VDD不同</p><p><b> 端口位配置表</b></p><p><b> 輸出模式位</b></p><p> 3.2.1通用I/O(GPIO)</p><p>
49、 復(fù)位期間和剛復(fù)位后,復(fù)用功能未開(kāi)啟,I/O端口被配置成浮空輸入模式(CNFx[1:0]=01b, MODEx[1:0]=00b)。 </p><p> 復(fù)位后,JTAG引腳被置于輸入上拉或下拉模式:</p><p> ─ PA15:JTDI置于上拉模式 </p><p> ─ PA14:JTCK置于下拉模式</p><p> ─
50、PA13:JTMS置于上拉模式 </p><p> ─ PB4: JNTRST置于上拉模式</p><p> STM32F10xxx參考手冊(cè) 當(dāng)作為輸出配置時(shí),寫(xiě)到輸出數(shù)據(jù)寄存器上的值(GPIOx_ODR)輸出到相應(yīng)的I/O引腳。</p><p> 可以以推 挽模式或開(kāi)漏模式(當(dāng)輸出0時(shí),只有N-MOS被打開(kāi))使用輸出驅(qū)動(dòng)器。 </p><
51、;p> 輸入數(shù)據(jù)寄存器(GPIOx_IDR)在每個(gè)APB2時(shí)鐘周期捕捉I/O引腳上的數(shù)據(jù)。</p><p> 所有GPIO引腳有一個(gè)內(nèi)部弱上拉和弱下拉,當(dāng)配置為輸入時(shí),它們可以被激活也可以被斷開(kāi)</p><p> 3.2.2 單獨(dú)的位設(shè)置或位清除</p><p> 當(dāng)對(duì)GPIOx_ODR的個(gè)別位編程時(shí),軟件不需要禁止中斷:在單次APB2寫(xiě)操作里,可以只
52、更改 一個(gè)或多個(gè)位。 </p><p> 這是通過(guò)對(duì)“置位/復(fù)位寄存器”(GPIOx_BSRR,復(fù)位是 GPIOx_BRR)中想要更改的位寫(xiě)’1’來(lái) 實(shí)現(xiàn)的。沒(méi)被選擇的位將不被更改。</p><p> 3.2.3 外部中斷/喚醒線(xiàn)</p><p> 所有端口都有外部中斷能力。為了使用外部中斷線(xiàn),端口必須配置成輸入模式。</p><p>
53、 3.2.4 復(fù)用功能(AF)</p><p> 使用默認(rèn)復(fù)用功能前必須對(duì)端口位配置寄存器編程。</p><p> ● 對(duì)于復(fù)用的輸入功能,端口必須配置成輸入模式(浮空、上拉或下拉)且輸入引腳必須由外部 驅(qū)動(dòng) </p><p><b> 注意:</b></p><p> 也可以通過(guò)軟件來(lái)模擬復(fù)用功能輸入引腳,這
54、種模擬可以通過(guò)對(duì) GPIO 控制器編程來(lái)實(shí)現(xiàn)。此 時(shí),端口應(yīng)當(dāng)被設(shè)置為復(fù)用功能輸出模式。顯然,這時(shí)相應(yīng)的引腳不再由外部驅(qū)動(dòng),而是通過(guò) GPIO 控制器由軟件來(lái)驅(qū)動(dòng)。</p><p> ● 對(duì)于復(fù)用輸出功能,端口必須配置成復(fù)用功能輸出模式(推挽或開(kāi)漏)。</p><p> ● 對(duì)于雙向復(fù)用功能,端口位必須配置復(fù)用功能輸出模式(推挽或開(kāi)漏)。這時(shí),輸入驅(qū)動(dòng)器被 配置成浮空輸入模式。 <
55、;/p><p> 如果把端口配置成復(fù)用輸出功能,則引腳和輸出寄存器斷開(kāi),并和片上外設(shè)的輸出信號(hào)連接。 如果軟件把一個(gè)GPIO腳配置成復(fù)用輸出功能,但是外設(shè)沒(méi)有被激活,它的輸出將不確定。</p><p> 3.2.5 GPIO鎖定機(jī)制</p><p> 鎖定機(jī)制允許凍結(jié)IO配置。當(dāng)在一個(gè)端口位上執(zhí)行了鎖定(LOCK)程序,在下一次復(fù)位之前,將 不能再更改端口位的配
56、置。</p><p> 3.2.6 輸入配置</p><p> 當(dāng)I/O端口配置為輸入時(shí):</p><p> ● 輸出緩沖器被禁止</p><p> ● 施密特觸發(fā)輸入被激活</p><p> ● 根據(jù)輸入配置(上拉,下拉或浮動(dòng))的不同,弱上拉和下拉電阻被連接 </p><p> ●
57、 出現(xiàn)在I/O腳上的數(shù)據(jù)在每個(gè)APB2時(shí)鐘被采樣到輸入數(shù)據(jù)寄存器 </p><p> ● 對(duì)輸入數(shù)據(jù)寄存器的讀訪(fǎng)問(wèn)可得到I/O狀態(tài)</p><p> 下圖給出了I/O端口位的輸入配置</p><p> 輸入浮空/上拉/下拉配置</p><p> (1) VDD_FT 對(duì)5伏容忍I/O腳是特殊的,它與VDD不同</p>&
58、lt;p> 3.2.7 輸出配置</p><p> 當(dāng)I/O端口被配置為輸出時(shí):</p><p> ● 輸出緩沖器被激活</p><p> ─ 開(kāi)漏模式:輸出寄存器上的’0’激活N-MOS,而輸出寄存器上的’1’將端口置于高阻狀態(tài)(PMOS從不被激活)。 </p><p> ─ 推挽模式:輸出寄存器上的’0’激活N-MOS,而
59、輸出寄存器上的’1’將激活P-MOS。 ● 施密特觸發(fā)輸入被激活 </p><p> ● 弱上拉和下拉電阻被禁止 </p><p> ● 出現(xiàn)在I/O腳上的數(shù)據(jù)在每個(gè)APB2時(shí)鐘被采樣到輸入數(shù)據(jù)寄存器</p><p> ● 在開(kāi)漏模式時(shí),對(duì)輸入數(shù)據(jù)寄存器的讀訪(fǎng)問(wèn)可得到I/O狀態(tài) </p><p> ● 在推挽式模式時(shí),對(duì)輸出數(shù)據(jù)寄存器
60、的讀訪(fǎng)問(wèn)得到后一次寫(xiě)的值。 下圖給出了I/O端口位的輸出配置</p><p><b> 輸出配置</b></p><p> (1) VDD_FT 對(duì) 5伏兼容 I/O腳是特殊的,它與 VDD不同</p><p> 3.1.8 復(fù)用功能配置 </p><p> 當(dāng)I/O端口被配置為復(fù)用功能時(shí): </p>
61、<p> ● 在開(kāi)漏或推挽式配置中,輸出緩沖器被打開(kāi) </p><p> ● 內(nèi)置外設(shè)的信號(hào)驅(qū)動(dòng)輸出緩沖器(復(fù)用功能輸出) </p><p> ● 施密特觸發(fā)輸入被激活 </p><p> ● 弱上拉和下拉電阻被禁止 </p><p> ● 在每個(gè)APB2時(shí)鐘周期,出現(xiàn)在I/O腳上的數(shù)據(jù)被采樣到輸入數(shù)據(jù)寄存器 <
62、/p><p> ● 開(kāi)漏模式時(shí),讀輸入數(shù)據(jù)寄存器時(shí)可得到I/O口狀態(tài) </p><p> ● 在推挽模式時(shí),讀輸出數(shù)據(jù)寄存器時(shí)可得到后一次寫(xiě)的值 8.4節(jié)-AFIO寄存器描述。 </p><p> 下圖示出了 I/O端口位的復(fù)用功能配置。</p><p> 詳見(jiàn) 一組復(fù)用功能I/O寄存器允許用戶(hù)把一些復(fù)用功能重新映象到不同的引腳。<
63、/p><p><b> 復(fù)用功能配置</b></p><p> (1) VDD_FT 對(duì)5伏兼容I/O腳是特殊的,它與VDD不同</p><p> 3.2.9 模擬輸入配置 </p><p> 當(dāng)I/O端口被配置為模擬輸入配置時(shí): </p><p> ● 輸出緩沖器被禁止; </p&g
64、t;<p> ● 禁止施密特觸發(fā)輸入,實(shí)現(xiàn)了每個(gè)模擬I/O引腳上的零消耗。施密特觸發(fā)輸出值被強(qiáng)置 為’0’; </p><p> ● 弱上拉和下拉電阻被禁止; </p><p> ● 讀取輸入數(shù)據(jù)寄存器時(shí)數(shù)值為’0’。 </p><p> 下圖示出了I/O端口位的高阻抗模擬輸入配置</p><p> 高阻抗的模擬輸入配
65、置</p><p> (1) VDD_FT 對(duì)5伏兼容I/O腳是特殊的,它與VDD不同</p><p> 3.2.10 外設(shè)的GPIO配置 </p><p> 下列表格列出了各個(gè)外設(shè)的引腳配置</p><p> 高級(jí)定時(shí)器TIM1/TIM8</p><p> 通用定時(shí)器TIM2/3/4/5</p>
66、<p> 3.3 STM32串口</p><p><b> SPI簡(jiǎn)介 </b></p><p> 在大容量產(chǎn)品和互聯(lián)型產(chǎn)品上,SPI接口可以配置為支持SPI協(xié)議或者支持I2S音頻協(xié)議。SPI接 口默認(rèn)工作在SPI方式,可以通過(guò)軟件把功能從SPI模式切換到I2S模式。 </p><p> 在小容量和中容量產(chǎn)品上,不支持I2
67、S音頻協(xié)議。 </p><p> 串行外設(shè)接口(SPI)允許芯片與外部設(shè)備以半/全雙工、同步、串行方式通信。此接口可以被配置 成主模式,并為外部從設(shè)備提供通信時(shí)鐘(SCK)。接口還能以多主配置方式工作。 </p><p> 它可用于多種用途,包括使用一條雙向數(shù)據(jù)線(xiàn)的雙線(xiàn)單工同步傳輸,還可使用CRC校驗(yàn)的可靠 通信。</p><p> I2S也是一種3引腳的同步
68、串行接口通訊協(xié)議。它支持四種音頻標(biāo)準(zhǔn),包括飛利浦I2S標(biāo)準(zhǔn),MSB 和LSB對(duì)齊標(biāo)準(zhǔn),以及PCM標(biāo)準(zhǔn)。它在半雙工通訊中,可以工作在主和從2種模式下。當(dāng)它作為 主設(shè)備時(shí),通過(guò)接口向外部的從設(shè)備提供時(shí)鐘信號(hào)</p><p> 3.3.1 SPI特征</p><p> ● 3線(xiàn)全雙工同步傳輸 </p><p> ● 帶或不帶第三根雙向數(shù)據(jù)線(xiàn)的雙線(xiàn)單工同步傳輸 <
69、;/p><p> ● 8或16位傳輸幀格式選擇 </p><p><b> ● 主或從操作 </b></p><p><b> ● 支持多主模式 </b></p><p> ● 8個(gè)主模式波特率預(yù)分頻系數(shù)(大為fPCLK/2) </p><p> ● 從模式頻率 (大為
70、fPCLK/2) </p><p> ● 主模式和從模式的快速通信 </p><p> ● 主模式和從模式下均可以由軟件或硬件進(jìn)行NSS管理:主/從操作模式的動(dòng)態(tài)改變 </p><p> ● 可編程的時(shí)鐘極性和相位 </p><p> ● 可編程的數(shù)據(jù)順序,MSB在前或LSB在前 </p><p> ● 可觸
71、發(fā)中斷的專(zhuān)用發(fā)送和接收標(biāo)志 </p><p> ● SPI總線(xiàn)忙狀態(tài)標(biāo)志 </p><p> ● 支持可靠通信的硬件CRC </p><p> ─ 在發(fā)送模式下,CRC值可以被作為后一個(gè)字節(jié)發(fā)送</p><p> ─ 在全雙工模式中對(duì)接收到的后一個(gè)字節(jié)自動(dòng)進(jìn)行CRC校驗(yàn) </p><p> ● 可觸發(fā)中斷的主
72、模式故障、過(guò)載以及CRC錯(cuò)誤標(biāo)志 </p><p> ● 支持DMA功能的1字節(jié)發(fā)送和接收緩沖器:產(chǎn)生發(fā)送和接受請(qǐng)求</p><p> 3.3.2 I2S功能</p><p> ● 單工通信(僅發(fā)送或接收) </p><p><b> ● 主或者從操作 </b></p><p> ● 8
73、位線(xiàn)性可編程預(yù)分頻器,獲得精確的音頻采樣頻率(8KHz到96kHz) </p><p> ● 數(shù)據(jù)格式可以是16位,24位或者32位 </p><p> ● 音頻信道固定數(shù)據(jù)包幀為16位(16位數(shù)據(jù)幀)或32位(16、24或32位數(shù)據(jù)幀) </p><p> ● 可編程的時(shí)鐘極性(穩(wěn)定態(tài)) </p><p> ● 從發(fā)送模式下的下溢標(biāo)
74、志位和主/從接收模式下的溢出標(biāo)志位 </p><p> ● 16位數(shù)據(jù)寄存器用來(lái)發(fā)送和接收,在通道兩端各有一個(gè)寄存器 </p><p> ● 支持的I2S協(xié)議: ─ I 2S飛利浦標(biāo)準(zhǔn) ─ MSB對(duì)齊標(biāo)準(zhǔn)(左對(duì)齊) ─ LSB對(duì)齊標(biāo)準(zhǔn)(右對(duì)齊) ─ PCM標(biāo)準(zhǔn)(16位通道幀上帶長(zhǎng)或短幀同步或者16位數(shù)據(jù)幀擴(kuò)展為32位通道幀) </p><p> ● 數(shù)據(jù)方向總
75、是MSB在先 </p><p> ● 發(fā)送和接收都具有DMA能力 </p><p> ● 主時(shí)鐘可以輸出到外部音頻設(shè)備,比率固定為256xFs(Fs為音頻采樣頻率) </p><p> ● 在互聯(lián)型產(chǎn)品中,兩個(gè)I2S模塊(I2S2和I2S3)有一個(gè)專(zhuān)用的PLL(PLL3),產(chǎn)生更加精準(zhǔn)得時(shí)鐘</p><p> 3.3.3 SPI功能描
76、</p><p> SPI的方框圖見(jiàn)下圖。</p><p> 通常SPI通過(guò)4個(gè)引腳與外部器件相連: </p><p> ● MISO:主設(shè)備輸入/從設(shè)備輸出引腳。該引腳在從模式下發(fā)送數(shù)據(jù),在主模式下接收數(shù)據(jù)。 </p><p> ● MOSI:主設(shè)備輸出/從設(shè)備輸入引腳。該引腳在主模式下發(fā)送數(shù)據(jù),在從模式下接收數(shù)據(jù)。 </p&
77、gt;<p> ● SCK:串口時(shí)鐘,作為主設(shè)備的輸出,從設(shè)備的輸入 </p><p> ● NSS:從設(shè)備選擇。這是一個(gè)可選的引腳,用來(lái)選擇主/從設(shè)備。它的功能是用來(lái)作為“片 選引腳”,讓主設(shè)備可以單獨(dú)地與特定從設(shè)備通訊,避免數(shù)據(jù)線(xiàn)上的沖突。從設(shè)備的NSS 引腳可以由主設(shè)備的一個(gè)標(biāo)準(zhǔn)I/O引腳來(lái)驅(qū)動(dòng)。一旦被使能(SSOE位),NSS引腳也可以作為 輸出引腳,并在SPI處于主模式時(shí)拉低;此時(shí),所
78、有的SPI設(shè)備,如果它們的NSS引腳連接 到主設(shè)備的NSS引腳,則會(huì)檢測(cè)到低電平,如果它們被設(shè)置為NSS硬件模式,就會(huì)自動(dòng)進(jìn) 入從設(shè)備狀態(tài)。當(dāng)配置為主設(shè)備、NSS配置為輸入引腳(MSTR=1,SSOE=0)時(shí),如果NSS 被拉低,則這個(gè)SPI設(shè)備進(jìn)入主模式失敗狀態(tài):即MSTR位被自動(dòng)清除,此設(shè)備進(jìn)入從模式</p><p><b> 單主和單從應(yīng)用</b></p><p&
79、gt; 3.4 嵌入式 STM32 LCD 屏模塊</p><p> 3.4.1所運(yùn)用軟件</p><p> 為:keilμvison5 取字模軟件zimo221 彩色圖像轉(zhuǎn)換軟件Image2LCD_29。</p><p> 3.4.2 設(shè)計(jì)的意義:</p><p> 實(shí)現(xiàn) LCD 屏界面設(shè)計(jì)與開(kāi)發(fā)。</p><
80、p> 3.4.3 所涉及的硬件介紹:</p><p> TFT-LCD簡(jiǎn)介 </p><p> TFT-LCD即薄膜晶體管液晶顯示器。其英文全稱(chēng)為:Thin Film Transistor-Liquid Crystal Display。TFT-LCD與無(wú)源TN-LCD、STN-LCD的簡(jiǎn)單矩陣不同,它在液晶顯示屏的每一個(gè)象素上都設(shè)置有一個(gè)薄膜晶體管(TFT),可有效地克服非選通
81、時(shí)的串?dāng)_,使顯示液晶屏的靜態(tài)特性與掃描線(xiàn)數(shù)無(wú)關(guān),因此大大提高了圖像質(zhì)量。TFT-LCD也被叫做真彩液晶顯示器。 </p><p> 上一節(jié)介紹了OLED模塊,這一節(jié),我們給大家介紹ALIENTEK TFTLCD模塊,該模塊有如下特點(diǎn): </p><p> 1,2.4’/2.8’兩種大小的屏幕可選。</p><p> 2,320×240的分辨率。 &
82、lt;/p><p> 3,16位真彩顯示。 </p><p> 4,自帶觸摸屏,可以用來(lái)作為控制輸入。 </p><p> 5,通用的接口,除了ALIENTEK MiniSTM32開(kāi)發(fā)板,該液晶模塊還可以使用在優(yōu)異特、STMSKY、紅牛等開(kāi)發(fā)板上。 本節(jié),我們以2.8寸的ALIENTEK TFTLCD模塊為例介紹,該模塊采用的是顯尚光電的DST2001PH TFT
83、LCD,DST2001PH的控制器為ILI9320,采用26萬(wàn)色的TFTLCD屏,分辨率為320×240,采用16位的80并口。</p><p> 3.4.4 80并口 </p><p> ALIENTEK TFTLCD模塊采用80并口口方與外部鏈接,采用16位數(shù)據(jù)線(xiàn)(低了速度太慢,用彩色就沒(méi)什么效果了)。該模塊的80并口有如下一些信號(hào)線(xiàn): CS:TFTLCD片選信號(hào)。
84、WR:向TFTLCD寫(xiě)入數(shù)據(jù)。 RD:從TFTLCD讀取數(shù)據(jù)。 D[15:0]:16位雙向數(shù)據(jù)線(xiàn)。 RST:硬復(fù)位TFTLCD。 RS:命令/數(shù)據(jù)標(biāo)志(0,讀寫(xiě)命令;1,讀寫(xiě)數(shù)據(jù))。 TFTLCD模塊的RST信號(hào)線(xiàn)和OLED模塊一樣,也是直接接到STM32的復(fù)位腳上,并不由軟件控制,這樣可以省下來(lái)一個(gè)IO口。另外我們還需要一個(gè)背光控制線(xiàn)來(lái)控制TFTLCD的背光。所以,我們總共需要的IO口數(shù)目為21個(gè)。</p>&l
85、t;p> 3.4.5 TFTLCD顯示需要的相關(guān)設(shè)置步驟 </p><p> ?。?)設(shè)置STM32與TFTLCD模塊相連接的IO。 這一步,先將我們與TFTLCD模塊相連的IO口設(shè)置為輸出,具體使用哪些IO口,這里需要根據(jù)連接電路以及TFTLCD模塊的設(shè)置來(lái)確定。 </p><p> ?。?)初始化TFTLCD模塊。 </p><p> 其實(shí)這里就是上和
86、上面OLED模塊的初始化過(guò)程差不多。通過(guò)向TFTLCD寫(xiě)入一系列的設(shè)置,來(lái)啟動(dòng)TFTLCD的顯示。為后續(xù)顯示字符和數(shù)字做準(zhǔn)備。 </p><p> ?。?)通過(guò)函數(shù)將字符和數(shù)字顯示到TFTLCD模塊上。 </p><p> 這里就是通過(guò)我們?cè)O(shè)計(jì)的程序,將要顯示的字符送到TFTLCD模塊就可以了,這些函數(shù)將在軟件設(shè)計(jì)部分向大家介紹。 通過(guò)以上三步,我們就可以使用ALIENTEK TFTLC
87、D模塊來(lái)顯示字符和數(shù)字了, 并且可以顯示各種顏色的背景。</p><p> 3.5 嵌入式 STM32 GSM、溫濕度實(shí)訓(xùn)階段</p><p> 3.1 溫濕度傳感器的設(shè)計(jì)目的以及意義。</p><p> 溫濕度的檢測(cè)與控制是工業(yè)生產(chǎn)過(guò)程中比較典型的應(yīng)用之一,隨著傳感器在生產(chǎn)和生活中的更加廣泛的應(yīng)用。在生產(chǎn)中,溫濕度的高低對(duì)產(chǎn)品的質(zhì)量影響很大。由于溫濕度的檢測(cè)
88、控制不當(dāng),可能使我們導(dǎo)致無(wú)法估計(jì)的經(jīng)濟(jì)損失。為保證日常工作的順利進(jìn)行,首要問(wèn)題是加強(qiáng)生產(chǎn)車(chē)間內(nèi)溫度與濕度的監(jiān)測(cè)工作,但傳統(tǒng)的方法過(guò)于粗糙,通過(guò)人工進(jìn)行檢測(cè),對(duì)不符合溫度和濕度要求的庫(kù)房進(jìn)行通風(fēng)、去濕和降溫等工作。這種人工測(cè)試方法費(fèi)時(shí)費(fèi)力、效率低,且測(cè)試的溫度及濕度誤差大,隨機(jī)性大。目前,在低溫條件下(通常指100℃以下),溫濕度的測(cè)量已經(jīng)相對(duì)成熟。利用新型單總線(xiàn)式數(shù)字溫度傳感器實(shí)現(xiàn)對(duì)溫度的測(cè)試與控制得到更快的開(kāi)發(fā)。但人們對(duì)它的要求越來(lái)越
89、高,要為現(xiàn)代人工作、科研、學(xué)習(xí)、生活提供更好的更方便的設(shè)施就需要從數(shù)字單片機(jī)技術(shù)入手,一切向著數(shù)字化,智能化控制方向發(fā)展。 對(duì)于國(guó)內(nèi)外對(duì)溫濕度檢測(cè)的研究,從復(fù)雜模擬量檢測(cè)到現(xiàn)在的數(shù)字智能化檢測(cè)越發(fā)的成熟,隨著科技的進(jìn)步,現(xiàn)在的對(duì)于溫濕度研究,檢測(cè)系統(tǒng)向著智能化、小型化、低功耗的方向發(fā)展。在發(fā)展過(guò)程中,以單片機(jī)為核心的溫濕度控制系統(tǒng)發(fā)展為體積小、操作簡(jiǎn)單、量程寬、性能穩(wěn)定、測(cè)量精度高,等諸多優(yōu)點(diǎn)在生產(chǎn)</p><p&
90、gt; 本文設(shè)計(jì)的是基于單片機(jī)STM32的溫濕度檢測(cè)和控制系統(tǒng),主要以廣泛應(yīng)用的DHT11作為溫度和濕度的檢測(cè),該儀器具有測(cè)量精度較高、硬件電路簡(jiǎn)單、并能很好的進(jìn)行顯示,可測(cè)試不同環(huán)境溫濕度的特點(diǎn)。另外和控制電路相連,可以進(jìn)行加濕電路和除濕電路的控制,使溫度和濕度參數(shù)在預(yù)先設(shè)定的范圍內(nèi),不需要人的直接參與。 單片機(jī)是系統(tǒng)的控制核心,所以單片機(jī)的性能關(guān)系到整個(gè)系統(tǒng)的好壞。因此單片機(jī)的選擇,對(duì)所設(shè)計(jì)系統(tǒng)的實(shí)現(xiàn)以及功能的擴(kuò)展有著很
91、大的影響。本設(shè)計(jì)中,最終選用的集成溫度傳感器DHT11,采集到的溫濕度信號(hào)送至單片機(jī),實(shí)現(xiàn)溫濕度的顯示與控制。 系統(tǒng)主要由以上元器件組成,通過(guò)硬件電路和軟件程序的設(shè)計(jì),實(shí)現(xiàn)系統(tǒng)的基本功能。</p><p><b> 3.2相關(guān)硬件介紹</b></p><p> DHT11產(chǎn)品概述: DHT11數(shù)字溫濕度傳感器是一款含有已校準(zhǔn)數(shù)字信號(hào)輸出的溫濕度復(fù)合傳感器
92、。它應(yīng)用專(zhuān)用的數(shù)字模塊采集技術(shù)和溫濕度傳感技術(shù),確保產(chǎn)品具有極高的可靠性與卓越的長(zhǎng)期穩(wěn)定性。傳感器包括一個(gè)電阻式感濕元件和一個(gè)NTC測(cè)溫元件,并與一個(gè)高性能8位單片機(jī)相連接。因此該產(chǎn)品具有品質(zhì)卓越、超快響應(yīng)、抗干擾能力強(qiáng)、性?xún)r(jià)比極高等優(yōu)點(diǎn)。每個(gè)DHT11傳感器都在極為精確的濕度校驗(yàn)室中進(jìn)行校準(zhǔn)。校準(zhǔn)系數(shù)以程序的形式儲(chǔ)存在OTP內(nèi)存中,傳感器內(nèi)部在檢測(cè)信號(hào)的處理過(guò)程中要調(diào)用這些校準(zhǔn)系數(shù)。單線(xiàn)制串行接口,使系統(tǒng)集成變得簡(jiǎn)易快捷。超小的體積、
93、極低的功耗,信號(hào)傳輸距離可達(dá)20米以上,使其成為各類(lèi)應(yīng)用甚至最為苛刻的應(yīng)用場(chǎng)合的最佳選則。產(chǎn)品為 4 針單排引腳封裝。連接方便,特殊封裝形式可根據(jù)用戶(hù)需求而提供。</p><p><b> 第4章 調(diào)制和測(cè)試</b></p><p> 4.1 LED點(diǎn)亮實(shí)驗(yàn): </p><p> 使用GPIO的知識(shí),基于無(wú)限循環(huán)架構(gòu)的嵌入式應(yīng)用程序,點(diǎn)亮
94、開(kāi)發(fā)板上綠色LED和紅色LED;</p><p> 4.2 流水燈實(shí)驗(yàn)一: </p><p> 使用GPIO和延時(shí)循環(huán),基于無(wú)限循環(huán)架構(gòu)的嵌入式應(yīng)用程序,使開(kāi)發(fā)板上的綠色LED和紅色LED先后輪流閃爍; </p><p> 4.3 按鍵控制LED實(shí)驗(yàn): </p><p> 使用GPIO的相關(guān)知識(shí),基于無(wú)限循環(huán)架構(gòu)的嵌入式應(yīng)用程序,完成
95、以下功能:</p><p> 1 )當(dāng)按下WK_UP按鍵時(shí),開(kāi)發(fā)板上的綠色LED點(diǎn)亮;當(dāng)釋放WK_UP按鍵時(shí),開(kāi)發(fā)板上的綠色LED熄滅; </p><p> 2 )當(dāng)按下KEY1按鍵時(shí),開(kāi)發(fā)板上的紅色LED點(diǎn)亮;當(dāng)釋放KEY1按鍵時(shí),開(kāi)發(fā)板上的紅色LED熄滅; </p><p> 3 )當(dāng)同時(shí)按下WK_UP和KEY1按鍵時(shí),開(kāi)發(fā)板上的紅色LED和黃色LED同時(shí)
96、點(diǎn)亮;當(dāng)同時(shí)</p><p> 釋放WK_UP和KEY1按鍵時(shí),開(kāi)發(fā)板上的紅色LED和黃色LED同時(shí)熄滅;</p><p> 4.4 流水燈實(shí)驗(yàn)二</p><p> 使用GPIO和SysTick的相關(guān)知識(shí),設(shè)計(jì)基于無(wú)限循環(huán)架構(gòu)的嵌入式應(yīng)用程序,使開(kāi)發(fā)板上的綠色LED和紅色LED先后輪流閃爍,每個(gè)LED點(diǎn)亮和熄滅的時(shí)間各為1s,并在程序中定義一個(gè)8位無(wú)符號(hào)變量來(lái)
97、記錄紅色LED閃爍的次數(shù); </p><p> 調(diào)試程序,在REALVIEW MDK或IAR EWARM的調(diào)試界面中,通過(guò)在程序中設(shè)置斷點(diǎn),并打開(kāi)變量觀察窗口,加入對(duì)應(yīng)的變量,全速運(yùn)行,隨著紅色LED的閃爍,跟蹤用來(lái)記錄紅色LED閃爍次數(shù)的8位無(wú)符號(hào)變量的變化情況。</p><p> 4.5 溫濕度實(shí)驗(yàn)調(diào)制與結(jié)果</p><p> 串行接口 (單線(xiàn)雙
98、向) DATA 用于微處理器與 DHT11之間的通訊和同步,采用單總線(xiàn)數(shù)據(jù)格式,一次通訊時(shí)間4ms左右,數(shù)據(jù)分小數(shù)部分和整數(shù)部分,具體格式在下面說(shuō)明,當(dāng)前小數(shù)部分用于以后擴(kuò)展,現(xiàn)讀出為零.操作流程如下: 一次完整的數(shù)據(jù)傳輸為40bit,高位先出。 數(shù)據(jù)格式: 8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小
99、數(shù)數(shù)據(jù) +8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù) +8bit校驗(yàn)和 數(shù)據(jù)傳送正確時(shí)校驗(yàn)和數(shù)據(jù)等于“8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)”所得結(jié)果的末8位。</p><p><b> 4.6實(shí)驗(yàn)結(jié)果</b></p><p> 系統(tǒng)運(yùn)行穩(wěn)定,顯示畫(huà)面清晰、流暢。系統(tǒng)該系統(tǒng)能滿(mǎn)足異步全彩色L
100、ED顯示屏高處理速度,大容量數(shù)據(jù)存儲(chǔ)的要求,支持256灰度級(jí)全彩圖像、動(dòng)畫(huà)的顯示,同時(shí)通過(guò)改變FPGA內(nèi)部的硬件邏輯可方便地對(duì)系統(tǒng)進(jìn)行升級(jí),結(jié)構(gòu)簡(jiǎn)單、可靠性高,可替代市場(chǎng)上同類(lèi)設(shè)計(jì)產(chǎn)品,應(yīng)用前景廣泛。</p><p> 調(diào)試過(guò)程中主要出現(xiàn)的問(wèn)題有: </p><p> 1、如果SD卡中的字模文件出現(xiàn)錯(cuò)誤或是沒(méi)有讀取到SD卡的文件,則會(huì)出現(xiàn)中文亂碼或是圖片不顯示的問(wèn)題。 </p&g
101、t;<p> 2、如果程序出現(xiàn)錯(cuò)誤會(huì)導(dǎo)致LCD屏無(wú)法打開(kāi)或是產(chǎn)生黑屏的現(xiàn)象,程序與開(kāi)發(fā)板不兼容也會(huì)產(chǎn)生同樣的現(xiàn)象。 </p><p> 最后在不斷的調(diào)試和改進(jìn)下,LCD能夠根據(jù)給出的指令正常顯示中、英文字符以及BMP圖片。</p><p><b> 第5章 實(shí)習(xí)心得</b></p><p> 通過(guò)兩個(gè)星期的實(shí)訓(xùn),我覺(jué)得自己
102、各方面都得到了很大的提升,此次實(shí)訓(xùn)讓自己收獲頗多,比如嵌入式這塊從零開(kāi)始到現(xiàn)在已經(jīng)能獨(dú)立的開(kāi)發(fā)三個(gè)項(xiàng)目,對(duì)硬件來(lái)說(shuō)的話(huà)從剛開(kāi)始在大三只是了解一點(diǎn)點(diǎn)到現(xiàn)在的熟悉。</p><p> 對(duì)于一個(gè)大學(xué)生來(lái)說(shuō),個(gè)人覺(jué)得參加此次實(shí)訓(xùn)的話(huà)還是很有必要的,特別感謝信盈達(dá)讓我明確了自己的職業(yè)方向,如果不是信盈達(dá)的話(huà),我對(duì)嵌入式開(kāi)發(fā)還不會(huì)這么了解 。</p><p> 在這里,我想說(shuō)的不是STM32、UC
103、OS或者LINUX,而是觸類(lèi)旁通,這只是眾多微控制器或者系統(tǒng)中的比較典型的代表,但是還有很多很多的其他類(lèi)型,不過(guò)萬(wàn)變不離其宗,所用的基本思路和理念基本是一樣的。例如:所用到的協(xié)議、所要配置的順序、或者系統(tǒng)中每個(gè)指令的制作、以及每個(gè)函數(shù)的內(nèi)部實(shí)現(xiàn)機(jī)制等等,這些知識(shí)是相通的??偠灾?,不要局限于所學(xué)的那一款單片機(jī)或者系統(tǒng),放開(kāi)了想象,都是那樣的。</p><p> 由于嵌入式系統(tǒng)在多方面有著自身的許多優(yōu)點(diǎn)和實(shí)用性,
104、它的應(yīng)用正貫穿于我們生活、生產(chǎn)的方方面面,它可應(yīng)用到工業(yè)控制、交通管理、信息家電、家庭智能管理、網(wǎng)絡(luò)及電子商務(wù)、環(huán)境檢測(cè)和機(jī)器人等諸多方面。嵌入式系統(tǒng)有著良好的、廣闊的發(fā)展前景,它正悄然地改變著我們的生產(chǎn)、生活。這使我們有理由相信,未來(lái)的電子技術(shù)就是嵌入式系統(tǒng)技術(shù)的天下。</p><p><b> 參考文獻(xiàn)</b></p><p> 1. 邵貝貝譯,嵌入
105、式實(shí)時(shí)操作系統(tǒng)µC/OS-II(第二版)[M]. 北京:北京航空航天大學(xué)出版社,2003. </p><p> 2. 魏洪興等,嵌入式系統(tǒng)設(shè)計(jì)師教程 [M].北京:清華大學(xué)出版社,2006. </p><p> 3. 王田苗,魏洪興,嵌入式系統(tǒng)設(shè)計(jì)與實(shí)例開(kāi)發(fā)(第三版[M].北京:清華大學(xué)出版社,2008.
106、0;</p><p> 4. 李寧,基于MDK的STM32處理器開(kāi)發(fā)應(yīng)用北京:北京航空航天大學(xué)出版社,2008. </p><p> 5. 劉波文,ARM Cortex-M3應(yīng)用開(kāi)發(fā)實(shí)例詳解 [M].北京:電子工業(yè)出版社,2011. </p><p> 6. 劉波文,黎勝容,ARM嵌入式項(xiàng)
107、目開(kāi)發(fā)三位一體實(shí)戰(zhàn)精講[M]. 北京:北京航空航天大學(xué)出版社,2011. </p><p> 7. ST Microelectrictronics.RM0008 Reference Manual. 2011. </p><p> 8. STMicroelectronics. STM32
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 無(wú)線(xiàn)傳感器網(wǎng)絡(luò)課程設(shè)計(jì)
- 無(wú)線(xiàn)傳感網(wǎng)絡(luò)課程設(shè)計(jì)
- 傳感器課程設(shè)計(jì)
- 傳感器課程設(shè)計(jì)
- 傳感器課程設(shè)計(jì)
- 傳感器課程設(shè)計(jì)
- 傳感器課程設(shè)計(jì)
- 傳感器課程設(shè)計(jì)-- 壓力傳感器
- 傳感器課程設(shè)計(jì)-- 電容式傳感器
- 傳感器課程設(shè)計(jì)---霍爾電流傳感器設(shè)計(jì)
- 傳感器課程設(shè)計(jì)--電阻應(yīng)變式傳感器
- 課程設(shè)計(jì)----溫度傳感器
- 溫度傳感器課程設(shè)計(jì)
- 傳感器課程設(shè)計(jì)--電渦流位移傳感器設(shè)計(jì)
- 傳感器課程設(shè)計(jì)--- 傳感器原理及應(yīng)用
- 智能傳感器課程設(shè)計(jì)
- 濕度傳感器課程設(shè)計(jì)
- 傳感器課程設(shè)計(jì)6
- 傳感器課程設(shè)計(jì)論文
- 傳感器課程設(shè)計(jì)---大量程稱(chēng)重傳感器設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論