目标:BlackBerry手机通过蓝牙串口读取Arduino 蓝牙传过来的温度 湿度信息

硬件:Arduino主板 + DHT11温湿度传感器 + 蓝牙模块,开发工具C语言

手机:BlackBerry 9360手机,OS 7.1,开发工具Java

手机:BlackBerry 10 Alpha手机,OS  10.0.xxx,开发工具BlackBerry 10 NDK

通讯:手机和Arduino通过蓝牙连接

BlackBerry 9360手机上面的显示:湿度41,温度11(哈冷啊。。。。。。。。。。。。。。。。)

Arduino代码参考这里 http://playground.arduino.cc/Main/DHTLib

代码如下:

// //   FILE:  dht_test.pde// PURPOSE: DHT library test sketch for Arduino//#include <dht.h>dht DHT;#define DHT11_PIN 8#define DHT22_PIN 5void setup(){  Serial.begin(9600);  Serial.println("DHT TEST PROGRAM ");  Serial.print("LIBRARY VERSION: ");  Serial.println(DHT_LIB_VERSION);  Serial.println();  Serial.println("Type,\tstatus,\tHumidity (%),\tTemperature (C)");}void loop(){  // READ DATA  int chk;   // READ DATA  Serial.print("DHT11, \t");  chk = DHT.read11(DHT11_PIN);  switch (chk)  {    case DHTLIB_OK:    Serial.print("OK,\t");   break;    case DHTLIB_ERROR_CHECKSUM:   Serial.print("Checksum error,\t");   break;    case DHTLIB_ERROR_TIMEOUT:   Serial.print("Time out error,\t");   break;    default:   Serial.print("Unknown error,\t");   break;  } // DISPLAT DATA  Serial.print(DHT.humidity,1);  Serial.print(",\t");  Serial.println(DHT.temperature,1);  delay(1000);}//// END OF FILE//

BlackBerry  OS 7.1

BlackBerry Java API封装了串口通讯,所以用起来就很方便了。

开发工具eJDE中导入sample程序BluetoothSerialPortDemo ,修改代码接收蓝牙数据并显示在文本框中。

                        // Read in the contents and get the event lock for this                        // application so we can update the info field.                     Util.log("Read bluetooth data...");                     int i = 0;                     while(true){                      i++;                            String cmd = "";                            byte b;                            while ((( b = _din.readByte()) > 0) &&( (char)b != ((char)0x0a)) ){                             cmd = cmd + (char)b;                            }                                                         Util.log("Received " + cmd);                            _infoField.setText(i + ": " + cmd);                        }                      

注:

Arduino中,Serial.println() 出来的数据是0x0d, 0x0a。在Java中,我只检测回车字符  (char)0x0a作为一条数据的分隔符即可

BlackBerry  OS 10

BlackBerry NDK C/C++ API封装了蓝牙SPP API,用起来稍微复杂一点(和Android API类似),连接蓝牙设备的时候,bt_spp_open()方法需要对方的服务UUID,mac地址。

下载BlackBerry 蓝牙例子代码bluetoothsppchat,导入到NDK中,build,运行即可。

注意其中的UUID的定义:

#define SPP_SERVICE_UUID "00001101-0000-1000-8000-00805F9B34FB"

//! [7]void ChatManager::connectToSPPService(){    m_chatHistory.clear();    const int fd = bt_spp_open(m_remoteAddress.toAscii().data(), (char *) SPP_SERVICE_UUID, false);    if (fd >= 0) {        updateChatWindow("SPP Client\n\n");        setSPPClient(fd);    } else {        showDialog("spp_open fail", "errno = " + QString::number(errno) );    }}//! [7]

BB 10运行效果如图

参考:

蓝牙串口服务  UUID   '{00001101-0000-1000-8000-00805F9B34FB}'

https://bluetooth.org/Technical/AssignedNumbers/service_discovery.htm

http://www.douban.com/group/topic/20009323/

http://www.cnblogs.com/lyout/archive/2011/04/11/2012175.html

BlackBerry 10 NDK Bluetooth API
http://developer.blackberry.com/native/reference/bb10/com.qnx.doc.bluetooth/topic/manual/btspp.h_functions_overview.html

BlackBerry 10 NDK蓝牙例子(Bluetooth SPP Chat Example)说明
http://blackberry.github.com/Cascades-Samples/bluetoothsppchat.html

BlackBerry 10 NDK例子代码(包括蓝牙)下载
https://github.com/blackberry/Cascades-Samples/

安卓手机和Arduino蓝牙通讯例子 Data transfer between Android and Arduino via Bluetooth
http://english.cxem.net/arduino/arduino5.php

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

