Browse Source

Reorder HAL timer header items

Scott Lahteine 7 years ago
parent
commit
37b15fe4cf

+ 6
- 7
Marlin/src/HAL/HAL_AVR/HAL.h View File

117
 //void eeprom_write_byte(unsigned char *pos, unsigned char value);
117
 //void eeprom_write_byte(unsigned char *pos, unsigned char value);
118
 //unsigned char eeprom_read_byte(unsigned char *pos);
118
 //unsigned char eeprom_read_byte(unsigned char *pos);
119
 
119
 
120
-
121
 // timers
120
 // timers
122
 #define HAL_TIMER_RATE          ((F_CPU) / 8)    // i.e., 2MHz or 2.5MHz
121
 #define HAL_TIMER_RATE          ((F_CPU) / 8)    // i.e., 2MHz or 2.5MHz
123
-#define HAL_TICKS_PER_US        ((HAL_STEPPER_TIMER_RATE) / 1000000) // Cannot be of type double
124
 
122
 
125
-#define TEMP_TIMER_FREQUENCY    ((F_CPU) / 64.0 / 256.0)
123
+#define STEP_TIMER_NUM          1
124
+#define TEMP_TIMER_NUM          0
125
+#define PULSE_TIMER_NUM         TEMP_TIMER_NUM
126
 
126
 
127
 #define HAL_STEPPER_TIMER_RATE  HAL_TIMER_RATE
127
 #define HAL_STEPPER_TIMER_RATE  HAL_TIMER_RATE
128
+#define HAL_TICKS_PER_US        ((HAL_STEPPER_TIMER_RATE) / 1000000) // Cannot be of type double
128
 #define STEPPER_TIMER_PRESCALE  8
129
 #define STEPPER_TIMER_PRESCALE  8
129
-
130
 #define STEP_TIMER_MIN_INTERVAL 8 // minimum time in µs between stepper interrupts
130
 #define STEP_TIMER_MIN_INTERVAL 8 // minimum time in µs between stepper interrupts
131
 
131
 
132
-#define STEP_TIMER_NUM          1
132
+#define TEMP_TIMER_FREQUENCY    ((F_CPU) / 64.0 / 256.0)
133
+
133
 #define TIMER_OCR_1             OCR1A
134
 #define TIMER_OCR_1             OCR1A
134
 #define TIMER_COUNTER_1         TCNT1
135
 #define TIMER_COUNTER_1         TCNT1
135
 
136
 
136
-#define TEMP_TIMER_NUM          0
137
 #define TIMER_OCR_0             OCR0A
137
 #define TIMER_OCR_0             OCR0A
138
 #define TIMER_COUNTER_0         TCNT0
138
 #define TIMER_COUNTER_0         TCNT0
139
 
139
 
140
-#define PULSE_TIMER_NUM         TEMP_TIMER_NUM
141
 #define PULSE_TIMER_PRESCALE    8
140
 #define PULSE_TIMER_PRESCALE    8
142
 
141
 
143
 #define ENABLE_STEPPER_DRIVER_INTERRUPT()  SBI(TIMSK1, OCIE1A)
142
 #define ENABLE_STEPPER_DRIVER_INTERRUPT()  SBI(TIMSK1, OCIE1A)

+ 6
- 5
Marlin/src/HAL/HAL_DUE/HAL_timers_Due.h View File

48
 #define TONE_TIMER_NUM 6  // index of timer to use for beeper tones
48
 #define TONE_TIMER_NUM 6  // index of timer to use for beeper tones
49
 
49
 
50
 #define HAL_TIMER_RATE         ((F_CPU) / 2)    // frequency of timers peripherals
50
 #define HAL_TIMER_RATE         ((F_CPU) / 2)    // frequency of timers peripherals
51
-#define STEPPER_TIMER_PRESCALE (CYCLES_PER_MICROSECOND / HAL_TICKS_PER_US)
51
+
52
 #define HAL_STEPPER_TIMER_RATE HAL_TIMER_RATE   // frequency of stepper timer (HAL_TIMER_RATE / STEPPER_TIMER_PRESCALE)
52
 #define HAL_STEPPER_TIMER_RATE HAL_TIMER_RATE   // frequency of stepper timer (HAL_TIMER_RATE / STEPPER_TIMER_PRESCALE)
53
 #define HAL_TICKS_PER_US       ((HAL_STEPPER_TIMER_RATE) / 1000000) // stepper timer ticks per µs
53
 #define HAL_TICKS_PER_US       ((HAL_STEPPER_TIMER_RATE) / 1000000) // stepper timer ticks per µs
54
+#define STEPPER_TIMER_PRESCALE (CYCLES_PER_MICROSECOND / HAL_TICKS_PER_US)
55
+#define STEP_TIMER_MIN_INTERVAL   8 // minimum time in µs between stepper interrupts
54
 
56
 
55
 #define TEMP_TIMER_FREQUENCY   1000 // temperature interrupt frequency
57
 #define TEMP_TIMER_FREQUENCY   1000 // temperature interrupt frequency
56
-#define STEP_TIMER_MIN_INTERVAL   8 // minimum time in µs between stepper interrupts
58
+
59
+#define PULSE_TIMER_NUM STEP_TIMER_NUM
60
+#define PULSE_TIMER_PRESCALE STEPPER_TIMER_PRESCALE
57
 
61
 
58
 #define ENABLE_STEPPER_DRIVER_INTERRUPT() HAL_timer_enable_interrupt(STEP_TIMER_NUM)
62
 #define ENABLE_STEPPER_DRIVER_INTERRUPT() HAL_timer_enable_interrupt(STEP_TIMER_NUM)
59
 #define DISABLE_STEPPER_DRIVER_INTERRUPT()  HAL_timer_disable_interrupt(STEP_TIMER_NUM)
63
 #define DISABLE_STEPPER_DRIVER_INTERRUPT()  HAL_timer_disable_interrupt(STEP_TIMER_NUM)
66
 #define HAL_TEMP_TIMER_ISR  void TC4_Handler()
70
 #define HAL_TEMP_TIMER_ISR  void TC4_Handler()
67
 #define HAL_TONE_TIMER_ISR  void TC6_Handler()
71
 #define HAL_TONE_TIMER_ISR  void TC6_Handler()
68
 
72
 
69
-#define PULSE_TIMER_NUM STEP_TIMER_NUM
70
-#define PULSE_TIMER_PRESCALE STEPPER_TIMER_PRESCALE
71
-
72
 // --------------------------------------------------------------------------
73
 // --------------------------------------------------------------------------
73
 // Types
74
 // Types
74
 // --------------------------------------------------------------------------
75
 // --------------------------------------------------------------------------

+ 5
- 4
Marlin/src/HAL/HAL_LPC1768/HAL_timers.h View File

45
 
45
 
46
 #define STEP_TIMER_NUM 0  // index of timer to use for stepper
46
 #define STEP_TIMER_NUM 0  // index of timer to use for stepper
47
 #define TEMP_TIMER_NUM 1  // index of timer to use for temperature
47
 #define TEMP_TIMER_NUM 1  // index of timer to use for temperature
48
+#define PULSE_TIMER_NUM STEP_TIMER_NUM
48
 
49
 
49
 #define HAL_TIMER_RATE         ((SystemCoreClock) / 4)  // frequency of timers peripherals
50
 #define HAL_TIMER_RATE         ((SystemCoreClock) / 4)  // frequency of timers peripherals
50
-#define STEPPER_TIMER_PRESCALE (CYCLES_PER_MICROSECOND / HAL_TICKS_PER_US)
51
 #define HAL_STEPPER_TIMER_RATE HAL_TIMER_RATE   // frequency of stepper timer (HAL_TIMER_RATE / STEPPER_TIMER_PRESCALE)
51
 #define HAL_STEPPER_TIMER_RATE HAL_TIMER_RATE   // frequency of stepper timer (HAL_TIMER_RATE / STEPPER_TIMER_PRESCALE)
52
 #define HAL_TICKS_PER_US       ((HAL_STEPPER_TIMER_RATE) / 1000000) // stepper timer ticks per µs
52
 #define HAL_TICKS_PER_US       ((HAL_STEPPER_TIMER_RATE) / 1000000) // stepper timer ticks per µs
53
-#define HAL_TEMP_TIMER_RATE    1000000
54
-#define TEMP_TIMER_FREQUENCY   1000 // temperature interrupt frequency
53
+#define STEPPER_TIMER_PRESCALE (CYCLES_PER_MICROSECOND / HAL_TICKS_PER_US)
55
 
54
 
56
 #define STEP_TIMER_MIN_INTERVAL   8 // minimum time in µs between stepper interrupts
55
 #define STEP_TIMER_MIN_INTERVAL   8 // minimum time in µs between stepper interrupts
57
 
56
 
58
-#define PULSE_TIMER_NUM STEP_TIMER_NUM
57
+#define HAL_TEMP_TIMER_RATE    1000000
58
+#define TEMP_TIMER_FREQUENCY   1000 // temperature interrupt frequency
59
+
59
 #define PULSE_TIMER_PRESCALE STEPPER_TIMER_PRESCALE
60
 #define PULSE_TIMER_PRESCALE STEPPER_TIMER_PRESCALE
60
 
61
 
