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

正文內(nèi)容

基于stm32的溫度測量系統(tǒng)設(shè)計畢業(yè)論文-資料下載頁

2025-06-26 09:41本頁面
  

【正文】 計的顯示模塊采用的是8080并口,包含CS:TFTLCD片選信號。 WR:向TFTLCD寫入數(shù)據(jù)。 RD:從TFTLCD讀取數(shù)據(jù)。 D[15:0]:16位雙向數(shù)據(jù)線。 RST:硬復(fù)位TFTLCD。 RS:命令/數(shù)據(jù)標(biāo)志(0,讀寫命令;1,讀寫數(shù)據(jù))。 模塊的8080并口讀/寫的過程為:先根據(jù)要寫入/讀取的數(shù)據(jù)的類型,設(shè)置DC為高(數(shù)據(jù))/低(命令),然后拉低片選,選中SSD1306,接著根據(jù)是讀數(shù)據(jù),還是要寫數(shù)據(jù)置RD/WR為低,然后: 在RD的上升沿,使數(shù)據(jù)鎖存到數(shù)據(jù)線(D[7:0])上; 在WR的上升沿,使數(shù)據(jù)寫入到SSD1306里面。SSD1306的8080并口寫時序圖如下: 8080并口寫時序圖 SSD1306的8080并口讀時序圖如下: 8080并口讀時序圖 SSD1306的8080接口方式下,控制腳的信號狀態(tài)所對應(yīng)的功能如下表: 引腳功能功能RDWRCSDC寫命令H上升沿LL讀狀態(tài)上升沿HLL寫數(shù)據(jù)H上升沿LH讀數(shù)據(jù)上升沿HLH在8080方式下讀數(shù)據(jù)操作的時候,在讀顯存的時候需要一個假讀命(Dummy Read),以使得微控制器的操作頻率和顯存的操作頻率相匹配。在讀取真正的數(shù)據(jù)之前,由一個的假讀的過程。這里的假讀,其實就是第一個讀到的字節(jié)丟棄不要,從第二個開始,才是真正要讀的數(shù)據(jù)。一個典型的讀顯存的時序圖,如下圖所示: 讀顯存時序圖 可以看到,在發(fā)送了列地址之后,開始讀數(shù)據(jù),第一個是Dummy Read,也就是假讀,我們從第二個開始,才算是真正有效的數(shù)據(jù)。 AM與I/D控制著顯示屏的顯示方向:當(dāng)AM=0的時候,地址以行方向更新。當(dāng)AM=1的時候,地址以列方向更新;地址計數(shù)器自動增加還是減少則由I/D控制。如圖所示: GRAM顯示方向設(shè)置圖 驅(qū)動IC的初始化代碼,使用的是廠家推薦的設(shè)置,實質(zhì)是復(fù)雜的一系列寫數(shù)據(jù)和寫寄存器指令,框圖如圖所示: 復(fù)位SSD1306驅(qū)動IC初始化代碼開啟顯示清0顯存開始顯示 SSD1306初始化框圖 通過初始化后,就可以設(shè)計函數(shù)來顯示溫度了,首先編寫顯示字符showchar的函數(shù),TFTLCD模塊的ASCII字符集取模方式采取的開辟窗口的形式來做的,并不是采用畫點函數(shù)來做的。這樣可以提高寫入速度,因為這樣可以省掉每次都設(shè)置坐標(biāo),而是直接寫入數(shù)據(jù),LCD自動完成坐標(biāo)的遞增。這樣的寫入方式,在繪圖的時候,尤為見效,可以很大程度上提高圖片的刷新速度。因為編碼方式采用ASCII碼,要顯示數(shù)字只需將數(shù)字轉(zhuǎn)化為相應(yīng)的ASCII碼,加上‘0’的ASCII碼即可滿足要求。 ATKHC05藍(lán)牙模塊 ATKHC05藍(lán)牙串口模塊所有功能都是通過AT指令集控制,進(jìn)入AT狀態(tài)有兩種方法:,上電后,模塊即進(jìn)入AT指令狀態(tài)。2. 模塊上電后,通過將KEY接VCC,使模塊進(jìn)入AT狀態(tài)。其引腳如表所示: ATKHC05模塊各引腳功能描述序號名稱說明1LED配對狀態(tài)輸出:配對成功輸出高電平,未配對則輸出低電平2KEY用于進(jìn)入AT狀態(tài);高電平有效(懸空默認(rèn)為低電平)3RXD模塊串口接收腳,可接單片機(jī)的TXD4TXD模塊串口發(fā)送腳,可接單片機(jī)的RXD5GND地6VCC電源(~)模塊的指令結(jié)構(gòu)為:AT+CMD=PARAM,其中CMD(指令)和PARAM(參數(shù))都是可選的,不過要在發(fā)送末尾添加回車符(\r\n),否則模塊不響應(yīng)。用到的指令有: AT指令表指令響應(yīng)參數(shù)ATOK無AT+RESETOK無AT+ROLE=PARAMOK0從角色1主角色2回環(huán)角色AT+ROLE?+ROLE:PARAMOK首先需檢測,ATKHC05是否連接成功,通過發(fā)送測試指令“AT\r\n”,若能響應(yīng)“ok”,則表示連接成功。主角色:查詢周圍藍(lán)牙從設(shè)備,并主動發(fā)起連接,從而建立主、從藍(lán)牙設(shè)備間的數(shù)據(jù)傳輸通道;從角色:被動連接。在這里設(shè)置為從角色,以便移動終端的連接。因為回環(huán)角色未用到,可以用一個按鍵來切換主從角色的設(shè)置,查詢后顯示在液晶上。在初始化部分提到,發(fā)送數(shù)據(jù)時,采用DMA方式直接從存儲器傳送到串口輸出,接收數(shù)據(jù)時,添加了中斷來判斷數(shù)據(jù)的間隔是否大于10ms。 藍(lán)牙流程圖獲取模塊角色后,如果顯示的是主角色,則按key1改為從角色,方便與移動終端連接。獲取配對狀態(tài)是根據(jù)藍(lán)牙模塊上的引腳led的電平來判斷,配對成功為高電平,未配對則為低電平;如果匹配未成功則只能進(jìn)行切換角色操作,而匹配成功后,通過發(fā)送+led1 on可以點亮液晶背光,發(fā)送+led1 off熄滅液晶背光,用strcmp函數(shù)來比較接受數(shù)據(jù)與這個兩個數(shù)據(jù)即可實現(xiàn)。5 結(jié)果與總結(jié)給stm32上電后,溫度正常顯示,如圖所示: lcd溫度顯示第一行“ATKHC05 Standby”表示檢測到藍(lán)牙模塊,否則提示錯誤,第二行的STA顯示的是連接狀態(tài),此時為“Disconnect”,當(dāng)藍(lán)牙模塊連接時,則會變成“connected”。如圖所示: 連接成功提示然后打開手機(jī)的藍(lán)牙串口通信軟件,就自動開始搜索藍(lán)牙設(shè)備,第二次連接的時候則會提示是否繼續(xù)上次的連接。 藍(lán)牙串口通信軟件 連接成功這里選擇的是鍵盤操作模式,此模式下,可以實現(xiàn)雙向通信。 手機(jī)接收溫度這里我設(shè)置了兩個按鍵,“LED1亮”鍵會發(fā)送+led1 on的信息,通過藍(lán)牙發(fā)送給stm32后,則會使液晶的背光點亮,而旁邊的紅色燈閃爍是表示stm32工作正常的,拍結(jié)果照片時有亮有滅?!癓ED1滅”則會發(fā)送+led1 off,使液晶背光熄滅 控制stm32液晶亮滅上兩圖在同一時間段拍攝,由于液晶亮的時候隔的太近,影響了光線,但還是能很明顯能看出液晶的亮滅,結(jié)果符合設(shè)計要求,順利的控制液晶的亮滅,有較好的實時性和穩(wěn)定性。采用藍(lán)牙模塊,通信距離有很大限制,但可以通過服務(wù)器進(jìn)行遠(yuǎn)距離傳輸,同時它的優(yōu)點也是很明顯的,低功耗,方便使用,通訊安全性好,使用藍(lán)牙就能實現(xiàn)與移動終端的連接,很方便的進(jìn)行實時控制。使用tftlcd主要是考慮到系統(tǒng)的拓展性,能顯示更詳細(xì)的信息,也使得人機(jī)交互界面做的更人性化。剛開始做畢設(shè)時,對STM32并沒有什么了解,好在有單片機(jī)和微機(jī)原理的基礎(chǔ),看起資料來不是很費勁。本次設(shè)計使用到了STM32的I/O、串口、DMA、中斷、通用定時器TIME4等資源,而它們的寄存器往往都是很繁雜的,以I/O為例,與之相關(guān)的寄存器有:GPIOx_CRL、GPIOx_CRH、IDR、ODR、BSRR、BRR、LCKR,面對如此多的寄存器,最大的感觸就是要沉下心來看技術(shù)手冊,找中關(guān)鍵的寄存器,找中相關(guān)的位,才能事半功倍。然后就是要細(xì)心,例如在配置優(yōu)先級分組時要特別注意統(tǒng)一分組,組號要一樣,否則前面設(shè)置的優(yōu)先級會因為后面的分組不一致發(fā)生改變,而產(chǎn)生意料之外的結(jié)果;還有搶占優(yōu)先級與響應(yīng)優(yōu)先級之間的區(qū)別,高優(yōu)先級的搶占優(yōu)先級是可以打斷正在進(jìn)行的低搶占優(yōu)先級中斷的,而搶占優(yōu)先級相同的中斷,高優(yōu)先級的響應(yīng)優(yōu)先級不可以打斷低響應(yīng)優(yōu)先級的中斷,所以配置前得分清是否需要打斷;用到的函數(shù)都要在頭文件里面聲明,不然會編譯出錯。最重要的還是思路要清晰,知道要做什么,該如何做,能理清寄存器之間、外設(shè)與STM32之間的聯(lián)系。以DMA為例,它不通過CPU,直接建立了外設(shè)與存儲器之間的連接,所以得先給出外設(shè)與存儲器的地址;既然是傳輸數(shù)據(jù),就需給出數(shù)據(jù)量的大小和一次讀取的數(shù)據(jù)寬度;配置好了這些,數(shù)據(jù)的基本信息就配置好了,然后就思考它們?nèi)绾蝹鬏?,在存儲器?nèi)讀取一個字節(jié),應(yīng)該增還是減地址,然后查找數(shù)據(jù)手冊,找到DMA的配置寄存器DMA_CCRx,位7MINC對應(yīng)存儲器地址增量模式,位6對應(yīng)外設(shè)地址增量模式,串口的地址是不變的相應(yīng)的外設(shè)地址就設(shè)置為不增,而數(shù)據(jù)一般都傳輸多位,所以將位7設(shè)置成存儲器地址增量模式。DMA有7個通道,有仲裁器來判斷啟動哪個,自然就要設(shè)置優(yōu)先級。最后使能DMA,就開啟了傳輸。整個過程看起來繁復(fù),但理清了思路之后,就像用線串了起來,問題都迎刃而解??吹阶罱K的成果,感覺這幾個月來的努力沒有白費。在這個過程中,不僅僅是學(xué)習(xí)了STM32,了解數(shù)字溫度計DS18B20和藍(lán)牙通信,更為重要的是鍛煉了自己分析問題解決問題的能力。本次設(shè)計也存在很多不足之處,未能添加反饋調(diào)節(jié)溫度的模塊,只實現(xiàn)了溫度測量與顯示,及遠(yuǎn)程控制顯示的系統(tǒng)。剛開始設(shè)計時急于求成,代碼很容易就出錯了,沒理清頭緒時,往往找了很久,好不容易把錯誤改正,編譯不出錯,實現(xiàn)的結(jié)果又和設(shè)想的偏差很大,后來才認(rèn)識到踏實看技術(shù)手冊,弄清寄存器作用,理清設(shè)計思路的重要性,這樣出錯也很容易去糾正。參考文獻(xiàn)[1] STMicroelectronics Corporation.RM0008 Reference manual[S].2011.[2] STMicroelectronics Corporation.STM32F103XX Datasheet[J].2007.[3] 李寧.基于MDK的STM32處理器應(yīng)用開發(fā)[M].北京:北京航空航天大學(xué)出版社.2008[4] 劉軍.例說STM32[M].北京:北京航空航天大學(xué)出版社.2011.[5] 劉鵬程.基于ARM的溫度測量系統(tǒng)[J].科技信息(學(xué)術(shù)研究).2008(18).7778.[6] 樊昌信,曹麗娜.通信原理[M].北京:國防工業(yè)出版社.2006.[7] 曾凡鑫.無線通信中的序列設(shè)計原理[M].北京:國防工業(yè)出版社.2007.[8] 喻金錢.短距離無線通信詳解:基于單片機(jī)控制[M].北京:航空航天大學(xué)出版社.2009.[9] 潘焱.無線通信系統(tǒng)與技術(shù)[M].北京:人民郵電出版社[M].2011.[10] STMicroelectronics Corporation.The Definitive Guide to the ARM CortexM3[J].2010.致謝大學(xué)本科的時光即將結(jié)束,回顧四年來的學(xué)習(xí)經(jīng)歷,面對現(xiàn)在的收獲,我感到無限欣慰。首先向指導(dǎo)老師王原麗老師表示衷心的感謝并致以崇高的敬意。王老師給予我很多重要的指導(dǎo),對學(xué)術(shù)研究的嚴(yán)謹(jǐn)值得我好好學(xué)習(xí),還要感謝老師為學(xué)生營造的濃郁學(xué)術(shù)氛圍,以及學(xué)習(xí)、生活上的無私幫助! 同時向熱心幫助過我的所有老師和同學(xué)表示由衷的感謝!在論文工作中,一直得到老師和學(xué)長的悉心指導(dǎo),使我的論文可以又快又好的完成,值此論文完成之際,謹(jǐn)向各位老師和同學(xué)致以最崇高的謝意!最后,衷心地感謝在百忙之中評閱論文和參加答辯的各位專家、教授。32
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1