资深版主
 
- 积分
- 11474
- 金钱
- 11474
- 注册时间
- 2014-4-1
- 在线时间
- 1297 小时
|
发表于 2018-1-23 11:16:44
|
显示全部楼层
本帖最后由 xuande 于 2018-1-23 11:22 编辑
时序、通信方面我比较熟悉。可惜不是这方面的问题。我用得可能不如你深入。
我刚才看了下手册,最大速度是 15610 step/s,
只要细分数不超过 15610/600 = 26,应当能达到 600 rpm。
你设置的 200*8 Step/s,也许受最大速度寄存器的限制,没有起作用。应当查查那个寄存器的值。
我个人经验,觉得 5、6、7、8 和 A、B、C 这七个寄存器比较重要,其他都是辅助性质。
下面是我的初始化过程,伪代码。供参考。
/*--------------------------------------------*/
void L6470initialization(void)
{
R05= 0x800; //Set Acceleration.
R06 = 0x800; //Set Deceleration.
R07= 0x200; //Set Maximum speed.
R08 = 0x200; //Set Minimum speed.
R0A= 0xA0; //Set Constant speed KVAL.
R0B = 0xA0; //Set Acceleration starting KVAL.
R0C = 0xA0; //Set Deceleration starting KVAL.
}
/*--------------------------------------------*/
|
|