cs1017 发表于 2023-12-18 15:41:38

STC32G8K64强制中断问题





如图   用STC32G8K64驱动WS2812时发现的问题
因资源有限 只能用普通IO时序驱动WS2812,发现每发送4次 会被中断一下
所以 重新建了一个工程 什么外设也没做,只用我这个驱动WS2812的IO一直取反,并用逻辑分析仪抓取波形   

为了防止逻辑分析仪丢包 特意把系统IRC时钟设置的6M   发现还是会每四次被强制中断一下,
请问这是什么原因?怎么能够让他不进行强制中断?

cs1017 发表于 2023-12-18 15:43:14

我能想到的是这个片子多了DMA功能但实际上没有使用,不知道是否受影响

乘风飞扬 发表于 2023-12-18 15:56:24

主循环里面对WLED进行了10次翻转,然后产生循环。
你抓的信号也是经过10次翻转后出现一个长延时(主循环产生的跳转指令延时)。

cs1017 发表于 2023-12-18 16:06:11

不好意思我的问题忽略了正常主频24M   我的逻辑分析仪没那么高的性能 忘了降频了

cs1017 发表于 2023-12-18 16:23:54

还有一个疑问主频都是24M同样的程序 NOP数量一样在STC8里面能正常跑在STC32G8K64上 反而跑不起来低电平的时间反而还要长
file:///C:/Users/11062/Desktop/3.png

社区闲人 发表于 2023-12-18 16:24:37

输出波形和代码对应的很好。没有问题。

LAOXU 发表于 2023-12-18 17:15:10

cs1017 发表于 2023-12-18 16:23
还有一个疑问主频都是24M同样的程序 NOP数量一样在STC8里面能正常跑在STC32G8K64上 反而跑不起来   ...

很正常, 结构越复杂内部流水线越多, 对 IO 口的响应越慢.

IO输出响应速度: STC15W > STC8 > STC32

神农鼎 发表于 2023-12-18 21:27:11

STC8H/STC32G的 I/O速度比 STC15快
页: [1]
查看完整版本: STC32G8K64强制中断问题