CHAPTER 4 PROGRAM LIST
Application Note U17209EJ1V0AN
74
}
if ( (sw_mode == CCW) || (sw_mode == STOP) ) {
proc_no = 3 ; /* Deceleration, set processing number */
}
break ;
/* CW processing, constant-speed */
case 2 :
object_speed = speed ;
if ( (sw_mode == CCW) || (sw_mode == STOP) ) {
proc_no = 3 ; /* Deceleration, set processing number */
}
break ;
/* CW stop processing */
case 3 :
if ( accel_count == 0 ) {
accel_count = ACCEL_VAL ; /* Set acceleration/deceleration counter */
if ( object_speed > SPEED_MINI ) {
object_speed -= accel_spd ;
if ( object_speed < SPEED_MINI ) object_speed = SPEED_MINI;
timer_count = WATCH_START ; /* Set speed monitor start time to 5 SEC */
} else {
stop_flag = ON ; /* Stop flag on */
proc_no = 0 ; /* Set stop processing number */
}
}
break ;
/* CCW processing, acceleration */
case 4 :
if ( accel_count == 0 ) {
accel_count = ACCEL_VAL ; /* Set acceleration/deceleration counter */
if ( object_speed < -speed ) {
object_speed += accel_spd ;
if ( object_speed > -speed ) object_speed = -speed;
timer_count = WATCH_START ; /* Set speed monitor start time to 5 SEC */
} else if ( object_speed > -speed ) {
object_speed -= accel_spd ;
if ( object_speed < -speed ) object_speed = -speed;
timer_count = WATCH_START ; /* Set speed monitor start time to 5 SEC */
} else {
proc_no = 5 ; /* Constant-speed processing */
}
}
if ( (sw_mode == CW) || (sw_mode == STOP) ) {
proc_no = 6 ; /* Deceleration, set processing number */
}
break ;
/* CCW processing, constant-speed */
case 5 :