61
 #define ENABLE_STEPPER_DRIVER_INTERRUPT() HAL_timer_enable_interrupt(STEP_TIMER_NUM)
62
 #define ENABLE_STEPPER_DRIVER_INTERRUPT() HAL_timer_enable_interrupt(STEP_TIMER_NUM)

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

56
 #define STEP_TIMER_CHAN 1 // Channel of the timer to use for compare and interrupts
56
 #define STEP_TIMER_CHAN 1 // Channel of the timer to use for compare and interrupts
57
 #define TEMP_TIMER_NUM 2  // index of timer to use for temperature
57
 #define TEMP_TIMER_NUM 2  // index of timer to use for temperature
58
 #define TEMP_TIMER_CHAN 1 // Channel of the timer to use for compare and interrupts
58
 #define TEMP_TIMER_CHAN 1 // Channel of the timer to use for compare and interrupts
59
+#define PULSE_TIMER_NUM STEP_TIMER_NUM
59
 
60
 
60
 timer_dev* get_timer_dev(int number);
61
 timer_dev* get_timer_dev(int number);
61
 
62
 
68
 
69
 
69
 #define HAL_TIMER_RATE         (F_CPU)  // frequency of timers peripherals
70
 #define HAL_TIMER_RATE         (F_CPU)  // frequency of timers peripherals
70
 #define STEPPER_TIMER_PRESCALE 18             // prescaler for setting stepper timer, 4Mhz
71
 #define STEPPER_TIMER_PRESCALE 18             // prescaler for setting stepper timer, 4Mhz
71
-#define HAL_STEPPER_TIMER_RATE (HAL_TIMER_RATE / STEPPER_TIMER_PRESCALE)   // frequency of stepper timer (HAL_TIMER_RATE / STEPPER_TIMER_PRESCALE)
72
+#define HAL_STEPPER_TIMER_RATE (HAL_TIMER_RATE / STEPPER_TIMER_PRESCALE)   // frequency of stepper timer
72
 #define HAL_TICKS_PER_US       ((HAL_STEPPER_TIMER_RATE) / 1000000) // stepper timer ticks per µs
73
 #define HAL_TICKS_PER_US       ((HAL_STEPPER_TIMER_RATE) / 1000000) // stepper timer ticks per µs
73
 
74
 
74
-#define PULSE_TIMER_NUM STEP_TIMER_NUM
75
 #define PULSE_TIMER_PRESCALE STEPPER_TIMER_PRESCALE
75
 #define PULSE_TIMER_PRESCALE STEPPER_TIMER_PRESCALE
76
 
76
 
77
 #define TEMP_TIMER_PRESCALE     1000 // prescaler for setting Temp timer, 72Khz
77
 #define TEMP_TIMER_PRESCALE     1000 // prescaler for setting Temp timer, 72Khz

+ 1
- 1
Marlin/src/HAL/HAL_STM32F4/HAL_timers_STM32F4.h View File

43
 
43
 
44
 #define HAL_TIMER_RATE         (HAL_RCC_GetSysClockFreq() / 2)  // frequency of timer peripherals
44
 #define HAL_TIMER_RATE         (HAL_RCC_GetSysClockFreq() / 2)  // frequency of timer peripherals
45
 #define STEPPER_TIMER_PRESCALE 54            // was 40,prescaler for setting stepper timer, 2Mhz
45
 #define STEPPER_TIMER_PRESCALE 54            // was 40,prescaler for setting stepper timer, 2Mhz
46
-#define HAL_STEPPER_TIMER_RATE (HAL_TIMER_RATE / STEPPER_TIMER_PRESCALE)   // frequency of stepper timer (HAL_TIMER_RATE / STEPPER_TIMER_PRESCALE)
46
+#define HAL_STEPPER_TIMER_RATE (HAL_TIMER_RATE / STEPPER_TIMER_PRESCALE)   // frequency of stepper timer
47
 #define HAL_TICKS_PER_US       ((HAL_STEPPER_TIMER_RATE) / 1000000) // stepper timer ticks per µs
47
 #define HAL_TICKS_PER_US       ((HAL_STEPPER_TIMER_RATE) / 1000000) // stepper timer ticks per µs
48
 
48
 
49
 #define PULSE_TIMER_NUM STEP_TIMER_NUM
49
 #define PULSE_TIMER_NUM STEP_TIMER_NUM

+ 1
- 1
Marlin/src/HAL/HAL_STM32F7/HAL_timers_STM32F7.h View File

43
 
43
 
44
 #define HAL_TIMER_RATE         (HAL_RCC_GetSysClockFreq() / 2)  // frequency of timer peripherals
44
 #define HAL_TIMER_RATE         (HAL_RCC_GetSysClockFreq() / 2)  // frequency of timer peripherals
