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

正文內(nèi)容

電子指南針設(shè)計報告(編輯修改稿)

2024-08-30 05:56 本頁面
 

【文章內(nèi)容簡介】 上180176。,使其變?yōu)榕c南極之間的夾角,而且所有值變?yōu)檎龜?shù),方便處理。得到度數(shù)后,根據(jù)我們預(yù)先設(shè)定好的角度范圍,判斷當(dāng)前所在哪個方位,并在LCD1602上顯示,然后將其乘以10倍,變?yōu)檎麛?shù),通過轉(zhuǎn)換,在LCD1602上顯示與南極夾角的值,具體設(shè)計思路如下:開始處理傳感器信息判斷、顯示方位轉(zhuǎn)換為液晶顯示數(shù)據(jù)顯示夾角結(jié)束 LCD1602人機界面軟件流程圖 系統(tǒng)總統(tǒng)軟件設(shè)計 本設(shè)計的軟件設(shè)計總體思路是將HMC5883L得到的信息送至單片機內(nèi)進行處理,再轉(zhuǎn)換為液晶顯示數(shù)據(jù)在LCD1602上進行顯示,得到當(dāng)前的方位信息與角度信息,由于硬件模塊較少,所以很大部分工作放在了軟件上,STC12單片機是一款1T單片機,處理速度較快,在延時上不好把握,用定時器又太浪費資源,而本設(shè)計在一些模塊時序上對延時有一定要求,所以本設(shè)計借用了別人驗證好的一套運用在STC12單片機上的延時函數(shù)集,確保系統(tǒng)的正常運行。思路上采用每讀完一次數(shù)據(jù),就立即送至液晶顯示的實時方式。具體流程圖如下:開始初始各模塊獲取傳感器數(shù)據(jù)數(shù)據(jù)處理判斷、顯示方位轉(zhuǎn)換為液晶顯示數(shù)據(jù)顯示角度信息 系統(tǒng)總體軟件流程圖 ,但LCD1602液晶的對比度電壓要高于5V才能看出顯示效果,發(fā)現(xiàn)液晶上無顯示,后來將系統(tǒng)電源調(diào)至5V,LCD1602就可以正常顯示了,而經(jīng)測試,STC12LE單片機是可以在5V條件下進行工作的。在方向的確定上,我們結(jié)合手機上自帶的電子羅盤對設(shè)計進行調(diào)試,校準(zhǔn)HMC5883L模塊的方向,最后用膠固定到PCB板上。 液晶顯示圖 整體硬件調(diào)試圖該電子指南針設(shè)計模塊簡單,可集成性好,176。,可以用于航海、山地探索的方向判定,而采用低功耗單片機增強了該設(shè)備的續(xù)航能力。但LCD1602液晶為單色字符液晶,顯示能力有限,如果采用更高級的嵌入式處理器,擁有足夠的速度和存儲器,可以采用TFT液晶等較好的顯示設(shè)備,將人機界面做得更加完善。本設(shè)計中HMC5883L傳感器只用到了X與Y的值,即只能在系統(tǒng)水被平放置時才能較為精確地測量,非常不方便,如果能結(jié)合加速度傳感器與HMC5883L中Z軸的值做三維方向的判定,就可以讓系統(tǒng)在任意姿態(tài)下判斷當(dāng)前的位置信息。在設(shè)計中,模擬IIC通訊是非常重要的軟件設(shè)計環(huán)節(jié),軟件的優(yōu)化可以為通信節(jié)省更多的資源和時間,我們采用了51單片機狀態(tài)寄存器的CY位作為通信數(shù)據(jù)位進行數(shù)據(jù)交換,免去重新在RAM里定義數(shù)據(jù)變量,做到了一個資源優(yōu)化。在液晶顯示中,上一次顯示的數(shù)據(jù)如果不能被下次顯示的數(shù)據(jù)覆蓋掉,就要及時清除,而如果采用命令清屏,就會使屏幕閃爍很厲害,所以我們才用用空格字符覆蓋的方式,及時清除上一次顯示的內(nèi)容,方便下次數(shù)據(jù)的顯示。在以后的實踐中,應(yīng)當(dāng)注意這些軟件設(shè)計上的問題,讓系統(tǒng)運行更加穩(wěn)定流暢。在經(jīng)過幾周的不懈努力中,終于完成了本次智能化電子系統(tǒng)設(shè)計的任務(wù)。通過本設(shè)計鍛煉了我們的實踐能力,也是對以后我們實際工作能力的訓(xùn)練和考察過程?,F(xiàn)在是一個高科技的時代,單片機的應(yīng)用無處不在,這更堅定了我要學(xué)好單片機的決心。本設(shè)計本身就比較簡單,整個設(shè)計的過程中每一步都是大家親自做過的,在經(jīng)過遇到問題,思索問題到解決問題的過程中,收獲是最多的。本設(shè)計重點在程序代碼上,通過上網(wǎng)查資料對每一個模塊元器件的用法一一了解清楚,最后通過對個元器件工作原理以及指令控制命令最整個設(shè)計程序進行編寫。在設(shè)計程序時,不能妄想一次就將整個程序設(shè)計好,反復(fù)修改、不斷改進是程序設(shè)計的必經(jīng)之路,要養(yǎng)成注釋程序的好習(xí)慣,一個程序的完美與否不僅僅是實現(xiàn)功能,而應(yīng)該讓人一看就能明白你的思路,這樣也為交流提供了方便,為以后編程打下基礎(chǔ)。由本次課程設(shè)計從挑選課設(shè)題目,查閱資料,到研究出總體設(shè)計,詳細(xì)設(shè)計,再到最后的編程上機調(diào)試,修改程序,完善程序,收獲頗多。鍛煉了發(fā)現(xiàn)問題、分析問題和通過查看相關(guān)資料來解決問題的能力以及團隊合作能力。使自己擴大了知識面,提高了知識水平,借助仿真軟件,不僅可以把課堂中所學(xué)到的知識,直接加以運用,而且還可以把各個分離的知識組合為一個整體,真正做到理論聯(lián)系實際的重要性。使自己在專業(yè)知識和動手能力上有了很大的提高。另外通過本次設(shè)計,使我認(rèn)識到自己對單片機C語言應(yīng)用編程能力有很大的欠缺,需要在以后的學(xué)習(xí)中進一步提高。此次智能化電子系統(tǒng)設(shè)計是學(xué)生大學(xué)學(xué)習(xí)階段的一個重要的學(xué)習(xí)實踐環(huán)節(jié),它既能增強學(xué)生對所學(xué)課程內(nèi)容的理解和綜合,也能培養(yǎng)學(xué)生的綜合應(yīng)用及設(shè)計能力,同時,還可以拓寬課程內(nèi)容和培養(yǎng)創(chuàng)新意識。感謝學(xué)校給我們安排課程設(shè)計,大大地加深了我們對理論知識的理解,同時有意識的培養(yǎng)了我們的創(chuàng)新思想。致謝本小組的智能化電子系統(tǒng)設(shè)計是在我們的導(dǎo)師王老師的親切關(guān)懷和悉心指導(dǎo)下完成的。他嚴(yán)肅的科研態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神,精益求精的工作作風(fēng),深深地感染和激勵著我們。從課題的選擇到項目的最終完成,王老師都始終給予我們細(xì)心的指導(dǎo)和不懈的支持。在此謹(jǐn)向王老師致以誠摯的謝意和崇高的敬意。在此,我們還要感謝幫助我們答疑解惑的同學(xué)們,正是由于你們的幫助和支持,我們才能克服一個一個的困難和疑惑,直至設(shè)計的順利完成。另外,我們還要感謝學(xué)校能安排這次課程設(shè)計,為我們學(xué)習(xí)相關(guān)專業(yè)提供了良好的實踐平臺。參考文獻[1] 邵婷婷, [J].傳感技術(shù)學(xué)報,2007[2] .[3] .[4] [M].,2006[5] (C語言版).北京:中國水利水電出版社,2009[6] :清華大學(xué)出版社,2004附錄A: 電子指南針整機電路圖和實物圖圖A1 系統(tǒng)整機電路原理圖圖A2 實物圖附錄B: 1602液晶模塊字符存儲器附錄C: 電子指南針程序源代碼://***************************************// HMC5883 //****************************************include include include include include define uchar unsigned chardefine uint unsigned int define DataPort P0 //LCD1602數(shù)據(jù)端口sbit SCL=P1^0。 //IIC時鐘sbit SDA=P1^1。 //IIC數(shù)據(jù)sbit LCM_RS=P2^0。 //LCD1602讀寫RAM sbit LCM_RW=P2^1。 //LCD1602讀寫 sbit LCM_EN=P2^2。 //LCD1602使能 define SlaveAddress 0x3C //定義器件在IIC總線中的從地址typedef unsigned char BYTE。typedef unsigned short WORD。BYTE BUF[8]。 //接收數(shù)據(jù)緩存區(qū) uchar ge,shi,bai,qian。 //顯示變量int dis_data。 //變量void delay(unsigned int k)。void InitLcd()。void Init_HMC5883(void)。 //初始化5883void WriteDataLCM(uchar dataW)。void WriteCommandLCM(uchar CMD,uchar Attribc)。void DisplayOneChar(uchar X,uchar Y,uchar DData)。void conversion(uint temp_data)。void Single_Write_HMC5883(uchar REG_Address,uchar REG_data)。 //單個寫入數(shù)據(jù)uchar Single_Read_HMC5883(uchar REG_Address)。 //單個讀取內(nèi)部寄存器數(shù)據(jù)void Multiple_Read_HMC5883()。 //連續(xù)的讀取內(nèi)部寄存器數(shù)據(jù)//模擬iic使用函數(shù)void HMC5883_Start()。void HMC5883_Stop()。void HMC5883_SendACK(bit ack)。bit HMC5883_RecvACK()。void HMC5883_SendByte(BYTE dat)。BYTE HMC5883_RecvByte()。void HMC5883_ReadPage()。void HMC5883_WritePage()。//void Clear_char()。//*********************************************************void conversion(uint temp_data) { qian=temp_data/1000+0x30 。 temp_data=temp_data%1000。 //取余運算 bai=temp_data/100+0x30 。 temp_data=temp_data%100。 //取余運算 shi=temp_data/10+0x30 。 temp_data=temp_data%10。 //取余運算 ge=temp_data+0x30。 }void WaitForEnable(void) //忙檢查 { DataPort=0xff。 LCM_RS=0。LCM_RW=1。delay1us()。LCM_EN=1。delay1us()。delay1us()。while(DataPortamp。0x80)。 LCM_EN=0。 } void WriteCommandLCM(uchar CMD,uchar Attribc) //寫命令{ if(Attribc)WaitForEnable()。 LCM_RS=0。LCM_RW=0。delay1us()。DataPort=CMD。delay1us()。 LCM_EN=1。delay1us()。delay1us()。
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1