浮名此生分享 http://blog.sciencenet.cn/u/hailangww 工学博士

博文

基于DSP的电机控制子函数

已有 947 次阅读 2022-12-16 16:56 |系统分类:科研笔记

INT16 sub_1E1D3(INT16 *P2, INT16 P3, INT16 *P6)

{

INT16 tmp_A[4];

INT16 i;

INT32 tmp_C;

INT32 tmp_E;


for (i = 0; i<3; i++)

{

   tmp_A[i] =p[6];

}

tmp_C = *p2-p3;

tmp_E = tmp_C*tmp_A[0];

tmp_E = tmp_E >>9;

tmp_E = tmp_E+((tmp_C - *(INT16*)(p2+0x1))*tmp_A[2]>>5);

*(INT16*)(p2+0x1) = tmp_c;

*(INT32*)(p2+0x2) = *(INT32*)(p2+0x2)+tmp_C*tmp_A[1];

tmp_C = 0x3FFFFFFF;

if (*(INT32*)(p2+0x2)>tmp_C)

{

*(INT32*)(p2+0x2)=tmp_C;

}

if (*(INT32*)(p2+0x2)<-tmp_C)

{

*(INT32*)(p2+0x2)=-tmp_C;

}

tmp_E = tmp_E + (*(INT32*)(p2+0x2)>> 15);

tmp_C = tmp_A[3];

if (tmp_E > tmp_C)

{

tmp_E = tmp_C;

}

if (tmp_E < - tmp_C)

{

tmp_E = -tmp_C;

}

return tmp_E;                     // ROM : 0001E22A lretr

}



https://wap.sciencenet.cn/blog-54347-1368137.html

上一篇:[转载]C语言里指针问题
下一篇:基于DSP的电机控制子函数
收藏 IP: 58.34.184.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-26 10:18

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部