- 打卡等级:偶尔看看III
- 打卡总天数:50
- 最近打卡:2025-04-30 22:59:03
超级版主
- 积分
- 12073
|
Ai8051USB,USB 型 1T 8051,支持32位和8位指令集
管脚兼容天王级别的: 89C52RC, 12C5A60S2
要兼容 8位8051指令集, 可以用 Keil C51/IAR/SDCC 编译器
===就相当于更强大的 8H8K64U
要兼容 32位8051指令集,可以用 Keil C251 编译器,双核兼容设计
===就相当于更强大的 32G12K128, 32G8K64
34K SRAM(2K edata, 32K xdata), 64K Flash
TFPU@120MHz, 硬件浮点/硬件三角函数 运算器
DMA支持PWM, DMA支持外设直接到外设, P2P
120MHz-PWM支持硬件移相,16位PWM; 真12位ADC
USB, 4组串口,12位ADC, 轨到轨比较器
QSPI, SPI, I2S, I2C, TFT-i8080/M6800 接口
PDIP40,LQFP44,LQFP48
CPU32@42MHz
=========================================================
WS2812三基色彩灯@Ai8051U,USB
===最多同时驱动1365个三基色彩灯
===PWMA直接驱动, 用DMA支持,不占CPU时间
可以驱动4路独立的 WS2812灯带网络
Ai8051U的PWMA-DMA模式,DMA支持,控制WS2812三基色彩灯 !
32K SRAM,DMA传输, 轻松驱动最多1365个灯并且不占用CPU时间 !
本例使用PWMA-P1.0输出信号直接驱动WS2812,只占用1个I/O口。
巧妙使用PWMA-DMA 支持 WS2812B !!!
本例驱动24个灯,接成环状。
SPI发送288字节,DMA启动后自动发送完所有的数据(本例发送时间720us),
===不占CPU时间
每个灯3个字节,分别对应绿、红、蓝则,MSB先发.
800KHz码率,
数据0(1/4占空比): H=0.3125us L=0.9375us,
数据1(3/4占空比): H=0.9375us L=0.3125us,
RESET>=50us.
高电平时间要精确控制在要求的范围内,
低电平时间不需要精确控制, 大于要求的最小值并小于RES的50us即可.
DMA发送时间@40MHz,
发送字节=24*24+1=577, DMA发送时间720us,
32K xdata最多一次驱动1365个灯.
WS2812S的标准时序如下:
TH+TL = 1.25us±150ns, RES>50us
T0H = 0.25us±150ns = 0.10us - 0.40us
T0L = 1.00us±150ns = 0.85us - 1.15us
T1H = 1.00us±150ns = 0.85us - 1.15us
T1L = 0.25us±150ns = 0.10us - 0.40us
两个位数据之间的间隔要小于RES的50us.
PWMA方案:
本例使用PWMA-P1.0输出直接驱动WS2812。
用DMA传输, 一个周期传输一个bit数据, 一个周期为1.25us,
数据0的占空比为1/4,数据1的占空比为3/4。
本例使用40MHz时钟,周期50T=1.25us,
数据1占空比为37T,数据0占空比为12T。
电路预览(附件带PDF电路):
程序源码, 20240927 更新:
AI8051U-PWMA-DMA-直接驱动WS2812彩灯.rar
(256.8 KB, 下载次数: 406)
驱动效果视频:
|
|