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

正文內(nèi)容

畢業(yè)論文----基于單片機的推箱子游戲設計(完整版)

2025-07-24 08:55上一頁面

下一頁面
  

【正文】 路變得更加簡潔 , 同時也降低控制器的成本。但是,當我把這些問題都解決后,我發(fā)現(xiàn)我收獲了不少,通過查資料讓我了解了直流電機工作原理及用途、 PWM 控制技術、鍵盤電路接口技術、時鐘電路技術等等,同時也讓我學習現(xiàn)代電子產(chǎn)品的設計流程,為以后從事產(chǎn)品開發(fā)打好了基礎。經(jīng)過自己不斷的搜索努力以及楊老師的耐心指導和熱情幫助,本設計已經(jīng)基本完成。 這次做畢業(yè)設計的經(jīng)歷也會使我受益匪淺。在求助于老師、理清思路后,于是到圖書館、網(wǎng)上查閱資料,終于攻 克畢業(yè)設計中的道道難題。處理方法是:當掃描到有鍵按下時,軟件演示 10ms 在判斷改鍵時候仍是按鍵,若是這按鍵有效,同時喇叭發(fā)聲,否則 ,把它當成是誤操作處理。 26 圖 6 Keil 工程項目目標文件生成 Proteus 中原理圖的繪制及文件的加載 依照仿真電路在 Proteus 中繪圖,如下圖所示 27 Proteus 中的推箱子原理圖 雙擊單片機彈出對話框,在 Clock Frequency 欄中將晶振設置為 24MHz,在Program file 欄中加載“推箱子 .Hex”文件,再單擊 OK 設置完成,圖片如下: 28 單片機文件加載及晶振設置 至此仿真前的準備工作都已經(jīng)全部完成,接下來正式進入仿真調(diào)試。此時按鈕建立目標“ Build target”前的編譯當前文件“ Translate current file”按鈕的顏色也變深了。}}}//調(diào)用過關子程序,判斷是否過關 4 推箱子游戲的系統(tǒng)仿真 [9,10,11,12] 在仿真前先介紹有關工程項目的建立及編譯生成 可執(zhí)行文件( *.Hex)的具體過程。}//更新箱子的位置 //如果現(xiàn)在人物位置上面的上面是叉 else if(Follow_Action[x_Coordinate2][y_Coordinate]==4) {//則 在上面的上面顯示一個箱子和叉重合后的圖 Han_Zi(2*(x_Coordinate2),2*y_Coordinate,0x90)。}//更新人物坐標 if(b==3||b==5)//如果現(xiàn)在人物位置上面是箱子或是箱子和叉重合的圖形則 還 21 得判 //斷人物上面的上面是什么圖形 ,如果人物上面的上面不是箱子、墻壁和箱子和叉 //重合后的圖形則可以移動 {if(Follow_Action[x_Coordinate2][y_Coordinate]!=2amp。 void On_Push()//向上推子函數(shù) {Cust=1。//發(fā)聲 100ms 后 Count 中數(shù)據(jù)歸零,并關定時器 Speaker=~Speaker。}}}//調(diào)用寫漢字程序,將圖形顯示出來 原來位置顯示子程序 //此程序顯示當人物移動后,人物本身位置所要顯示的圖形 void _Display() {if(a==0||a==3||a==1) //如果原來人物這個位置是空白或是箱子則顯示一個空白 {Han_Zi(2*x_Coordinate,2*y_Coordinate,0x80)。break。將關卡數(shù)組中的數(shù)據(jù)傳給跟蹤數(shù)組 a=Follow_Action[i][j]。//如果關數(shù)等于 18 則回到第一關 (游戲總共 17 關 ) New_Custom()。j9。// 設置十位數(shù)字顯示的位置 Write_8_Data(0x10+Custom/10,0xc4)。//沒按下一次鍵鍵關數(shù)加一 if(Cust==18)Cust=1。//得到時間的十為 數(shù)據(jù) Set_xy(13,19)。// 定時器 1 初始值裝載,每 25ms 中斷一次 TL1=0xb0。 //第四象限打點 j=0。} Point(x0j,y0+i,n)。0xff,temp8,0x24)。} 設置點顯示在屏幕上的坐標 (以位為單位 ) //x 表示顯示的行 (0~127), y表示顯示的列 (0~159),n=1 表示打一點 ,n=0 清除一點 void Point(unsigned char x,unsigned char y,bit n) {unsigned char point。a320。 Write_8_Data(Addr,INC_WR)。} 液晶初始化函數(shù) //(文本區(qū)首地址 D1,文本區(qū)首地址 D2, 文本區(qū)寬度 , 圖形區(qū)首地址 D1, //圖形區(qū)首地址 D2, 圖形區(qū)寬度 , 光標形狀 , 顯示方式 , 顯示開關 ) void LCD_Init(unsigned char Txt1,unsigned char Txt2,unsigned char Txt_Wide, 15 unsigned char Map1,unsigned char Map2,unsigned char Map_Wide, unsigned char Guang_Biao,unsigned char Disp_Mode,unsigned char Kai_Guan) {Write_Data2(Txt1,Txt2,TXT_STP)。//自動寫開始 Write_Data1(Addr,Way)。 _WR=1。 _CD=0。 _WR=1。//判斷是否可讀寫 _CD=0。//為下次讀做準備 a=Pin。 EARSTCE7RD6C/D8VSS2VDD3CON4WR5D011FS119FG1D112D213D314D415D516D617D718RST10L C D 1P G 1 6 0 1 2 8 AR11kR21kC32 2 0 u F 圖 3 復位電路 液晶顯示屏與單片機接口電路 液晶顯示屏共有 18個引腳,其中 VDD、 RST 兩腳接電源, VSS、 FS CE三腳接地, CON、 FG兩腳懸空, D0~D7 分別與單片機 ~ 相連接, WR與 腳相連, RD與 腳相連, C/D 與 腳相連,電路圖見圖 4. 控鍵、喇叭與單片機接口電路 本游戲共有 6 個控件,分別是:四個方向鍵,用于控制箱子的移動方向;一個確定鍵,用于刷新初始化界面進入游戲界面;一個選關鍵,用于選關。D2 高字節(jié) 0 1 0 0 0 0 0 1 文本區(qū)寬度字節(jié)數(shù) D1=字節(jié)數(shù) D2=00H 0 1 0 0 0 0 1 1 圖形區(qū)首址 D1 低字節(jié) D2 高字節(jié) 0 1 0 0 0 0 1 1 圖 形 區(qū)寬 度 ( 字節(jié) 數(shù) )D1= 字節(jié) 數(shù) D2=00H 顯 示 方式設置 無 1 0 0 0 0 0 0 0 邏輯 “或 ”合成 1 0 0 0 0 0 0 1 邏輯 “異或 ”合成 1 0 0 0 0 0 1 1 邏輯 “與 ”合成 1 0 0 0 0 1 0 0 文本特征 顯 示 開 無 1 0 0 1 N N N N 90H顯示開關 。它有一個 128 字節(jié)的字符發(fā)生器也可以控制外部顯示 RAM 中的數(shù)據(jù),達 64K 字節(jié)。首先,這個游戲是一個小型游戲,實現(xiàn)的功能比較簡單,不像大型游戲那樣功能復雜,它只要控制人物將所有箱子推到正確的位置即可,難度隨著箱子的增多而加大,對于實現(xiàn)這樣一個功能,程序不是太復雜,用一塊單片機足以達到目的。 software programming side of the main subroutine is the main program and the preparation, including: initialization code, LCD Driver code, the direction of key code, customs code to determine, stepbystep record of the number of code, record time code, voice button code, customs code and select a number of forms of data code and so on. All of these are in the text in detail. Key words:MCU。模擬出 Windows系統(tǒng)下的推箱子游戲,具有任意 關數(shù)選擇、難度依次加大、游戲步數(shù)記錄、游戲時間記錄、按鍵發(fā)聲、系統(tǒng)低功耗、可實現(xiàn)在線調(diào)試等特點。所有這些在文中都有詳細說明。但是這種簡單也是相對于網(wǎng) 絡游戲等大型游戲而言的,小游戲本身的代碼還是相當繁雜,它要執(zhí)行一系列指令才能正確的完成一個簡單的操作,才能按照玩家的意志工作。 2 推箱子游戲的硬件部分設計 本部分內(nèi)容包括介紹 PG160128A 及其引腳功能;介紹 T6963C 指令集;晶振電路、復位電路的硬件設計;控件及按鍵發(fā)聲電路設計,最后給出游戲仿真的整體硬件電路圖,接下來是具體的說明。D1 低字節(jié) 。晶振電路產(chǎn)生的振蕩脈沖經(jīng)過內(nèi)部觸發(fā)器進行二分頻后,成為單片機的時鐘脈沖信號,為單片機提供一個基本時鐘信號。//讀狀態(tài)之前先將數(shù)據(jù)線 拉高 _CD=1。8)==8)break。 _CD=1。 //將數(shù)據(jù) 1送數(shù)據(jù)線 _WR=0。 _CD=1。//寫操作 _WR=1。0xff,a8,ADR_POS)。 Write_Com(Disp_Mode)。} 清屏程序 void Clear_LCD() {unsigned int a。 for(a=0。 else pointamp。i=R。Point(x0+i,y0j,n)。 TH0=64800/256。//設置百位數(shù)字顯示的位置 Write_8_Data(0x10+Time/100,0xc4)。//將選得的關傳給關數(shù)寄存器 New_Custom()。 //得到步數(shù)的十位數(shù)據(jù) Set_xy(7,19)。i8。//如果 a=1 則將關數(shù)加一 (因為所有箱子都已推好,可以過關 ) Steps=Time=0。i++)//掃描 8 行 {for(j=0。y_Coordinate=j。// 如果是 4(叉 )則將叉字模的地址 88H 傳給內(nèi)存 case 5:a=0x90。TL0=64800%256。Time++。//更新步數(shù) Han_Zi(2*(x_Coordinate1),2*y_Coordinate,0x94)。//箱子可以移動,步數(shù)加 1 New_Step()。 _Display()。點“ Add”按鈕,再在彈出的對話框中選擇文件類型,如“ Assembly language file”;再點“ Close”按鈕。編譯或匯編的結果見如圖所示,上面提示“ 0 個錯誤、 0個報警”。選關鍵用于選擇游戲關數(shù),在游戲過程中這個鍵任何時候都有效,當按下選關鍵后,游戲地圖返回第一關,再次按下時游戲進入二關,這樣每按下一次鍵游戲關數(shù)加一,如果游戲到了第 17 關將自動返回第一關。 31 5 總結 在這段設計的過程中,確實也遇到很多的困難。 雖然我的這次論文作品并不是很完善,還有很多的不足之處,但是我仍可以肯定地說,這里面的每一個圖、每一個字,都是經(jīng)過我的大腦 篩選出來的。在這段時間里,楊老師嚴謹?shù)闹螌W態(tài)度和熱忱的工作作風令我十分欽佩,他的指導使我受益非淺。 我相信在這設計過程中的所有酸甜苦辣最終都會化為甜美的甘泉。其次用單片機邊游戲是一個不常見的課題,這方面的資料不是很多,所有的一切只有靠自己去摸索,這是一個比較漫長的過程。既在實際當中由于偶然的原因鍵盤抖動而導致引腳電平為低人后瞬間又恢復為高, 或雖然只是按下按鍵一次然后放掉,結果在按鍵信號穩(wěn)定前后,竟出現(xiàn)了一些不該存在的噪聲, 這些情況下按鍵是并沒有真的被按下的 ,如果沒有去抖動程序,游戲會將其當做一次正確的按鍵操作去執(zhí)行相應功能,這樣就會引起電路的誤動作。這個文件就是我們要下載到單片機中的程序文件。點“ Add”按鈕,再點“ Close”按鈕。//更新人物坐標 Pass()。//則在上面的上面顯示個箱子 Follow_Action[x_Coordinate2][y_Coordinate]=3。//調(diào)
點擊復制文檔內(nèi)容
畢業(yè)設計相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1