- 2024-12-24
-
回复了主题帖:
【测评入围名单】RainbowLink USB 协议转换器(RS485 / RS232 / TTL)
个人信息无误,确认可以完成测评分享计划
- 2024-12-19
-
加入了学习《直播回放: DigiKey FollowMe 第二季 第4期 Arduino Nano RP2040 Connect 任务讲解》,观看 Arduino Nano RP2040 Connect 任务讲解
- 2024-12-18
-
加入了学习《Arduino? Nano RP2040 Connect 任务视频》,观看 IMU 原始数据打印
- 2024-12-17
-
发表了主题帖:
【Follow me第二季第4期】2.必做任务之点灯+串口打印
本帖最后由 我的学号 于 2024-12-17 22:23 编辑
之前参加过 FM 第二期活动,对 Arduino 开发有了一定的认识,本次的点灯和串口打印任务还是比较容易上手的,下边对开发过程做简要记录。
一.环境搭建
本次活动选择的开发环境是 Arduino 2.3.2。使用新板卡需要在 Arduino IDE 添加对应型号,具体过程:
左侧选择“”开发板管理器“,上方内容输入 ”RP2040“, 选择 Arduino Mbed OS Nano Boards 并安装
安装完毕在 ”文件“ 下可见 ”示例“
二. 初次上电准备
初次上电,发现 Nano RP2040 Connect 虽然 LED 灯 和RGB 灯在闪烁,但PC 上的设备管理器并没有显示新的串口设备
猜测需要恢复出厂设置,参考官方示例,先用USB线连接电脑,使用镊子或剪刀短路 板卡的 REC 和GND,
按板载白色复位键后松开,此时在 我的电脑 里会出现一个大容量存储设备
将从官网下载的测试程序 blink.ino.elf.uf2 拖入设备中,可见设备管理器已出现新的串口号
三.点灯
硬件设计上板载 RGB 灯是由 WIFI 模块 ESP32 直接控制的,因此 RP2040 只能通过库间接使用
左侧选择 库管理, 输入 WiFiNINA 并安装
添加 #include "WiFiNINA.h" 头文件便可操作 RGB, 通过该 .h 文件还能操作从 ESP32 出来的 SPI 和 IIC
三色 RGB 已经被命名为 LEDR LEDG 和 LEDB, 直接调用即可
四.串口打印
开启串口打印功能,需要在 setup 函数里用 Serial.begin( ) 指定通信波特率
loop 循环中便可使用 Serial.println( ) 打印相关内容
五.点灯和串口打印代码如下:
#include "WiFiNINA.h"
//宏定义数据
#define LED1 LEDR
#define LED2 LEDG
#define LED3 LEDB
//全局变量
byte u8RedColor_i =0;
byte u8GreenColor_i =0;
byte u8BlueColor_i =0;
byte u8Step =1;
// the setup function runs once when you press reset or power the board
void setup()
{
//LED 初始化
pinMode(LED_BUILTIN, OUTPUT);
//RGB 初始化
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
pinMode(LED3, OUTPUT);
//串口初始化
Serial.begin(9600);
}
// the loop function runs over and over again forever
void loop()
{
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(500); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(500); // wait for a second
Serial.println("Hello DigiKey & EEWorld!");
//状态机形式点灯
switch(u8Step)
{
case 1:
{
u8RedColor_i =255;
u8GreenColor_i =0;
u8BlueColor_i =0;
u8Step =2;
break;
}
case 2:
{
u8RedColor_i =0;
u8GreenColor_i =255;
u8BlueColor_i =0;
u8Step =3;
break;
}
case 3:
{
u8RedColor_i =0;
u8GreenColor_i =0;
u8BlueColor_i =255;
u8Step =4;
break;
}
case 4:
{
u8RedColor_i =0;
u8GreenColor_i =255;
u8BlueColor_i =255;
u8Step =5;
break;
}
case 5:
{
u8RedColor_i =255;
u8GreenColor_i =0;
u8BlueColor_i =255;
u8Step =6;
break;
}
case 6:
{
u8RedColor_i =255;
u8GreenColor_i =255;
u8BlueColor_i =0;
u8Step =1;
break;
}
default:
{
u8RedColor_i =0;
u8GreenColor_i =0;
u8BlueColor_i =0;
}
}
RgbSetColor(u8RedColor_i,u8GreenColor_i,u8BlueColor_i);
}
//////////////////////////////////////////////////////////
//函数名称:RgbSetColor
//函数功能:设置RGB 颜色亮度
//传入参数:红色数值, 绿色数值, 蓝色数值
//传出参数:无
//特别说明:数据范围 0~255
//////////////////////////////////////////////////////////
void RgbSetColor(byte u8RedValue, byte u8GreenValue, byte u8BlueValue)
{
analogWrite(LEDR, (255-u8RedValue));
analogWrite(LEDG, (255-u8GreenValue));
analogWrite(LEDB, (255-u8BlueValue));
}
六,实现效果如下:
[localvideo]e81ecad1b82b8db215b3375d87835c41[/localvideo]
-
发表了日志:
【Follow me第二季第4期】2.必做任务之点灯+串口打印
- 2024-11-29
-
加入了学习《嵌入式c语言进阶》,观看 课程内容和理念介绍
-
加入了学习《2021_Digikey KOL系列:亲手教你转起一台无刷电机》,观看 Digi-Key_KOL_BLDC
-
加入了学习《电机控制》,观看 电机控制应用(上)
-
加入了学习《【Follow me第二季第3期】扩展任务---EK_RA6M5函数信号发生器》,观看 【Follow me第二季第3期】扩展任务---EK_RA6M5函数信号发生器
- 2024-11-21
-
回复了主题帖:
【Follow me第二季第4期】1.Nano RP2040 Connect 硬件分析
yilonglucky 发表于 2024-11-21 13:38
所以三色灯由wifi芯片控制,那怎么通知wifi芯片?i2c还是spi,还是uart?怎么感觉都有呢?
这个WIFI 芯片其实就是ESP32;从原理图上看RGB 灯接线从它来,A6 A7的端口也是它;看了官方例程,通信方式是SPI; 这几个GPIO 感觉像是设置了透传,RP2040 可以间接使用
-
发表了主题帖:
【Follow me第二季第4期】1.Nano RP2040 Connect 硬件分析
本帖最后由 我的学号 于 2024-11-21 11:20 编辑
本次 EEWORLD 和 DIGILEY 联合举办的 Follow Me 第二季第四期指令的板卡为 Nano RP2040 Connect, 这是一款搭载了 树莓派 RP2040 芯片, 板载加速计,陀螺仪,RGB LED 和 MESN 麦克风等模块,同时可以通过 MINA-W102 设备进行 WIFI 和蓝牙通信,十分适合物联网 AI 项目的学习和开发。下边结合官方给出的硬件原理图对板卡进行简要分析:
官网地址: Nano RP2040 官方资料
查看规格说明,板卡框架如下:
一,供电情况
板子的供电由 USB 接口而来;接上USB 线后,电源经过一个 肖特基二极管 来到 电源管理芯片 MP2322GQH,这是一款来自 MPS 的宽输入范围 (3V~22V),持续输出电流可达 1A 的同步降压芯片,QFN 的尺寸十分适合在小型设备上使用
电源芯片 MP2322GQH
外部输入电源经过降压后得到 3v3 电压,供给后续板块主芯片和各个模块使用
二. 主芯片 RP2040
树莓派基金会在 21 年 1月份推出的 Cortex-m0+ 芯片 RP2040, 以丰富可拓展的外设, 价格上的优势和丰富的生态开发,在创客圈中颇受欢迎。开发资料可参考:树莓派 PICO 中文
芯片规格参数如下:
如需要复用引脚,可以参考:
回到 Nano RP2040 最小系统,输入3v3 电源为高速外设的运行供电,芯片内部转换出 1.1v 电压供电,无需添加额外降压线路。
VCC 和GND 之间需要放置 104 电容,越靠近芯片越好
为芯片提供频率的是来自微芯的12Mhz 有源晶振 DSC6111HI2B
三.麦克风模块
RP2040 通过 PDM 接线和来自 ST 的 MEMS音频传感器全向立体声数字麦克风芯片 MP34DT06JTR,其低功耗小尺寸十分适合在可穿戴设备上使用
四 IIC 接线
RP2040 的 IIC 接口连接有四:
1 为 来自微芯的安全加密芯片 ATECC608A-MAHDA-T, 独特的硬件加密算法保证传输的数据只有通过特定密钥才能解析出原数据
2 为来自 ST 的加速度陀螺仪六轴传感器 LSM6DSOXTR, 同样属于低功耗高性能芯片,具机器学习内核极大丰富了设备的使用场合
3 为对外 IIC 接口引出,注意板上已添加上拉电阻
4.和WIFI 蓝牙芯片连接
五, FLASH 模块
FLASH 芯片使用的是来自瑞萨的 128Mbit NorFlash AT25SF128A-MHB-T, 充分利用了 RP2040 的QSPI 四线通信
六,无线通信模块
WIFI 蓝牙芯片使用 UBLOX 的 NINA-W102-00B , 其内置MCU 支持 UART/SPI/IIC 等各种通信接口
三色 RGB 可用于反映无线通信芯片的工作情况
7.用户指示灯,给高电平灯亮
8.SWD 接口和复位按键
按树莓派官方说法,可以通过一个PICO 对另一个PICO 进行调试
9. 排针引出基本为空余引脚,可拓展使用
Nano RP2040 原理图:
- 2024-11-16
-
加入了学习《直播回放: FollowMe 4 W5500-EVB-Pico 使用入门》,观看 W5500-EVB-Pico 使用入门
-
发表了日志:
【Follow me第二季第4期】1.Nano RP2040 Connect 硬件分析
- 2024-11-11
-
回复了主题帖:
免费申请: 极海APM32M3514电机通用评估板,测评赢极小海大礼包
这块板没有硬件原理图?也没有官方 demo 可以参考?
- 2024-11-01
-
加入了学习《【Follow me第二季第2期】Arduion UR4 作业提交》,观看 【Follow me第二季第2期】Arduion UR4 作业提交
-
加入了学习《【Follow me第二季第2期】 进阶任务 智能家居3 MQTT接入HA》,观看 Follow me第二季第2期】 基础任务:用DAC生成正弦波;用OPAMP放大DAC信号
-
加入了学习《【Follow me第二季第2期】 进阶任务 智能家居3 MQTT接入HA》,观看 【Follow me第二季第2期】 进阶任务 智能家居3 MQTT接入HA
- 2024-10-28
-
回复了主题帖:
【Follow me第二季第2期】Arduion UR4 作业提交
补充:Follow me第二季第2期】6.进阶任务之 ST25DV16 NFC 模块的使用
-
回复了主题帖:
【Follow me第二季第2期】Arduion UR4 作业提交
补充:可供下载代码链接
- 2024-10-27
-
上传了资料:
【Follow me第二季第2期】Arduion UR4 作业提交代码