BlackBerry 10 BlackBerry OS 7 1 手机通过蓝牙串口读取Arduino 蓝牙传过来的温度相关推荐

  1. BlackBerry 10:Qt中使用OpenAL播放wav声音文件

    BlackBerry 10/PlayBook OS 2.0里面都内置OpenAL的类库,所以在程序中使用OpenAL类库播放声音是很方便的. BlackBerry 10开发者网站上提供的例子程序Cow ...

  2. uniapp app蓝牙打印_编程器加装蓝牙串口模块与手机APP操作演示

    编程器加装蓝牙模块后,可以方便的使用手机查看打印信息,进入控制台执行各种串口命令.本款蓝牙串口APP具有保存打印信息.分享打印信息.设置字体大小.清除屏幕信息.进入控制台.发送串口命令.执行串口命令- ...

  3. uniapp app蓝牙打印_给编程器加装蓝牙串口模块,用手机APP操作打印信息进控制台...

    公众号回复[编程器]可下载蓝牙串口APP 专用蓝牙串口模块购买: https://item.taobao.com/item.htm?id=619731291566 编程器加装蓝牙模块后,可以方便的使用 ...

  4. 蓝牙模块(HC-05)与手机连接,蓝牙与蓝牙互联,电脑通过蓝牙控制单片机

    任务一:蓝牙与手机连接 所用模块: HC-05蓝牙模块,USB TO TTL手机APP为SPP蓝牙串口 第一章:蓝牙模块配置 一:HC-05与USB TO TTL连接 EN:为使能引脚,一般不接 VC ...

  5. 000210什么意思 error_黑莓系统错误代码BlackBerry 10 OS Error Codes释义及解决方法

    黑莓手机因系统问题无法正常开机时,系统会在屏幕上显示出系统错误代码,这些代码代表不同的含义,告诉我们当前黑莓系统出现了什么问题.了解错误代码的含义,我们就可以对应的来解决出现的问题. Blackber ...

  6. android blackberry,BlackBerry 10将停止更新,但基于安卓的黑莓BB OS重获新生

    IT之家1月31日消息 此前IT之家报道,BlackBerry World应用商店将于2019年12月31日关闭,BlackBerry Travel网站将于2018年2月份关闭,Playbook视频呼 ...

  7. bb10系统支持java吗_黑莓BB10怎么样 BlackBerry 10系统好用吗?

    曾几何时黑莓Blackberry OS是一款十分受用户欢迎的手机系统,不过随着手机系统市场已经被苹果iOS.谷歌安卓.微软Windows Phone三分天下,致使曾经的黑莓帝国逐渐沦陷,体验和性能都已 ...

  8. 黑莓2013 年产品路线图曝光 将发布多款BlackBerry 10 产品

    虽然近几年黑莓的手机业务每况愈下,但很多黑莓的忠实粉丝一直在期待黑莓BlackBerry10的产品发布.不过恐怕今年之内BlackBerry 10的产品不能和大家见面了,因为据匿名人士向BlackBe ...

  9. open source HTML 5移动应用 -Exlive 人员定位客户端(BlackBerry 10, Android, iPhone)

    下图是exlive人员定位系统的宣传页,其官方主站在这里 www.exlive.cn 下图是BlackBerry OS 7.0上面的运行效果,更多截图见这里 http://blog.csdn.net/ ...

最新文章

  1. Conversion error:Jekyll::Converters::Scss encountered an error while converting css/main.scss
  2. WKWebView进度及title
  3. 1.7Oob 继承关系中构造方法的使用
  4. leetcode83 删除排序链表中的重复元素
  5. 软件测试行业用mac好还是win好,业余RMAA测试 同样的硬件下OS X果然比Windows声音好...
  6. python贪吃蛇毕业设计_【干货|python项目实例——贪吃蛇】- 环球网校
  7. 2020年中国新世代用户视频消费行为洞察
  8. android 设备注册,i2c_设备注册流程
  9. CR开发笔记-2基础飞机的搭建以及测试代码
  10. generic_make_request函数处理bio流程分析
  11. IE设置自动获得代理(ISA20042006中设置相应项)
  12. 欧盟要求谷歌美国站点也要执行“被遗忘权”
  13. Android 关于数学的显示
  14. ToDesk-----个人免费 极致流畅的远程协助软件
  15. mysql mha etcd_postgresql 高可用 etcd + patroni 之四 failover
  16. 13场院士报告推动2022中国种子大会 国稻种芯百团计划行动
  17. linux dock工具,六个ubuntu下的mac dock工具栏
  18. Daz dForce:基础知识及教程
  19. linux质控命令,质控软件 fastp
  20. 51单片机proteus仿真 按键控制数码管数字显示

热门文章

  1. STK/Component/Cesium中的月球坐标系的计算
  2. 记一个 Nvidia Control Panel 打不开的问题
  3. 新学生管理系统(一)登陆界面
  4. Java编程思想第4版第三章习题
  5. JavaScript/jQuery考试中的编译题
  6. 未来人工智能,有什么新的发展趋势?
  7. 免费下载PPT的网站
  8. 【Java】构造器的作用是什么?使用中有哪些注意点
  9. 软件开发常用术语检索语
  10. 5G应用场景300例 附下载地址