nRF52840作为通信模块与Arduino的联动

个人博客链接:http://wordpress.zlfblog.top/

蓝牙控制Arduino板上13号引脚灯的开关

开发环境及工具
名称
开发工具Segger Embedded Studio
SDK版本nRF5_SDK_15.3.0_59ac345
开发板IK-nRF52840DK+Arduino Uno+IO扩展板
J-linkARM-V9仿真器
手机AppnRF UART v2.0
nRF52840的代码烧录
打开SKD中示例的ble_app_uart,路径:

E:\nRF5_SDK_15.3.0_59ac345\examples\ble_peripheral\ble_app_uart\pca10056\s140\ses

在main函数中将循环实例修改
在这里插入图片描述
红圈里的修改为:

   while (true)
    {
        uint8_t cr;
        while (app_uart_get(&cr) != NRF_SUCCESS);
        while (app_uart_put(cr) != NRF_SUCCESS);

        if (cr == 'q' || cr == 'Q')
        {
            printf(" \r\nExit!\r\n");

            while (true)
            {           }
        }
    }

然后Build,Debug
在这里插入图片描述
在这里插入图片描述

Arduino的测试代码
将测试代码刷入Arduino就行了:
char ss;
void setup(){
  Serial.begin(115200);
 pinMode(13,OUTPUT);
}
void loop(){
  if(Serial.available()){
    ss=Serial.read();
  Serial.println(ss);
    if(ss=='1')
    digitalWrite(13,HIGH); 
    else
 digitalWrite(13,LOW);
  }
}
固件连接
将nRF52840的P06号脚接到IO扩展板上的RX接口,然后将VCC和GND与IO扩展板相应位置连接,如下图:

在这里插入图片描述
然后Arduino板通上电。

手机蓝牙端测试
1.打开App搜索设备 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190724160112805.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ0MDAxMDA3,size_16,color_FFFFFF,t_70) 连接_UART设备 2.发送测试数据字符1

在这里插入图片描述
然后板上13灯亮起
在这里插入图片描述
3.输入其他任意字符熄灭
在这里插入图片描述
在这里插入图片描述

到这里就基本结束测试,当然大家可以在扩展板上加更多的传感器去实现更加强大的功能!!!!!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值