本帖最后由 无垠的广袤 于 2025-4-27 18:57 编辑
Beetle 树莓派RP2350 - 介绍、环境搭建、工程测试、扩展板设计本文介绍了 Beetle 树莓派RP2350 的产品信息、参数特点、原理图,以及环境搭建、工程测试和扩展板的设计。
产品简介
Beetle RP2350 是一款基于RP2350芯片设计的高性能迷你体积的开发板,该开发板仅硬币大小(25*20.5mm),专为对空间有要求的嵌入式应用设计。
包装
高性能树莓派RP2350芯片 RP2350是树莓派新推出的高性能安全微控制器,该微控制器拥有独特的双核双架构设计,允许选择Arm Cortex-M33或Hazard3 RISC-V内核。RP2350拥有150MHz主频,520KB RAM和2MB Flash,可处理大量高速数据。
高度集成,超小尺寸 Beetle RP2350在仅硬币大小的体积上引出了11个IO、BAT、3.3V等众多接口,为项目制作提供了充足的IO和方便的电源连接。Beetle RP2350休眠功耗仅uA,使用电池可长时间工作。同时,Beetle RP2350还集成了锂电池充电功能和电池电压监控功能,可对锂电池进行充电和监测电量,以便在电量不足时采取措施,确保设备持续运行。
易于编程,易于集成 Beetle RP2350支持C/C++、MicroPython编程,可选择熟悉的编程语言,从而实现更高效的开发流程。Beetle RP2350所有器件均在一面,并且采用半孔设计,因此可用于贴片设计,有助于大规模集成。
产品特点
高性能树莓派RP2350芯片
高度集成,超小尺寸
尺寸仅25*20.5mm 集成锂电池充电管理、电池电压监测 引出11个IO
低功耗,休眠功耗仅25uA 支持C/C++、MicroPython编程 单面布局,半孔工艺,可用于贴片生产
应用场景
复古电脑 游戏机DIY 键盘控制 可编程灯光控制 舞台道具控制 电子徽章
技术规格
基本参数
工作电压: 3.3V Type-C输入电压: 5V DC VIN输入电压:5V DC 最大充电电流:0.5A 休眠电流: 工作温度:-10~60℃ 模块尺寸:25*20.5mm
硬件信息
引脚定义
原理图
电源
主控
环境搭建
分别介绍了 Arduino IDE 和 MicroPython 两种开发环境的搭建流程。
Arduino IDE
文件 - 预选项 - 添加附加板卡链接 https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json 点击左侧 板卡 选项,搜索 RP2350 ,安装 Raspberry Pi Pico/RP2040/RP2350 SDK; 连接开发板和电脑,打开 Arduino IDE ,工具 - 板卡 - 选择 Generic RP2350 ; 编辑工程代码,配置目标通信端口,即可上传程序。
MicroPython
数据线连接开发板和电脑; 按住 BOOT 键的同时,短按 RST 复位键,此时电脑出现磁盘; 将下载的 *.uf2 固件拖至 RP2350 磁盘; 开发板自动安装固件并重启; 打开 Thonny IDE 软件,右下角 配置解释器,选择 MicroPython (Raspberry Pi Pico) 并 确认 保存配置; 右下角选择开发板对应的目标 CDC 端口号,即可开始运行 MicroPython 程序。
扩展板设计
原理图
外壳
工程测试
介绍了 MicroPython 环境下进行 PWM 呼吸灯、ADC 等工程测试的相关流程。
呼吸灯
结合 RP2350 强大的 PWM 信号输出功能,实现板载 LED 的亮度调制,进而达到呼吸灯的效果。
代码
- '''
- Name: PWM breath LED
- Version: v1.0
- Date: 2025.04
- Author: ljl
- Other: Breathed LED on board by PWM
- '''
-
- import utime
- from machine import Pin,PWM
- PWM_PulseWidth = 0
-
- pwm_LED = PWM(Pin(25)) # pin - user LED on board
- pwm_LED.freq(500) # set pwm_LED frequency
-
- while True:
- while PWM_PulseWidth < 65535:
- PWM_PulseWidth = PWM_PulseWidth + 50
- utime.sleep_ms(1) #延时1ms
- pwm_LED.duty_u16(PWM_PulseWidth)
-
- while PWM_PulseWidth > 0:
- PWM_PulseWidth = PWM_PulseWidth - 50
- utime.sleep_ms(1)
- pwm_LED.duty_u16(PWM_PulseWidth)
复制代码
效果
ADC
通过芯片内置 ADC 实现模数转换,基于此实现模拟通道的电压值采集,以及芯片温度测量和终端打印输出。
代码- '''
- Name: ADC voltage and temperature
- Version: v1.0
- Date: 2025.04
- Author: ljl
- Other: ADC acquire voltage and convert to temperature
- '''
-
- import machine
- import utime
-
- sensor_temp = machine.ADC(4)
- conversion_factor = 3.3 / (65535)
-
- while True:
- reading = sensor_temp.read_u16() * conversion_factor
-
- # The temperature sensor measures the Vbe voltage of a biased bipolar diode, connected to the fifth ADC channel
- # Typically, Vbe = 0.706V at 27 degrees C, with a slope of -1.721mV (0.001721) per degree.
- temperature = 27 - (reading - 0.706)/0.001721
- print(temperature)
- utime.sleep(1)
复制代码
效果
总结
本文介绍了 Beetle 树莓派RP2350 的产品信息、参数特点、原理图,以及环境搭建(Arduino、MicroPython)、工程测试( PWM 和 ADC )和扩展板的设计。为后续深入开发和 DIY 设计作铺垫,也为相关产品的开发和应用提供了参考。
|