吴忠躺衫网络科技有限公司

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>觸摸井字游戲開源分享

觸摸井字游戲開源分享

2022-10-28 | zip | 0.39 MB | 次下載 | 免費(fèi)

資料介紹

描述

不久前,我構(gòu)建了我的Touch-A-Mole游戲,它是 Whack-A-Mole 游戲的一個(gè)版本,它使用 4x4 電容式觸摸板,每個(gè)觸摸板的中間都裝有 LED在構(gòu)建它時(shí),我想如果我用雙色 LED 代替單色 LED,我可以把它變成井字游戲的一個(gè)版本。

Touch Tic-Tac-Toe 游戲演示

設(shè)計(jì)

我選擇使用 ATtiny3216 微處理器作為游戲的大腦。它有足夠的引腳來控制 LED、按鈕和揚(yáng)聲器。它可以以 20MHz 運(yùn)行,具有 32k 的閃存和 2k 的 RAM

pYYBAGNYulCAJ4RsAARJXB6vi8Q704.png
示意圖
?

雙色 LED 是共陰極,陽(yáng)極成列連接,并通過限流電阻連接到 ATtiny3216 上的引腳。陰極成排連接,由 ATtiny3216 控制的晶體管啟用。

4x4 電容式觸摸開關(guān)面板由兩條信號(hào)線控制。雖然 PCB 有時(shí)會(huì)標(biāo)記這些引腳 SCL 和 SDA,但它不使用 I2C 協(xié)議。它們實(shí)際上只是時(shí)鐘引腳和數(shù)據(jù)引腳,它們使用專有的兩線協(xié)議。

我設(shè)計(jì)了一個(gè) PCB 來固定 LED 和表面貼裝組件。如果您希望將電路板商業(yè)化或您可以自己制作,則已包含 Eagle 文件。我用碳粉的方法來制作我的。

pYYBAGNYulWACInrAAR-BbxDVHA528.jpg
PCB 可容納 16 個(gè) LED 并安裝在 XC4602 觸摸按鍵模塊下方
?

建造

首先添加 SMD 組件。我發(fā)現(xiàn)在焊接 SMD 元件時(shí)使用焊膏比使用卷盤中的焊料更容易。

如果您的電路板是單面的,請(qǐng)?zhí)砑渔溄印?/font>

poYBAGNYulmAKzY7AAHt2H8EHAM291.jpg
添加 SMD 組件和鏈接
?

在觸摸板上的 3/6 引腳之間連接一個(gè)鏈接,以啟用所有 16 個(gè)觸摸板。

poYBAGNYulyAdodtAACQQOdK01g225.jpg
添加鏈接以啟用所有 16 個(gè)觸摸板
?

小心地在每個(gè)觸摸板中間為 LED 鉆一個(gè) 2.5 毫米的孔。當(dāng)心 PAD 5。有一條軌道非常靠近打擊墊底面的中心如果你打破它(我在我的構(gòu)建中做了),你需要刮掉孔兩側(cè)的抗蝕劑并焊接一些鍍錫銅線以繞過孔。

pYYBAGNYul-AW6gAAAHXcoaYvcQ591.jpg
添加 USB 插座、LED 和揚(yáng)聲器
?

當(dāng)我建造我的時(shí),我先添加了 LED,然后在焊接所有組件后添加了墊片。我建議您先打印并添加墊片,然后將它們粘到 PCB 上。插入 LED(確保它們的方向正確),但不要焊接它們。將觸摸板放在墊片上并向下推每個(gè) LED,使它們位于各自孔的中間,并且在將它們焊接到位之前硬靠在觸摸板上。

poYBAGNYumOAa9F2AALUnvQzpE8016.jpg
將墊片粘到 PCB 上,將觸摸矩陣線粘到 PCB 上
?

添加連接兩塊板的四根鍍錫銅線(VCC、GND、SCL、SDO)。

3D 打印保險(xiǎn)杠并將組件添加到其中。

