亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

Arduino Due 触摸屏井字棋游戏 — 人机对战

元器件清单

Arduino Due×1
2.8寸 TFT LCD 触摸屏 (ILI9341 驱动)×1
跳线若干×1

软件工具

Arduino IDE

所需库:Adafruit_GFX、Adafruit_ILI9341、URTouch

接线说明

触摸屏接口

T_IRQ→ D22
T_DO→ D24
T_DIN→ D26
T_CS→ D28
T_CLK→ D30

显示屏接口 (SPI)

SDO (MISO)→ A.25
LED→ 3.3V
SCK→ A.27
SDI (MOSI)→ A.26
DC→ D9
RESET→ D8
CS→ D10
GND→ GND
VCC→ 3.3V

项目演进

基于 nickthegreek82 的开源项目改进。主要更新:

两个版本代码

版本一:基础 AI (阻塞式)

策略:优先抢占角落 → 中心 → 阻挡玩家连线 → 随机落子。使用 checkOpponent() 遍历所有胜利组合判断是否需拦截。触摸坐标映射到 3×3 网格,绘制 X (玩家, 蓝) 与 O (CPU, 红)。游戏结束显示胜负并提供“再来一局”按钮。

版本二:极大极小算法 AI (必不败)

核心函数 minimax(board, player, depth) 递归搜索博弈树,返回最优分数。CPU 始终选择使对手最差结果的落子。深度限制 difficulty=8 可微调强度。触摸判区坐标微调适配实际屏幕分辨率。绘图使用 drawBitmap() 从 PROGMEM 读取 X/O 位图直接写屏,速度更快。

原理图

Arduino Due 触摸屏井字棋游戏 — 人机对战

制造工艺

  1. 定制 4×4 井字棋名片 PCB – 设计、制作与代码指南
  2. K30 CO₂ 传感器:室内空气质量实时监测
  3. 基于 1Sheeld 与 Arduino 的盲聋人士沟通辅助系统
  4. 智能存钱罐:Arduino Nano 控制硬币识别器实现余额显示
  5. Arduino + HC-05 蓝牙控制 LED:MIT App Inventor 手机 App 开发全攻略
  6. DFRobot 电容指纹传感器 (ID809) 接入 Arduino/ESP8266 完整教程
  7. 基于 Arduino Mega 与 Nextion 显示屏的交互式气象站
  8. Arduino Mega 驱动 Wii Nunchuk 控制 6 自由度机械臂
  9. Arduino UNO + 以太网盾板实现低成本太阳辐射测量仪(热电堆原理)
  10. 紧凑型Arduino雷达系统:HC-SR04超声波传感器配1.8英寸显示屏
  11. Arduino 合成乐音:从零实现 88 键钢琴全音域
  12. TinyML 咳嗽检测:Arduino Nano 33 BLE Sense 实现早期流感筛查