DSL88 发表于 2026-4-8 10:05:09

WS2812时序+6M主频+SETB P3.1时间

1.软件时间设置为6M主频,不想增加主频

2.现在需要增加WS2812灯珠
通过汇编写驱动程序,如下,可发现P3.1高电平保持时间不是一个周期(1/6M),高达400ns,这是为什么?
有办法不修改6M主频情况下驱动WS2812嘛?还是必须升高主频?

    SETB P3.1
    CLRP3.1
    NOP
    NOP
    NOP


神农鼎 发表于 2026-4-8 18:58:50

Ai8051U, DMA 轻松同时点亮 7条 WS2812 灯带,3条 DMA-SPI, 4条 DMA-PWM - WS2812,点灯,灯带,光立方,DMA-SPI点灯,DMA-PWM点灯,即将推出一线制 国芯人工智能技术交流网站 - AI32位8051交流社区

cnos 发表于 2026-4-8 10:26:15

550nS为界限,400ns也没问题。不过理论上是166ns的指令 ,你检查一下主频设置到底对了没

_奶咖君_ 发表于 2026-4-8 10:41:59

看着好像差了两个周期,,IO工作模式设置成 推挽试一试呢?

DSL88 发表于 2026-4-8 11:06:33

_奶咖君_ 发表于 2026-4-8 10:41
看着好像差了两个周期,,IO工作模式设置成 推挽试一试呢?

为什么设置推挽?

C_wolf 发表于 2026-4-8 11:12:13

爬坡有劲吧

_奶咖君_ 发表于 2026-4-8 11:14:08

DSL88 发表于 2026-4-8 11:06
为什么设置推挽?

所以目前你是准双向?

DSL88 发表于 2026-4-8 11:24:19

_奶咖君_ 发表于 2026-4-8 11:14
所以目前你是准双向?

准双向和推挽都不行,SETB P3.1输出的高电平时长超过3个周期,接近500ns

_奶咖君_ 发表于 2026-4-8 11:30:05

欸,奇怪了,,我记得论坛里有做IO翻转测试的,你看看他的那个程序?

狂热主宰 发表于 2026-4-8 11:52:22

可能设计的连接问题

狂热主宰 发表于 2026-4-8 11:55:30

_奶咖君_ 发表于 2026-4-8 11:30
欸,奇怪了,,我记得论坛里有做IO翻转测试的,你看看他的那个程序?

那个测试的IO接器件
还是没有连接
页: [1] 2
查看完整版本: WS2812时序+6M主频+SETB P3.1时间