在UNO和NANO上跑Arduboy 并且使用i2c OLED-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 8641|回复: 7

在UNO和NANO上跑Arduboy 并且使用i2c OLED

[复制链接]
发表于 2018-7-4 21:01 | 显示全部楼层 |阅读模式
本帖最后由 createskyblue 于 2019-8-11 14:08 编辑

T7QVEH0D8B_)%QNW$Y9T57D.png


原文:https://community.arduboy.com/t/arduboy-on-arduino-nano-i-c-display/5532
原文演示视频:http://www.youtube.com/embed/cNrNYCdDb9Q
(根据国家相关政策,你很有可能打不开上面的网站,怎么打开我不教了0V0)

我自己运行的图片

IMG_20180704_210959.jpg


电路连线:
电路_bb.png
电路.zip (41.28 KB, 下载次数: 42)

扬声器正       ===>9         (蜂鸣器那里我没有用电阻 因为发现用了后声音几乎听不见)
扬声器负       ===>11
红色LED        ===>5
蓝色LED        ===>6
绿色LED        ===>7        (由于Atmega328p 少了一个PWM的缘故 绿色led无法调亮度)
上键               ===>17 A3
下键               ===>2
左键               ===>15 A1
右键               ===>3
A键                ===>4
B键                ===>16 A2
OLED_SCL     ===>19 A5
OLED_SDA    ===>18 A4


所需要的库文件:

Arduboy2-master.zip (298.69 KB, 下载次数: 188)    GITHUB: https://github.com/harbaum/Arduboy2
ArduboyTones-master.zip (20.89 KB, 下载次数: 146)    GITHUB: https://github.com/harbaum/ArduboyTones
The SLIMBOY setup has a few limitations over the original solution:
  • The I²C connection is slower than SPI and the framerate slightly suffers on some games. The current setup has been optimized for speed and runs nearly as smooth as the SPI version
  • The Atmega328 on the Arduino Nano has some limitations over the Atmega32u4 of the original Arduboy
    • It has fewer timers and thus some custom sound libraries won't work 100%
    • It has 500 bytes less ram
    • It has less PWM pins and thus the green LED cannot be dimmed

These limitations only have a very minor impact on the usability and games like ShadowRunner just run fine on the SLIMBOY.

这个和真正的ARDUBOY有什么不同:

真正的ARDUBOY采用Arduino leonardo 使用的是ATmega32u4处理器
而这个采用的是UNO或NANO 使用的是ATmega328 处理器


                   ATmega328      ATmega32u4

运行频率        16  Mhz               16  Mhz
RAM              2    KB                  2.5 KB
Flash            32   KB                  32 KB
EEPROM       1     KB                  1   KB   


很显然,通过对比,我们不难发现 ATmega328 的RAM少了0.5 KB,这会导致一些游戏无法运行

例如:刷题好无聊,打开Arduboy官网看下有什么新游戏,诶这个模拟城市的游戏好像很有趣的样子,下载来看看!
G9RAB7XUOXE9)D]OD_YZ9~B.png

不错,编译下载到我自制的Arduboy上 (*❦ω❦)

3DJ(ATA{Z8UZAPXSC@GDSRR.png

是的,由于RAM不足 所以很多游戏运行不了,而且因为芯片不一样 一些游戏需要库无法正常编译通过,进而无法运行游戏以及相关Arduboy应用程序
那我如何解决这个问题:反正我缺钱没办法解决,你可以通过购买Arduino leonardo 或者真正的 Arduboy 来解决这个问题
未待完续 有待补充







发表于 2018-7-6 09:12 | 显示全部楼层
好强大,资料不全,有待补充
发表于 2018-7-24 11:36 | 显示全部楼层
正在拿micro做一个,呵呵
发表于 2018-7-24 13:37 | 显示全部楼层
本帖最后由 零知实验室-roc 于 2018-7-24 13:39 编辑

零知板也移植了,用spi速度更快,ram大小完全够用查看:

http://www.lingzhilab.com/forum.php?mod=viewthread&tid=251&fromuid=2


发表于 2018-7-24 14:18 | 显示全部楼层
要用有源蜂鸣器、无源蜂鸣器还是都行???
 楼主| 发表于 2018-7-24 17:35 | 显示全部楼层
某某某 发表于 2018-7-24 14:18
要用有源蜂鸣器、无源蜂鸣器还是都行???

无源 或者小喇叭
发表于 2018-11-10 14:24 | 显示全部楼层
为什么Arduboy.display()进入之后就是死循环?
发表于 2018-12-3 22:06 | 显示全部楼层
如果用LEONARDO该如何接线?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 09:49 , Processed in 0.355194 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表