版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于單片機(jī)的貪吃蛇設(shè)計(jì)緒論1.1研究背景及意義時(shí)代在不斷的進(jìn)步,人們的生活節(jié)奏也因此不斷加快,越來(lái)越多的人加入了經(jīng)濟(jì)化全球化的世界。人們不再只需要保持自己的小世界,加班、旅游已逐漸代替了人們的正常工作,成為我們必然的公務(wù)。同時(shí),我們可以供隨時(shí)隨地的休閑娛樂(lè),因而休閑類(lèi)的小游戲已經(jīng)逐漸成為生活的必需品,漸漸得變得無(wú)所不在,滲入我們?nèi)粘I畹母鱾€(gè)部分。貪食蛇這款經(jīng)典的小游戲具有可塑性強(qiáng)、簡(jiǎn)單易行、通俗易懂、操作方便、娛樂(lè)性強(qiáng)等特點(diǎn),因此引來(lái)了不少人們的青睞。這款小游戲牢牢地把握住了人們追求娛樂(lè)的心理,看起來(lái)很簡(jiǎn)單,但真正接觸的時(shí)候毫無(wú)違和感,甚至?xí)杏X(jué)到其樂(lè)無(wú)窮,在人們不斷尋求探索更多的開(kāi)心和樂(lè)趣下,游戲的到來(lái)給了追逐快樂(lè)的人,和現(xiàn)代人滿意的成功后,在巨大的壓力之下是一種很好的放松工具。當(dāng)今的世界,科技在不斷地發(fā)展,尤其是微電子技術(shù)方面,計(jì)算機(jī)軟件技術(shù)和其應(yīng)用技術(shù)的發(fā)展,將人們的生活變得多姿多彩,不在單調(diào)無(wú)趣。單片作為微型計(jì)算機(jī)大家族中不可或缺的一員,微型計(jì)算機(jī)以其良好的穩(wěn)定性,獨(dú)特的構(gòu)造,較低的成本在嵌入式領(lǐng)域中得到了廣泛應(yīng)用。我希望可以通過(guò)這些年來(lái)所學(xué)的知識(shí)將它剖析出來(lái),使它立體的呈現(xiàn)在面前,真正意義上的了解它的實(shí)質(zhì),明白它的精髓所在。在編程方面,能力不強(qiáng)的我,更應(yīng)該努力地借助這次機(jī)會(huì),通過(guò)研究,從實(shí)踐中提升自己的編程能力。故而,我選定了這個(gè)比較有意思的課題。1.2單片機(jī)發(fā)展?fàn)顩r單片微型計(jì)算機(jī),簡(jiǎn)稱單片機(jī)(MCU)。它是在一塊半導(dǎo)體硅片上集成了振蕩器電路、中央處理單元、隨機(jī)存取存儲(chǔ)器、只讀存儲(chǔ)器、可編程定時(shí)器/計(jì)數(shù)器、并/串行I/O接口等,有的還包含了A/D轉(zhuǎn)換器??傃灾?,一個(gè)巴掌大小的單片機(jī),具有一臺(tái)計(jì)算機(jī)的所有屬性,直接相當(dāng)于一臺(tái)微型計(jì)算機(jī)。由于使用單片機(jī)時(shí)其通常在測(cè)控系統(tǒng)的核心部分并嵌入其中。所以,單片機(jī)也被稱作為嵌入式控制器EMCU(EmbeddedMicroControllerUnit)。單片機(jī)擁有集成度高、體積小、重量輕、處理功能強(qiáng)、電源簡(jiǎn)單、低功耗、可靠性高、價(jià)格低廉、運(yùn)算速度快、易擴(kuò)展、易于使用、抗干擾能力強(qiáng)等特點(diǎn)。因此,在工業(yè)控制、通信系統(tǒng)等涉及到的一些領(lǐng)域,基本是到處都可以見(jiàn)到單片機(jī)的蹤影,其技術(shù)的開(kāi)發(fā)和高水平的應(yīng)用已逐漸變成一個(gè)國(guó)家工業(yè)化成就取得高低的關(guān)鍵?;趩纹瑱C(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第4頁(yè)。早在1974年,世界上第一塊單片機(jī)被美國(guó)的仙童公司研究生產(chǎn)出來(lái),歷經(jīng)短短數(shù)幾十年的光陰,單片機(jī)便與日俱增,成批地涌現(xiàn)出來(lái)。截至現(xiàn)在,4位、8位、16位單片機(jī)都已經(jīng)被研究出現(xiàn)了,甚至32位的超大規(guī)模集成電路單的片機(jī)也已經(jīng)問(wèn)世了,其性能也在不斷的升高,不斷被改善。在國(guó)內(nèi)的單片機(jī),起步雖然比較晚,但其潛力已經(jīng)受到越來(lái)越多人的關(guān)注,特別是在工業(yè)控制、自動(dòng)化儀器儀表、計(jì)算機(jī)系統(tǒng)接口、智能化外設(shè)等應(yīng)用領(lǐng)域發(fā)展較為快速。單片機(jī)的應(yīng)用,對(duì)于產(chǎn)品的升級(jí),還有機(jī)電一體化都有重要的意義。在工業(yè)控制中的應(yīng)用也十分廣泛,例如,用單片機(jī)可以構(gòu)成形式多樣的控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng),各種報(bào)警系統(tǒng),工廠流水線的智能化管芯片理與計(jì)算機(jī)聯(lián)網(wǎng)構(gòu)成的二級(jí)控制系統(tǒng)等。單片機(jī)在醫(yī)用設(shè)備中的用途亦相當(dāng)廣泛,例如醫(yī)用呼吸機(jī),各種分析儀,監(jiān)護(hù)儀,超聲診斷設(shè)備及病床呼叫系統(tǒng)等等。在通信行業(yè),這種應(yīng)用顯得更加廣泛,手機(jī)從最初的只能實(shí)現(xiàn)基本通話,沒(méi)有其他任何功能,到現(xiàn)在任何一部手機(jī)都擁有各種強(qiáng)大的功能,含有各種不同的應(yīng)用,單片機(jī)的功效被發(fā)揮的淋漓盡致??梢杂檬謾C(jī)來(lái)聽(tīng)音樂(lè),玩游戲,攝影等等,而手機(jī)游戲上貪吃蛇游戲就可以利用單片機(jī)來(lái)實(shí)現(xiàn)。即使最新型MCS-51單片機(jī)各種基本的內(nèi)核核心擴(kuò)張和持續(xù)改進(jìn),但是51系列的單片機(jī)的應(yīng)用依舊是我們國(guó)家的主流模式?;趩纹瑱C(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第4頁(yè)??v觀幾十年的單片機(jī)發(fā)展歷程,它的未來(lái)將向高性能,高速度,低電壓,低價(jià)格和閃存的方向發(fā)展。我們可以預(yù)見(jiàn)的是,單片機(jī)的未來(lái)將變得更加強(qiáng)大、集成度更高、可靠性更高、功耗更低、使用更方便,總之,它的未來(lái)是無(wú)可限量的。1.3LED發(fā)展?fàn)顩r
LED,也就是發(fā)光二極管的英文縮寫(xiě),是一種固態(tài)的,能夠直接地把電轉(zhuǎn)變成光的半導(dǎo)體電子元件。這種電子元件最早出現(xiàn)在1962年,剛開(kāi)始的時(shí)候只能發(fā)出低光度的紅光,之后慢慢地發(fā)展出其他的單色光,到現(xiàn)在,能發(fā)出的光已經(jīng)遍及可見(jiàn)光、紅外線還有紫外線,光度也得到了較大地提高。而其用途從最開(kāi)始的作為指示燈、顯示板等,到現(xiàn)在被廣泛地應(yīng)用于顯示器、電視機(jī)采光裝飾和照明等。它由含鎵(Ga)、砷(As)、磷(P)、氮(N)等的化合物制成。半導(dǎo)體晶片由兩部分組成,一部分是P型半導(dǎo)體,在它里面空穴占主導(dǎo)地位,另一端是N型半導(dǎo)體,在這邊主要是電子。但這兩種半導(dǎo)體連接起來(lái)的時(shí)候,它們之間就形成一個(gè)“P-N”結(jié)。當(dāng)電流通過(guò)導(dǎo)線作用于這個(gè)晶片的時(shí)候,電子就會(huì)被推向P區(qū),在P區(qū)里電子跟空穴復(fù)合,然后就會(huì)以光子的形式發(fā)出能量,這就是LED發(fā)光的原理。半導(dǎo)體照明具有綠色環(huán)保的特點(diǎn),使用壽命長(zhǎng),效率高,節(jié)能,抗惡劣環(huán)境,結(jié)構(gòu)簡(jiǎn)單,體積小,重量輕,響應(yīng)速度快,工作電壓低,安全性好的特點(diǎn)。因此,LED成為白熾燈、日光燈和節(jié)能燈后的第四代照明電光源,同時(shí)也被稱為21世紀(jì)綠色光源。由于LED具有單向?qū)щ娦?,因此它只能往一個(gè)方向?qū)ǎ@種現(xiàn)象被稱為正向偏置,也叫正向偏壓。LED的優(yōu)點(diǎn)是:節(jié)能、壽命長(zhǎng)、防水、不易破損、低功耗、開(kāi)關(guān)具有高速度、微型、高可靠性、光束集中等。它的不足是:顯色性較差、需要專(zhuān)門(mén)的驅(qū)動(dòng)電路、起始的成本較高等,因此,傳統(tǒng)的照明也相對(duì)存在一些不足。近年來(lái)白光LED的發(fā)光效率有了顯著提高?;趩纹瑱C(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第5頁(yè)。基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第5頁(yè)。1.4設(shè)計(jì)特點(diǎn)以下是課程設(shè)計(jì)的主要特點(diǎn):1.功能定義,顧名思義是很重要的,尤其是對(duì)于讀程序的人來(lái)說(shuō),它顯得更為重要,在不斷地修改和完善該程序的過(guò)程中,也能清楚地明白程序中各個(gè)模塊的所起到的作用,從而大大地提高了程序的可讀性。2.主要從main()函數(shù)的功能入手。Main()函數(shù)的主要功能是啟動(dòng)C源程序編譯,主要從main()函數(shù)開(kāi)始讀函數(shù),可以將其他功能的函數(shù)理解的更加透徹。3.在源程序列表的第一幀,來(lái)分析程序所要達(dá)到的功能,選擇合適的數(shù)據(jù)結(jié)構(gòu),然后在模塊化程序,根據(jù)模塊的功能更加簡(jiǎn)單合理地編寫(xiě)函數(shù)。4.我也學(xué)到了很多的庫(kù)函數(shù)的作用,如很多對(duì)字符串進(jìn)行處理的函數(shù),還有一些基本的功能我都有了一定的理解。5.它是獨(dú)立于特定的C語(yǔ)言教科書(shū),重點(diǎn)是C語(yǔ)言的基本特征,以"不變"應(yīng)"萬(wàn)變",C語(yǔ)言覆蓋的重要基礎(chǔ)知識(shí)的實(shí)際運(yùn)用,我們需要熟練地掌握C語(yǔ)言。6.根據(jù)實(shí)際出發(fā),本設(shè)計(jì)可以覆蓋所學(xué)的知識(shí)點(diǎn),而且它比較能夠滿足工程的實(shí)際需求。再者,本次設(shè)計(jì)能夠激發(fā)我們學(xué)習(xí)的熱情,調(diào)動(dòng)學(xué)習(xí)的積極性,可以根據(jù)實(shí)際編程的要求,提升實(shí)際分析問(wèn)題的能力和編程能力,而且還可以使我們逐步養(yǎng)成良好的編程習(xí)慣。7.提供綜合實(shí)踐能力的的課程設(shè)計(jì),以進(jìn)一步鍛煉學(xué)生。同時(shí),讓學(xué)生完成實(shí)驗(yàn)的過(guò)程中,可以鍛煉相互合作的精神,取長(zhǎng)補(bǔ)短,培養(yǎng)團(tuán)隊(duì)意識(shí)。8.通過(guò)觀察網(wǎng)絡(luò)實(shí)例,循序漸進(jìn)地幫助學(xué)生完成畢業(yè)設(shè)計(jì)。本次課程設(shè)計(jì)將要求、算法還有源程序單獨(dú)分開(kāi),給學(xué)生營(yíng)造獨(dú)立思考問(wèn)題的條件。在足夠理解要求和算法的前提下,充分了解學(xué)生的要求和算法,再設(shè)計(jì)自己的應(yīng)用。同時(shí),我也獲得了很多寶貴的經(jīng)驗(yàn):1)在設(shè)計(jì)之前,要確保對(duì)所設(shè)計(jì)的主題和內(nèi)容有一個(gè)系統(tǒng)的認(rèn)識(shí),了解設(shè)計(jì)的主題和內(nèi)容包含哪些資源。2)對(duì)于設(shè)計(jì)程序而言,在采用什么編程語(yǔ)言這方面并不是特別重要,核心在于思路要清晰和軟件流程圖要完整。所以,第一步是要搞清楚設(shè)計(jì)原理與思路,然后再畫(huà)出軟件流程圖,按這樣的步驟,設(shè)計(jì)起來(lái)就比較方便快捷了。2系統(tǒng)總體設(shè)計(jì)2.1設(shè)計(jì)要求基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第6頁(yè)。作為最為經(jīng)典和最具有代表性的休閑小游戲之一的貪吃蛇,其玩法準(zhǔn)則是:玩家想要控制蛇移動(dòng)的方向,必須熟練地掌握上、下、左、右四個(gè)方向鍵,在一個(gè)個(gè)的小方格上吃掉出現(xiàn)的食物。蛇每吃完一次食物后,蛇身變相應(yīng)地增長(zhǎng)一節(jié),一節(jié)即為一個(gè)單位距離,蛇在游動(dòng)時(shí),碰到蛇身或者是屏幕框,都表示該游戲結(jié)束?;趩纹瑱C(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第6頁(yè)。2.2系統(tǒng)設(shè)計(jì)方案2.2.1硬件設(shè)計(jì)系統(tǒng)采用的硬件設(shè)備主要包括51系列單片機(jī),8*8點(diǎn)陣屏等。本次課程設(shè)計(jì)單片機(jī)選擇的是由飛利浦公司生產(chǎn)的低功耗高性能的CMOS型8位單片機(jī)。之所以選擇它,是因?yàn)樗鼡碛袃?nèi)置的一次性可編程只讀存儲(chǔ)器的64K字節(jié)的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM)和1K字節(jié)的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),它能夠滿足游戲?qū)Υ鎯?chǔ)空間的要求。8*8點(diǎn)陣屏選擇的是ARK-SZ411288K,它能夠直接與CPU相連接。2.2.2軟件設(shè)計(jì)軟件方面主要為匯編語(yǔ)言、C語(yǔ)言、嵌入式操作系統(tǒng)。采用C語(yǔ)言編寫(xiě)的程序能夠很容易地在不同類(lèi)型的計(jì)算機(jī)之間進(jìn)行移植[1]。在以后的發(fā)展中,各類(lèi)型號(hào)的單片機(jī)種類(lèi)會(huì)進(jìn)一步增加,而開(kāi)發(fā)工具和過(guò)程會(huì)逐步趨向于統(tǒng)一,軟件和硬件差別會(huì)更加難以區(qū)分[2]。本設(shè)計(jì)使用uVision3進(jìn)行程序軟件編譯。只要看一下編譯后生成的匯編代碼,就能夠體會(huì)到KeilC51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解[3]。用uVision3軟件編寫(xiě)程序時(shí),由于uVision3一般只能修改語(yǔ)法上的錯(cuò)誤,不好檢查算法上的問(wèn)題,而且如果直接下到單片機(jī)里,會(huì)因?yàn)殡娐钒宓南拗贫沟谜{(diào)試不方便,所以,在這里,本設(shè)計(jì)選擇使用Proteus軟件進(jìn)行電路的仿真。它運(yùn)行與Windows操作系統(tǒng)上,可以繪制電路原理圖,仿真、分析各種模擬器件和集成電路,支持主流單片機(jī)系統(tǒng)和多種外圍芯片的仿真,提供軟件調(diào)試功能,支持第三方的軟件編譯和調(diào)試環(huán)境[4]。3系統(tǒng)硬件設(shè)計(jì)3.18*8LED點(diǎn)陣的原理說(shuō)明 ARK-SZ411288K是本次課程設(shè)計(jì)所選用的點(diǎn)陣顯示模塊。它是一個(gè)8*8的點(diǎn)陣顯示模塊,總共由64個(gè)發(fā)光二極管組成,且每個(gè)發(fā)光二極管都處于行線和列線的交點(diǎn)上。當(dāng)相對(duì)應(yīng)的某一列置1電平,某一行置0電平,則位置所對(duì)應(yīng)的二極管就變亮。值得一說(shuō)的是,ARK-SZ411288K能夠與CPU直接連接,再根據(jù)其引腳說(shuō)明,將其各個(gè)引腳與相對(duì)應(yīng)的I/O口相連。3.2LED陣列驅(qū)動(dòng)電路基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第7頁(yè)。至少需要10~20mA的電流才能正向地點(diǎn)亮一顆LED,如果通過(guò)的電流不足夠大,那么LED所發(fā)出的光就比較暗。而無(wú)論是89C51單片機(jī)的I/O口,或是TTL、CMOS的輸出,高輸出電流并不是很高,才不過(guò)1~2毫安,故而,很難直接地對(duì)LED高態(tài)驅(qū)動(dòng)。在這種時(shí)候,我們就需要增加額外的輔助驅(qū)動(dòng)電路,本次課程設(shè)計(jì)選用的是74HC595,采用74HC595芯片來(lái)驅(qū)動(dòng)LED可以有以下幾個(gè)優(yōu)點(diǎn):速度快,功耗小,LED的數(shù)量隨意。既能夠控制LED的共陰極顯示器,也可以控制LED的共陽(yáng)極顯示器,同時(shí),還可以通過(guò)軟件來(lái)控制LED的亮度,并且在需要的時(shí)候,能夠關(guān)斷顯示,從而降低功耗,還能夠隨時(shí)喚醒顯示。采用74HC595設(shè)計(jì)的電路,軟硬件設(shè)計(jì)都相對(duì)比較簡(jiǎn)單,而且功耗較低,驅(qū)動(dòng)能力較強(qiáng),所占用的I/O口線較少,成本較低,是一種應(yīng)用十分靈活的設(shè)計(jì)方案?;趩纹瑱C(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第7頁(yè)。系統(tǒng)采用的硬件設(shè)備主要包括51系列單片機(jī),8*8點(diǎn)陣屏等。51系列單片機(jī)采用了飛利浦(PHILIPS)公司生產(chǎn)的型號(hào)為P87C51RD2的低功耗高性能的CMOS型8位單片機(jī)。選擇它是因?yàn)椋鼉?nèi)置了64Kbytes的OTP只讀程序存儲(chǔ)器(RAM)和1Kbytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),能滿足游戲?qū)Υ鎯?chǔ)空間的要求。另外配備了32個(gè)可編程的I/O端口,3個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)7中斷源4優(yōu)先級(jí)嵌套中斷結(jié)構(gòu),一個(gè)全雙工串行通信口,片振蕩器及時(shí)鐘電路[5]74HC595里含有串/并出移位寄存器和三態(tài)輸出鎖存器。寄存器和鎖存器有著各自的時(shí)鐘輸入(SCLK和SLCK),它們有效電平都是上升沿。當(dāng)SCLK由低電平跳向高電平時(shí),串行輸入數(shù)據(jù)(SDA)移入寄存器;當(dāng)SLCK由低電平跳變?yōu)楦唠娖綍r(shí),鎖存器將寄存器的數(shù)據(jù)置入。清除端(CLR)的低電平只對(duì)寄存器復(fù)位(QS為低電平),而對(duì)鎖存器無(wú)影響。當(dāng)輸出允許控制(EN)為高電平時(shí),并行輸出(Q0~Q7)為高阻態(tài),而串行輸出(QS)不受影響。74HC595最多需要5根控制線,即SDA、SCLK、SLCK、CLR和EN。其中,CLR能夠直接接到高電平,并且用軟件可以實(shí)現(xiàn)寄存器的清零;若是不需要用軟件改變亮度,則EN可以直接接到低電平,使用硬件來(lái)改變亮度。將余的三根線與單片機(jī)的I/O口相連,能夠控制LED。數(shù)據(jù)SDA口送入74HC595,在每個(gè)SCLK的上升沿,SDA口上的數(shù)據(jù)移入寄存器,在SCLK的第9個(gè)上升沿,數(shù)據(jù)開(kāi)始從QS移出。如果把第二個(gè)74HC595的SDA和第一個(gè)74HC595的QS連接,數(shù)據(jù)移動(dòng)到第二個(gè)74HC595中,按照此方法,逐次接下去,能夠接任意多個(gè)。所有的數(shù)據(jù)發(fā)送完畢后,給SLCK一個(gè)上升沿,將寄存器中的數(shù)據(jù)送入鎖存器中。如果EN為低電平,數(shù)據(jù)即從并口Q0~Q7輸出,把Q0~Q7與LED的8段相接,LED就可以實(shí)現(xiàn)顯示了。要想軟件改變LED的亮度,只需改變EN的占空比就行了[6]。其中,點(diǎn)陣的亮度可以使用改變輸入電壓來(lái)改變[7]。4系統(tǒng)軟件設(shè)計(jì)4.1系統(tǒng)主要模塊介紹基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第8頁(yè)。貪吃蛇操作過(guò)程中有多種狀態(tài),采用宏定義,使各種狀態(tài)一目了然,思路清晰。同時(shí)再編寫(xiě)代碼時(shí),采用匈牙利命名規(guī)則命名宏,變量,函數(shù)名,方便閱讀修改[8]?;趩纹瑱C(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第8頁(yè)。4.1.1主函數(shù)模塊作為程序運(yùn)行時(shí)縮影一般的存在,主函數(shù)是一個(gè)無(wú)限在循環(huán)的程序。它所需要完成的是對(duì)一系列硬件軟件的初始化,并且利用定時(shí)中斷來(lái)控制游戲的時(shí)鐘,還要調(diào)用其他模塊以完成按鍵的處理和蛇的運(yùn)動(dòng)。4.1.2按鍵模塊按鍵模塊包括兩個(gè)部分:按鍵檢測(cè)模塊和按鍵處理模塊。按鍵檢測(cè)模塊初始化按鍵對(duì)應(yīng)的管腳,利用查詢方式檢測(cè)按鍵對(duì)應(yīng)的變量值改變。按鍵處理模塊針對(duì)不同狀態(tài)下,對(duì)按鍵做出不同的處理。4.1.3蛇運(yùn)動(dòng)控制模塊該模塊負(fù)責(zé)控制蛇的運(yùn)動(dòng)和狀態(tài),包括在剛開(kāi)始游戲時(shí)對(duì)蛇進(jìn)行初始化,蛇運(yùn)動(dòng)時(shí)對(duì)蛇移動(dòng)的處理,蛇吃掉出現(xiàn)的食物后的處理。4.2主程序工作流程系統(tǒng)中的應(yīng)用軟件是根據(jù)系統(tǒng)功能要求設(shè)計(jì)的。按軟件的功能來(lái)分,可分為執(zhí)行軟件和監(jiān)控軟件。執(zhí)行軟件可以完成各種實(shí)質(zhì)性的功能,如測(cè)量、計(jì)算、顯示。打印、輸出、控制等;監(jiān)控軟件是專(zhuān)門(mén)用來(lái)協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)系,在系統(tǒng)軟件中充當(dāng)組織調(diào)度角色。在軟件設(shè)計(jì)上,通常要考慮如下幾個(gè)方面問(wèn)題:1.根據(jù)軟件的功能要求,將系統(tǒng)軟件分為幾個(gè)相對(duì)獨(dú)立的部分。整體結(jié)構(gòu)設(shè)計(jì)合理,明確,軟件開(kāi)發(fā)簡(jiǎn)單,還有合理的工作流程。2.每個(gè)功能程序要實(shí)現(xiàn)模塊化、子程序化。不僅方便調(diào)試,連接,也能方便移植和修改。3.編寫(xiě)應(yīng)用軟件之前,要先繪制出程序流程圖。4.要合理分配系統(tǒng)資源。C語(yǔ)言是一種結(jié)構(gòu)化的高級(jí)語(yǔ)言,其優(yōu)點(diǎn)是可讀性好,移植容易[9],是普遍使用的一種計(jì)算機(jī)語(yǔ)言。具體的實(shí)施步驟為:1.明確控制要求,繪制電路原理圖。2.參考相關(guān)文獻(xiàn),檢查電路圖是否正確。3.根據(jù)電路原理圖焊接電路板,嘗試制作貪吃蛇模型。4.分析操作流程,繪制程序流程圖。5.編寫(xiě)程序代碼,不斷改善。6.運(yùn)用已學(xué)軟件,對(duì)程序進(jìn)行初步調(diào)試。7.配合貪吃蛇硬件部分,并努力完善其功能,以達(dá)到設(shè)計(jì)要求?;趩纹瑱C(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第9頁(yè)。主程序工作流程如圖1所示:基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第9頁(yè)。 圖1貪吃蛇流程圖系統(tǒng)上電后,首先初始化LED,然后初始化定時(shí)器,同時(shí)啟動(dòng)定時(shí)器,再然后執(zhí)行程序主體邏輯,程序主體邏輯經(jīng)過(guò)一遍執(zhí)行后,立即檢查有無(wú)中斷發(fā)生。該游戲的中斷源有兩個(gè),一個(gè)是定時(shí)器中斷驅(qū)動(dòng)蛇自動(dòng)向前,另一個(gè)是用戶通過(guò)控制按鍵來(lái)控制貪吃蛇移動(dòng)的中斷,二者中任意一個(gè)中斷的發(fā)生都能夠使蛇的當(dāng)前狀態(tài)發(fā)生改變。如果沒(méi)有中斷產(chǎn)生,主程序則繼續(xù)判斷蛇身是否相撞或者蛇頭是否碰到主屏幕;只要滿足以上所說(shuō)任意條件,則表示結(jié)束游戲,不然游戲繼續(xù)執(zhí)行主體循環(huán)?;趩纹瑱C(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第10頁(yè)。該程序的入口地址是Main()函數(shù),從執(zhí)行程序的功能開(kāi)始,將各個(gè)模塊串聯(lián)起來(lái),以實(shí)現(xiàn)游戲的各種功能。首先完成軟件硬件的初始化任務(wù)然后進(jìn)入一個(gè)循環(huán),反復(fù)檢測(cè)有無(wú)按鍵、處理按鍵、處理蛇運(yùn)動(dòng)、處理時(shí)鐘節(jié)拍這四件事情[10]?;趩纹瑱C(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第10頁(yè)。4.3游戲設(shè)計(jì)思想按設(shè)計(jì)要求可以得出,游戲的核心是解決LED顯示屏的顯示和蛇身的運(yùn)動(dòng)處理的問(wèn)題。將貪吃蛇的每一節(jié)蛇身大小定義為一個(gè)單位矩陣,食物大小與一節(jié)蛇身大小相同,也是一個(gè)單位矩陣。當(dāng)蛇開(kāi)始運(yùn)動(dòng)時(shí),需要解決以下幾個(gè)問(wèn)題:1.蛇身的運(yùn)動(dòng)處理。用戶每按下一個(gè)鍵,蛇身都將開(kāi)始進(jìn)行柔體運(yùn)動(dòng)。所謂的柔體運(yùn)動(dòng),就是指蛇的運(yùn)動(dòng)并不與整條蛇的運(yùn)動(dòng)方向一致,而是指在每個(gè)時(shí)鐘到來(lái)時(shí),由蛇頭帶動(dòng)每一個(gè)點(diǎn)陣的方向向下一個(gè)點(diǎn)陣傳播,然后自己向新的方向運(yùn)動(dòng)一步。運(yùn)動(dòng)之后,下一個(gè)點(diǎn)陣就得到了上一個(gè)點(diǎn)陣的方向,然后按照上一個(gè)方向運(yùn)動(dòng)同樣的一步。因此,它能夠立即填補(bǔ)上一點(diǎn)的位置,如此類(lèi)推。在實(shí)際設(shè)計(jì)蛇運(yùn)動(dòng)的時(shí)候,我們需要把貪吃蛇蛇尾的那個(gè)點(diǎn)陣給去掉,然后在蛇頭的新方向上放一個(gè)點(diǎn)陣。所以,一個(gè)函數(shù)的定義是用來(lái)更新一個(gè)點(diǎn)的坐標(biāo),只要確定蛇頭或蛇尾的坐標(biāo)還有其運(yùn)動(dòng)的方向,我們就可以調(diào)用此函數(shù)來(lái)更新蛇頭或蛇尾的坐標(biāo)。與此同時(shí),調(diào)用有關(guān)的顯示函數(shù)來(lái)達(dá)到對(duì)蛇運(yùn)動(dòng)處理的效果。2.在吃到食物后對(duì)蛇的處理。蛇頭和食物坐標(biāo)相同時(shí),則表示貪吃蛇吃到食物。如果吃到了食物,那么就在蛇頭的位置加上一個(gè)單位點(diǎn)陣,同時(shí)需要立即再更新下一個(gè)食物的坐標(biāo)。3.隨機(jī)放置新的食物。貪吃蛇吃掉食物后,我們通過(guò)更新食物的坐標(biāo)來(lái)產(chǎn)生新的食物。在放置食物時(shí),我們需要調(diào)用一個(gè)判斷函數(shù)來(lái)判斷產(chǎn)生的新食物的坐標(biāo)與蛇身是否重疊,如果重疊了,那么則需要重新放置,然后再重新判斷,直到產(chǎn)生的新的食物和蛇身坐標(biāo)不相互重疊為止。4.死亡處理。蛇在運(yùn)動(dòng)時(shí),如果蛇頭碰到顯示屏邊框或是蛇身,那就表示游戲結(jié)束了。4.4LED點(diǎn)陣初始化初始化LED點(diǎn)陣,就是把點(diǎn)陣內(nèi)所含有的全部信息清除,讓其沒(méi)有任何信息,內(nèi)部變空,然后在事先所指定的位置處顯示蛇的初始位置和食物的初始位置。初始化程序如下: voidInit() { for(i=3;i<SNAKE+1;i++) //SNAKE是蛇的最大長(zhǎng)度 x[i]=100; for(i=3;i<SNAKE+1;i++) y[i]=100; //初始化 x[0]=4;y[0]=4;//果子 n=3;//蛇長(zhǎng)n=-1 x[1]=1;y[1]=0;//蛇頭基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第11頁(yè)。 x[2]=0;y[2]=0;//蛇尾1基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第11頁(yè)。 addx=0;addy=0;//位移偏移 }4.5貪吃蛇的移動(dòng)當(dāng)食物沒(méi)有被蛇吃掉時(shí),每前進(jìn)一個(gè)單位點(diǎn)陣,蛇頭所要到的下一個(gè)單位點(diǎn)陣(即LED燈)變亮,相應(yīng)地,蛇尾的那個(gè)LED燈就會(huì)熄滅。設(shè)計(jì)程序時(shí),我們只需要把蛇尾那個(gè)點(diǎn)陣的坐標(biāo)傳給蛇頭下一個(gè)點(diǎn)陣的坐標(biāo),然后再改變蛇尾的值就可以了。而蛇頭的下一個(gè)位置是根據(jù)蛇頭和偏移量來(lái)決定的,每次四個(gè)方向按鍵決定了蛇運(yùn)動(dòng)的偏移量,將蛇頭的位置加上偏移量的值就能夠得到新的蛇頭地位置。當(dāng)蛇頭碰到周?chē)钠聊贿吙蚧蛘吲龅阶约旱纳眢w時(shí),就表示蛇死了,并且游戲就此結(jié)束。其中游戲暫停的處理是通過(guò)關(guān)閉定時(shí)器2實(shí)現(xiàn)的[11-13]。4.6食物的隨機(jī)出現(xiàn)我們需要保證食物的出現(xiàn)是隨機(jī)的,此時(shí)就需要調(diào)用一個(gè)隨機(jī)函數(shù),而且還要保證食物出現(xiàn)的位與蛇的位置不同,即不能重疊,也不能超出點(diǎn)陣屏外,不然就需要重新確定食物的位置。在這里,我們采用程序中的定時(shí)計(jì)數(shù)器中的低八位TL0的數(shù)值,因?yàn)門(mén)L0在不斷地變化,所以在不同的時(shí)間點(diǎn)所產(chǎn)生的數(shù)值也不同,在這里使用C++語(yǔ)言中的stdlib.h文件庫(kù),調(diào)用里面的隨機(jī)函數(shù)srand(),先用srand(TL0)獲得TL0的數(shù)值,再用rand()%8兩次,分別得到食物出現(xiàn)時(shí)的橫坐標(biāo)和縱坐標(biāo)。5聯(lián)調(diào)與測(cè)試5.1軟件調(diào)試基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第12頁(yè)。使用uVision3作為該程序的軟件編譯器。在打開(kāi)uVision3來(lái)編寫(xiě)此程序時(shí),由于uVision3通常只能改正語(yǔ)法上的錯(cuò)誤,不好檢查算法上的問(wèn)題,直接下到單片機(jī)里又會(huì)受到電路板的限制使得調(diào)試不方便,因此這里使用Proteus進(jìn)行電路仿真。在實(shí)際操作時(shí),我們可以先用Proteus軟件,在上面畫(huà)出硬件電路,當(dāng)設(shè)計(jì)完電路后就可以進(jìn)行下一步地仿真。先用鼠標(biāo)雙擊單片機(jī),再把用uVision3軟件編譯產(chǎn)生的.HEX文件設(shè)定為下載文件,點(diǎn)擊左下方的PLAY鍵就可以開(kāi)始進(jìn)行仿真了,按上下左右?guī)讉€(gè)方向鍵就可以完全控制蛇的運(yùn)動(dòng)方向,注意蛇的運(yùn)動(dòng)狀態(tài),保證其不碰觸蛇身還有點(diǎn)陣屏即可。當(dāng)仿真出現(xiàn)ANALYSERERRORS時(shí),就表示此時(shí)的電路有錯(cuò)誤,下面的列表中詳細(xì)說(shuō)明了是哪有錯(cuò)誤,然后根據(jù)提示進(jìn)行排錯(cuò),接著再進(jìn)行仿真。當(dāng)仿真完成后,就標(biāo)志著這次設(shè)計(jì)已經(jīng)做的差不多了,大體框架已經(jīng)形成了。本設(shè)計(jì)仿真效果如圖2所示。基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第12頁(yè)。 如圖2仿真圖在Proteus軟件畫(huà)出原理圖后,將已編譯好的源代碼文件調(diào)入,可此時(shí)我們可以在原理圖中看到實(shí)物的模擬運(yùn)行狀態(tài)和過(guò)程。通過(guò)實(shí)驗(yàn)我們可以得出,在使用Proteus進(jìn)行仿真成功后再進(jìn)行動(dòng)手操作,可以大大地提高設(shè)計(jì)單片機(jī)系統(tǒng)的效率。Proteus支持單片機(jī)匯編語(yǔ)言的編輯/編譯/源碼級(jí)仿真,內(nèi)帶AVR、PIC的匯編編譯器,也可以與第三方集成編譯環(huán)境(如IAR、Keil和Hitech)結(jié)合,進(jìn)行高級(jí)語(yǔ)言的源代碼級(jí)仿真和調(diào)試[14]。因此,Proteus有較高的推廣利用價(jià)值[15]。5.2硬件調(diào)試基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第13頁(yè)。軟件調(diào)試和Proteus仿真完成后,就可以對(duì)硬件進(jìn)行安裝。該設(shè)計(jì)依據(jù)原先設(shè)計(jì)好的電路原理圖進(jìn)行總體上的布置,也可以再畫(huà)出其PCB圖,然后用人工搭電路的方法來(lái)安裝硬件電路。電路安裝時(shí),要考慮受熱、元件大小等多方面的影響,在使用電烙鐵時(shí),應(yīng)掌握好焊接的時(shí)間,電烙鐵停留的時(shí)間太短,焊錫不易完全熔化,形成“虛焊”,而焊接時(shí)間太長(zhǎng)又容易損壞元器件,每一兩秒內(nèi)要焊好一個(gè)焊點(diǎn),若沒(méi)完成,寧愿等一會(huì)兒再焊一次。其次芯片的擺置要方便連線,焊接時(shí)要先把芯片拔出,等線接好了再插上去。在焊接時(shí)要考慮電路的抗干擾能力同時(shí)要充分考慮電源對(duì)單片機(jī)的影響。每焊接完一個(gè)模塊,要用萬(wàn)能表根據(jù)電路圖檢查有沒(méi)有接錯(cuò)、短路等現(xiàn)象,確認(rèn)正確后再繼續(xù)下一個(gè)模塊[16]。基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第13頁(yè)。本實(shí)驗(yàn)采用USB接口供電,通過(guò)USB,能夠使單片機(jī)更加穩(wěn)定,在正常的工作范圍內(nèi)使得其能夠更好的工作。實(shí)物圖如下圖3所示: 圖3貪吃蛇實(shí)物圖基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第14頁(yè)。
基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第14頁(yè)。 貪吃蛇實(shí)物圖基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第15頁(yè)。
基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第15頁(yè)。結(jié)論與展望本次設(shè)計(jì)是基于51單片機(jī)的貪吃蛇游戲,可以挖掘出單片機(jī)的性能,使其得到充分的發(fā)揮,而且此次設(shè)計(jì)還能體現(xiàn)出嵌入式系統(tǒng)節(jié)能、功耗低、便攜性好的特點(diǎn),使人們的日常生活變得更加輕松快樂(lè),使身心得到了解放。本論文按照設(shè)計(jì)完成了以下工作:根據(jù)實(shí)際要求,對(duì)系統(tǒng)的硬件電路進(jìn)行設(shè)計(jì)。以AT89C51作為其控制核心,擴(kuò)展外圍電路,加入8*8LED點(diǎn)陣模塊,還有按鍵模塊等構(gòu)成此款游戲的硬件系統(tǒng)。這款小游戲是所有小游戲中較為簡(jiǎn)單的一個(gè),可是我卻花了較長(zhǎng)的時(shí)間,直到動(dòng)手時(shí)才后悔上課時(shí)沒(méi)有認(rèn)真聽(tīng)老師講解,尤其是結(jié)構(gòu)體,還有指針的部分,腦子里完全沒(méi)有印象,算是一片空白,還好經(jīng)過(guò)這段時(shí)間的努力,總體來(lái)說(shuō),把相關(guān)的一些知識(shí)大概看了一遍,也基本都掌握了相關(guān)的知識(shí),接著就開(kāi)始編程,說(shuō)實(shí)在的,編程真的是一件很枯燥無(wú)味的事,但是為了這次設(shè)計(jì),還是不得不堅(jiān)持,根據(jù)老師所介紹的模塊化思想,分步來(lái)編寫(xiě)。而編程又是一件高精度、高模范化的事,對(duì)我來(lái)說(shuō),這簡(jiǎn)直就是鍛煉我的意志,稍微有點(diǎn)疏忽都可能會(huì)影響到整個(gè)編程,整個(gè)牽一發(fā)而動(dòng)全身,在這個(gè)時(shí)候認(rèn)真、仔細(xì)就顯得十分重要了。剛開(kāi)始編程的時(shí)候,一般都會(huì)覺(jué)得編程十分無(wú)聊,但是當(dāng)程序運(yùn)行成功時(shí),心底所產(chǎn)生的那種滿足感和喜悅是用語(yǔ)言完全不能表達(dá)出來(lái)的,直接是無(wú)法比擬的。通過(guò)這次設(shè)計(jì),充分讓我認(rèn)識(shí)到學(xué)習(xí)應(yīng)該要更加著重實(shí)踐,不能只是懂得理論,要懂得制定計(jì)劃,然后想辦法去實(shí)現(xiàn)計(jì)劃,最后要及時(shí)地克服心理上的不良情緒,保持樂(lè)觀積極的態(tài)度去完成自己的任務(wù)?;趩纹瑱C(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第16頁(yè)。
基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第16頁(yè)。附錄A:系統(tǒng)原理圖基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第17頁(yè)。
基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第17頁(yè)。附錄B:系統(tǒng)PCB圖基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第18頁(yè)。
附錄C:系統(tǒng)仿真圖基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第18頁(yè)?;趩纹瑱C(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第19頁(yè)。
附錄D:系統(tǒng)實(shí)物圖基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第19頁(yè)?;趩纹瑱C(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第20頁(yè)。基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第20頁(yè)。附錄E:系統(tǒng)源程序#include<reg51.h>#defineucharunsignedchar#defineSNAKE20//最大長(zhǎng)度#defineTIME50//顯示延時(shí)時(shí)間#defineSPEED40//速度控制//#definekeyenable1sbitkeyenable=P3^6; //方向使能/*sbitkeyx=P0^1; //左右sbitkeyy=P0^2; //上下 *///sbitup=P0^0;sbitup=P3^1;//downsbitdown=P3^3;sbitright=P3^4;sbitleft=P3^2;ucharx[SNAKE+1];uchary[SNAKE+1];uchartime,n,i,e;//延時(shí)時(shí)間,當(dāng)前蛇長(zhǎng),通用循環(huán)變量,當(dāng)前速度 charaddx,addy;//位移偏移量/********************延時(shí)程序*********************/voiddelay(charMS){charus,usn;while(MS!=0){usn=0;while(usn!=0){us=0xff;while(us!=0){us--;};usn--;}MS--;}}/*******************************************判斷碰撞*******************************************/bitknock(){bitk;k=0;if(x[1]>7||y[1]>7)k=1;//撞墻for(i=2;i<n;i++)if((x[1]==x[i])&(y[1]==y[i]))k=1;//撞自己returnk;}/*****************上下左右鍵位處理*****************/voidturnkey()//interrupt0using2{//up=1;基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第21頁(yè)。if(keyenable)基于單片機(jī)的貪吃蛇設(shè)計(jì)全文共23頁(yè),當(dāng)前為第21頁(yè)。{if(left){addy=0;if(addx!=1)addx=-1;elseaddx=1;}if(right){addy=0;if(addx!=-1)addx=1;elseaddx=-1;}if(up){addx=0;if(addy!=-1)addy=1;elseaddy=-1;}if(down){addx=0;if(addy!=1)addy=-1;elseaddy=1;}/*if(keyy){addy=0;//左右if(keyx)if(addx==-1)addx=-1;elseaddx=1;//左elseif(addx==1)addx=1;elseaddx=-1;//右}else{addx=0;//上下if(keyx)if(addy==1)addy=1;elseaddy=-1;//下elseif(addy==-1)addy=-1;elseaddy=1;//上 }*/}}/*****************乘方程序*****************/ucharmux(uchartemp){if(temp==7)return128;if(temp==6)return64;if(temp==5)return32;if(temp==4)return16;if(temp==3)return8;if(temp==2)return4;if(temp==1)retu
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 開(kāi)發(fā)需求委托合同(2篇)
- 建筑材料采購(gòu)分包合同(2篇)
- 2024年注冊(cè)消防工程師題庫(kù)參考答案
- 二零二五年度汽車(chē)租賃擔(dān)保公司合同車(chē)輛作為抵押的擔(dān)保公司服務(wù)協(xié)議4篇
- 二零二五版特色小吃店轉(zhuǎn)讓與加盟協(xié)議4篇
- 二零二五年度智慧城市建設(shè)項(xiàng)目融資合同及違約賠償條款3篇
- 2025年度個(gè)人購(gòu)房合同(含貸款及產(chǎn)權(quán)登記)4篇
- 平板燈施工方案
- 酸堿滅火器課程設(shè)計(jì)
- 2025年銷(xiāo)售合同臺(tái)帳模板(服裝行業(yè)專(zhuān)用)
- 2019級(jí)水電站動(dòng)力設(shè)備專(zhuān)業(yè)三年制人才培養(yǎng)方案
- 室內(nèi)裝飾裝修施工組織設(shè)計(jì)方案
- 洗浴中心活動(dòng)方案
- 送電線路工程施工流程及組織措施
- 肝素誘導(dǎo)的血小板減少癥培訓(xùn)課件
- 韓國(guó)文化特征課件
- 抖音認(rèn)證承諾函
- 清潔劑知識(shí)培訓(xùn)課件
- 新技術(shù)知識(shí)及軍事應(yīng)用教案
- 高等數(shù)學(xué)(第二版)
- 肺炎喘嗽的中醫(yī)護(hù)理常規(guī)
評(píng)論
0/150
提交評(píng)論