ArduinoPortentaH7开发板能通过蓝牙与Windows连接吗?
创始人
2024-09-12 20:31:59
0

可以使用Arduino Portenta H7的蓝牙模块与Windows设备进行连接。以下是一份示例代码,可以在Arduino IDE中运行。

首先,需要在Arduino IDE中安装BLE库。在Arduino IDE中,选择“Sketch” -> “Include Library” -> “Manage Libraries”,搜索“BLE”并安装该库。

接下来,可以使用以下代码将Arduino Portenta H7的蓝牙模块与Windows设备进行连接。

#include

BLEServer *pServer = NULL; BLECharacteristic *pCharacteristic = NULL; bool deviceConnected = false; float txValue = 0;

#define SERVICE_UUID "4fafc201-1fb5-459e-8fcc-c5c9c331914b" #define CHARACTERISTIC_UUID_TX "beb5483e-36e1-4688-b7f5-ea07361b26a8" #define CHARACTERISTIC_UUID_RX "beb5483e-36e1-4688-b7f5-ea07361b26a8"

class MyServerCallbacks : public BLEServerCallbacks { void onConnect(BLEServer* pServer) { deviceConnected = true; }

void onDisconnect(BLEServer* pServer)
{
  deviceConnected = false;
}

};

void setup() { Serial.begin(9600);

// 创建BLEServer BLEDevice::init("PortentaBLE"); pServer = BLEDevice::createServer(); pServer->setCallbacks(new MyServerCallbacks());

// 创建BLE服务 BLEService *pService = pServer->createService(SERVICE_UUID);

// 创建BLE特征 pCharacteristic = pService->createCharacteristic( CHARACTERISTIC_UUID_TX, BLECharacteristic::PROPERTY_NOTIFY );

pCharacteristic->addDescriptor(new BLE2902());

BLECharacteristic *pCharacteristic = pService->createCharacteristic( CHARACTERISTIC_UUID_RX, BLECharacteristic::PROPERTY_WRITE );

pService->start();

// 启动BLE广播 BLEAdvertising *pAdvertising = BLEDevice::getAdvertising(); pAdvertising->addServiceUUID(pService->getUUID()); pAdvertising->setScanResponse(true); pAdvertising->setMinPreferred(0x06); // 最小间隔: 0.625ms pAdvertising->setMinPreferred(0x12); // 最大间隔: 1.25ms BLEDevice::startAdvertising(); }

void loop() { if (deviceConnected) { pCharacteristic->setValue((uint8_t*)&txValue, sizeof(tx

相关内容

热门资讯

保存时出现了1个错误,导致这篇... 当保存文章时出现错误时,可以通过以下步骤解决问题:查看错误信息:查看错误提示信息可以帮助我们了解具体...
汇川伺服电机位置控制模式参数配... 1. 基本控制参数设置 1)设置位置控制模式   2)绝对值位置线性模...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
本地主机上的图像未显示 问题描述:在本地主机上显示图像时,图像未能正常显示。解决方法:以下是一些可能的解决方法,具体取决于问...
不一致的条件格式 要解决不一致的条件格式问题,可以按照以下步骤进行:确定条件格式的规则:首先,需要明确条件格式的规则是...
表格中数据未显示 当表格中的数据未显示时,可能是由于以下几个原因导致的:HTML代码问题:检查表格的HTML代码是否正...
表格列调整大小出现问题 问题描述:表格列调整大小出现问题,无法正常调整列宽。解决方法:检查表格的布局方式是否正确。确保表格使...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...