找回密码
 立即注册
查看: 180|回复: 9

PWMB级联PWMA实现硬件计数脉冲的求助帖

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:454
  • 最近打卡:2025-05-01 07:53:22

28

主题

162

回帖

1879

积分

金牌会员

积分
1879
发表于 2025-2-28 19:13:16 | 显示全部楼层 |阅读模式
各位民间大佬,各位官方大佬,我这有个想法,感觉能实现,是这样子的:
--就是通过PWMB的OC5输出脉冲的情况下,同时通过TRGO触发PWMA的计数器开始计数
--然后给PWMA的计数器设置计数值,比如设置为65530,那么即PWMB的OC5端口输出了6个脉冲后,PWMA的计数器就溢出了,
--然后通过PWMA的溢出事件、中断,将PWMB的OC5端口强制为有效电平或无效电平,同时清空PWMB的计数器,
--当下一个计数值到了的时候,设置到PWMA的计数器里去,然后PWMB的OC5端口继续输出下一组脉冲数量


在此拜谢各位大佬了,其实简单的方案是可以通过定时/计数器去实现的,不过得需要在单片机外出接线,如果能内部级联就太好了
相当于要实现的效果就是,在不反复进入中断的情况下,实现想要输出指定的脉冲数量
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:454
  • 最近打卡:2025-05-01 07:53:22

28

主题

162

回帖

1879

积分

金牌会员

积分
1879
发表于 2025-2-28 19:32:55 | 显示全部楼层
顶贴

点评

有些麻烦了,pwm可以用来干其他事情。 可以看看这个帖子,也是可以输出指定数量脉冲,并可同时操作四路不同速率和数量的脉冲 https://www.stcaimcu.com/forum.php?mod=viewthread&tid=11043  详情 回复 发表于 2025-2-28 19:47
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:458
  • 最近打卡:2025-05-01 07:48:22
已绑定手机
已实名认证

110

主题

2219

回帖

5452

积分

版主

积分
5452
发表于 2025-2-28 19:47:57 | 显示全部楼层

有些麻烦了,pwm可以用来干其他事情。
可以看看这个帖子,也是可以输出指定数量脉冲,并可同时操作四路不同速率和数量的脉冲
https://www.stcaimcu.com/forum.php?mod=viewthread&tid=11043
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:454
  • 最近打卡:2025-05-01 07:53:22

28

主题

162

回帖

1879

积分

金牌会员

积分
1879
发表于 2025-2-28 20:19:12 | 显示全部楼层
王*** 发表于 2025-2-28 19:47
有些麻烦了,pwm可以用来干其他事情。
可以看看这个帖子,也是可以输出指定数量脉冲,并可同时操作四路不 ...

王工,您好,给你添麻烦了,因为我手里用的是开天斧(STC8H)的原因,我记得dma是只支持256字节的,理论上不够用,不过更多的是对pwm模块的一个设想,也是对我自己的对pwm模块的一个学习,曾经也使用过沁恒的ch32芯片,我记得是可以实现这个效果的,不过没事,也就是用于驱动A4988的,回头再继续挖掘一下pwm模块的潜力
主要是想弄个写字机来的,为了剩下上位机的那一丢丢费用、也是想着自己创新,就没用GRBL那一套,自己弄了字库和用python写的上位机,通过串口传输的,现在就是在弄硬件嘛,还很稚嫩

点评

好的,明白了。 那么回到你这个问题,你这个想法是可以实现的,内部通过级联可以实现输出和计数同时进行。 不过这样会同时占用掉两个pwm部分,就没法做其他的pwm任务了。当然你用来学习是完全没问题的。  详情 回复 发表于 2025-2-28 21:15
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:458
  • 最近打卡:2025-05-01 07:48:22
已绑定手机
已实名认证

110

主题

2219

回帖

5452

积分

版主

积分
5452
发表于 2025-2-28 21:15:58 | 显示全部楼层
183443*** 发表于 2025-2-28 20:19
王工,您好,给你添麻烦了,因为我手里用的是开天斧(STC8H)的原因,我记得dma是只支持256字节的,理论 ...

好的,明白了。
那么回到你这个问题,你这个想法是可以实现的,内部通过级联可以实现输出和计数同时进行。

不过这样会同时占用掉两个pwm部分,就没法做其他的pwm任务了。当然你用来学习是完全没问题的。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:454
  • 最近打卡:2025-05-01 07:53:22

28

主题

162

回帖

1879

积分

金牌会员

积分
1879
发表于 2025-2-28 21:43:24 来自手机 | 显示全部楼层
王昱顺 发表于 2025-2-28 21:15
好的,明白了。
那么回到你这个问题,你这个想法是可以实现的,内部通过级联可以实现输出和计数同时进行 ...

那可不可以辛苦一小小王工,在有空的时候,整个例程学习学习可好,感觉我有点过分了

点评

明天有空我给你写个,可指定脉冲数量串输出  详情 回复 发表于 2025-2-28 21:48
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:458
  • 最近打卡:2025-05-01 07:48:22
已绑定手机
已实名认证

110

主题

2219

回帖

5452

积分

版主

积分
5452
发表于 2025-2-28 21:48:20 | 显示全部楼层
183443*** 发表于 2025-2-28 21:43
那可不可以辛苦一小小王工,在有空的时候,整个例程学习学习可好,感觉我有点过分了 ...

明天有空我给你写个,可指定脉冲数量串输出
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:454
  • 最近打卡:2025-05-01 07:53:22

28

主题

162

回帖

1879

积分

金牌会员

积分
1879
发表于 2025-2-28 21:53:22 来自手机 | 显示全部楼层
王昱顺 发表于 2025-2-28 21:48
明天有空我给你写个,可指定脉冲数量串输出

好嘞,谢谢,谢谢,您辛苦了

点评

写完了,使用了AI8051U的擎天柱核心板验证 在P21引脚上输出1Hz的方波5次后,停下堵塞延时1.5S,然后继续运行,如此循环往复。 调的这么慢主要是方便观察,可以自行拉升频率,因为是硬件计数加中断的模式,所以频率  详情 回复 发表于 2025-3-1 13:44
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:458
  • 最近打卡:2025-05-01 07:48:22
已绑定手机
已实名认证

110

主题

2219

回帖

5452

积分

版主

积分
5452
发表于 2025-3-1 13:44:14 | 显示全部楼层
183443*** 发表于 2025-2-28 21:53
好嘞,谢谢,谢谢,您辛苦了

PWMB输出,PWMA脉冲计数.zip (41.32 KB, 下载次数: 11)

写完了,使用了AI8051U的擎天柱核心板验证
在P21引脚上输出1Hz的方波5次后,停下堵塞延时1.5S,然后继续运行,如此循环往复。
调的这么慢主要是方便观察,可以自行拉升频率,因为是硬件计数加中断的模式,所以频率到Mhz级别也是没问题的。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:454
  • 最近打卡:2025-05-01 07:53:22

28

主题

162

回帖

1879

积分

金牌会员

积分
1879
发表于 2025-3-1 14:16:40 来自手机 | 显示全部楼层
王昱顺 发表于 2025-3-1 13:44
写完了,使用了AI8051U的擎天柱核心板验证
在P21引脚上输出1Hz的方波5次后,停下堵塞延时1.5S,然后继 ...

感谢王工,下午就上机
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-2 02:48 , Processed in 0.220257 second(s), 108 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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