Avion Radio IUT / Mbed 2 deprecated MecatroPWM

Dependencies:   mbed

Committer:
qmaker
Date:
Thu Apr 15 08:43:24 2021 +0000
Revision:
3:3bc2882232a6
Parent:
1:b44f69eb07c4
en cours de dev

Who changed what in which revision?

UserRevisionLine numberNew contents of line
qmaker 1:b44f69eb07c4 1 #include "mbed.h"
qmaker 1:b44f69eb07c4 2
qmaker 1:b44f69eb07c4 3 #if defined (TARGET_NUCLEO_F030R8) || (TARGET_DISCO_F051R8)
qmaker 1:b44f69eb07c4 4 __IO uint32_t* getChannel(TIM_TypeDef* pwm, PinName pin) {
qmaker 1:b44f69eb07c4 5 switch (pin) {
qmaker 1:b44f69eb07c4 6 // Channels 1
qmaker 1:b44f69eb07c4 7 case PA_4: case PA_6: case PB_1: case PB_4: case PB_8: case PB_9: case PB_14: case PC_6: case PB_6: case PB_7:
qmaker 1:b44f69eb07c4 8 return &pwm->CCR1;
qmaker 1:b44f69eb07c4 9
qmaker 1:b44f69eb07c4 10 // Channels 2
qmaker 1:b44f69eb07c4 11 case PA_7: case PB_5: case PC_7:
qmaker 1:b44f69eb07c4 12 return &pwm->CCR2;
qmaker 1:b44f69eb07c4 13
qmaker 1:b44f69eb07c4 14 // Channels 3
qmaker 1:b44f69eb07c4 15 case PB_0: case PC_8:
qmaker 1:b44f69eb07c4 16 return &pwm->CCR3;
qmaker 1:b44f69eb07c4 17
qmaker 1:b44f69eb07c4 18 // Channels 4
qmaker 1:b44f69eb07c4 19 case PC_9:
qmaker 1:b44f69eb07c4 20 return &pwm->CCR4;
qmaker 1:b44f69eb07c4 21 }
qmaker 1:b44f69eb07c4 22 return NULL;
qmaker 1:b44f69eb07c4 23 }
qmaker 1:b44f69eb07c4 24 #endif
qmaker 1:b44f69eb07c4 25
qmaker 1:b44f69eb07c4 26 #if defined (TARGET_NUCLEO_F103RB) || (TARGET_DISCO_F100RB)
qmaker 1:b44f69eb07c4 27 __IO uint32_t* getChannel(TIM_TypeDef* pwm, PinName pin) {
qmaker 1:b44f69eb07c4 28 switch (pin) {
qmaker 1:b44f69eb07c4 29 // Channels 1 : PWMx/1
qmaker 1:b44f69eb07c4 30 case PA_6: case PA_8: case PA_15: case PB_4: case PC_6: case PB_13:
qmaker 1:b44f69eb07c4 31 return &pwm->CCR1;
qmaker 1:b44f69eb07c4 32
qmaker 1:b44f69eb07c4 33 // Channels 2 : PWMx/2
qmaker 1:b44f69eb07c4 34 case PA_1: case PA_7: case PA_9: case PB_3: case PB_5: case PC_7: case PB_14:
qmaker 1:b44f69eb07c4 35 return &pwm->CCR2;
qmaker 1:b44f69eb07c4 36
qmaker 1:b44f69eb07c4 37 // Channels 3 : PWMx/3
qmaker 1:b44f69eb07c4 38 case PA_2: case PA_10: case PB_0: case PB_10: case PC_8: case PB_15:
qmaker 1:b44f69eb07c4 39 return &pwm->CCR3;
qmaker 1:b44f69eb07c4 40
qmaker 1:b44f69eb07c4 41 // Channels 4 : PWMx/4
qmaker 1:b44f69eb07c4 42 case PA_3: case PA_11: case PB_1: case PB_11: case PC_9:
qmaker 1:b44f69eb07c4 43 return &pwm->CCR4;
qmaker 1:b44f69eb07c4 44 }
qmaker 1:b44f69eb07c4 45 return NULL;
qmaker 1:b44f69eb07c4 46 }
qmaker 1:b44f69eb07c4 47 #endif
qmaker 1:b44f69eb07c4 48
qmaker 1:b44f69eb07c4 49 #if defined TARGET_NUCLEO_F072RB
qmaker 1:b44f69eb07c4 50 __IO uint32_t* getChannel(TIM_TypeDef* pwm, PinName pin) {
qmaker 1:b44f69eb07c4 51 switch (pin) {
qmaker 1:b44f69eb07c4 52 // Channels 1 : PWMx/1
qmaker 1:b44f69eb07c4 53 case PA_2: case PA_6: case PA_4: case PA_7: case PA_8: case PB_1: case PB_4: case PB_8: case PB_9: case PB_14: case PC_6:
qmaker 1:b44f69eb07c4 54 // Channels 1N : PWMx/1N
qmaker 1:b44f69eb07c4 55 case PA_1: case PB_6: case PB_7: case PB_13:
qmaker 1:b44f69eb07c4 56 return &pwm->CCR1;
qmaker 1:b44f69eb07c4 57
qmaker 1:b44f69eb07c4 58 // Channels 2 : PWMx/2
qmaker 1:b44f69eb07c4 59 case PA_3: case PA_9: case PB_5: case PC_7: case PB_15:
qmaker 1:b44f69eb07c4 60 return &pwm->CCR2;
qmaker 1:b44f69eb07c4 61
qmaker 1:b44f69eb07c4 62 // Channels 3 : PWMx/3
qmaker 1:b44f69eb07c4 63 case PA_10: case PB_0: case PC_8:
qmaker 1:b44f69eb07c4 64 return &pwm->CCR3;
qmaker 1:b44f69eb07c4 65
qmaker 1:b44f69eb07c4 66 // Channels 4 : PWMx/4
qmaker 1:b44f69eb07c4 67 case PA_11: case PC_9:
qmaker 1:b44f69eb07c4 68 return &pwm->CCR4;
qmaker 1:b44f69eb07c4 69 }
qmaker 1:b44f69eb07c4 70 return NULL;
qmaker 1:b44f69eb07c4 71 }
qmaker 1:b44f69eb07c4 72 #endif
qmaker 1:b44f69eb07c4 73
qmaker 1:b44f69eb07c4 74
qmaker 1:b44f69eb07c4 75
qmaker 1:b44f69eb07c4 76 #if defined (TARGET_NUCLEO_L152RE)
qmaker 1:b44f69eb07c4 77 __IO uint32_t* getChannel(TIM_TypeDef* pwm, PinName pin) {
qmaker 1:b44f69eb07c4 78 switch (pin) {
qmaker 1:b44f69eb07c4 79 // Channels 1 : PWMx/1
qmaker 1:b44f69eb07c4 80 case PA_6: case PB_4: case PB_12: case PB_13: case PC_6:
qmaker 1:b44f69eb07c4 81 return &pwm->CCR1;
qmaker 1:b44f69eb07c4 82
qmaker 1:b44f69eb07c4 83 // Channels 2 : PWMx/2
qmaker 1:b44f69eb07c4 84 case PA_1: case PA_7: case PB_3: case PB_5: case PB_14: case PB_7: case PC_7:
qmaker 1:b44f69eb07c4 85 return &pwm->CCR2;
qmaker 1:b44f69eb07c4 86
qmaker 1:b44f69eb07c4 87 // Channels 3 : PWMx/3
qmaker 1:b44f69eb07c4 88 case PA_2: case PB_0: case PB_8: case PB_10: case PC_8:
qmaker 1:b44f69eb07c4 89 return &pwm->CCR3;
qmaker 1:b44f69eb07c4 90
qmaker 1:b44f69eb07c4 91 // Channels 4 : PWMx/4
qmaker 1:b44f69eb07c4 92 case PA_3: case PB_1:case PB_9: case PB_11: case PC_9:
qmaker 1:b44f69eb07c4 93 return &pwm->CCR4;
qmaker 1:b44f69eb07c4 94 default:
qmaker 1:b44f69eb07c4 95 /* NOP */
qmaker 1:b44f69eb07c4 96 break;
qmaker 1:b44f69eb07c4 97 }
qmaker 1:b44f69eb07c4 98 return NULL;
qmaker 1:b44f69eb07c4 99 }
qmaker 1:b44f69eb07c4 100 #endif
qmaker 1:b44f69eb07c4 101
qmaker 1:b44f69eb07c4 102