mirror of
https://github.com/m5stack/m5-docs.git
synced 2026-05-20 10:23:01 -07:00
6.6 KiB
6.6 KiB
DDS
SKU:U105
描述
DDS 是一款信号源Unit. 采用AD9833可编程波形发生器+STM32F0控制方案。提供I2C通信接口(addr:0x31),实际使用时以配置寄存器的方式进行操作。能够非常方便的控制该信号源输出多种波形(正弦波、三角波、方波输出、锯齿波,信号输出幅值0-0.6V),与调整频率、相位。并且支持休眠策略,空闲状态时能够进一步减小电能损耗。该Unit适用于各种测试仪器的电子线路原型设计中充当信号源。
产品特性
- 数字可编程频率和相位
- 信号输出幅值0-0.6V
- 正弦波/三角波/方波/锯齿波(固定频率:13.6KHz)/DC输出
- 输出频率范围:0MHz至1MHz(10MHz基准时钟)
- 28bit频率分辨率
- 11bit相位分辨率
包含
- 1x DDS Unit
- 1x HY2.0-4P线缆
- 1x SMA-2.54mm线缆
应用
- 频率刺激/波形发生
- 液流和气流测量
- 传感器应用:接近度、运动和缺陷检测
- 线路损耗/衰减
- 测试与医疗设备
- 扫描/时钟发生器
- 时域反射(TDR)应用
规格参数
| 规格 | 参数 |
| 支持波形 | 正弦波/三角波/方波/锯齿波(固定频率:13.6KHz)/DC输出 |
| 信号输出幅值 | 0-0.6V |
| 输出频率范围 | 0 MHz至1MHz(10 MHz基准时钟) |
| 频率分辨率 | 28bit |
| 相位分辨率 | 11bit |
| 净重 | 11.1g |
| 毛重 | 34.7g |
| 产品尺寸 | 71*24*8mm |
| 包装尺寸 | 88.5*60*21mm |
EasyLoader
EasyLoader是一个简洁快速的程序烧录器,其内置了一个产品相关的案例程序,通过简单步骤将其烧录至主控,即可进行一系列的功能验证.(程序烧录前,请根据设备类型安装相应驱动程序. M5Core型主机请点击此处查看CP210X驱动安装教程
案例描述:
控制DDS Unit输出正弦波/三角波/方波/锯齿波.
相关链接
案例程序
Arduino
原理图
管脚映射
| M5Core | SCL | SDA | 5V | GND |
| DDS Unit | GPIO22 | GPIO21 | 5V | GND |
通讯协议
- 协议类型I2C
- I2C Address: 0x31
写寄存器时,需要将最高位置1。mclk置1将保持输出最后一个信号幅值,DAC置1将停止Unit输出。
/*--------------------------------------------------------------------------------------------------*/
| DDS CTRL REG | 0x20
| ------------------------------------------------------------------------------------------------
| dds_ctrl_reg[0] | R/W | System control
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| W | R | R | R | R | MODE |
| -MODE: 000 Reserved
| 001 SINE
| 010 TRIANGLE
| 011 SQUARE
| 100 SAWTOOTH
| 101 DC
//
| dds_ctrl_reg[1] | R/W | System control
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| W | FSELECT | PSELECT | S01 | S12 | RSET | R | R |
| -FSELECT: 0 Used FREQ0
1 Used FREQ1
| -PSELECT: 0 Used PHASE0
1 Used PHASE1
| -SLEEP01: 1 Disenable mclk
| -SLEEP12: 1 Disenable DAC
/*----------------------------------------------------------------------------------------------------
/*--------------------------------------------------------------------------------------------------*/
| DDS FREQ PHASE REG | 0x30
| ------------------------------------------------------------------------------------------------
| dds_freq_phase_reg[0:3] | R/W | FREQ(28bit)
| 31 | 30 | 29:28 | 27:0 |
| W | N | R | freq reg 0 |
//
| dds_freq_phase_reg[4:5] | R/W | PHASE(12bit)
| 15 | 14 | 13:12 | 11:0 |
| W | N | R | phase reg 1 |
//
/*---------------------------------------------------------------------------------------------------*/


