社区闲人 发表于 2024-3-8 21:03:13

尝试用STC32G做伺服驱动器

今年初,想着测试STC32G的潜力极限,就开始尝试
用STC32G替代DSP芯片做伺服驱动器,
即便不成功,就当作技术储备了。

经过2个多月时间的努力,对核心代码在以下3个方面做了一些工作:
1、优化算法,完善代码。
2、榨干KEILC251的编译潜力,生成最优的汇编代码。
3、嵌入汇编,充分利用STC32独有的单周期指令,

结果很好,支持2500线光电编码器(软件4倍频到10000线)。
STC32G8K64@RMB1.8, 运行于42MHz,
核心代码在平均1us时间可以完成:
1、多圈计数。
2、单圈位置计数。
3、扇区切换计算。
4、电子齿轮比计算。
5、编码器故障检测。
6、软件4倍频并判向。

目前信心大增,准备硬件电路并打板。采纳网友意见,
采用荣湃的隔离芯片π120M31,替代6N137高速光耦。

不足之处:
1、还是MCU的主频太低,驱动控制策略只能采用简化算法,
   例如:只能采用准正弦波驱动算法。又大大提高了编程难度。
2、拟采用内部RC的42MHz,会造成速度模式时受温漂影响大。
    主要考虑外部42MHz晶振采购有难度,又担心高频晶振启动困难,
   
提前发贴的目的,是向坛友展示STC32的强大。
还有就是希望STC尽快推出高主频的STC32芯片,
扩大其使用范围。


神农鼎 发表于 2024-3-8 21:53:16

STC32G8K64-42I-LQFP48, RMB1.8; 可以跑内部 42MHz
数据手册下载:

深圳国芯人工智能有限公司-产品_STC32系列 (stcai.com)


社区闲人 发表于 2024-3-8 21:57:32

STC32继承了51的强大位处理能力,新增加的指令集更加强大。
在通用MCU里,STC32是DSP芯片之外实时响应最好的。

神农鼎 发表于 2024-3-8 21:57:53

STC32G8K64-42MHz 的内部高速HIRC时钟 温漂 其实很小





神农鼎 发表于 2024-3-8 22:01:17

如对时钟有特殊要求 !
可使用 外部 32768-RTC 时钟,
自动校准 【内部高速IRC时钟,42MHz】 !











soma 发表于 2024-3-8 22:01:21

大部分单片机都能驱动伺服吧

社区闲人 发表于 2024-3-8 22:09:51

soma 发表于 2024-3-8 22:01
大部分单片机都能驱动伺服吧

是用STC芯片做伺服驱动器的主控MCU.

神农鼎 发表于 2024-3-8 22:11:18

社区闲人 发表于 2024-3-8 21:57
STC32继承了51的强大位处理能力,新增加的指令集更加强大。
在通用MCU里,STC32是DSP芯片之外实时相应最好 ...老兄弟,熟悉 DSP !帮审核下我们这个 新一代 STC32 的
【DPU32 超算 中心】的 DSP指令 还遗漏了哪些




向 【64位超算中心】前进的 DPU32@STC32G96K256,全新 32位8051 - STC 实验箱/核心功能实验板,原理图,MCU结构讨论区,大学教材 - 国芯论坛-STC全球32位8051爱好者互助交流社区 - STC全球32位8051爱好者互助交流社区 (stcaimcu.com)

WHX 发表于 2024-3-9 09:09:47

好呀,这个不错,早就有利于STC芯片做伺服驱动器的想法,就是能力太菜而无法下手,顶礼膜拜了,学习学习!!!{:4_250:}{:4_250:}{:4_250:}

飞捷 发表于 2024-3-9 11:03:40

这得多少计算量啊。。。太牛了
页: [1] 2
查看完整版本: 尝试用STC32G做伺服驱动器