清泛IT社区App Inventor 2 中文社区

搜索

扫码访问移动社区 移动社区

关注我,精彩不错过! 公众号

扫码安装最新版AI伴侣 获取 App

Aia StoreApp上架指南 .aia 源码一站式解决方案 发布日志AI2连接测试ai2Starter模拟器

AppInventor2离线版中文教育版接入DeepSeek VIP会员 享专有教程,免费赠送基础版*技术支持服务! AI2入门必读中文文档AI2拓展IoT专题

查看: 12|回复: 0
打印 上一主题 下一主题

[经验分享] 手机App控制Arduino:米思齐+App Inventor2蓝牙实战教程(图文)

  • TA的每日心情
    开心
    5 小时前
  • 签到天数: 899 天

    [LV.10]以坛为家III

    1271

    主题

    2108

    帖子

    6万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    60111

    AI2中文网VIP弹球达人接水果达人撸猫达人

    跳转到指定楼层
    楼主
    发表于 2 小时前 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
    手机App控制Arduino:米思齐+App Inventor2蓝牙实战教程(图文)

    适用对象:创客教师、中学生、IoT入门爱好者
    预计用时:60分钟 | 难度:★★☆

    你将做出什么
    用手机上自己做的App,通过蓝牙远程控制Arduino上的LED和舵机——滑动滑块,舵机转动;点击按钮,灯亮灯灭。全程无需写一行代码,米思齐和App Inventor2都是积木式编程。

    准备工作
    硬件:Arduino UNO ×1、HC-05蓝牙模块 ×1、LED+220Ω电阻 ×1、SG90舵机 ×1(选做)、面包板与杜邦线

    软件
    • 米思齐(Mixly)——图形化Arduino编程IDE,官方文档:https://mixly.readthedocs.io
    • App Inventor2——在线手机App搭建平台

    手机:Android(经典蓝牙方案不支持iPhone,iOS用户请等本系列BLE篇)

    第一步:接线
    HC-05与Arduino连接(注意TX/RX交叉):
    • HC-05 VCC → Arduino 5V
    • HC-05 GND → Arduino GND
    • HC-05 TXD → Arduino D0 (RX)
    • HC-05 RXD → Arduino D1 (TX)

    LED长脚接D13,短脚经220Ω电阻接GND。舵机信号线接D9。

    常见坑:上传程序时HC-05会占用串口导致上传失败,上传前先拔掉D0/D1两根线

    第二步:米思齐编程(硬件端)
    打开Mixly,板卡选择Arduino UNO,按以下积木搭建:

    1. 初始化:串口分类 → 串口初始化 9600
    2. 主循环
       • 如果 串口有可用数据
       • 读取一行文本存入变量 line
       • line = "LED_ON" → D13输出高
       • line = "LED_OFF" → D13输出低
       • line 以 "SERVO:" 开头 → 取出数字,舵机D9转到该角度
       • 串口打印 "OK:" + line(回执,便于调试)

    选好COM口,点击"上传",看到"上传成功"即可。

    第三步:App Inventor2 编程(手机端)

    设计视图拖入组件:
    • ListPicker(选蓝牙设备)
    • 两个按钮:开灯、关灯
    • Slider(0~180,控舵机)
    • Label(显示连接状态)
    • 不可见组件:BluetoothClient、Clock

    逻辑视图搭积木:
    1. ListPicker点击前:设置Elements = BluetoothClient1的AddressesAndNames
    2. 选择后:Connect(选中地址),成功则Label显示"已连接"
    3. 开灯按钮:SendText("LED_ON
    ");关灯按钮同理
    4. 滑块位置变化:SendText("SERVO:" + 位置值 + "
    ")
    5. Clock定时器200ms:有数据就收文本显示到Label(看回执)

    打包APK装到手机(或用AI伴侣实时调试)。

    第四步:联调
    1. 手机系统蓝牙先配对HC-05(密码1234或0000)
    2. 打开App → 点ListPicker → 选"HC-05" → 显示"已连接"
    3. 点"开灯"——LED亮!拖滑块——舵机跟着转!

    原理小结
    手机App --蓝牙(SPP)--> HC-05 --串口(9600)--> Arduino解析指令 --> 控制引脚

    关键点:双方事先约定好文本协议(指令+
    结尾),硬件按行解析。这就是最朴素的"通信协议",理解了它,BLE、WiFi、MQTT都是同一思路的不同通道。

    常见问题速查
    • 连接失败 → 先在系统蓝牙里配对
    • 程序上传失败 → 上传时拔掉D0/D1
    • 指令无反应 → 检查两边波特率是否都是9600
    • Android 12+闪退 → Screen1属性中勾选蓝牙权限

    进阶挑战
    • 把LED换成继电器,控制真实台灯
    • 加传感器,下一篇文章我们做"硬件→手机"的数据上报和图表显示

    本教程属于 Mixly×App Inventor2 系列,上一篇:手机发指令控制LED/舵机:蓝牙双向通信实战①(见同版块)。下一篇:《传感器数据上手机:温湿度实时监测》。
    App Inventor 2 中文网 - AI + 积木,让想法变成 App!Android/HarmonyOS/iOS 更新日志
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    © 2026 tsingfun.com, Inc.  沪ICP备2020034476号-1  沪公网安备31011702000040号

    GMT+8, 2026-08-20 12:16 , Processed in 0.016008 second(s), 31 queries .