Advertisement
Guest User

Untitled

a guest
Nov 20th, 2018
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.72 KB | None | 0 0
  1. // Encoder mode init
  2. TIM_TimeBaseStructure.TIM_Period = 0x6;
  3. TIM_TimeBaseStructure.TIM_Prescaler = 0;
  4. TIM_TimeBaseStructure.TIM_ClockDivision = 0;
  5. TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
  6. TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure);
  7. TIM_EncoderInterfaceConfig(TIM3, TIM_EncoderMode_TI12, TIM_ICPolarity_Rising, TIM_ICPolarity_Rising);
  8. TIM_SetCounter(TIM3, 0x3);
  9. TIM_ITConfig(TIM3, TIM_IT_Update, ENABLE);
  10. TIM_Cmd(TIM3, ENABLE);
  11. NVIC_EnableIRQ(TIM3_IRQn);
  12.  
  13.  
  14. void TIM3_IRQHandler()
  15. {
  16. if (TIM3->CR1 & TIM_CR1_DIR)
  17. ENC.RotDir = ENC_Rot_Down;
  18. else
  19. ENC.RotDir = ENC_Rot_Up;
  20. ENC.NewRotEvent = 1;
  21.  
  22. TIM_SetCounter(TIM3, 0x3);
  23. TIM_ClearITPendingBit(TIM3, TIM_IT_Update);
  24. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement