找回密码
 立即注册
楼主: 梁工

SPI-DMA输出控制WS2812三基色彩灯程序@8H系列/32G系列,不加反相器, CPU休息

  [复制链接]
  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2024-3-19 21:52:46 | 显示全部楼层
Hs*** 发表于 2024-3-19 19:28
中断函数都没写,我使能定时器中断后,直接点亮的灯带,这个是while(1)里的函数
while(1)
{

定时器中断函数都没写,却允许中断,怎么会正常?单片机基本理论要明白的哦。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2024-01-23 19:43:10

0

主题

17

回帖

134

积分

注册会员

积分
134
发表于 2024-3-20 11:21:24 | 显示全部楼层
梁*** 发表于 2024-3-19 21:52
定时器中断函数都没写,却允许中断,怎么会正常?单片机基本理论要明白的哦。 ...

基本原理我理解,可能我描述不清楚,就是我直接用你的程序是可以直接点亮灯带的,但是我加了定时器这段程序后,并没有使用定时器和中断来计时,只是打开了允许中断那一位,就成这样了!!!按照你的意思,我把中断函数写在了里边
void Timer0_Int (void) interrupt 1
{
   
}

并使能ET0,灯带亮了
然后我又注释了ET0,灯带不亮了,可能确实没有了解单片机的基础,没有用到就不要随便使能是吧{:5_297:}

感谢梁工指导

点评

你得补一下单片机的基础知识。 如果允许了某个中断,而又没有中断函数,则一旦中断发生,单片就会跳转到中断执行,你没有中断函数,CPU就不知道跑哪去了。  详情 回复 发表于 2024-3-20 16:39
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2024-3-20 16:39:51 | 显示全部楼层
Hs*** 发表于 2024-3-20 11:21
基本原理我理解,可能我描述不清楚,就是我直接用你的程序是可以直接点亮灯带的,但是我加了定时器这段程 ...

你得补一下单片机的基础知识。
如果允许了某个中断,而又没有中断函数,则一旦中断发生,单片就会跳转到中断执行,你没有中断函数,CPU就不知道跑哪去了。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:402
  • 最近打卡:2025-05-01 10:01:59

0

主题

170

回帖

955

积分

高级会员

积分
955
发表于 2024-3-22 18:06:47 | 显示全部楼层
先收藏,慢慢看
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2024-01-23 19:43:10

0

主题

17

回帖

134

积分

注册会员

积分
134
发表于 2024-3-23 10:29:35 | 显示全部楼层
梁*** 发表于 2024-3-20 16:39
你得补一下单片机的基础知识。
如果允许了某个中断,而又没有中断函数,则一旦中断发生,单片就会跳转到 ...

谢谢,感谢梁工给我补了单片机基础{:5_300:}{:5_300:}{:5_300:}
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:115
  • 最近打卡:2025-04-21 09:51:03
已绑定手机

2

主题

41

回帖

524

积分

高级会员

积分
524
发表于 2024-3-23 11:39:25 | 显示全部楼层
学习学习
学无止境!
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:502
  • 最近打卡:2025-05-01 08:01:38
已绑定手机

1

主题

833

回帖

1441

积分

金牌会员

积分
1441
发表于 2024-3-31 09:27:18 | 显示全部楼层
学习
靡不有初,鲜克有终
回复

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:83
  • 最近打卡:2024-09-30 23:22:51

0

主题

118

回帖

248

积分

中级会员

积分
248
发表于 2024-4-2 19:35:08 | 显示全部楼层
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:390
  • 最近打卡:2025-05-01 17:22:41

3

主题

85

回帖

846

积分

高级会员

积分
846
发表于 2024-4-17 21:04:06 | 显示全部楼层
{:5_332:}
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:435
  • 最近打卡:2025-04-30 08:43:23

33

主题

2351

回帖

4860

积分

论坛元老

积分
4860
发表于 2024-4-20 21:00:52 | 显示全部楼层
梁工您好~
最近在要使用一个类似WS2812通讯方式的数码管驱动芯片,最后选择了DMA+SPI模拟驱动芯片时序的方式与芯片通讯。目前通讯已经通了,芯片可以正常使用。

但是有几个疑问,,对于STC的硬件SPI在发送数据的时候,字节与字节之间有一个间隙使用了DMA之后 处于纳秒级别。且相同配置下,大小固定。

1. 这个间隙与什么有关?
2. 一般是多少?
3. 能否通过SPI的配置缩小,或者去掉(仅配置SPI的情况下)?

【咨询】硬件SPI发送字节与字节之间间隙是多少?

点评

WS2812对这个间隙要求不严格,我也没定性测试,后续我会测试一下。  详情 回复 发表于 2024-4-20 23:50
参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-1 23:28 , Processed in 0.121816 second(s), 125 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表