最后使用 UPDI 程序員上傳代碼(見下一節(jié))。

pYYBAGNYumaATOqCAAGzc5A39A0139.jpg
將程序集添加到保險(xiǎn)杠并上傳代碼
?

編程

ATtiny3216 是新一代 ATtiny 微處理器的一部分。與 ATtiny85 等早期系列不同,新品種使用 RESET 引腳對(duì) CPU 進(jìn)行編程。要對(duì)其進(jìn)行編程,您需要一個(gè) UPDI 程序員。我用 Arduino Nano 做了一個(gè)。您可以在Create Your Own UPDI Programmer中找到完整的構(gòu)建說明。它還包含將megaTinyCore板添加到 IDE 的說明。

USB 插座為游戲提供電源 (5V)。ATtiny3216 處理器的 UPDI 引腳連接到 USB 插座上的 D+ 引腳。這允許使用定制電纜對(duì) ATtiny3216 進(jìn)行編程。USB Mini 插頭可在 eBay 上買到,或者您可以剪斷舊的 USB Mini 電纜。

pYYBAGNYummAVJnlAABeDUl3iRM501.jpg
用于我的自制 UPDI 編程器的 USB-Mini 連接器電纜
?

玩游戲

通電后,計(jì)算機(jī)將邁出第一步。所有后續(xù)游戲,而單位保留權(quán)力將假定玩家首先開始。

poYBAGNYumuALJRWAABFGm6oO34699.png
4x4井字游戲規(guī)則
?

該軟件

當(dāng)計(jì)算機(jī)需要移動(dòng)時(shí),它會(huì)嘗試每個(gè)可用的方格并評(píng)估移動(dòng)的結(jié)果。為此,對(duì)于它測(cè)試的每個(gè)方格,它必須測(cè)試用戶可以做出的每一個(gè)可能的移動(dòng)并評(píng)估這些移動(dòng)中的每一個(gè)。這個(gè)過程以遞歸方式繼續(xù),直到棋盤滿了,沒有贏家,或者玩家贏了,或者電腦贏了。這意味著要評(píng)估的測(cè)試總數(shù)(假設(shè)計(jì)算機(jī)啟動(dòng))為 16!或大約 21 萬億個(gè)排列。顯然,使用 20MHz 處理器,這將需要很長(zhǎng)時(shí)間。同樣在 4x4 游戲中,計(jì)算機(jī)在評(píng)估每一步棋時(shí)需要測(cè)試 19 種獲勝組合。

為了使游戲具有可玩性,它看起來只有 3 到 4 步。它有點(diǎn)松散,因?yàn)槿绻l(fā)現(xiàn)它不可能獲勝的情況,它基本上會(huì)認(rèn)輸并選擇任何可用的方格。

在 Game.h 中有以下幾行:

//Comment out for 4x4 tic-tac-toe
//#define _3X3
//Comment out to store winning table in RAM (reduces CPU cyles in evaulation function)
//#define WINNING_MOVES_IN_RAM
//Comment out to use C version of evaluateBoard function
//#define EVAL_IN_ASSEMBLER

取消注釋 #define _3X3 行會(huì)將游戲配置為僅使用左上角的 9 個(gè)觸摸板。您無法擊敗 3x3 游戲,因?yàn)樗梢灶A(yù)見到游戲結(jié)束。你能做的最好的就是平局。

取消注釋 #define WINNING_MOVES_IN_RAM 會(huì)將獲勝組合表放入 RAM 而不是閃存中。RAM 比閃存快,但由于只有 2K 可用 RAM,由于遞歸游戲評(píng)估,堆棧確實(shí)需要它。