45
 #define STEPPER_TIMER_PRESCALE 54            // was 40,prescaler for setting stepper timer, 2Mhz
45
 #define STEPPER_TIMER_PRESCALE 54            // was 40,prescaler for setting stepper timer, 2Mhz
46
-#define HAL_STEPPER_TIMER_RATE (HAL_TIMER_RATE / STEPPER_TIMER_PRESCALE)   // frequency of stepper timer (HAL_TIMER_RATE / STEPPER_TIMER_PRESCALE)
46
+#define HAL_STEPPER_TIMER_RATE (HAL_TIMER_RATE / STEPPER_TIMER_PRESCALE)   // frequency of stepper timer
47
 #define HAL_TICKS_PER_US       ((HAL_STEPPER_TIMER_RATE) / 1000000) // stepper timer ticks per µs
47
 #define HAL_TICKS_PER_US       ((HAL_STEPPER_TIMER_RATE) / 1000000) // stepper timer ticks per µs
48
 
48
 
49
 #define PULSE_TIMER_NUM STEP_TIMER_NUM
49
 #define PULSE_TIMER_NUM STEP_TIMER_NUM

+ 4
- 7
Marlin/src/HAL/HAL_TEENSY35_36/HAL_timers_Teensy.h View File

45
 
45
 
46
 #define STEP_TIMER_NUM 0
46
 #define STEP_TIMER_NUM 0
47
 #define TEMP_TIMER_NUM 1
47
 #define TEMP_TIMER_NUM 1
48
+#define PULSE_TIMER_NUM STEP_TIMER_NUM
48
 
49
 
49
 #define FTM0_TIMER_PRESCALE 8
50
 #define FTM0_TIMER_PRESCALE 8
50
 #define FTM1_TIMER_PRESCALE 4
51
 #define FTM1_TIMER_PRESCALE 4
54
 #define FTM0_TIMER_RATE (F_BUS / FTM0_TIMER_PRESCALE) // 60MHz / 8 = 7500kHz
55
 #define FTM0_TIMER_RATE (F_BUS / FTM0_TIMER_PRESCALE) // 60MHz / 8 = 7500kHz
55
 #define FTM1_TIMER_RATE (F_BUS / FTM1_TIMER_PRESCALE) // 60MHz / 4 = 15MHz
56
 #define FTM1_TIMER_RATE (F_BUS / FTM1_TIMER_PRESCALE) // 60MHz / 4 = 15MHz
56
 
57
 
57
-#define STEPPER_TIMER STEP_TIMER_NUM // Alias?
58
-#define STEPPER_TIMER_PRESCALE (CYCLES_PER_MICROSECOND / HAL_TICKS_PER_US)
59
-
60
-#define PULSE_TIMER_NUM STEP_TIMER_NUM
61
-#define PULSE_TIMER_PRESCALE STEPPER_TIMER_PRESCALE
62
-
63
 #define HAL_TIMER_RATE         (FTM0_TIMER_RATE)
58
 #define HAL_TIMER_RATE         (FTM0_TIMER_RATE)
64
 #define HAL_STEPPER_TIMER_RATE HAL_TIMER_RATE
59
 #define HAL_STEPPER_TIMER_RATE HAL_TIMER_RATE
65
 #define HAL_TICKS_PER_US       ((HAL_STEPPER_TIMER_RATE) / 1000000)
60
 #define HAL_TICKS_PER_US       ((HAL_STEPPER_TIMER_RATE) / 1000000)
61
+#define STEPPER_TIMER_PRESCALE (CYCLES_PER_MICROSECOND / HAL_TICKS_PER_US)
62
+#define STEP_TIMER_MIN_INTERVAL   8 // minimum time in µs between stepper interrupts
66
 
63
 
67
 #define TEMP_TIMER_FREQUENCY   1000
64
 #define TEMP_TIMER_FREQUENCY   1000
68
 
65
 
69
-#define STEP_TIMER_MIN_INTERVAL   8 // minimum time in µs between stepper interrupts
66
+#define PULSE_TIMER_PRESCALE STEPPER_TIMER_PRESCALE
70
 
67
 
71
 #define ENABLE_STEPPER_DRIVER_INTERRUPT() HAL_timer_enable_interrupt(STEP_TIMER_NUM)
68
 #define ENABLE_STEPPER_DRIVER_INTERRUPT() HAL_timer_enable_interrupt(STEP_TIMER_NUM)
72
 #define DISABLE_STEPPER_DRIVER_INTERRUPT() HAL_timer_disable_interrupt(STEP_TIMER_NUM)
69
 #define DISABLE_STEPPER_DRIVER_INTERRUPT() HAL_timer_disable_interrupt(STEP_TIMER_NUM)

Loading…
Cancel
Save