导出到 DEIMOS SD 卡
此功能将域中的动画复制到 SD 卡,使 DEIMOS 控制板无需电脑即可独立播放。 每个动画都与连接到 Arduino Mega 的一个物理按钮关联:按下按钮时,DEIMOS 启动对应的动画。
选择一个域后,在启动窗口 → DEIMOS 菜单 → 📤 导出到 DEIMOS SD 打开此功能。在窗口中按 F1 可打开本页。
开始之前
- 固件:控制板必须运行 DEIMOS 1.8 或更高版本 (参见加载 DEIMOS 固件)。
- SD 卡:格式化为 FAT32,容量最大 32 GB。
- 激活模式:窗口中只列出激活模式为 trigger 的动画 (参见动画属性)。
- 只能使用一个端口:每个动画使用的元件必须连接到同一个端口,即同一块 DEIMOS 控制板。
- 每张 SD 卡最多 10 个动画(编号 0 到 9)。
- 导出期间 DEIMOS 控制板无需连接到电脑。
窗口中的字段
| 字段 | 作用 |
|---|---|
| SD 文件夹 | SD 卡的根目录(例如 E:\)。如果只插入了一张兼容的可移动存储卡,会自动检测;
否则请使用浏览...。 |
| 浏览... | 手动选择 SD 卡文件夹。如果卡上已有 MENU.TXT,
其中保存的引脚和编号会重新载入表格。 |
| 选择 | 勾选要导出的动画。 |
| 名称 | 动画名称,也用于 SD 卡上的文件名。 |
| 引脚 | 连接启动该动画按钮的 Arduino Mega 引脚。 如果动画已关联触发按钮,会自动填入其引脚。 |
| 索引 | 动画在 SD 卡上的编号,0 到 9。每个动画的编号必须不同: 如果两个勾选的动画编号相同,导出会被阻止并显示警告。 |
| 描述 | 动画描述,仅供参考。 |
| 自动分配 | 为勾选的动画按顺序分配引脚 8、9、10… 和编号 0、1、2…。 |
| 导出 | 将文件写入 SD 卡。导出期间各按钮不可用,窗口也无法关闭。 |
| 关闭 | 关闭窗口。 |
操作步骤
- 将 SD 卡插入电脑。
- 在启动窗口中选择域,然后打开 DEIMOS → 📤 导出到 DEIMOS SD。
- 检查 SD 文件夹;如果为空或不正确,请点击浏览...。
- 勾选要导出的动画。
- 为每个动画设置引脚和索引,或点击自动分配。
- 点击导出,等待确认消息。
- 安全移除 SD 卡,将其插入 DEIMOS 控制板的读卡器,然后重新给控制板上电。
导出时间:每个动画都会模拟运行一次以录制其命令,
因此导出时间等于动画时长加约 3 秒。导出期间会打开主编辑器:
在确认消息出现之前,请不要关闭它,也不要取出 SD 卡。
写入 SD 卡的文件
| 文件 | 内容 |
|---|---|
<编号>#-<名称>.d5s | 逐个节拍录制的动画命令(例如 0#-问候.d5s)。
每个动画一个文件。相同编号的旧文件会被删除,因为 DEIMOS 会播放它找到的第一个文件。 |
MENU.TXT | 按钮 → 动画的对应关系,每个动画一行(PIN,INDEX,NAME)。
卡上已有且本次未重新导出的动画行会被保留。 |
DEIMOS.CFG | 每个动画的选项(INDEX,START,LOOP,RAND_MIN,RAND_MAX):
立即或随机启动、连续循环、随机延迟(毫秒)。未重新导出的动画行同样会被保留。 |
MENU.TXT 示例:
PIN,INDEX,NAME 8,0,greeting 9,1,bow 10,2,laugh
导出的动画选项
以下设置取自动画属性,并写入 DEIMOS.CFG:
- 连续循环:动画会一直重复,直到再次按下按钮。
- 随机启动:按下按钮后,DEIMOS 会等待一段随机时间再开始。 DEIMOS 接受的最长延迟为 65 秒:更大的值会被限制为 65 秒。
如果按钮似乎没有反应,请检查随机启动设置:延迟较长时,动画要过几秒才会开始。
按钮接线
将每个按钮连接在引脚列所示的引脚与 GND 之间。 无需电阻:DEIMOS 会启用内部上拉,引脚变为低电平时即检测到按下。 通常使用引脚 8 到 13。播放期间再次按下按钮会停止动画。
DEIMOS 上电时如何使用 SD 卡
| SD 卡内容 | 行为 |
|---|---|
存在 MENU.TXT | DEIMOS 等待文件中列出的按钮被按下。这是本功能创建的模式。 |
只有 0#-*.d5s 文件,没有 MENU.TXT | DEIMOS 立即播放编号为 0 的动画。 |
| 两者都没有 | DEIMOS 等待电脑通过串口发送命令。 |
参数化动画
参数化动画的导出方式与其他动画相同。D5S 文件中还包含参数来源和需要缩放的舵机,
只能由 DEIMOS 2.0 或更高版本读取。动画按完整幅度录制:编辑器中的参数滑块不影响导出。
使用模拟引脚来源时,将传感器接到所选引脚;使用串口命令来源时,由外部程序在播放前或播放期间发送 fv。
常见问题
| 问题 | 原因和解决方法 |
|---|---|
| 表格为空 | 域中没有激活模式为 trigger 的动画。请在动画属性中修改。 |
| “请选择 SD 文件夹” | 未检测到 SD 卡:请使用浏览...。 |
| “编号 N 同时分配给了……和……” | 两个勾选的动画索引相同:修改其中一个,或使用自动分配。 |
| “……使用了 N 个端口:DEIMOS 只支持一个” | 该动画使用了多个端口上的元件。请将其拆分为每个只使用一个端口的动画。 |
| “……没有片段”或“……未使用任何端口” | 动画为空,或其元件没有分配端口。 |
| “播放未启动” | 诊断发现动画存在问题:在编辑器中打开该动画,并使用诊断 → 诊断当前动画。 |
| “超时” | 录制未在预期时间内完成。不完整的文件会被删除:请停止其他正在进行的播放后重试。 |
| DEIMOS 对按钮没有反应 | 检查引脚和接线是否与 MENU.TXT 一致、SD 卡是否为 FAT32、固件是否为 1.8 或更高版本。 |