首頁的列表是不是變得清爽且具備吸引力了?
這裡放標題 (二級標題)#
準備用來撰寫玩張用的測試文件。這裡可以自由使用 粗體、斜體 或者 連結。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
/*---------------------------------------------------------------------------*/
/* 煞車距離計算 */
static int GCMCBrakingDistanceCalculate(int iStepCounterRate100Value, int iMotorDrivingPWMDuty, WORD wDecelerationStageDurationTime)
{
DWORD GGD_DMEM dwTotalBrakingDistance;
DWORD GGD_DMEM dwCalculationScaled;
if(iMotorDrivingPWMDuty <= GCMC_MOTOR_PWM_DUTY_MINIMUM)
{
return 0;
}
dwTotalBrakingDistance = 0;
dwCalculationScaled = (iMotorDrivingPWMDuty - GCMC_MOTOR_PWM_DUTY_MINIMUM) * GCMC_CALCULATION_RATE_BASE;
while(iMotorDrivingPWMDuty > GCMC_MOTOR_PWM_DUTY_MINIMUM)
{
/* 把公式中的除數處理延後到最後 */
WORD GGD_DMEM wFragmentDistanceScaled = (iMotorDrivingPWMDuty - GCMC_MOTOR_PWM_DUTY_MINIMUM) * iStepCounterRate100Value;
dwTotalBrakingDistance += wFragmentDistanceScaled * wDecelerationStageDurationTime;
iMotorDrivingPWMDuty -= GCMC_MOTOR_PWM_DUTY_GAIN;
}
/* 一次完成除數處理 */
return (int)((dwTotalBrakingDistance / dwCalculationScaled) * GCMC_BRAKING_DISTANCE_COMPENSATION_FACTOR);
}
|