题目点扑克牌游戏.ppt

上传人:sccc 文档编号:5473706 上传时间:2023-07-11 格式:PPT 页数:17 大小:650.01KB
返回 下载 相关 举报
题目点扑克牌游戏.ppt_第1页
第1页 / 共17页
题目点扑克牌游戏.ppt_第2页
第2页 / 共17页
题目点扑克牌游戏.ppt_第3页
第3页 / 共17页
题目点扑克牌游戏.ppt_第4页
第4页 / 共17页
题目点扑克牌游戏.ppt_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《题目点扑克牌游戏.ppt》由会员分享,可在线阅读,更多相关《题目点扑克牌游戏.ppt(17页珍藏版)》请在三一办公上搜索。

1、題目:21點撲克牌遊戲,組員:58790008 張靜怡 58790023 陳振倫,製作動機,先前的專題就是使用VB程式撰寫遊戲,現在又是使用VB與AVR程式撰寫遊戲,撰寫遊戲的方面也是使用到圖形呼叫跟一些變數的轉換,只是這次的專題使用到VB跟AVR的串列傳輸,我覺得也是這次實驗的重點,所以我們才選定大家都會玩的21點撲克牌遊戲來做專題的主題,而主要的目的是運用AVR來控制VB的遊戲進行。,操作方法(一),遊戲開始,AVR開始動作,VB處於等待AVR 的按鍵訊號,AVR上有六個按鍵可使用前三個按鍵是A的押分,B的押分,清除分數鍵(退幣),這三個件都是純粹在AVR進行,然而後面的兩個按鍵是AVR與

2、VB訊號的連結,分別的功能是A的要牌與B的要牌,當任何一方需要牌時,按下按鍵AVR的按鍵,AVR就會經串列傳輸給VB訊號,A與B要牌的訊號不同,所以經由VB判斷可以知道是那一方需要牌。,操作方法(二),當VB接收到任何一方要牌的指令時會判斷是否是第一次的要牌,如果是第一次要牌的話,VB會給要牌的一方兩張牌,然後VB會判斷牌組的數目,如果牌組的數目超過21點的話,則判斷另一方為勝方。當遊戲結束的時候,由VB判斷之後結束,而最後一個按鍵是重新開始遊戲的按鍵。,遊戲規則,遊戲必須有兩個人才能開始,然而A與B的金額都必須有數目(需要投幣),A與B的押分都必須大於10分以上(一次押分為10分)然後進行遊

3、戲,遊戲進行時不能在加注,到遊戲最後判斷輸贏以後,勝的一方將敗的一方所有的金錢歸為自己的,並且等待另一方投幣(另一方有押分)才再進行第2次的遊戲,也可以使用退幣鍵跟結束鍵來結束遊戲。,使用材料,7448*4:7448是AVR控制七字節的元件。AT90S4414:為AVR的訊號運算中心,也是電路的主體。IC232CPE:是作為AVR與VB傳輸訊號的重要元件,不管AVR傳送資料與接收資料都必須經過IC232CPE。七字節*4:作為遊戲金額的顯示器。按鍵*6:遊戲押分、訊號、遊戲結束的輸入。,電路圖(一),成品圖,所遭遇到的困難(AVR),開始撰寫AVR程式的時候,7448控制的方面一開始也因為程式

4、的關係,常常會產生亂碼的顯示,再來是串列傳輸的部分屬於比較不熟悉的地方,所以再開始測試的時候無法傳送資料,而AVR在接收資料方面也有問題,起初在程式接收VB的資料後就會產生當機的情形,但是在最後都一一解絕。,所遭遇到的困難(VB),因為我們專題主要的作判斷的地方在VB,而且VB幾乎完全都要接受AVR的控制,在傳輸與接收資料的方面,因為一開始的時候AVR的傳輸跟接收不能使用,使得VB再一開始的時候只有先撰寫判斷方面的程式,VB的亂數產生與定義排組的方面比較順利,但是也因為撲克牌的數目跟花色有時候會產生錯亂,最後是呼叫圖形的部分,因為不懂的使用陣列的方式呼叫牌組,所以就將一張張牌分別訂定大小分別經

