资讯分类
全部资讯
最新活动
商城公告
行业信息
新品推荐
元器件知识
资讯标签
艾迈斯欧司朗(90) 英伟达NVIDIA(70) 艾为awinic(45) 飞腾派V3(37) 萤火工场(30) 罗彻斯特电子(28) Jetson Orin Nano SUPER 开发套件(21) 资料下载专区(18) 进迭时空(15) 兆易创新(14) 赛昉科技(StarFive)(12) 灵动微电子(11) 艾为 awinic(10) 日清纺微电子(9) 小华半导体(9) 上海雷卯Leiditech(8) 微源半导体 LPSemi(8) 赛昉科技(8) NVIDIA(8) Seeed矽递科技(8) 龙芯中科(7) GD32VW553-IOT(7) 物奇WuQi(7) 庆科(5) 开源口碑分享(5) 日清纺微电子Nisshinbo(5) 创捷电子(4) TROQ创捷电子(4) Geehy极海半导体(4) 航顺芯片(4) CEM5826-M11(4) 飞腾派(4) 罗彻斯特(3) 飞腾派eMMC(3) iCEasy商城(3) MM32SPIN060G(3) 一件包邮专区(3) FTHR-G0001(3) Mini-SPIN0230(2) NVIDIA品牌专区(2) 华润微电子(2) 口碑评测(2) 教育优惠申请链接(2) EVB-L0130(2) 启明云端(2) 飞腾官网飞腾派(2) 弈安云(2) 飞腾派下载专区(2) 村田(2) 英伟达初创加速计划(2) 小华EVB-HC32F4A0开发板(2) 极海(2) 中国星坤(2) 极海半导体(2) 国产开源硬件(2) 野火(2) 杭晶(HCI)(2) 周年抽奖活动(1) 庆科信息(MXCHIP)品牌专区(1) 附件(1) Jetson AGX Thor 开发套件/模组(1) Mini-F5333(1) 微源半导体(1) QCS6490 SOM EVB开发板(1) 附件下载地址(1) 迈巨微(1) 华大北斗(1) GD32无线生态专区(1) JETSON_AGX_ORIN_64GB_DEVELOPER_KIT(1) QCS8550 SOM EVB开发板(1) 申请样片:高光效红光OSCONIQ® P 3030, GR QSSPA1.23(1) 台容积电(1) 雷克沙(1) GD32VW553-IOT V2版本(1) NVIDIA Jetson Orin Nano 开发套件(1) 萤火工场品牌专区(1) 商城下载专区(1) GD32VW553-IOT V2(1) CEM5881-M11(1) Jetson AGX Orin 64GB开发套件(1) 荣湃半导体(2Pai Semi)品牌专区(1) 进迭时空品牌页(1) 飞腾人才赋能(1) Arduino UNO Rev 4 Minima开发板(1) 下载专区(1) B站风扇视频(1) Jetson AGX Xavier(32GB)(1) BeagleBoard.org®(1) 社区评奖活动(1) NVIDIA Jetson Orin Nano 开发套件(1) Arduino品牌专区(1) 国产自主可控(1) CEM5861G-M11(1) 赛昉科技9折活动券(1) QCS8550 SOM EVB(1) Jetson AGX Orin 64GB开发套件(1) 24GHz毫米波雷达模块(1) 品牌清仓(1) QCS6490 SOM EVB(1) 天微电子商家页(1) 国产毫米波雷达模块(1) 技术问答专区(1) 英特尔(1) NVIDIA Jetson Nano 模组(1) EV Board (MM32L0136C7P)(1) 迈巨微电子品牌专区(1) 飞腾派专链(1) 瑞隆源产品(1) 龙芯教育派(1) CEK8902-S905D3(1) 雷卯(1) 飞腾派试用申请链接(1) BeagleBone Black快速入门指南(1) 样片申请(1) NVIDIA NIM(1) 世野(Khadas)(1) 618大促(1) 竞买活动(1) 极海半导体(Geehy)(1) Arduino品牌页(1) 飞腾派调研问卷链接(1) 微雪电子(1) 一件免邮专区(1) SFH 7018B(1) 艾为(AWINIC)(1) 英伟达 NVIDIA品牌专区(1) 小脚丫(1) 618大促专区(1) 飞腾派V3版本上新(1) 飞虹半导体(1) MUSE Paper(1) 8月7日竞拍竞买(1) 教育优惠(1) 萤火工场GD32VW553-IOT(1) 野火RK3566开发板(1) 乐动机器人(1) 海凌科电子(Hi-Link)(1) VF202040-A0(1) CEM5825F(1) COMBO模组 EMC3020-PZI5(1) 松科智能(1) 润石(1) 格力新元(1)

更直观的感受国产毫米波雷达模块!CEM5826-M11拓展OLED显示器。

发布时间:2024-12-25

国产毫米波雷达模块

CEM5826-M11 是萤火工场研发的一款高灵敏度国产24GHz 毫米波人体微动存在检测雷达模块。区别于传统雷达通过检测人体移动的大幅度动作或肢体动作来判断人体存在,本模块主要特点是在传统人体感应雷达的功能基础上,同时具备检测积累人体微动幅度的运动,来判断人体的存在的功能。因此相比传统多普勒雷达来说,具备一定范围内的存在检测,准确率更高。不易漏报。

