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

正文內(nèi)容

基于51單片機(jī)的俄羅斯方塊游戲_畢業(yè)設(shè)計(jì)論文-全文預(yù)覽

  

【正文】 音符: do、 re、 mi、 fa、 so、 la、 xi、 do,八個(gè)不同的音符對(duì)應(yīng)著不同的頻率。 其中進(jìn)程 0和進(jìn)程 1的程序流程是大致相同的。這些函數(shù)告知 RTX51 Tiny 切換到另一任務(wù)。當(dāng)這個(gè)值為 0時(shí)禁止 Roundrobin 切換。 RTX51 Tiny 對(duì)他們不進(jìn)行管理,所以在應(yīng)用中必須確保在改變數(shù)據(jù)指針時(shí)不會(huì)發(fā)生 roundrobin 切換。在多任務(wù)實(shí)時(shí)系統(tǒng)下就會(huì)出現(xiàn)“資源沖 突”的問題。 μ Vision 3 IDE 編譯 RTX51 Tiny 程序時(shí)已 將 文 件拷貝到工程目錄下并將其加入 到 工程中。 ③ 從 Operating 下拉列表框中選擇 RTX51 Tiny。 游戲 開發(fā)環(huán)境的 配置 (1) Keil 的配置 編譯和鏈接 RTX51 Tiny 應(yīng)用程序有 2種途徑,一種是使用集成開發(fā)環(huán)境μ Vision 3 IDE,另一種是使用命令行工具 CommandLine Tools。 os_wait 函數(shù)掛起當(dāng)前的任務(wù)(使之變?yōu)榈却龖B(tài))直到指定的事件發(fā)生(接著任務(wù)變?yōu)榫途w態(tài))。所以在一個(gè)任務(wù)被執(zhí)行時(shí)不能對(duì)其進(jìn)行中斷,除非該任務(wù)主動(dòng)放棄 CPU 的資源,中斷才可以打斷當(dāng)前的任務(wù),中斷完成后把CPU 的控制權(quán)再交還該被中斷的任務(wù)。帶信號(hào)或超時(shí)到來 等待信號(hào)或超時(shí) 時(shí)間片結(jié)束 時(shí)間片到來 READY/TIMEOUT RUNNING WAITING 賀州學(xué)院本科生畢業(yè)論文(設(shè)計(jì)) 31 有 INTERVAL 值調(diào)用 os_wait 函數(shù)的任務(wù)將被掛起,直到間隔時(shí)間 結(jié)束,然后返回到READY 狀態(tài),并可被再次執(zhí)行。如果一個(gè)任務(wù)調(diào)用os_wait 函數(shù)等待 SIGNAL 而 SIGNAL 未置位,則該任務(wù)被掛起直到 SIGNAL 置位,才返回到 READY 狀態(tài),并可被再次執(zhí)行。如圖 317 所示為任務(wù)狀態(tài)轉(zhuǎn)換圖 [8]。 (3) RTX51 Tiny 的 任務(wù)狀態(tài) RTX51 Tiny 的用戶任務(wù)具有以下幾個(gè)狀態(tài): RUNNING: 任務(wù)處于運(yùn)行中,同一時(shí)間只有一個(gè)搶占 任務(wù)可以處于“ RUNNING”狀態(tài)??梢圆捎靡韵路绞桨? # include 當(dāng)使用 Rtx51 Tiny時(shí),要為每個(gè)任務(wù)建立獨(dú)立的任務(wù)函數(shù)。 RTX51 Tiny 的內(nèi)核分析 該小節(jié)只介紹本設(shè)計(jì)中用到 RTX51 Tiny 系統(tǒng)的相關(guān)知識(shí)與配置方法。 RTX51 Tiny 雖然比較簡(jiǎn)陋,但它還是具備了一些實(shí)時(shí)操作系統(tǒng)的基本要素,又因?yàn)樗耆稍?Keil C51 的集成開發(fā)環(huán)境中,可以使用戶把更多的精力關(guān)注在應(yīng)用本身而無需考慮復(fù)雜的底層驅(qū)動(dòng),而且整個(gè)應(yīng)用軟件系統(tǒng)結(jié)構(gòu)清晰,維護(hù)方便,可節(jié)省大量的時(shí)間和人力。而本游戲系統(tǒng)采用的 RTX51 Tiny 是 RTX51 完整版的子集,它完全集成在 Keil C51 的集成開 發(fā)環(huán)境中。 二者的主要區(qū)別是前者是可以強(qiáng)占(或者說可剝奪的)系統(tǒng)而后者是不可以強(qiáng)占的(不可剝奪的)。對(duì)于這樣的應(yīng)用程序,一個(gè)實(shí)時(shí)操系統(tǒng) (RTOS)允許靈活的分配系統(tǒng)資源(中央處理器、存儲(chǔ)器等)給各個(gè)任務(wù)。 當(dāng)一次性同時(shí)消去 3 行時(shí),則能獲得一個(gè)道具功能的使用權(quán)。 單人模式下,玩家 每消去一行,就能獲得 1 個(gè)積分,如果當(dāng)前游戲積分 超過系統(tǒng)記錄的單人最高游戲積分,則系統(tǒng)將更新記錄,以便其他玩家挑戰(zhàn)。若檢測(cè)到某行被填滿,則消去此行,并將其上 方的 圖塊往下移動(dòng)相應(yīng)的行數(shù)。 ① ② ③ ④ 賀州學(xué)院本科生畢業(yè)論文(設(shè)計(jì)) 25 圖 313 旋轉(zhuǎn)程序流程圖 Fig 313 Rotating program flowchart 俄羅斯方塊下移的實(shí)現(xiàn)方法 在整個(gè)游戲過程中,方塊是不斷向下運(yùn)行的,其下移特性為:方塊每次下移的格N Y Y Y N N Y N ?? 按下旋轉(zhuǎn)鍵 是否是 I 型、一型 判斷方塊經(jīng)過了幾次旋轉(zhuǎn) 判斷新位置是否可寫 判斷是哪類圖塊 I 型及其旋轉(zhuǎn)型 其它 17 種類型 ?? 根據(jù)上述判斷的結(jié)果決定 當(dāng)前位置行、列坐標(biāo)的增減 進(jìn)行旋轉(zhuǎn)變換 是否是 I 型、一型以外的其它類型 按照已經(jīng)排列好的變換順序取坐標(biāo)數(shù)據(jù) 恢復(fù)原先坐標(biāo) ?? 黃忠南 基于單片機(jī)的俄羅斯方塊游戲設(shè)計(jì) 26 數(shù)對(duì)應(yīng)著 LCD12864 屏幕中的一行。如果 在當(dāng)前位置直接按這 兩種圖塊 的坐標(biāo)數(shù)組進(jìn)行圖形切換 ,則無法實(shí)現(xiàn)順時(shí)針旋轉(zhuǎn)的視覺效果。其具體過程如圖 312 所示。 本設(shè)計(jì) 實(shí)現(xiàn)旋轉(zhuǎn) 操作 的具體 方法 ,可分為兩類,一類是 I 型的旋轉(zhuǎn)策略; 另一類則是其余 17 種基本型的旋轉(zhuǎn)策略。 基本型中“ Z型”和“反 Z型”可以順時(shí)針旋轉(zhuǎn)一次 90 度,加上他們的基型分別有兩種形狀。 游戲過程中,每一 種 基本方塊都要做旋轉(zhuǎn)控制,于是就產(chǎn)生了旋轉(zhuǎn)后的方塊形狀,本文將其稱為“旋轉(zhuǎn)型”。 (3) 平移算法的實(shí)現(xiàn) 在程序中,當(dāng)有任意一個(gè)平移按鍵被按下時(shí),系統(tǒng)接收到信號(hào),然后調(diào)用平移函數(shù)進(jìn)行判斷其合法性,得到該函數(shù)的返回值為 1 后,再進(jìn)行平移操作。方塊的平移包括左移和右移兩種情況,無論那種情況都要首先進(jìn)行合 法 性判斷。為了解決該問題, 本設(shè)計(jì) 在玩家進(jìn)入游戲時(shí) 讀取 按鍵按下瞬間定時(shí)器 T0的計(jì) 數(shù) 值,作為 srand(unsigned int seed)的種子。 (3) Keil C51 中“線性疊加法”的實(shí)現(xiàn)方法 在 Keil C51 中 生成 偽 隨機(jī)數(shù)需要用到兩個(gè)函數(shù),一個(gè)是 srand(unsigned int seed),一個(gè)是 rand()。事實(shí)上,C 可選 1。保留低 32 位很重要 ,用來獲得下一個(gè)種子。如果從相同的點(diǎn)(種子)開始,將會(huì)得到相同的數(shù)字,這是因?yàn)槲覀兪菑墓潭ǖ男蛄兄腥?shù)字(所以叫偽隨機(jī))。隨機(jī)數(shù)是一個(gè)既簡(jiǎn)單又復(fù)雜的問題。其中,每?jī)蓚€(gè)數(shù)據(jù)為一個(gè)小正方形的列、行坐標(biāo) ,如圖 39所示。這七種圖形分別是“ I 型”、“ L型”、“反 L型”、“ Z 型”、“反 Z型”、“口型”、“ T型”?!懊杜e算法”沒有復(fù)雜的數(shù)學(xué)理論、避免了在程序中大量使用矩陣運(yùn)算公式,設(shè)計(jì)思路清晰、明了,非常適合游戲設(shè)計(jì)的初學(xué)者理解和實(shí)現(xiàn)。在兩屏中間是雙方 積分顯示區(qū) 和 各自的道具數(shù)量顯示區(qū)。 圖 34 菜單選項(xiàng)界面 框架 Fig 34 The menu option interface framework (2) 游戲 操作 界面 首先,我們先來 介紹 單人模式下游戲界面的一些情況。“音效選擇” 菜單 包含的二級(jí)子菜單有“開音效”和“關(guān)音效”通過控制按鍵即可設(shè)置成相應(yīng)狀態(tài)。其中,“ 游戲設(shè)置 ” 選項(xiàng)包含了兩級(jí)子菜單。系統(tǒng)默認(rèn)為每個(gè)玩家提供1 個(gè)道具。第一階段是普通積分階段,即雙方玩家每 消去一行,其相功能函數(shù)層 字庫(kù) 驅(qū)動(dòng)層函數(shù)聲明 功能函數(shù) LCD 配置 驅(qū)動(dòng)層 傳輸模式及 IO 端口配置 數(shù)據(jù)傳輸驅(qū)動(dòng) 應(yīng)用層 用戶應(yīng)用程序 功能函數(shù)聲明 賀州學(xué)院本科生畢業(yè)論文(設(shè)計(jì)) 17 應(yīng)積分表加 1分;第二階段是多積分階段,即每消去三行才獲得 1 個(gè)積分。每消去一行,系統(tǒng)就給玩家加 1 分。玩家使用向左、向右、快速向下這些按鍵控制方塊的位置,旋轉(zhuǎn)按鍵控制方塊順時(shí)針旋轉(zhuǎn)。 黃忠南 基于單片機(jī)的俄羅斯方塊游戲設(shè)計(jì) 16 圖 33 LCD驅(qū)動(dòng)程序架構(gòu) Fig 33 LCD Driver architectures 俄羅斯方 塊游戲 設(shè)計(jì) 俄羅斯方塊游戲功能簡(jiǎn)介 俄羅斯方塊游戲的規(guī)則很簡(jiǎn)單,當(dāng)方塊從屏幕上方落下來時(shí),玩家控制方塊的位置以及旋轉(zhuǎn)方塊,巧妙地安排布置達(dá)到充分利用屏幕空間的目的。這些寄存器一般都在 LCD 模塊的驅(qū)動(dòng)控制器文檔中有詳細(xì)介紹。 LCD 的驅(qū)動(dòng)方法 在很多資料以及書籍當(dāng)中,通常介紹有兩種 LCD 模塊的連接方法:直接控制和間接控 制 ;直接控制實(shí)際指的是 LCD 模塊的總線接口直接與 MCU 端口連接,然后 MCU 通過程序控制端口來模擬 LCD 的總線時(shí)序來完成對(duì)其的控制操作;而間接控制指的是MCU 本身就有外部總線拉出,與 LCD的總線接口對(duì)應(yīng)的連接上,程序中直接操作總線以控制 LCD。因此可知顯示 RAM 區(qū)中的一個(gè) Page 空間對(duì)應(yīng) 8行的點(diǎn),而該 Page 中的一個(gè) byte 數(shù)據(jù)則對(duì)應(yīng)一列( 8 個(gè)點(diǎn))。 MzL02D12864 液晶顯示模組的顯示器上的顯示點(diǎn)與驅(qū)動(dòng)控制芯片中的顯示緩存 RAM 是一一對(duì)應(yīng)的;共有 65( 8Page * 8bit + 1) *132 個(gè)位的顯示 RAM 區(qū)。模 塊 默認(rèn)情況下 PS 為高電平、 C86 為高電平,此時(shí) 為 6800 總線接口類型 , 本設(shè)計(jì)采用 6800 總線模式。 與單片機(jī)的具體接口可根據(jù)實(shí)際設(shè)定。主控制器包括七個(gè)按鍵,分別為:旋轉(zhuǎn) /確定、向左 /返回上級(jí)菜、 向右 /下一個(gè)、快速下降、使 用道具、暫停、退出。本設(shè)計(jì)中 LCD 的數(shù)據(jù)端口連接到 STC12C5A60S2 單片機(jī)的 P0 端口, LCD 的命令端口連接到單片機(jī)的 P2端口。本設(shè)計(jì)采用銘正同創(chuàng)公司生產(chǎn)的 MzL02D12864 液晶點(diǎn)陣屏作 為顯示器件。因此,音樂播放系統(tǒng)的硬件電路非常簡(jiǎn)單 。 MAX232 是 MAXIM 公司生產(chǎn)的電平轉(zhuǎn)換器件,只需在外部接入相應(yīng)的電解電容即可。 而上 位 機(jī) PC 機(jī)與下 位 機(jī)單片機(jī)通過 RS232串行接口總線進(jìn)行的串行通信。其優(yōu)點(diǎn)是,即使器件焊接在電路板上,仍 可 對(duì)其進(jìn)行編程 。由于 本設(shè)計(jì) 使用外接 12MHz 的晶振 作為振蕩時(shí)鐘 ,黃忠南 基于單片機(jī)的俄羅斯方塊游戲設(shè)計(jì) 10 所以 采用 如圖 24所示 的復(fù)位系統(tǒng) 。 Y11 2 .0 0 0 M H ZC13 0 p FC23 0 p FX T A L 1X T A L 2 圖 23 振蕩電路 Fig 23 oscillatory circuit 復(fù)位系統(tǒng) MCS51 單片機(jī)通常采用上電自動(dòng)復(fù)位和按鈕復(fù)位兩種方式。 賀州學(xué)院本科生畢業(yè)論文(設(shè)計(jì)) 9 12J1di a ny ua nD11N 40 07D21N 40 07D31N 40 07D41N 40 07S1S W P B1122F1F U S E 2C110 00u fC247 0uf112233u178 05R21k123J2+5123J3C O N 3D6L E D 0R11kD5L E D 0 圖片 22 電源 系統(tǒng) Fig 22 Power System 振蕩電路 單片機(jī)系統(tǒng)里都有振蕩電路 ,在 單片機(jī)系統(tǒng)里晶 振作用非常大,全稱叫晶體振蕩器,它結(jié)合單片機(jī)內(nèi)部電路產(chǎn)生單片機(jī)所需的時(shí)鐘頻率,單片機(jī)晶振提供的時(shí)鐘頻率趆高,那么單片機(jī)運(yùn)行速度就趆快,單片機(jī)的一切指令執(zhí)行都是 依靠 單片機(jī)晶振提供的時(shí)鐘頻率。 在本設(shè)計(jì)中,擴(kuò)展了液晶顯示接口。該單片機(jī)共有 4 個(gè) 16 位定時(shí)器,兩個(gè)與傳統(tǒng) 8051 兼容的定時(shí)器 /計(jì)數(shù)器,即 16 位定時(shí)器 T0 和 T1,沒有定時(shí)器 2,但有獨(dú)立波特率發(fā)生器做串行通訊的波特率發(fā)生器,再加上 2 路 PCA 模塊可由 T0 的溢出在 黃忠南 基于單片機(jī)的俄羅斯方塊游戲設(shè)計(jì) 8 時(shí)鐘,可由 T1的溢出在 ,此兩路可編程計(jì)數(shù)器陣列( PCA)可用來再實(shí)現(xiàn) 2個(gè)定時(shí)器。 本文探討基于 8051 單片機(jī)硬件平臺(tái) 和 RTX51 Tiny 多任務(wù)實(shí)時(shí)操作系統(tǒng) 的俄羅斯方塊游戲的 設(shè)計(jì)與 實(shí)現(xiàn) ,將理論與實(shí)踐 相 結(jié)合。 從 學(xué)術(shù)角度來看, 針對(duì)俄羅斯方塊游戲的開發(fā),國(guó)內(nèi)外 也有 不少學(xué)者展開過研究,比如 Niko 將進(jìn)化算法引入到俄羅斯方塊中并驗(yàn)證了其有效性, Hoogeboom 探討了俄羅斯方塊游戲的構(gòu)造問題,王宇等針對(duì)存在于俄羅斯方塊中的兩個(gè)數(shù)學(xué)問題提出解決方案,高凌琴探討游戲功能要求、數(shù)據(jù)結(jié)構(gòu)、圖形旋轉(zhuǎn)、坐標(biāo)變換等關(guān)鍵技術(shù),胡代弟在 SPCE061A 單片機(jī)實(shí)現(xiàn)了俄羅斯方塊游戲 [10]。然后 , 作者 才 開展軟件平臺(tái)的構(gòu)建,這也是本設(shè)計(jì)的 重 要部分 ,主要包括對(duì) RTX51 Tiny 操作系統(tǒng)的配置、俄羅斯方塊模型的設(shè)計(jì)、模型圖塊的旋轉(zhuǎn)及坐標(biāo)變換設(shè)計(jì)、雙人單機(jī)對(duì)戰(zhàn)游戲設(shè)計(jì)和音效系統(tǒng)設(shè)計(jì)等。 課題的主要研究?jī)?nèi)容 本課題研究和實(shí)現(xiàn)了基于 8051+RTX51 到 Tiny 平臺(tái)下的智能俄羅斯 方塊游戲系統(tǒng)。而它曾經(jīng) 造成的轟動(dòng)與經(jīng)濟(jì)價(jià)值可以說是游戲史上一件大事。單片機(jī)的最明顯的優(yōu)勢(shì),就是可以嵌入到各種儀器、設(shè)備中。同時(shí),該設(shè)計(jì)的獨(dú)創(chuàng)性是在 8051 系列單片機(jī)中使用操作系統(tǒng)實(shí)現(xiàn) 了 雙人游戲和音效的添加。它規(guī)則簡(jiǎn)單,容易上手,且游戲過程變化無窮,使用戶在游戲中得到樂趣。與本研究成果相關(guān)的所有人所做出的任何貢獻(xiàn)均已在論文(設(shè)計(jì))中作了明確的說明并表示了謝意。除了文中特別加以注釋和致謝的地方外,論文(設(shè)計(jì))中不包含其他人已經(jīng)發(fā)表或撰寫的研究成果。 本人論文(設(shè)計(jì))中有原創(chuàng)性數(shù)據(jù)需要保密的部分為 (如沒有,請(qǐng)?zhí)顚憽盁o”) : 簽 名:
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1