电子工程师技术服务社区
公告
登录
|
注册
首页
技术问答
厂商活动
正点原子
板卡试用
资源库
下载
文章
社区首页
文章
开箱测评Beetle ESP32-C3 (RISC-V芯片)模块
分 享
扫描二维码分享
开箱测评Beetle ESP32-C3 (RISC-V芯片)模块
esp32
EPS32-C3
ESP32模块
赵喜尧5210
关注
发布时间: 2022-09-13
丨
阅读: 4397
  简介 Beetle ESP32-C3是一款基于ESP32-C3 RISC-V 32位单核处理器芯片的主控板,专为物联网 (IoT) 设备而设计。 Beetle ESP32-C3在仅硬币大小的体积上引出了多达13个IO口,制作项目时不必再担心IO口不够用的情况,同时主控板还集成锂电池充电管理功能,可以直接连接锂电池,不需要外围模块,同时保证应用体积和安全性。 Beetle ESP32-C3配套的扩展板在未增加太大体积的情况下,引出了更多的电源,在制作项目时焊接更加方便,板载的GDI显示屏接口解决使用屏幕时的接线烦恼。 Beetle ESP32-C3支持Wi-Fi 和 Bluetooth 5 (LE) 双模通讯,降低了设备配网难度,同时还支持蓝牙 Mesh (Bluetooth Mesh) 协议和乐鑫 Wi-Fi Mesh可以实现更高的通讯稳定性和更大的覆盖面积,适用于广泛的物联网应用场景。 Beetle ESP32-C3拥有详细的示例教程,通过教程可以轻松的使用控制器的无线功能,连接阿里云、IFTTT等物联网平台,同时DFRobot商城提供了上千种传感器和执行器,这些传感器和执行器也有详细的教程,因此你可以轻松搭建出自己的物联网系统。 Beetle ESP32-C3可以使用Arduino IDE、ESP-IDF、MicroPython进行编程,C语言、python都可以轻松的操纵硬件。 特性 超小体积,尺寸仅25*20.5mm 板载锂电池充电管理,充放电更安全 配套底板,制作项目、使用屏幕更加方便 RISC-V 32位内核 支持Wi-Fi 和 Bluetooth 5 (LE) 双模通讯 基本参数: 工作电压: 3.3V Type-C输入电压: 5V DC VIN输入电压:5V DC 工作电流: 25mA 最大充电电流: 400mA 工作温度:-40~105℃ 模块尺寸:25x20.5 mm 硬件信息: 处理器:32 位 RISC-V 单核处理器 主频:160 MHz SRAM:400KB ROM:384KB Flash:4MB RTC SRAM:8KB 时钟:外置 (32 kHz) 晶振、内置快速 RC 振荡器时钟 17.5 MHz(可调节)、以及PLL时钟 USB:USB 2.0 可达 12Mbit/s WIFI: WIFI协议:IEEE 802.11b/g/n WIFI频宽: 2.4 GHz 频带支持 20 MHz 和 40 MHz 频宽 WIFI模式:Station 模式、SoftAP 模式、SoftAP+Station 模式和混杂模式 WIFI频率:2.4GHz 帧聚合: TX/RX A-MPDU, TX/RX A-MSDU 蓝牙: 蓝牙协议:Bluetooth 5、Bluetooth mesh 蓝牙频率:125 Kbps、500 Kbps、1 Mbps、2 Mbps 接口引脚: 数字I/O x13 LED PWM 控制器 6个通道 SPI x1 UART x2 I2C x1 I2S x1 红外收发器:发送通道 x2、接收通道 x2,(任意管脚) 2 × 12 位 SAR 模/数转换器, 6 个通道 DMA 控制器,3 个接收通道和 3 个发送通道 阿里云IoT开发流程: 阿里云IoT致力于实现万物互联的美好世界,为生态合作伙伴提供基于云端一体化、安全物联网基础平台等,在通过该平台高效连接,管理设备的同时,其开放能力使合作伙伴更高效、低成本地构建各种创新的物联网应用场景。 阿里云物联网平台为设备提供安全可靠的连接通信能力,向下连接海量设备,支撑设备数据采集上云;向上提供云端API,指令数据通过API调用下发至设备端,实现远程控制。 此外阿里云IoT还提供了丰富的开发服务,用户可以直接在该平台上搭建Web可视化、移动应用、服务开发等开发服务,这降低了物联网项目开发的难度,有了它,用户无需任何专业的开发技巧也可开发自己的项目。 SmartConfig 一键配网+自动重连 ```c #include
void SmartConfig() { WiFi.mode(WIFI_STA); Serial.println("\r\nWait for Smartconfig..."); WiFi.beginSmartConfig(); while (1) { Serial.print("."); delay(500); // wait for a second if (WiFi.smartConfigDone()) { Serial.println("SmartConfig Success"); Serial.printf("SSID:%s\r\n", WiFi.SSID().c_str()); Serial.printf("PSW:%s\r\n", WiFi.psk().c_str()); break; } } } bool AutoConfig() { WiFi.begin(); for (int i = 0; i < 20; i++) { int wstatus = WiFi.status(); if (wstatus == WL_CONNECTED) { Serial.println("WIFI SmartConfig Success"); Serial.printf("SSID:%s", WiFi.SSID().c_str()); Serial.printf(", PSW:%s\r\n", WiFi.psk().c_str()); Serial.print("LocalIP:"); Serial.print(WiFi.localIP()); Serial.print(" ,GateIP:"); Serial.println(WiFi.gatewayIP()); return true; } else { Serial.print("WIFI AutoConfig Waiting......"); Serial.println(wstatus); delay(1000); } } Serial.println("WIFI AutoConfig Faild!" ); return false; } void setup() { Serial.begin(115200); delay(100); if (!AutoConfig()) { SmartConfig(); } } void loop() { } ``` ESP32-C3蓝牙通信开发流程 ```c #include
#include
#include
#include
BLEServer *pServer = NULL; BLECharacteristic * pTxCharacteristic; bool deviceConnected = false; uint8_t txValue = 0; // See the following for generating UUIDs: // https://www.uuidgenerator.net/ #define SERVICE_UUID "6E400001-B5A3-F393-E0A9-E50E24DCCA9E" // UART service UUID #define CHARACTERISTIC_UUID_RX "6E400002-B5A3-F393-E0A9-E50E24DCCA9E" #define CHARACTERISTIC_UUID_TX "6E400003-B5A3-F393-E0A9-E50E24DCCA9E" //蓝牙连接/断开处理。当有连接/断开事件发生时自动触发 class MyServerCallbacks: public BLEServerCallbacks { void onConnect(BLEServer* pServer) { //当蓝牙连接时会执行该函数 Serial.println("蓝牙已连接"); deviceConnected = true; }; void onDisconnect(BLEServer* pServer) { //当蓝牙断开连接时会执行该函数 Serial.println("蓝牙已断开"); deviceConnected = false; delay(500); // give the bluetooth stack the chance to get things ready pServer->startAdvertising(); // restart advertising } }; /@@****************数据接收部分*************/ /@@****************************************/ //蓝牙接收数据处理。当收到数据时自动触发 class MyCallbacks: public BLECharacteristicCallbacks { void onWrite(BLECharacteristic *pCharacteristic) { std::string rxValue = pCharacteristic->getValue();//接收数据,并赋给rxValue //if(rxValue == "ON"){Serial.println("开灯");} //判断接收的字符是否为"ON" if (rxValue.length() > 0) { Serial.println("*********"); Serial.print("Received Value: "); for (int i = 0; i < rxValue.length(); i++){ Serial.print(rxValue[i]); } Serial.println(); Serial.println("*********"); } } }; /@@***************************************/ /@@****************************************/ void setup() { Serial.begin(115200); BLEBegin(); //初始化蓝牙 } void loop() { /@@****************数据发送部分*************/ /@@****************************************/ if (deviceConnected) { //如果有蓝牙连接,就发送数据 pTxCharacteristic->setValue("Hello"); //发送字符串 pTxCharacteristic->notify(); delay(10); // bluetooth stack will go into congestion, if too many packets are sent pTxCharacteristic->setValue("DFRobot"); //发送字符串 pTxCharacteristic->notify(); delay(10); // bluetooth stack will go into congestion, if too many packets are sent } /@@****************************************/ /@@****************************************/ } void BLEBegin(){ // Create the BLE Device BLEDevice::init(/@@*BLE名称*/"UART Service"); // Create the BLE Server pServer = BLEDevice::createServer(); pServer->setCallbacks(new MyServerCallbacks()); // Create the BLE Service BLEService *pService = pServer->createService(SERVICE_UUID); // Create a BLE Characteristic pTxCharacteristic = pService->createCharacteristic( CHARACTERISTIC_UUID_TX, BLECharacteristic::PROPERTY_NOTIFY ); pTxCharacteristic->addDescriptor(new BLE2902()); BLECharacteristic * pRxCharacteristic = pService->createCharacteristic( CHARACTERISTIC_UUID_RX, BLECharacteristic::PROPERTY_WRITE ); pRxCharacteristic->setCallbacks(new MyCallbacks()); // Start the service pService->start(); // Start advertising pServer->getAdvertising()->start(); Serial.println("Waiting a client connection to notify..."); } ```
原创作品,未经权利人授权禁止转载。详情见
转载须知
。
举报文章
点赞
(
2
)
赵喜尧5210
关注
评论
(0)
登录后可评论,请
登录
或
注册
相关文章推荐
MK-米客方德推出工业级存储卡
Beetle ESP32 C3 蓝牙数据收发
Beetle ESP32 C3 wifi联网获取实时天气信息
正点原子数控电源DP100测评
DP100试用评测-----开箱+初体验
Beetle ESP32 C3环境搭建
【花雕体验】16 使用Beetle ESP32 C3控制8X32位WS2812硬屏之二
【花雕体验】15 尝试搭建Beetle ESP32 C3之Arduino开发环境之二
X
你的打赏是对原创作者最大的认可
请选择打赏IC币的数量,一经提交无法退回 !
100IC币
500IC币
1000IC币
自定义
IC币
确定
X
提交成功 ! 谢谢您的支持
返回
我要举报该内容理由
×
广告及垃圾信息
抄袭或未经授权
其它举报理由
请输入您举报的理由(50字以内)
取消
提交