使用 HC-05 等蓝牙适配器或 USB OTG 电缆将您的智能手机/平板电脑转换为 Arduino 和 ARM 项目的 Android 远程触摸显示器的开源软件。
只需将 HC-05 连接到 Arduino 的 rx/tx 引脚,让 Arduino 草图在您的智能手机上创建一个带有图形、按钮和滑块的 GUI。
还支持使用 USB 电缆和 USB-OTG 适配器将 Arduino 直接连接到您的智能手机。
BlueDisplay 通过蓝牙接收来自 Arduino 的绘图请求并进行渲染。
应用程序中仍实现了按钮和滑块等基本 GUI 元素,以减少 Arduino 代码大小。
GUI 回调、触摸和传感器事件被发送回 Arduino。
无需安卓编程!
特征:
- 开源。
- 用于 Arduino 和 ARM (STM) 的 C++ 库
- 图形 + 文本输出以及 printf 实现。
- 从字节或短值绘制图表。启用清除最后绘制的图表。
- 播放系统音。
- 带有音调反馈的触摸按钮+滑块对象。
- 按钮和滑块回调以及触摸和传感器事件被发送回 Arduino。
- 显示区域的自动和手动缩放。
- UTF-8 字符的简单映射,如 Ohm、Celsius 等。
- 使用 HC-05 模块高达 115200 波特。
- 可以使用 USB OTG 连接代替蓝牙。
- 本地显示接收和发送的命令和数据以进行调试。
- 在日志级别详细接收的蓝牙数据的十六进制和 ASCII 输出。
- 调试消息作为祝酒词。
来源+示例:
来源可在 https://github.com/ArminJo/android-blue-display 获得。
示例包含在 Arduino BlueDisplay 库 https://github.com/ArminJo/Arduino-BlueDisplay 中。
或者在 Arduino IDE 中使用 (Ctrl+Shift+I) 并搜索 BlueDisplay。
该库包含用于轻松初始化 HC-05 和 0.3 兆样本/秒的简单 DSO 的示例。
在使用示例之前,请注意 BT 模块(例如 HC-05 模块)已连接到您的 Android 设备并且在蓝牙设置中可见。
所有示例最初都使用 9600 的波特率。特别是 SimpleTouchScreenDSO 示例在波特率为 115200 的情况下运行更流畅。
为此,通过停用“#define HC_05_BAUD_RATE BAUD_9600”行并激活“#define HC_05_BAUD_RATE BAUD_115200”来更改示例波特率。
并更改 BT 模块波特率,例如通过使用 BTModuleProgrammer.ino 示例。
ARM 示例代码可以在 https://github.com/ArminJo/STMF3-Discovery-Demos 上找到。
版本信息:
4.3
- 新命令 FUNCTION_CLEAR_DISPLAY_OPTIONAL 启用慢速显示的重新同步。
- 蓝牙随机延迟检测。
- 修复了微滑动抑制的错误。
- 添加了滑块 SUBFUNCTION_SLIDER_SET_DEFAULT_COLOR_THRESHOLD。
- 通过滑动打开选项菜单现在不受全屏和连接的限制。
- 使用 Serial.print() 打印的字符串不会被解释,而是出于调试目的存储在日志中。
- 修复了 FUNCTION_BUTTON_REMOVE 中的错误。
- 修正了 SUBFUNCTION_SLIDER_SET_POSITION 的错误。
4.2
- 在应用程序全屏模式下从左边框滑动打开选项菜单。
- 删除了未收到数据的错误消息。
- 为函数 setScreenOrientationLock() 添加了参数值 *LOCK_SENSOR_LANDSCAPE 和 *LOCK_SENSOR_PORTRAIT。
- 改进了滑块字幕处理。
- 添加了简短的“drawText”函数。
4.1 改进的启动。如果连接后没有收到数据并且部分屏幕处于非活动状态/黑色,则新消息访问日志。
现在也可以使用 USB OTG 电缆进行 4.0 连接。在这种情况下,不需要蓝牙适配器。
滑块 setScaleFactor() 不会缩放实际值,它在 init() 处作为初始值传递。
改进的音量设置 - 也可以在智能手机上进行调整。
trim() 用于所有按钮标题字符串。
暗示:
要在连接 HC-05 时启用 Arduino 编程,请使用二极管连接 Arduino rx 和 HC-05 tx。