📄 work_par.c
字号:
#include "globaltype.h"
#include "define.h"
#include "motor.h"
extern unsigned char error_report;
extern struct placed_relate_parm palced_magor[];
extern unsigned char Uart_recBuf[];
extern unsigned char UartBufWp;
extern void exchage_speed(unsigned char const_speed,unsigned char motor_number);
void clear_uart_buf(void);
unsigned char work_par_set(unsigned char motor, unsigned char usr_require)
{
unsigned char temp;
palced_magor[motor].old_usr_require = palced_magor[motor].usr_require;
palced_magor[motor].usr_require = usr_require;
switch(motor)//某台电机属性字节提取
{
case 0:
temp = Uart_recBuf[1];
break;
case 1:
temp = Uart_recBuf[5];
break;
case 2:
temp = Uart_recBuf[9];
break;
}
switch(temp&0x02)//判断是否驱动
{
case 0x02:
palced_magor[motor].IS_driver = 1;
switch(temp&0x01)//判断方向
{
case 0x01:
palced_magor[motor].dir = Forward;
break;
case 0x00:
palced_magor[motor].dir = Reverse;
break;
}
switch(motor)//某台电机速速提取
{
case 0:
temp = Uart_recBuf[2];
break;
case 1:
temp = Uart_recBuf[6];
break;
case 2:
temp = Uart_recBuf[10];
break;
}
if(temp)
{
exchage_speed(temp,motor);
palced_magor[motor].g_up_code = UP_CODE;//起速阶段
palced_magor[motor].total_codenumber = 0;
palced_magor[motor].up_normalization_step = NORMALIZE*(palced_magor[motor].start_speed - palced_magor[motor].const_speed)/palced_magor[motor].g_up_code;
//palced_magor[motor].down_normalization_step = NORMALIZE*(palced_magor[motor].end_speed - palced_magor[motor].const_speed)/palced_magor[motor].g_down_code;
}
if(usr_require==0x02)
{
switch(motor)
{
case 0:
palced_magor[0].total_codenumber = Uart_recBuf[4]+(Uart_recBuf[3] << 8);
break;
case 1:
palced_magor[1].total_codenumber = Uart_recBuf[8]+(Uart_recBuf[7] << 8);
break;
case 2:
palced_magor[2].total_codenumber = Uart_recBuf[12]+(Uart_recBuf[11] << 8);
break;
}
palced_magor[motor].g_stab_codenumber =
palced_magor[motor].total_codenumber - UP_CODE - DOWN_CODE;
palced_magor[motor].g_up_code = UP_CODE;//起速阶段
palced_magor[motor].g_down_code = DOWN_CODE;//刹车阶段
palced_magor[motor].down_normalization_step = NORMALIZE*(palced_magor[motor].end_speed - palced_magor[motor].const_speed)/palced_magor[motor].g_down_code;
}
break;
case 0x00:
error_report = 0;
break;
}
return error_report;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -