| Electronic Components Datasheet Search |
|
AN3208 Datasheet(PDF) 16 Page - STMicroelectronics |
|
|
|||||||||||||||||||||||||||||
AN3208 Datasheet(HTML) 16 Page - STMicroelectronics |
|
16 / 19 page ![]() Software AN3208 16/19 Doc ID 17411 Rev 1 STM8 configurations ● f_Master = 16 MHz (HSIDIV[1:0] = 000) ● TIM1_counter_clock = 8 MHz (TIM1_PSCR = 1) ● PWMx frequency = 60 kHz (TIM1_ARR = 0x85) Equation 1 Example To obtain PWM_duty_cycle_coil1 = 87 %: TIM1_CCR1 = (0.87) x (0x85 + 1) = 0x74 The maximum step rate/speed possible for the M-S motor is 600 full steps/s or 7200 microsteps/s or 7200 Hz. So, the duration between two consecutive microstep output interrupts should be ≥ 139 µs. The 74x244 buffer/driver current limitation should also be considered to determine the maximum speed with which the stepper motor can be driven. In this application the step rate is set to 830 µs. This means that the next microstep is output after 50 PWM interrupts because the PWM frequency is 60 kHz (16.6 µs). This choice of step rate is guaranteed without incurring any problems over the minimum limit of 300 µs. When an overflow interrupt on TIM1 occurs (@ 60 kHz or 16.6 µs), the TIM1 interrupt routine is executed. The flow chart of the TIM1 interrupt is shown in Figure 13. After resetting the overflow flag, the PWM_Count is incremented by 1. When this variable reaches a value of 50, the PWM_Count is reinitialized to 0, and according to Motor_dir information, the needle of the stepper motor moves forwards or backwards (Motor_dir = 0 or Motor_dir = 1 respectively). If the stepper needle moves in forwards, the microstepping number (Microstep_No) is incremented by 1 (up to 24). In this application the pointer shaft of the stepper motors moves the stepper needle from 0 to 320 °. Taking into account that after 24 microsteps the pointer shaft has moved by 2°, a complete movement of 320 ° (the Rotation_No variable which represents the number of rotations) has to reach 160 (160 rotations multiplied by 2 °). After one complete movement, No_rotation is set to 0, while Motor_dir is set to 1. From this point on, the needle moves backwards and, the Microstep_No decreased from 23 to 0. TIM1_CCRx PWMx_duty_cycle_coil_x () TIM1_ARR+1 () × = |
|
|
Link URL |
| Does ALLDATASHEET help your business so far? [ DONATE ] |
About Alldatasheet | Advertisement | Contact us | Privacy Policy | Link to Datasheet | Link Exchange | Manufacturer List All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |