diff --git a/targets/TARGET_STM/can_api.c b/targets/TARGET_STM/can_api.c index 57e0f991a8..0d28226a48 100644 --- a/targets/TARGET_STM/can_api.c +++ b/targets/TARGET_STM/can_api.c @@ -167,23 +167,6 @@ static void _can_init_direct(can_t *obj, const can_pinmap_t *pinmap) CAN_INIT_FREQ_DIRECT(obj, pinmap, 100000); } -void can_init(can_t *obj, PinName rd, PinName td) -{ - CANName can_rd = (CANName)pinmap_peripheral(rd, PinMap_CAN_RD); - CANName can_td = (CANName)pinmap_peripheral(td, PinMap_CAN_TD); - int peripheral = (int) pinmap_merge(can_rd, can_td); - - int function_rd = (int)pinmap_find_function(rd, PinMap_CAN_RD); - int function_td = (int)pinmap_find_function(td, PinMap_CAN_TD); - - const can_pinmap_t static_pinmap = {peripheral, rd, function_rd, td, function_td}; - - /* default frequency is 100 kHz */ - CAN_INIT_DIRECT(obj, &static_pinmap); -} - - - void can_init_freq(can_t *obj, PinName rd, PinName td, int hz) { CANName can_rd = (CANName)pinmap_peripheral(rd, PinMap_CAN_RD); @@ -198,6 +181,10 @@ void can_init_freq(can_t *obj, PinName rd, PinName td, int hz) CAN_INIT_FREQ_DIRECT(obj, &static_pinmap, hz); } +void can_init(can_t *obj, PinName rd, PinName td) +{ + can_init_freq(obj, rd, td, 100000); +} void can_irq_init(can_t *obj, can_irq_handler handler, uint32_t id) { @@ -666,21 +653,6 @@ static void _can_init_direct(can_t *obj, const can_pinmap_t *pinmap) CAN_INIT_FREQ_DIRECT(obj, pinmap, 100000); } -void can_init(can_t *obj, PinName rd, PinName td) -{ - CANName can_rd = (CANName)pinmap_peripheral(rd, PinMap_CAN_RD); - CANName can_td = (CANName)pinmap_peripheral(td, PinMap_CAN_TD); - int peripheral = (int) pinmap_merge(can_rd, can_td); - - int function_rd = (int)pinmap_find_function(rd, PinMap_CAN_RD); - int function_td = (int)pinmap_find_function(td, PinMap_CAN_TD); - - const can_pinmap_t static_pinmap = {peripheral, rd, function_rd, td, function_td}; - - /* default frequency is 100 kHz */ - CAN_INIT_DIRECT(obj, &static_pinmap); -} - void can_init_freq(can_t *obj, PinName rd, PinName td, int hz) { CANName can_rd = (CANName)pinmap_peripheral(rd, PinMap_CAN_RD); @@ -695,6 +667,11 @@ void can_init_freq(can_t *obj, PinName rd, PinName td, int hz) CAN_INIT_FREQ_DIRECT(obj, &static_pinmap, hz); } +void can_init(can_t *obj, PinName rd, PinName td) +{ + can_init_freq(obj, rd, td, 100000); +} + void can_irq_init(can_t *obj, can_irq_handler handler, uint32_t id) { irq_handler = handler;