西莫电机圈

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

手机号码,快捷登录

查看: 1133|回复: 1

[求助] 有偿求助-基于英飞凌1782的AD2S1210电机控制旋变位置解码

[复制链接]

该用户从未签到

发表于 2017-4-12 21:15 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本人现在在调试电机控制程序,旋变芯片选用AD2S1210,控制芯片英飞凌TC1782,现在电机位置获取问题上遇到困难,本人起初参照1210芯片手册上的并行 配置模式时许调试位置程序,时序均参照芯片手册上的要求,时间大小和先后顺序均没有问题,然后结果是程序只能读取一次电机的位置,每次只有复位后才能继续读取更新的位置信息(仍然只能读取一次)。为此查阅了芯片手册上,貌似得出是因为没有进行sample更新位置和速度信息,但是配置模式的时序上没有sample这部分,所以选择在不打破原有时序要求的前提下,在程序的开始添加sample更新位置和速度,添加的结果是对于读取位置没有什么帮助,仍然是只能读取一次;为此又尝试了并行普通模式,这种方式的结果是每次都在变化(在电机不动,只上弱电的情况下);最后选用串口的IO模拟spi,但是由于现在的时间要求均是纳秒,模拟的时钟结果波形很乱,没有明显的方波趋势,读取也没有结果。
求助各位路过的大神,有做过这方面的帮忙指点一二,有这方面程序的也可以细聊
西莫电机论坛微信公众平台正式上线!★详情请点击★ 西莫电机论坛会员交流专用群欢迎您西莫电机论坛加群请注明论坛用户名及所从事专业,否则不予通过

该用户从未签到

发表于 2017-4-24 16:36 | 显示全部楼层
问题应该出在SPI通信上,在读取完当前的角度值后,需要随便发送一个数到SPI总线下,为读下个角度值做准备
static void read_angle_spi(void)  /*resolver*/
{

if (0u == SSC0_STAT.B.BSY)
{
     reading_unsigned_tmp = ((0x1FFF) & (SSC0_usGetData()));
    position_angle  =  reading_unsigned_tmp>>1;
    SSC0_vSendData(0);//read the next angle
}
西莫电机论坛微信公众平台正式上线!★详情请点击★ 西莫电机论坛会员交流专用群欢迎您西莫电机论坛加群请注明论坛用户名及所从事专业,否则不予通过
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|Archiver|西莫电机圈 ( 浙ICP备10025899号-3 浙公网安备:33028202000436号

GMT+8, 2024-5-21 13:01 , Processed in 0.074075 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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