Allow pins override of *_TIMER_NUM and HAL_*_TIMER_ISR (#18128)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
This commit is contained in:
@ -31,7 +31,6 @@
|
||||
#include "../shared/HAL_SPI.h"
|
||||
|
||||
#include "fastio.h"
|
||||
#include "timers.h"
|
||||
#include "watchdog.h"
|
||||
|
||||
#include <stdint.h>
|
||||
|
@ -21,8 +21,7 @@
|
||||
*/
|
||||
#if defined(STM32GENERIC) && defined(STM32F4)
|
||||
|
||||
#include "../HAL.h"
|
||||
#include "timers.h"
|
||||
#include "../../../inc/MarlinConfig.h"
|
||||
|
||||
// ------------------------
|
||||
// Local defines
|
||||
|
@ -34,9 +34,15 @@
|
||||
|
||||
#define HAL_TIMER_RATE (HAL_RCC_GetSysClockFreq() / 2) // frequency of timer peripherals
|
||||
|
||||
#define STEP_TIMER_NUM 0 // index of timer to use for stepper
|
||||
#define TEMP_TIMER_NUM 1 // index of timer to use for temperature
|
||||
#define PULSE_TIMER_NUM STEP_TIMER_NUM
|
||||
#ifndef STEP_TIMER_NUM
|
||||
#define STEP_TIMER_NUM 0 // Timer Index for Stepper
|
||||
#endif
|
||||
#ifndef PULSE_TIMER_NUM
|
||||
#define PULSE_TIMER_NUM STEP_TIMER_NUM
|
||||
#endif
|
||||
#ifndef TEMP_TIMER_NUM
|
||||
#define TEMP_TIMER_NUM 1 // Timer Index for Temperature
|
||||
#endif
|
||||
|
||||
#define TEMP_TIMER_PRESCALE 1000 // prescaler for setting Temp timer, 72Khz
|
||||
#define TEMP_TIMER_FREQUENCY 1000 // temperature interrupt frequency
|
||||
@ -59,17 +65,19 @@
|
||||
// TODO change this
|
||||
|
||||
#ifdef STM32GENERIC
|
||||
extern void TC5_Handler();
|
||||
extern void TC7_Handler();
|
||||
#define HAL_STEP_TIMER_ISR() void TC5_Handler()
|
||||
#define HAL_TEMP_TIMER_ISR() void TC7_Handler()
|
||||
#define TC_TIMER_ARGS
|
||||
#else
|
||||
extern void TC5_Handler(stimer_t *htim);
|
||||
extern void TC7_Handler(stimer_t *htim);
|
||||
#define HAL_STEP_TIMER_ISR() void TC5_Handler(stimer_t *htim)
|
||||
#define HAL_TEMP_TIMER_ISR() void TC7_Handler(stimer_t *htim)
|
||||
#define TC_TIMER_ARGS stimer_t *htim
|
||||
#endif
|
||||
|
||||
extern void TC5_Handler(TC_TIMER_ARGS);
|
||||
extern void TC7_Handler(TC_TIMER_ARGS);
|
||||
#ifndef HAL_STEP_TIMER_ISR
|
||||
#define HAL_STEP_TIMER_ISR() void TC5_Handler(TC_TIMER_ARGS)
|
||||
#endif
|
||||
#ifndef HAL_TEMP_TIMER_ISR
|
||||
#define HAL_TEMP_TIMER_ISR() void TC7_Handler(TC_TIMER_ARGS)
|
||||
#endif
|
||||
|
||||
// ------------------------
|
||||
// Types
|
||||
|
@ -21,8 +21,7 @@
|
||||
*/
|
||||
#if defined(STM32GENERIC) && defined(STM32F7)
|
||||
|
||||
#include "../HAL.h"
|
||||
#include "timers.h"
|
||||
#include "../../../inc/MarlinConfig.h"
|
||||
|
||||
// ------------------------
|
||||
// Local defines
|
||||
|
@ -34,9 +34,15 @@
|
||||
|
||||
#define HAL_TIMER_RATE (HAL_RCC_GetSysClockFreq() / 2) // frequency of timer peripherals
|
||||
|
||||
#define STEP_TIMER_NUM 0 // index of timer to use for stepper
|
||||
#define TEMP_TIMER_NUM 1 // index of timer to use for temperature
|
||||
#define PULSE_TIMER_NUM STEP_TIMER_NUM
|
||||
#ifndef STEP_TIMER_NUM
|
||||
#define STEP_TIMER_NUM 0 // Timer Index for Stepper
|
||||
#endif
|
||||
#ifndef PULSE_TIMER_NUM
|
||||
#define PULSE_TIMER_NUM STEP_TIMER_NUM
|
||||
#endif
|
||||
#ifndef TEMP_TIMER_NUM
|
||||
#define TEMP_TIMER_NUM 1 // Timer Index for Temperature
|
||||
#endif
|
||||
|
||||
#define TEMP_TIMER_FREQUENCY 1000 // temperature interrupt frequency
|
||||
#define TEMP_TIMER_PRESCALE 1000 // prescaler for setting Temp timer, 72Khz
|
||||
@ -62,8 +68,12 @@
|
||||
|
||||
extern void TC5_Handler();
|
||||
extern void TC7_Handler();
|
||||
#define HAL_STEP_TIMER_ISR() void TC5_Handler()
|
||||
#define HAL_TEMP_TIMER_ISR() void TC7_Handler()
|
||||
#ifndef HAL_STEP_TIMER_ISR
|
||||
#define HAL_STEP_TIMER_ISR() void TC5_Handler()
|
||||
#endif
|
||||
#ifndef HAL_TEMP_TIMER_ISR
|
||||
#define HAL_TEMP_TIMER_ISR() void TC7_Handler()
|
||||
#endif
|
||||
|
||||
// ------------------------
|
||||
// Types
|
||||
|
Reference in New Issue
Block a user