Cube-436_迷你示波器
简介
60M @ 12bit,256pit深度的迷你示波器
简介:60M @ 12bit,256pit深度的迷你示波器开源协议
:MIT
描述
Cube-436_迷你示波器
60M @ 12bit,256pit深度的迷你示波器
升级提示:ADC可更换成AD9226(65MSPS ,支持与AD9220 pin 2 pin 替换)
理论采样率可达 70MSPS @ 280Mhz 或 63MSPS @ 252Mhz
主频取决于FALSH的最高频率(体质),推荐使用133Mhz的flash,经测试 W25Q128BF 可在280Mhz主频下稳定运行
感谢群友提供AD9226的板子测试,核心电压1.35V,主频252Mhz,关闭FFT,实际采样率约为60M(理论63M)
信号源 2Mhz duty50% PWM
由图易知:256次采样时间大概4.27us,单次采样16.67ns,频率59.98M
AD9220方案,核心电压1.2V,主频280Mhz,开启FFT,实际采样率约为46M(理论46.66M)
信号源 2Mhz duty50% PWM
由图易知:256次采样时间大概5.53us,单次采样21.6ns,频率46.29M
接地
2Mhz Sin
1Mhz Exp-log
1Mhz multi audio
运行10min背面温度(室温27)
代码开源仓库:https://github.com/panyihang/Cube-436_miniOSC
正在更新,代码还不完善,但。。。又不是不能用(欢迎各位巨佬提pr
如需合作请联系邮箱 root@an-ye.top
Q群 565264047 欢迎来玩呀~
实测AD9220可超频至25M+,极限性能正在测试
MCU、ADC、屏幕都是超频运行,板子有点烫手属于正常情况
ps:RP2040最高可跑到420Mhz,但我焊上的这颗1.3V 280Mhz以上,qspi分频到8也跑不起来,怀疑分频设置不生效
ps1:谨慎开启源码中的快速傅里叶变换求频率,目前很不稳定
0x00:前言
PCB有几个DRC报错,封装问题不影响使用,忽视就好。
本项目的硬件部分是高考前最后一个晚自修在教室里当众画的,仓促画完略有不足还请见谅
0x01:更新说明
ver0.2:更改led驱动供电,原供电方案电流不足
0x02:硬件部分
主控MCU:
- 采用树莓派的RP2040
- 核心电压 1.2V
- 系统频率 280Mhz
- 经测试可稳定运行(不开启FFT)
ADC:
- AD9220
- 12bit @ 25Mhz(40.2ns)
- 输入电压范围 -3.3V-6.6V可调
- 超频运行,有点发热
屏幕:
- 8位并口驱动
- 分辨率240x240
- 由于缺少小钱钱,采用库存的屏,型号为 HL015Z1E
- 绑定芯片为st7789,请自行找货/找替代品
- 替代品初始化参数开启反色,显示效果更佳哦~
存储:
- 128Mb SPI Flash
- 用于存放固件
- 可存放波形文件
0x03:软件框架
编译:
- 编译器为树莓派提供的c sdk
- 使用vs code的PlatformIO扩展进行开发
- 使用的PIO开发包为WizIO-PICO
为提高效率,修改了编译用的c sdk ,使用官方SDK理论上可以正常编译(现已基本替代,可直接编译)
显示框架:
- 显示框架采用lvgl8.2
- 屏幕驱动方式为gpio批量操作
adc采集:
- 采集深度为256pit
- 采样精度12bit
- 采用汇编精确控制采样频率
- 未来将会使用pio配合空闲核心进行采样。
自动控制:
- 计算采样数据的最值和方差
- 自动控制ADC的基准电压和采样范围
- 无需担心错过细小的波形
新项目「Cube-443_示波镊子」正在筹备中。。。将改用常见元件,预计使用65M @ 12bit ADC
新项目「Cube-443_示波镊子」已发布
评论