PWM.h 1006 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. /*
  2. * PWM.h
  3. *
  4. * Created on: 14 janv. 2019
  5. * Author: e_rcluze
  6. */
  7. #ifndef PWM_H_
  8. #define PWM_H_
  9. #include <RTC.h>
  10. #include "tim.h"
  11. #include "Tab.h"
  12. #define S1 0X00
  13. #define S2 0X01
  14. #define S3 0X02
  15. #define S4 0X03
  16. #define S5 0X04
  17. #define S6 0X05
  18. #define S7 0X06
  19. #define S8 0X07
  20. #define S9 0X08
  21. #define S10 0X09
  22. #define MASKS1 0b0000000001
  23. #define MASKS2 0b0000000010
  24. #define MASKS3 0b0000000100
  25. #define MASKS4 0b0000001000
  26. #define MASKS5 0b0000010000
  27. #define MASKS6 0b0000100000
  28. #define MASKS7 0b0001000000
  29. #define MASKS8 0b0010000000
  30. #define MASKS9 0b0100000000
  31. #define MASKS10 0b1000000000
  32. #define PWM_MAX 31250-1
  33. void GerePWM(uint16_t listeSortie, uint8_t pourcentage);
  34. void PWMSetDutyCycle(uint8_t sortie, uint8_t pourcentage);
  35. void PWMStart(uint8_t sortie);
  36. void PWMStop(uint8_t sortie);
  37. uint16_t PourcentageToValue(uint8_t val);
  38. /*
  39. * Fonction qui retourne un pourcentage en fonction de l'heure
  40. */
  41. uint8_t PWMPourcentage(Sortie *s, uint16_t heure);
  42. #endif /* PWM_H_ */