5、過程式的判斷顯示牌組,所以在圖形的製作上也相的的費時。,所遭遇到的問題(硬體),雖然有接腳圖與AVR的使用電路圖,但因為電容與震盪器的型號接錯,使的串列傳輸的硬體部分掛掉,而在IC232CPE的方面一開始因為自己笨,所以一值將訊號的接收與傳送的方面的硬體部分一直沒辦法使用。,問題解決(AVR),我先在程式規劃AVR,宣告PORTB跟PORTC作為輸出的部分,PORTD為輸入的部分,利用程式的輸入判斷使PORTB跟PORTC經過7448分別輸出,傳送與接收的方面,傳送由按鍵直接傳送給VB,傳送分別為A與B的傳送,因為傳送的值不同,所以在VB可經由判斷來控制,而接受的部分使用中斷的方式判斷是否有資

6、料從VB方面傳送過來,將值利用PUCH與POP記憶起來,在判斷是不是完全收到資料,在將所得到的資料判斷結果顯示在七字節上,這樣大致AVR的問題都解決了。,問題解決(VB1),當AVR傳值過來時,利用數值來判斷是A或B要牌的訊號在給予牌組,接收的方面先利用阿剛所給的測試程式測式是否傳送與接收正常,VB也經過程式判斷接收資料(AVR只傳送一筆資料),在亂數的方面,VB有提供函數使用,使用的方法我大概先將花色跟數目定義再經過兩次的亂數取得花色與數目在經過程式判斷呼叫所對應的圖片顯示,在VB也同時判斷輸入的訊號是否是第1次所傳送的資料,如果是第一次所接收到的資料會牌組給予兩張牌,第二次接收資料後便會只

7、給一張牌,並且牌組最多的牌數只有五張牌。,問題解決(VB2),在圖形呼叫的方面,將圖形分別出來以長95、寬70的大小截取出來,並依亂束產生的花色與數目判斷是52張圖片中的哪一張,並呼叫該張圖片顯示。原本預定使用的陣列方法,因為需要判斷圖片座標跟取圖的大小等其他的變數使用,因為變數運用的方法看不太懂,所以採用比較簡單的方法取圖。,解決問題(硬體),硬體在IC232CPE的方面必須使用22uF的電容並且AVR傳送的腳位必須透過232傳送至VB,反之VB傳送必須接至IC232CPE接收腳位,震盪器選用4MHZ,在使用470uF的電容作為電壓的穩壓部分,這樣硬體方面的問題大致上都可以解決。,心得報告1

8、,在AVR寫判斷的時候,因為只需要判斷A與B的押分金額跟結束後集合所有金錢在贏的那一方,所以開始在AVR判斷的時候還算順利,接下來的串列傳送部份,因為我再判斷第四個按鍵(A要牌,將A訊號給VB)跟第五個按鍵的(B要牌,將B訊號給VB),因為傳送的值不同,所以沒有用到中斷的地方,在接收的方面因為不知道程式什麼時候會接收VB的資料,所以我改用中斷的方式接收資料並且由VB傳回來的值,判斷傳回來的值決定A 與B哪一方面贏,在將金錢顯示。,心得報告2,在VB接收的時候,必須寫一個判斷值的程式來判斷是A或者是B要牌的訊號再加以給牌,在亂數產生的部分只要詳細看清楚使用方法就可以使用VB內建的亂數產生函數(Randomize),圖形的部分因為使用相對函數呼叫(一張牌的固定的花色與數目),所以呼叫圖片還算簡單,不過建議以後的學弟利用陣列呼叫圖片,這樣真的比較方便也可以省下製作圖形的時間。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号