找回密碼
         注冊會員
        搜索附件  

        Sokoban.rar

         

        觸摸屏仿真之推箱子:三大經典游戲之仿真(俄羅斯方塊、推箱子、:


        本人工作和單片機一點關系都沒有,玩玩單片機,寫寫單片機游戲,純粹是個人愛好。記得第一個單片機游戲帖子是在兩年以前發的了,發表在了Proteus論壇上,名為三大經典游戲之仿真(俄羅斯方塊、推箱子、貪吃蛇),第二個單片機游戲帖子發表在了本論壇,名為單片機游戲之四九宮格數獨,今天發表的是第三個貼子了。

        在論壇里看到很多人仿真的都是計算器啦,萬年歷啦,數碼管顯示啦,波形發送器啦,用的液晶大多為12864或是1602,偶爾會看到有人用ST7920 或是T6963C驅動的液晶屏。12C ds1302 18b20 等驅動更是多于牛毛。但Proteus中唯一的一個串口12864(驅動器型號為SED1565)驅動卻無人問津,最大號的256*256型液晶驅動無人問津,觸摸屏就更是沒人去搞了,(叫你搞,你也一時搞不出,哈哈),這次在我的仿真里你會全部看到,當然還有I2C的驅動(千錘百煉的驅動代碼絕對精煉)。
        因為本游戲,在我的第一個帖子中發表過了,人物移動邏輯還是一樣的,在本仿真中由于加了觸摸屏,自然就要有自動尋路的功能,這是一個很耗單片機資源的東東。剛寫的時候我還在考慮RAM擴展,后來發現這樣一來51單片機的引腳根本就不夠,于是我又考慮到采用多機通信的方式代替擴展RAM,因為那樣的話就相當于有64個引腳,可以專門用一個單片機來做尋路操作,并且RAM有512字節,已經足夠了,但后來的測試發現,人物尋路一遍時間太長,并且在數據交互時處理的不是很好,偶爾會有數據丟失。最后經過仔細的硬件布局和精煉的數據算法,還是被我用一塊單片機搞定全部功能,其中的功能塊如下,觸摸屏功能塊響應鼠標點擊液晶屏消息,12C 功能塊保存和加載游戲數據,虛擬終端功能塊負責響應PC機鍵盤消息操控游戲,12864功能塊負責實時顯示游戲進程數據,256*256液晶功能塊負責顯示游戲地圖,按鍵功能塊負責啟動、復位、保存、加載、選關等等操作,兩片74系列轉換模塊負責轉換觸摸屏數據,當然還有最最重要的單片機負責處理所有輸入輸出。
        本仿真工程龐大,整個項目源代碼全部公開,你下載后只要你裝了Keil就可以編譯通過(我用的是Keil4低版本能否通過不清楚)。為了達到復用的目的文件較多,不管是算法效率,游戲邏輯分析,各種芯片驅動,還是整個項目架構或是代碼風格,都經過本人精心設計,可以說每個方面都有其獨到之處,會讓你有一種賞心悅目的感覺,不管你是新手還是老手都很難說這其中沒有值得你學習的地方,特別是在處理游戲尋路邏輯那一塊,在最開始時我用的算法是采用棧來處理,但后來發現這種方式找到的路徑不一定是最短路徑,所以又改用了隊列算法來實現,但棧的代碼并沒有刪除,而是采用了宏處理 你可以去掉#define USEQUEUE 這句宏定義而不需改變其它的任何代碼,再次Build一次就可以看到采用棧尋路的效果了。本仿真中游戲關數只設了四關,如果你想多加關數,只要在數據文件中添加正確的關數據,并修改宏#define MAX_HURDLE 4的值再一次Build即可,下面是復制以前帖子的游戲看點內容:
        本游戲之十大看點

        游戲看點一:游戲采用LCD-KEYPAD液晶顯示屏做為顯示界面(256*256),大家不要去你自己的元器件庫里搜索這塊液晶,你永遠都搜索不到,至于為什么我的仿真里會有,留你自己慢慢想,如果你夠細心就會明白,只要你裝了Proteus 仿真不是問題。
        游戲看點二:游戲啟動界面簡潔,依然沿用了以前游戲的啟動界面
        游戲看點三:游戲所用的單片機為最原始的80C52單片機,不需要AVR也不需要ARM,小小的80系列單片機就能綽綽有余的實現游戲所有功能。
        游戲看點四:游戲無需外加數據存取器,根本就用不完256字節的數據段(本游戲151.6字節,還有100多個字節空閑),很多朋友認為寫游戲不擴展外部數據存儲器幾乎不可能,如果你看了我的仿真,你就會改變你的想法。
        游戲看點五:本游戲屬原創,絕無抄襲,也沒地方抄襲。
        游戲看點六:游戲的硬件電路,極其簡單,由于采用了觸摸屏,移動按鈕被取消,但保留了虛擬終端。
        游戲看點七:游戲采用了虛擬終端,能通過PC鍵盤完成游戲的所有操作,具體操作看終端顯示。
        游戲看點八:游戲代碼相當規范,工程建立獨到,如果你看了我的代碼架構,再和論壇里大多數朋友的相比較一下,你就會明白高手和菜鳥的區別。
        游戲看點九:Proteus的觸摸屏看似引腳眾多,其實驅動也沒那么復雜,類似行列式鍵盤,但如果讓你來寫你還真不一定能寫出來,不是我很狂,現在很多人都眼高手低的,說是簡單,寫起來卻不是那么回事。
        游戲看點十:游戲中用到了24C02C芯片,可以任意時間加載和保存游戲。
        仿真注意:Proteus軟件必須是7.4或7.4以上版本

        下面是仿真截圖,由于觸摸屏效果在圖中顯示不出來,朋友們可以下載下來自己仿真看到
        游戲啟動界面



        游戲中效果



        軟件工程

        QQ|手機版|MCU資訊論壇 ( 京ICP備18035221號-2 )|網站地圖

        GMT+8, 2025-5-4 23:30 , Processed in 0.039974 second(s), 8 queries , Redis On.

        Powered by Discuz! X3.5

        © 2001-2025 Discuz! Team.

        返回頂部
        国产精品网址在线观看你懂的| 精品日韩亚洲AV无码一区二区三区| 精品久久久噜噜噜久久久| 精品国产福利在线观看| 国产精品久久久久影院色| 国产精品亚洲欧美大片在线看 | 久久九九有精品国产23百花影院| 国产精品高清2021在线| 亚洲欧美国产∧v精品综合网| 国产麻豆精品久久一二三| 在线观看日韩精品| 夜夜高潮夜夜爽国产伦精品| 精品亚洲成a人片在线观看少妇 | 国自产精品手机在线观看视| 午夜性爽视频男人的天堂| 国产精品成熟老女人视频| 国产精品美女久久久久AV福利| 亚洲一区二区三区国产精品| 国产精品日韩欧美一区二区三区| 国产精品免费久久| 中文无码久久精品| 97久视频精品视频在线老司机 | 国产成人vr精品a视频| 久久91这里精品国产2020| 日韩精品久久久久久免费| 99国产精品私拍pans大尺度| 日本一区二区不卡在线视频| 精品综合久久久久久97超人| 四虎永久在线精品免费一区二区| 久久精品aⅴ无码中文字字幕重口 久久精品a亚洲国产v高清不卡 | 高清一级淫片a级中文字幕| 久久精品国产亚洲一区二区| 日本不卡在线播放| 亚洲综合国产精品| 中文字幕乱码中文乱码51精品| 777欧美午夜精品影院| 亚洲国产成人精品无码区在线观看| 91精品国产高清久久久久久91| 综合在线视频精品专区| 国产va免费精品| 色欲国产麻豆一精品一AV一免费|