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

正文內(nèi)容

基于51單片機(jī)的電子式指南針的設(shè)計(jì)最后附源代碼(編輯修改稿)

2025-01-09 05:09 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 還有很多沒(méi)有使用的端口,鍵盤連接上直接采用了每個(gè)按鍵占用一個(gè)端口的形式 ,如圖 所示,電路的中的幾個(gè)電阻屬于上拉電阻,保證在沒(méi)有輸入的情況下端口電平穩(wěn)定為高,同時(shí)也可以達(dá)到省電的目的。鍵盤的讀取采用掃描的形式,當(dāng)檢測(cè)到有按鍵按下時(shí),消抖動(dòng)后進(jìn)行鍵值判斷。 圖 串口邏輯電路 圖 12 第 4 章 系統(tǒng)軟件 主監(jiān)控程序 整個(gè)監(jiān)控系統(tǒng)中各個(gè)模塊間存在一定的先后順序且程序模塊數(shù)量較少,為了減少系統(tǒng)的程序量,設(shè)計(jì)過(guò)程中系統(tǒng)的監(jiān)控程序采用了傳統(tǒng)的前后臺(tái)方式。整個(gè)監(jiān)控程序主要由指南針模塊驅(qū)動(dòng)、液晶顯示驅(qū)動(dòng)、實(shí)時(shí)時(shí)鐘驅(qū)動(dòng)和串口驅(qū) 動(dòng)組成。整個(gè)系統(tǒng)監(jiān)控程序流程如圖所示。當(dāng)系統(tǒng)上電后,最先執(zhí)行的就是對(duì)系統(tǒng)各個(gè)部件進(jìn)行初始化的代碼,其中主要包括對(duì)系統(tǒng)內(nèi)部定時(shí)器、實(shí)時(shí)時(shí)鐘、 LCM驅(qū)動(dòng)、指南針模塊以及對(duì)系統(tǒng)通信串口的初始化。系統(tǒng)初始化完成時(shí)對(duì)指南針模塊進(jìn)行讀取,此時(shí)指南針模塊將根據(jù) ADJUST 端口的電平狀態(tài)判定是否需要校正指南針,其后將得到的數(shù)據(jù)上傳至微控制器,微控制器根據(jù)得到的數(shù)據(jù)驅(qū)動(dòng) LCM 進(jìn)行相應(yīng)的顯示,隨后微控制器將對(duì)系統(tǒng)鍵盤端口進(jìn)行掃描,并根據(jù)掃描得到的鍵值進(jìn)行相應(yīng)的處理。前后臺(tái)式的監(jiān)控系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,但是其實(shí)時(shí)性較差。系統(tǒng)中由于各個(gè)程 序之間相互關(guān)聯(lián),且對(duì)實(shí)時(shí)性要求不是很高,前后臺(tái)能夠滿足其要求。 ]2[ 代碼如下所示: void main(void) { 圖 系統(tǒng)監(jiān)控程序流程 13 unsigned int Angle。 InitScreen()。 /* 初始化 LCM */ DisMain()。 /* 初始化系統(tǒng)部件 */ while(1) { Angle = GetDirction()。 /* 獲得指南針?lè)轿? */ DisCurDirc(Angle)。 /* 顯示系統(tǒng)角度 */ DisCurTime(11, 15)。 /* 顯示系統(tǒng)時(shí)間 */ DisCurDate()。 /* 顯示系統(tǒng)日期 */ RollScreen()。 /* 顯示系統(tǒng)廣告 */ ScanKey()。 /* 掃描鍵盤并判定發(fā)送 */ } } 實(shí)時(shí)時(shí)鐘驅(qū)動(dòng) 本次設(shè)計(jì)采用的 PCF8583 實(shí)時(shí)時(shí)鐘芯片采用的 I2C 接口,對(duì)它的所有操作直接通過(guò)對(duì)其內(nèi)部線性的 CMOS RAM 區(qū)進(jìn)行操作即可即對(duì) PCF8583 的操作主要是通過(guò) I2C 總線對(duì)其內(nèi)部 RAM 進(jìn)行讀寫。整個(gè)驅(qū)動(dòng)流程如圖 所示。 圖 PCF8583 驅(qū)動(dòng)流程 14 人機(jī)界面驅(qū)動(dòng) 液晶模塊驅(qū)動(dòng) 液晶顯示驅(qū)動(dòng)處于系統(tǒng)的最后端,屬于人機(jī)交互界面。直觀的液晶顯示能夠使得系統(tǒng)更容易操控。本次設(shè)計(jì)采用了 PG160128 點(diǎn)陣的 LCM 模塊。整個(gè) LCM 驅(qū)動(dòng)的構(gòu)架圖如 圖 所示。采用層次設(shè)計(jì)的驅(qū)動(dòng)可以很好的移植到不同的處理器。 鍵盤驅(qū)動(dòng) 系統(tǒng)中將按鍵電路中按鍵 1K 、 2K 、 3K 、 4K 、 5K 分別與單片機(jī)的 P1P1 P1 P1 P17 引腳進(jìn)行連接,此按鍵是低電平有效,當(dāng)有鍵按下時(shí),與按鍵相連接的單片機(jī)引腳檢測(cè)到這個(gè)信號(hào),然后進(jìn)行相應(yīng)的處理后再輸出。 ]2[ 傳感器模塊驅(qū)動(dòng) 本次設(shè)計(jì)采用的是 FAD_DCMP_SPI 指南針模塊。模塊采用 SPI 接口與 MCU 進(jìn)行數(shù)據(jù)交換。整個(gè)模塊驅(qū)動(dòng)包括了讀取 PNI11096 數(shù)據(jù)、處理數(shù)據(jù)、封裝數(shù)據(jù)和通過(guò) SPI 時(shí)序發(fā)送數(shù)據(jù)幾個(gè)部分。程序的流程如圖 所示。 圖 指南針模塊內(nèi)部數(shù)據(jù)處理流程 圖 LCM 驅(qū)動(dòng)程序架構(gòu) 15 在整個(gè)指南針模塊程序的設(shè)計(jì)過(guò)程中最主要的也就是其數(shù)據(jù)的處理,直接關(guān)系到系統(tǒng)的精度。在還沒(méi)有處理之前從 PNI11096 讀取的數(shù)據(jù)真實(shí)的反應(yīng)了水平面內(nèi)地磁場(chǎng)的分布情況,如圖 所示,這是均勻轉(zhuǎn)動(dòng)指南針模塊得到的地磁場(chǎng)強(qiáng)度分布,圖中顯示地磁場(chǎng)強(qiáng)度在不同方向上的分布是不同的,經(jīng)過(guò)歸一化后,可以很好的將其歸一化為圓,使得在各個(gè)方向上的磁場(chǎng)強(qiáng)度均勻,這樣既可以方便進(jìn)行角度計(jì)算又可以提高測(cè)量精度,如圖 。 指南針模塊在第一次使用前都必須校正,系統(tǒng)上電時(shí)將模 塊的 ADJUST 引腳拉低即可進(jìn)入校正狀態(tài),將模塊在水平面內(nèi)均勻的轉(zhuǎn)動(dòng)一周后校正結(jié)束。校正時(shí)主要調(diào)整的系數(shù)就是本地的磁偏角。將磁場(chǎng)強(qiáng)度歸一化后,直接對(duì) X,Y 軸的強(qiáng)度進(jìn)行計(jì)算就可以得到當(dāng)前方向與正東方向的夾角,如圖 所示。 從圖 中可以看出夾 角就是: )/tan( xyaangle ? () 指南針模塊關(guān)鍵程序如下: float pi=atan(1)*4。 int Xvalue,Yvalue。 圖 未處理時(shí)真實(shí)磁場(chǎng)強(qiáng)度分布 圖 歸一化后磁場(chǎng)強(qiáng)度分布 圖 角度的計(jì)算 16 int angle,heading。 GetRawXY()。 /*計(jì)算坐標(biāo)函數(shù) */ Xvalue=XrawXoffset。 /*減去 x坐標(biāo)補(bǔ)償量 */ Yvalue=YrawYoffset。 if(Xvalue Yvalue) Yvalue=( Yvalue*Xrange)/Yrange。 /*Y 增益匹配 */ else Xvalue=( Xvalue*Yrange)/Xrange。 /*X 增益匹配 */ angle=atan(Yvalue/Xvalue)*180/pi。 /*計(jì)算角度 */ if(Xvalue=0amp。amp。Yvalue=0) heading=angle。 /*第一象限 */ else if(Xvalue0amp。amp。Yvalue=0) heading=180angle。 /*第二象限 */ else if(Xvalue0amp。amp。Yvalue0) heading=180+angle。 /*第三象限 */ else if(Xvalue=0amp。amp。Yvalue0) heading=360angle。 /*第四象限 */ 17 第 5章 仿真結(jié)果 本研究采用 Proteus軟件進(jìn)行仿真,采用 Keil軟件編譯。整個(gè)電路包括 CPU、系統(tǒng)時(shí) 鐘、實(shí)時(shí)時(shí)鐘電路、指南針模塊接口、 LCD顯示模塊、通信模塊和鍵盤輸入電路。仿真時(shí)使用虛擬終端模擬上位機(jī),并顯示出時(shí)鐘窗口。 本研究所用 MCU采用 DS89C450,與 89C52兼容,在仿真中采用 AT89C52代替,另外,實(shí)時(shí)時(shí)鐘采用 PCF8583芯片, LCD采用 160128 點(diǎn)陣的單色液晶顯示屏 。仿真結(jié)果表明電子指南針精度可達(dá) 1176。 。仿真圖如圖 。 圖 Proteus 仿真圖 18 第 6章 結(jié)論 所設(shè)計(jì)的系統(tǒng)中包含了磁場(chǎng)傳感器、微控制器、顯示部件、輸入部件和實(shí)時(shí)時(shí)鐘等部分,微控制器通過(guò)對(duì)磁場(chǎng)傳感器配套的 ASIC 進(jìn)行讀取獲 得當(dāng)前方向地磁場(chǎng)的強(qiáng)度,通過(guò)一定的運(yùn)算后由直觀的人機(jī)界面顯示出來(lái),并可通過(guò)微控制器的串口和上位機(jī)建立連接進(jìn)行數(shù)據(jù)的傳輸 。 在整個(gè)設(shè)計(jì)系統(tǒng)中充分掌握各模塊電路的工作原理,對(duì)硬件電路進(jìn)行設(shè)計(jì) ,并使用 C語(yǔ)言編寫全部的驅(qū)動(dòng)程序。本系統(tǒng)用于方位指示 實(shí)測(cè)精度可以達(dá)到 1176。,顯示直觀,并且可以嵌入到其它電子設(shè)備(如 GPS)中。 因?yàn)閭€(gè)人在知識(shí)面和能力方面還有限,再加上條件的限制,電子指南針的 采樣精度和抗干擾能力等 各項(xiàng)技術(shù)指標(biāo)的提高、諸多功能的完善還需要進(jìn)一步的研究和開(kāi)發(fā) , 此外在完成基本功能的基礎(chǔ)上,還需要努力提高軟件的效率 、硬件系統(tǒng)的穩(wěn)定性、降低 系統(tǒng) 功耗等 。 19 致 謝 非常感謝 xx老師在我大學(xué)的最后學(xué)習(xí)階段 —— 畢業(yè)設(shè)計(jì)階段給自己的指導(dǎo),從最初的定題,到資料收集,到寫作、修改,到論文定稿, 老師 給了
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1