不要取消注釋#define EVAL_IN_ASSEMBLER。我試圖看看我可以加快評(píng)估板功能的速度。任何速度增加都不明顯。


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1A7159和A7139射頻芯片的資料免費(fèi)下載
  2. 0.20 MB   |  55次下載  |  5 積分
  3. 2PIC12F629/675 數(shù)據(jù)手冊(cè)免費(fèi)下載
  4. 2.38 MB   |  36次下載  |  5 積分
  5. 3PIC16F716 數(shù)據(jù)手冊(cè)免費(fèi)下載
  6. 2.35 MB   |  18次下載  |  5 積分
  7. 4dsPIC33EDV64MC205電機(jī)控制開發(fā)板用戶指南
  8. 5.78MB   |  8次下載  |  免費(fèi)
  9. 5STC15系列常用寄存器匯總免費(fèi)下載
  10. 1.60 MB   |  7次下載  |  5 積分
  11. 6模擬電路仿真實(shí)現(xiàn)
  12. 2.94MB   |  4次下載  |  免費(fèi)
  13. 7PCB圖繪制實(shí)例操作
  14. 2.92MB   |  2次下載  |  免費(fèi)
  15. 8零死角玩轉(zhuǎn)STM32F103—指南者
  16. 26.78 MB   |  1次下載  |  1 積分

本月

  1. 1ADI高性能電源管理解決方案
  2. 2.43 MB   |  452次下載  |  免費(fèi)
  3. 2免費(fèi)開源CC3D飛控資料(電路圖&PCB源文件、BOM、
  4. 5.67 MB   |  141次下載  |  1 積分
  5. 3基于STM32單片機(jī)智能手環(huán)心率計(jì)步器體溫顯示設(shè)計(jì)
  6. 0.10 MB   |  137次下載  |  免費(fèi)
  7. 4A7159和A7139射頻芯片的資料免費(fèi)下載
  8. 0.20 MB   |  55次下載  |  5 積分
  9. 5PIC12F629/675 數(shù)據(jù)手冊(cè)免費(fèi)下載
  10. 2.38 MB   |  36次下載  |  5 積分
  11. 6如何正確測(cè)試電源的紋波
  12. 0.36 MB   |  19次下載  |  免費(fèi)
  13. 7PIC16F716 數(shù)據(jù)手冊(cè)免費(fèi)下載
  14. 2.35 MB   |  18次下載  |  5 積分
  15. 8Q/SQR E8-4-2024乘用車電子電器零部件及子系統(tǒng)EMC試驗(yàn)方法及要求
  16. 1.97 MB   |  8次下載  |  10 積分

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935121次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
  4. 1.48MB  |  420062次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233088次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費(fèi)下載
  8. 340992  |  191367次下載  |  10 積分
  9. 5十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  10. 158M  |  183335次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81581次下載  |  10 積分
  13. 7Keil工具M(jìn)DK-Arm免費(fèi)下載
  14. 0.02 MB  |  73810次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65988次下載  |  10 積分
百家乐类游戏网站| 沈阳盛京棋牌下载| 金都娱乐| 百家乐官网技真人荷官| 百家乐娱乐城信息| bet365提款要多久| 速博百家乐官网的玩法技巧和规则 | 皇冠代理| 百家乐赌场老千| 大发888游戏平台 黄埔网| 百家乐官网游戏真人游戏| 网上百家乐骗人| 博发娱乐| 百家乐怎么下注能赢| 新澳门娱乐城官网| 百家乐官网天下| 赌场风云国语| 网上百家乐官网赌| 大发888娱乐城游戏下载| 百家乐官网网真人真钱群| 百家乐英皇娱乐| 赌场百家乐官网信誉| 百家乐存200送200| 真人百家乐官网试玩账号| 唐人街百家乐的玩法技巧和规则 | 真人百家乐出千| 大发888下载网站| 巴黎人百家乐官网的玩法技巧和规则 | 百家乐官网投注信用最好的| 百家乐长庄投注| 百家乐官网庄不连的概率| 永利百家乐赌场娱乐网规则| 百家乐官网庄家抽水| 百家乐真人游戏娱乐网| 百家乐官网怎样发牌| 广发百家乐的玩法技巧和规则| 奉新县| 百家乐返点| 百家乐官网娱乐城博彩| 百家乐技巧真人荷官网| 网上百家乐官网记牌软件|