旋转广告牌2

来自Microduino Wikipedia
Yanglibin@microduino.cc讨论 | 贡献2016年10月24日 (一) 02:49的版本 使用到程序块
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索

概述

Anywhere Servo advertising2.jpg

做个有字体滚动效果的广告牌,并且字体滚动动作和广告牌旋转动作同步。
适合套件:mCookie202,mCookie302


模块清单

模块

模块 数量 功能
mCookie-Core 1 核心板
电池盒 1 程序下载和供电模块
mCookie-Hub 1 传感器转接板
舵机 1 舵机
舵机转接板 1 舵机转接板

其他设备

  • USB数据线*1
  • 传感器连接线*1
  • 传感器外壳*1
  • 乐高或其它固定结构
Anywhere Servo-module advertising.jpg

模块搭建

Anywhere Servo-module—step advertising.jpg
  • 将模块和传感器组装起来:
    • 将红色的核心模块,USB上传模块与绿色的扩展模块吸在一起;
    • 将舵机转接板连接在Hub的6/7管脚;
    • 将舵机连接在舵机转接板的1管脚(下面三个插针);
    • 将OLED连接在Hub的IIC管脚。
    • 将USB连接线一端插入USB上传模块,另一端连接电脑;

编程

使用到程序块

编程思路

使用按次执行128次(OLED屏宽度为128像素),文字水平位置设为(0-执行次数),并将执行次数从0-128映射到40-140(舵机在 40-140°范围内转动),就可以实现舵机转动同时文字向反方向滚动。

Mixly-ctrl-Servo-advertising2.jpg

开始编程

1、屏幕右转,文字左移
A变量用来存储舵机角度。 将内部程序重复执行128次(正向计次)。 将重复次数从0-128映射到40-140(舵机在 40-140°范围内转动),舵机转到A°。 将“Welcome to playing mCookie!” 显示到OLED,X坐标为0-i,Y坐标为40。

Mixly-ctrl-Servo-advertising2-code.jpg

2、屏幕左转,文字右移
将内部程序重复执行128次(负向计次)。内部程序与上页一样。

Mixly-ctrl-Servo-advertising2-code1.jpg

测试结果
上传成功后, OLED屏幕文字向左滚动,舵机从40度位置一直转到140度,之后OLED屏幕文字向右滚动,舵机从140度位置转回到40度,重复循环。

Anywhere Servo advertising2.jpg



Q:感觉广告牌转得很慢,有什么办法能让旋转广告牌转得更快呢?
A:最简单的办法是改变舵机的转速,当然也可以改变按次执行的步长。之前的按次执行是每1步执行一次,现在改成每4步执行一次。

将按次执行改成每-4步执行一次。之前每1步执行一次,从0-128计次,内部程序共重复128次。现在每4步执行一次,从0-128计次,内部程序共重复32次。

Mixly-ctrl-Servo-advertising2-code3.jpg

技术规范

相关案例

Q&A