电玩圈游戏网 搜一搜

安卓手游去频道 >

角色扮演 射击枪战 棋牌卡牌 体育运动 角色扮演 赛车竞速 休闲益智 音乐舞蹈 模拟经营 战棋塔防 推理解谜 策略战争

安卓应用去频道 >

社交通讯 系统工具 影音视听 拍摄美化 效率办公 学习教育 生活服务 旅游出行 资讯阅读 金融理财 网络购物 游戏助手

游戏视频去频道 >

动作冒险 射击枪战 棋牌卡牌 体育运动 角色扮演 赛车竞速 音乐舞蹈 模拟经营 战棋塔防 推理解谜 策略战争 休闲益智

资讯攻略去频道 >

手游资讯 手游攻略 手游问答 游戏资讯 游戏杂谈 游戏攻略 软件教程 软件资讯

专题合集去频道 >

游戏专题 应用专题

排行榜单去频道 >

游戏排行 应用排行
首页 游戏 应用 视频 资讯 专题 榜单

首页>资讯>游戏攻略>深圳SHENZHENIO第4关动画ESPORTS标志攻略

深圳SHENZHENIO第4关动画ESPORTS标志攻略

作者:佚名来源:百度2022/06/01

深圳IO是一款硬核的编程游戏,有着严谨的游戏内容,那么一起来看看第3关动画ESPORTS标志的攻略吧。

概念MAIL:任务中心,游戏的主题都在其中,为了仿照认真工作的样子,所有的任务背景和内容都模拟邮件的形式进行

数据手册:嵌入式开发必经之路,相当于正常游戏的新手引导,哈哈,读起来很有感觉呢

控制面板:就是控制台啦,这不需要过多叙述了

纸牌游戏:这个会在游戏前期解锁,一旦解锁,这个游戏可能就变成了一款蜘蛛牌游戏。

主界面

由于游戏过分硬核,先放个手册中的图看看冰山一角:

游戏中DX300参考

像这样的器件足足有17个!!!! 哈哈,有没有已经感觉到挑战了呢?

不过这也正对应了嵌入式开发中会遇到的海量数据手册,相当程度上还原了嵌入式日常开发的情景。

游戏中设计到部分的编程有些类似于汇编语言,这里上手还是有一些些难度的,大家请做好准备,继续直接扔核弹:

游戏中主要使用的编程语言

不用害怕,在游戏过程中,会逐步引导你学会使用新的指令,对于新的器件,也是随着主线的进行逐步开放的

在游戏中,你不仅可以完成指定的基本目标,还可以挑战全网玩家,看谁能达成最佳优化目标。

鱼和熊掌不可兼得,多数情况下想要达成更好的性能就要增加成本啦,不过这正是优秀的嵌入式开发人员的意义所在——比你好,还比你的便宜。

第1关:安全摄像头

第2关:信号放大器

第3关:脉冲发生器

第4关:动画 ESPORTS 标志

关卡展示

这一关的要求就是按照时序图给五个简单 I/O 输出对应的波形。首先,左侧的点击 0 和点击 1 非常简单。点击 0 直接一条 gen 指令就能完成,与此同时点击 1 的信号正好与点击 0 相反,所以同样的信号复制一份,然后用非门处理一下传到点击 1 处就好了。

如下图所示,点击模拟按钮后,我们可以看到点击 0 和点击 1 的信号已经完全正确了。

而对于喝 0、喝 1 和喝 2 这三个信号,我们通过观察时序图,不难发现这几点规律:

喝 0 和喝 2 不会同时为 100;

喝 0 开启 6 秒关闭 1 秒后,喝 2 开启 2 秒关闭 1 秒,如此循环;

喝 1 仅当喝 0 和喝 2 同时为 0 时才为 100。

首先我们根据前两点,用两条 gen 指令生成喝 0 和喝 2 的时序图,很明显是这样的:

然后我们发现,喝 1 的逻辑值与喝 0、喝 2 形成了【或非】关系,即喝 0、喝 2 中任何一个是 100,喝 1 就是 0;仅当喝 0、喝 2 均为 0 时,喝 1 才是 100。

我们在元件面板中找到【LC70G32】这个【或门】原件,然后将 p0 和 p1 口发出的信号复制一份接到这个或门的左边两个接口上。右边的两个接口,上面的输出的是左边两个逻辑值做【或】运算的结果,下面的输出的是做【或非】运算的结果。我们选择将右下角的接口和喝 1 端口相连接。最终的电路图的样子如下所示:

点击左下角的【模拟】,稍等片刻,便会弹出结算界面:

优化成本

这关可以不使用逻辑门,改为使用一块 DX-300,将成本优化到 7 块钱。

DX-300 的操作逻辑我在上一关的攻略里已经说过一遍了,这次为了加深印象,我再重复说一遍。

DX-300 可以一次同时读/写最多 3 个简单 IO 口。只要读/写 DX-300 上的任意一个 X 口即可。读的时候会读到一个三位数,其个、十、百位上的数字分别表示 DX-300 的 p0、p1、p2 口连接着的简单 IO 端口的数值是 0 还是 100。某位数字为 0 时,对应端口的值为 0;某位数字为 1 时,对应端口的值为 100。写也是同理,往 DX-300 的任意一个 X 口写入仅由 0、1 组成的三位数,DX-300 便会按照上述规则一次设置三个简单 IO 端口的值。

那么,我们观察一下喝 0、喝 1、喝 2 这三组信号,不难发现以下规律:

第 1~6 秒:喝 0 为 100,喝 1 喝 2 均为 0;

第 7 秒:喝 1 为 100,喝 0 喝 2 均为 0;

第 8~9 秒:喝 2 为 100,喝 0 喝 1 均为 0;

第 10 秒:喝 1 为 100,喝 0 喝 2 均为 0。

喝 0、喝 1 和喝 2 端口依次和 DX-300 的 p0、p1、p2 口相连,那么我们需要传递的三位数里,百位控制喝 2、十位控制喝 1、个位控制喝 0。所以用 DX-300 的语言来描述以上规律,得:

第 1~6 秒:001;

第 7 秒:010;

第 8~9 秒:100;

第 10 秒:010。

因此,连接 DX-300 的 MC4000 芯片的代码很明显是:

1: mov 1 x0

2: slp 6

3: mov 10 x0

4: slp 1

5: mov 100 x0

6: slp 2

7: mov 10 x0

8: slp 1

为了省一块钱成本,付出了这么多电量和代码行数的代价,我感觉挺不值的……

评论 (0)

相关阅读
网友评论0条评论

上拉或点击查看更多