极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3970|回复: 8

用ARDUINO控制跳舞小鸭

[复制链接]
发表于 2016-8-20 03:22:45 | 显示全部楼层 |阅读模式
My-Keepon.gif
在网上看到一个外国人写了一篇文章Hack “My Keepon” With an Arduino Brain,于是我把它翻译出来.

1.jpg
小鸭子由科学家研究社会发展机构设计,MYKeepon是BeatBots和英国玩具公司”哇”发布的一款廉价版!MYKeepon缺乏可遥控能力.

2.jpg
1.打开外壳

3.jpg
2.拔下这根连到控制板的电线

4.jpg
3.露出控制板

5.jpg
4.在上图右上角有4组字母,V(+电压),CL(时钟),DA(数据),G(接地),分别焊4根线,用热熔胶固定.

6.jpg
5.焊接图

7.jpg
6.由于控制板的保护塑料板挡住焊接的线,要改一下

8.jpg
7.拼回去

9.jpg
8.把新焊的线从外壳的洞穿出来

10.jpg
9.穿线图

11.jpg
10.将MYKeepon的V引脚连接到Arduino的A0引脚; CL连接到A5,DA连接到A4,和G连接到GND。

12.jpg
11.焊好后如上图,用热熔胶固定到小鸭外壳上,程序在github.com/beatbots/mykeepon,烧卤程序前,关闭小鸭的电源,烧好后,启动Arduino的串口监视器,波特率115,200,打开小鸭的电源, Arduino的现在可以接收串行指令,并将其转化为MYKeepon控制器的相应I2C消息.

12.作者的github 里还有MAX/ MSP控制补丁,能用来建立一个独立运行的程序,还可以同时控制多个小鸭

13.控制代码
SOUND PLAY <0...63>;
SOUND REPEAT <0...63>;
SOUND DELAY;
SOUND STOP;
SPEED [PAN, TILT, PONSIDE] <0...255>;
MOVE PAN <-100...100>;
MOVE TILT <-100...100>;
MOVE SIDE [CYCLE, CENTERFROMLEFT,
        RIGHT, CENTERFROMRIGHT, LEFT];
MOVE PON [UP, HALFDOWN, DOWN, HALFUP];
MOVE STOP;
MODE TEMPO;
MODE SLEEP;


14.Arduino还定期从MYKeepon I2C总线上发回的数据字符串。你可以在这里改变它们的频率,Arduino的代码。
BUTTON [DANCE, TOUCH] [OFF, ON]
BUTTON [HEAD, FRONT, BACK, RIGHT,
        LEFT] [OFF, ON]
MOTOR [PAN, TILT, SIDE, PON] FINISHED
MOTOR [PAN, TILT, SIDE, PON] STALLED
ENCODER TILT [NOREACH, FORWARD,
        BACK, UP]
ENCODER PON [HALFDOWN, UP, DOWN,
        HALFUP]
ENCODER SIDE [CENTER, RIGHT, LEFT]
ENCODER PAN [BACK, RIGHT, LEFT,
        CENTER]
EMF [PAN, TILT, PONSIDE] [-127...127]
POSITION [PAN, TILT, PONSIDE] [VAL]
AUDIO TEMPO [67, 80, 100, 133, 200]
AUDIO MEAN [0...64]
AUDIO RANGE [0...64]
AUDIO ENVELOPE [0...127]
AUDIO BPM [VAL]
回复

使用道具 举报

发表于 2016-8-20 09:45:42 | 显示全部楼层
这是汇编额?
回复 支持 反对

使用道具 举报

发表于 2016-8-20 10:44:07 | 显示全部楼层
迷你强 发表于 2016-8-20 09:45
这是汇编额?

这是控制命令,不是汇编语言。
回复 支持 反对

使用道具 举报

发表于 2016-8-20 15:10:52 | 显示全部楼层
你是买的小鸭还是哪里淘来的啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-8-20 16:19:44 | 显示全部楼层
Hackerpro 发表于 2016-8-20 15:10
你是买的小鸭还是哪里淘来的啊

TB1gvbFJVXXXXanXVXXUFIs_XXX_728x728.jpg

TB243kGpXXXXXbSXpXXXXXXXXXX_!!0-fleamarket.jpg_728x728.jpg

文章是外国人写的,我把它翻译出来了....你想买可以淘宝搜 小鸭鸭 机器人
回复 支持 反对

使用道具 举报

发表于 2016-8-21 17:09:07 | 显示全部楼层
迷你强 发表于 2016-8-20 09:45
这是汇编额?

很明显,不是汇编。。
汇编是一堆
JMP
JZ
POP
PUSH
JNZ
之类的代码
还有一堆寄存器
比如AX BX之类

汇编的特点就是:
指令少(86我记得就100多个指令,没有库文件,它根本不是模块化或者面向对象的),
使用起来困难(木有库,所以啥事都要自己做,高级语言很多基础性代码都帮你弄好了),
移植性差(指令完全基于硬件,比如I3的指令集 奔四就不一定全部支持,ARM的指令AVR是绝逼不会全部兼容的,X86架构甚至AMD的86架构都会有自己的独有指令AMD NOW?),
但是很灵活(啥事都能做,号称万万能)
效率高(前提是优化的好)
回复 支持 反对

使用道具 举报

发表于 2016-8-23 19:13:33 | 显示全部楼层
darkorigin 发表于 2016-8-21 17:09
很明显,不是汇编。。
汇编是一堆
JMP

说的好有道理

点评

十多年前,学过MSC51、86(MASM)和Z80汇编。没从事本行,基本都还给老师了~~~惭愧~~只记得那么几个指令了。  发表于 2016-8-23 23:15
回复 支持 反对

使用道具 举报

发表于 2016-8-23 19:14:33 | 显示全部楼层
看这体毛密度绝对是老外啊……
回复 支持 反对

使用道具 举报

发表于 2016-8-23 23:06:36 | 显示全部楼层
Rq-Rm 发表于 2016-8-23 19:14
看这体毛密度绝对是老外啊……

金色长毛 这体毛。。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊 ( 浙ICP备09023225号 )

GMT+8, 2019-1-19 00:29 , Processed in 0.049494 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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