Browse Source

STM32 non-generic PWM_PIN and USEABLE_HARDWARE_PWM (#12016)

Scott Lahteine 5 years ago
parent
commit
33056046a3
No account linked to committer's email address

+ 1
- 1
Marlin/src/HAL/HAL_DUE/fastio_Due.h View File

@@ -47,7 +47,7 @@
47 47
 
48 48
 // Due has 12 PWMs assigned to logical pins 2-13.
49 49
 // 6, 7, 8 & 9 come from the PWM controller. The others come from the timers.
50
-#define USEABLE_HARDWARE_PWM(p) ((2 <= p) && (p <= 13))
50
+#define USEABLE_HARDWARE_PWM(p) WITHIN(p, 2, 13)
51 51
 
52 52
 #ifndef MASK
53 53
   #define MASK(PIN) (1 << PIN)

+ 3
- 2
Marlin/src/HAL/HAL_STM32/fastio_STM32.h View File

@@ -29,8 +29,6 @@
29 29
 
30 30
 #define _BV(b) (1 << (b))
31 31
 
32
-#define USEABLE_HARDWARE_PWM(p) true
33
-
34 32
 #define READ(IO)                digitalRead(IO)
35 33
 #define WRITE(IO,V)             digitalWrite(IO,V)
36 34
 #define WRITE_VAR(IO,V)         WRITE(IO,V)
@@ -51,3 +49,6 @@
51 49
 #define GET_INPUT(IO)
52 50
 #define GET_OUTPUT(IO)
53 51
 #define GET_TIMER(IO)
52
+
53
+#define PWM_PIN(p) true
54
+#define USEABLE_HARDWARE_PWM(p) PWM_PIN(p)

+ 2
- 4
Marlin/src/HAL/HAL_STM32F1/fastio_Stm32f1.h View File

@@ -50,9 +50,7 @@
50 50
 #define GET_OUTPUT(IO)        (_GET_MODE(IO) == GPIO_OUTPUT_PP)
51 51
 #define GET_TIMER(IO)         (PIN_MAP[IO].timer_device != NULL)
52 52
 
53
-/**
54
- * TODO: Write a macro to test if PIN is PWM or not.
55
- */
56
-#define PWM_PIN(p)            true
53
+#define PWM_PIN(p) digitalPinHasPWM(p)
54
+#define USEABLE_HARDWARE_PWM(p) PWM_PIN(p)
57 55
 
58 56
 #endif // _FASTIO_STM32F1_H

+ 6
- 2
Marlin/src/HAL/HAL_STM32F4/fastio_STM32F4.h View File

@@ -32,8 +32,6 @@
32 32
 #undef _BV
33 33
 #define _BV(b) (1 << (b))
34 34
 
35
-#define USEABLE_HARDWARE_PWM(p) true
36
-
37 35
 #define READ(IO)                digitalRead(IO)
38 36
 #define WRITE(IO,V)             digitalWrite(IO,V)
39 37
 #define WRITE_VAR(IO,V)         WRITE(IO,V)
@@ -55,6 +53,12 @@
55 53
 #define GET_OUTPUT(IO)
56 54
 #define GET_TIMER(IO)
57 55
 
56
+#define PWM_PIN(p) digitalPinHasPWM(p)
57
+#define USEABLE_HARDWARE_PWM(p) PWM_PIN(p)
58
+
59
+//
60
+// Pins Definitions
61
+//
58 62
 #define PORTA 0
59 63
 #define PORTB 1
60 64
 #define PORTC 2

+ 6
- 0
Marlin/src/HAL/HAL_STM32F7/fastio_STM32F7.h View File

@@ -52,6 +52,12 @@
52 52
 #define GET_OUTPUT(IO)
53 53
 #define GET_TIMER(IO)
54 54
 
55
+#define PWM_PIN(p) digitalPinHasPWM(p)
56
+#define USEABLE_HARDWARE_PWM(p) PWM_PIN(p)
57
+
58
+//
59
+// Pins Definitions
60
+//
55 61
 #define PORTA 0
56 62
 #define PORTB 1
57 63
 #define PORTC 2

+ 4
- 1
buildroot/share/tests/STM32F1_tests View File

@@ -8,5 +8,8 @@ opt_set MOTHERBOARD BOARD_STM32F1R
8 8
 opt_enable EEPROM_SETTINGS EEPROM_CHITCHAT REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT
9 9
 exec_test $1 $2 "STM32F1R EEPROM_SETTINGS EEPROM_CHITCHAT REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT"
10 10
 
11
-#cleanup
11
+opt_enable SPINDLE_LASER_ENABLE
12
+exec_test $1 $2 "STM32F1R SPINDLE_LASER_ENABLE"
13
+
14
+# cleanup
12 15
 restore_configs

Loading…
Cancel
Save