玩家有话说

本文将基于串口打印雷达监测数据的研究,进一步扩展连接OLED屏幕,让CEM5826-M11的核心测试数据及灵敏度更直观的被观察。

显示框架

为了降低消耗,OLED屏幕采用局部刷新的方案。所需库函数Wire.h、Adafruit_GFX.h、Adafruit_SSD1306.h。

代码如下:

#include <Wire.h>#include <Adafruit_GFX.h>#include <Adafruit_SSD1306.h>#include "logo_128x64.h"#include "logo_95x32.h"

#define OLED_RESET 4Adafruit_SSD1306 display(128, 64, &Wire, OLED_RESET);

void setup(){  Serial.begin(115200);  display.begin(SSD1306_SWITCHCAPVCC, 0x3C);  // initialize with the I2C addr 0x3C (for the 128x64)  display.clearDisplay(); // 清屏  display.drawBitmap(0, 0, logo, 128, 64, 1); //画出字符对应点阵数据  display.display();  delay(1000);  display.clearDisplay();  /*-------------------- Display picture and text ---------------------------*/  display.drawBitmap(16, 0, logo_small, 95, 32, 1);  display.setTextColor(WHITE);  //设置字体颜色  display.setTextSize(2);  //设置字体大小 1 is default 6x8, 2 is 12x16, 3 is 18x24  display.setCursor(0,33); //设置起始光标  display.print("v=");  display.setCursor(72,33); //设置起始光标  display.print("km/h");  display.setCursor(0,49); //设置起始光标  display.print("str=");  display.display();}

void loop()


数据显示设置

将串口打印数据与OLED显示框架结合,将v和str两数据分别填充至OLED屏预留位置,即可实现雷达监测数据的对应填充显示,包括速度v和信号强度str。

代码如下:

#include <Wire.h>#include <Adafruit_GFX.h>#include <Adafruit_SSD1306.h>#include "logo_128x64.h"#include "logo_95x32.h"

#define OLED_RESET 4Adafruit_SSD1306 display(128, 64, &Wire, OLED_RESET);

String comdata = "";

void setup(){  Serial.begin(115200);  while (Serial.read() >= 0){}//clear serialbuffer  display.begin(SSD1306_SWITCHCAPVCC, 0x3C);  // initialize with the I2C addr 0x3C (for the 128x64)  display.clearDisplay(); // 清屏  display.drawBitmap(0, 0, logo, 128, 64, 1); //画出字符对应点阵数据  display.display();  delay(1000);  display.clearDisplay();  /*-------------------- Display picture and text ---------------------------*/  display.drawBitmap(16, 0, logo_small, 95, 32, 1);  display.setTextColor(WHITE);  //设置字体颜色  display.setTextSize(2);  //设置字体大小 1 is default 6x8, 2 is 12x16, 3 is 18x24  display.setCursor(0,33); //设置起始光标  display.print("v=");  display.setCursor(80,33); //设置起始光标  display.print("km/h");  display.setCursor(0,49); //设置起始光标  display.print("str=");  display.display();}

void loop(){  if (Serial.available() > 0)   {    char data = Serial.read();    comdata += data;    if (data == '\n')    {// type of comdata: v=1.0 km/h, str=10151      int separatorIndex = comdata.indexOf(','); // 假设分隔符为逗号      if (separatorIndex != -1)      {        String part1 = comdata.substring(0, separatorIndex); // 第一个部分        String part2 = comdata.substring(separatorIndex + 1); // 第二个部分        // 打印分割后的数据        //Serial.println(part1); // type of part1: v=1.0 km/h        //Serial.println(part2); // type of part2:  str=10151        /*------------ part1 : v=1.0 km/h ----------*/        int part1separatorIndex = part1.indexOf('='); //index of '='        if (part1separatorIndex != -1)        {          String vlc = part1.substring(part1separatorIndex + 1); // index of velocity, type of vlc is 1.0 km/h          // vlc: 1.0 km/h          int VLCseparatorIndex = vlc.indexOf(' '); // index of ' '          String v = vlc.substring(0, VLCseparatorIndex);// v only include number          float Vn = v.toFloat();          Serial.print(Vn); // print velocity number          Serial.print(',');          //display.setCursor(25,33); //设置起始光标          display.fillRect(25, 33, 60, 16, BLACK);          display.display();          display.setCursor(25,33); //设置起始光标          display.print(Vn);          display.display();        }        /*------------- part2 :  str=10151 ------------------*/        int part2separatorIndex = part2.indexOf('='); //index of '='        if (part2separatorIndex != -1)        {          String strng = part2.substring(part2separatorIndex + 1); // strng only include number          int Sn = strng.toInt();          Serial.print(Sn); // print strength number          Serial.println();          //display.setCursor(49,49); //设置起始光标          display.fillRect(49, 49, 79, 16, BLACK);          //display.setPixelColor();          display.display();          display.setCursor(49,49); //设置起始光标          display.print(Sn);          display.display();        }      }      comdata = "";    }  }}


成果展示

这里由于字体设置为2号,无法满��km/h单位��完整填充,因此被数据覆盖住一部分,可根据实际需求调整字体大小。