上半年的时候,b站和酷安好多人用ESP8266做气象站——源码地址[1]。
当时自己看到比较感兴趣也购买了一套ESP8266开发板 和 0.96寸oled,结果一直比较忙没来及玩。前段时间无意中发现个项目Arduboy,就决定搞一搞。
0x01 Arduboy简介官网地址[2]
Arduboy基于Arduino平台,其硬件、软件、游戏全都是开源的。官方使用是ATmega32u4单片机做主控,显示屏是128x64的oled屏,内置180mAh电池,可以提供8小时续航。
这个项目已经发展好久,有上百款游戏,官方售价稍微有点贵,需要 $54。这套标配硬件成本约40人民币,闲鱼上售价50~300不等。
0x02 ESP8266的Arduboy看到上边这个项目,就想闲置的ESP8266可否一战,就在github上找到一个大神的项目[3]
硬件部分我这套成本大概20元
2. 电路图
基本完全参照项目里的图纸。只不过没使用喇叭,然后部分引脚连接没完全按照图纸来,由于nodeMCU的D4脚控制内置led就没使用D4脚
一个理科生没有金工实习,除了前段时间焊键盘这是第二次焊接,焊得太难看了,大家忽略~
软件部分NodeMCU固件中的GPIO引脚如图
修改oled对应地址
//esp8266_arduboy2/src/Arduboy2.cpp#line16
SSD1306Brzooled(0x3c,D2,D1);//OLED_I2C_ADRESS,I2C_SDA,I2C_SCL)
修改按键对应地址
//esp8266_arduboy2/src/Arduboy2Core.h#line199-210
#definePIN_LEFT_BUTTOND6
#definePIN_RIGHT_BUTTOND7
#definePIN_UP_BUTTOND5
#definePIN_DOWN_BUTTOND4
#definePIN_A_BUTTOND3
#definePIN_B_BUTTOND0
参考文章arduboy游戏编程之Arduboy2库[7],使用测试绘图函数
#include<Arduboy2.h>
Arduboy2arduboy;
voidsetup(){
arduboy.begin();
arduboy.setFrameRate(15);
}
voidloop(){
if(!(arduboy.nextFrame()))
return;
arduboy.clear();
//(positionsstartat0,0)
arduboy.setCursor(4,5);
//thenweprinttoscreenwhatisintheQuotationmarks""
arduboy.print(F("Hello,world!"));
arduboy.drawCircle(50,20,5,WHITE);
arduboy.drawCircle(80,20,5,WHITE);
arduboy.drawLine(0,40,127,40,WHITE);
arduboy.fillRect(65,32,2,6,WHITE);
arduboy.drawRect(55,50,20,3,WHITE);
arduboy.display();
}
运行效果
这篇文章和ESP8266_Arduboy2库中都有测试按键的程序,可以运行测试按键是否都正常
图形和按键都测试好后,就可以尝试ESP8266_Arduboy2库里的示例游戏了
推荐
话不多说,上视频
更多平时没太多时间搞,向大家推荐几个可以探索的方向
[1]源码地址: https://github.com/yuan910715/Esp8266_NTP_Clock_Weather
[2]官网地址: https://arduboy.com/
[3]项目: https://github.com/cheungbx/esp8266_arduboy2
[4]ESP8266_Arduboy2 library: https://github.com/cheungbx/esp8266_arduboy2
[5]esp8266-oled-ssd1306: https://github.com/ThingPulse/esp8266-oled-ssd1306
[6]brzo_i2c: https://github.com/pasko-zh/brzo_i2c
[7]arduboy游戏编程之Arduboy2库: https://blog.csdn.net/weixin_37127273/article/details/108417127
[8]项目地址: https://github.com/ESPboy-edu/ESPboy_Arduboy2_lib
[9]ESPboy: https://www.espboy.com/
❝
the Answer to Life, the Universe and Everything is 42
❞
欢迎关注公众号「42号实验室」
Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved