/* 本例程演示从手机蓝牙串口接收指令,点亮或熄灭11脚的LED,或者调整亮度。
* 接收指令格式:“101X”点亮,“102X"熄灭,”000X"调整亮度。(000为0-100的整数,表示亮度值,X是结束符。)
* 串口是异步接收的,用parseInt()查找第一个有效整数,检测到结束符后开始处理。
* 接收数据显示在1602LCD屏上。
* 点亮或熄灭LED后,将收到数据回传给手机。用pringln()函数,数据后面加了"\r"和"\n"两个字符,可以用作结束符。
* 串口传送的是ASCII字符,数据格式可以自动转换。
*/
#include <Wire.h> // 包含LCD库。
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2) // 初始化LCD对象,地址为0x27,每行16个字符,共两行。
int p // 定义整数型全局变量,保存接收的数据。
void setup() {
lcd.init() // 初始纤森猛化LCD。
lcd.backlight() // 打开LCD背光。
Serial.begin(9600) 毁桥 // 打开串口(蓝牙)
pinMode(11,OUTPUT) // 定义11脚为输出。(数字或PWM)
}
void loop() {
while (Serial.available() > 0) { // 串口收到字符数大于零春败。
p = Serial.parseInt() // 在串口数据流中查找一个有效整数。
if (Serial.read() == 'X') { // 收到结束符后开始处理数据。
lcd.clear() // LCD清屏。
lcd.print(p) // LCD显示收到的数据(整数)。
switch (p) { // 判断数据内容。
case 101:
digitalWrite(11,HIGH) // 点亮LED。
Serial.println(p) // 回传数据。
break
case 102:
digitalWrite(11,LOW) // 熄灭LED。
Serial.println(p) // 回传数据。
break
default:
p = map(p,0,100,0,255) // 转换数据范围到PWM输出值。
analogWrite(11,p) // 调整LED亮度。(PWM)
}
}
}
}
原文在这里:ht防tp:/止/ww误w.ardu删ino.c防n/thr吞ead-16网311-1-1.h址tml(请去掉中文)
Amarino基本上是由三个主要部分组成:\x0d\x0a\x0d\x0a1.Android应用程序称为“Amarino”\x0d\x0a2.Arduino的程序库称为“MeetAndroid”\x0d\x0a3.Amarino插件包(可选)\x0d\x0aAmarino你至少需要以下硬件:\x0d\x0a\x0d\x0a1.Android手机(支持蓝牙;android2.2及以上)\x0d\x0a2.一块Arduino板(Lilypad,Duemilanove,ArduinoBT ?)\x0d\x0a3.一个你的Arduino蓝牙模块\x0d\x0a4.其他Arduino模块(根须需要选择)\x0d\x0a重要! 请将您的蓝牙模块设置为57600或115200波特。因为有些模块更好地使用57600(旧的),而有些模块只能使用115200波特,所以当你已连接但不能发送数据时,尝试改变波特率的设置。\x0d\x0a\x0d\x0a开始配置环境\x0d\x0a\x0d\x0a1.配置Arduino蓝牙模块\x0d\x0a\x0d\x0a■线路连接枣巧梁图(切记蓝牙设备的RX连接arduino的TX;蓝牙设备的TX连接arduino的RX)\x0d\x0a\x0d\x0a2.下载并安装Amarino_2.apk到你的手机上\x0d\x0a\x0d\x0a3.下载并安装AmarinoPluginBundle.apk\x0d\x0a4.下载Arduino开发工具,下载完成后解压即可。\x0d\x0a5.下载MeetAndroid,\x0d\x0a6.解压MeetAndroid到arduino IDE安装目录下的libraries目录下。\x0d\x0a7.重启arduino IDE,如果正常的话,应该在(Sketch->Import Library出现凳运MeetAndroid选项)如图:\x0d\x0a\x0d\x0a8.使用#include 即可开始编写Arduino程序\x0d\x0a第一次连接和测试\x0d\x0a\x0d\x0a目标:通过Android手机的蓝牙每隔5s发送0-255之间的随机数给Arduino,当Arduino接收到随机数后,就点亮led( port 13 )\x0d\x0a\x0d\x0a1.打开 Arduino IDE 选择”File->Examples->MeetAndroid->Test”\x0d\x0a\x0d\x0a■\x0d\x0a2.修改Serial.begin(57600);并不是所有办的默认速率都是57600.我的蓝牙模块为9600\x0d\x0a\x0d\x0a■\x0d\x0a3.编译并上传Test到Arduino。注意下载程序的时候一定要记得把接的蓝牙先拔掉再下载,否则下载不进arduino板 会出错误\x0d\x0a4.打开Android手机的Amarino程序\x0d\x0a5.点击【Add BT Device】,查找蓝牙设备,如果蓝牙模块安装正确将会出现在蓝牙设备列表中,如下图\x0d\x0a6.\x0d\x0a点击该蓝牙设备,进入设备列,点击左侧红色图标,进入如下界面\x0d\x0a\x0d\x0a7.点击【Add Event】,显示plugln,\x0d\x0a\x0d\x0a9.选择其中的【Test Event】宽肢,进入设置页面,点击【Save】\x0d\x0a\x0d\x0a10.返回蓝牙设备列表界面点击【Connect】,Amarino程序将开始每隔5s发送一个随机数据(0-255),Arduino上的LED(part 13)将开始闪动。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)