test

Fork of CANnucleo by Zoltan Hudak

Committer:
hudakz
Date:
Thu May 19 17:16:59 2016 +0000
Revision:
21:bcd8161f8f6c
Parent:
19:249e3f065956
Added support for attaching member functions as interrupt handlers.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hudakz 11:439f3a34c42e 1 /**
hudakz 11:439f3a34c42e 2 ******************************************************************************
hudakz 11:439f3a34c42e 3 * @attention
hudakz 11:439f3a34c42e 4 *
hudakz 11:439f3a34c42e 5 * <h2><center>&copy; COPYRIGHT(c) 2014 STMicroelectronics</center></h2>
hudakz 11:439f3a34c42e 6 *
hudakz 11:439f3a34c42e 7 * Redistribution and use in source and binary forms, with or without modification,
hudakz 11:439f3a34c42e 8 * are permitted provided that the following conditions are met:
hudakz 11:439f3a34c42e 9 * 1. Redistributions of source code must retain the above copyright notice,
hudakz 11:439f3a34c42e 10 * this list of conditions and the following disclaimer.
hudakz 11:439f3a34c42e 11 * 2. Redistributions in binary form must reproduce the above copyright notice,
hudakz 11:439f3a34c42e 12 * this list of conditions and the following disclaimer in the documentation
hudakz 11:439f3a34c42e 13 * and/or other materials provided with the distribution.
hudakz 11:439f3a34c42e 14 * 3. Neither the name of STMicroelectronics nor the names of its contributors
hudakz 11:439f3a34c42e 15 * may be used to endorse or promote products derived from this software
hudakz 11:439f3a34c42e 16 * without specific prior written permission.
hudakz 11:439f3a34c42e 17 *
hudakz 11:439f3a34c42e 18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
hudakz 11:439f3a34c42e 19 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
hudakz 11:439f3a34c42e 20 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
hudakz 11:439f3a34c42e 21 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
hudakz 11:439f3a34c42e 22 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
hudakz 11:439f3a34c42e 23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
hudakz 11:439f3a34c42e 24 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
hudakz 11:439f3a34c42e 25 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
hudakz 11:439f3a34c42e 26 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
hudakz 11:439f3a34c42e 27 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
hudakz 11:439f3a34c42e 28 *
hudakz 11:439f3a34c42e 29 ******************************************************************************
hudakz 11:439f3a34c42e 30 *
hudakz 11:439f3a34c42e 31 * Modified by Zoltan Hudak <hudakz@inbox.com>
hudakz 11:439f3a34c42e 32 *
hudakz 11:439f3a34c42e 33 ******************************************************************************
hudakz 11:439f3a34c42e 34 */
hudakz 11:439f3a34c42e 35
hudakz 11:439f3a34c42e 36 #ifndef stm32f3xx_hal_H
hudakz 11:439f3a34c42e 37 #define stm32f3xx_hal_H
hudakz 11:439f3a34c42e 38
hudakz 19:249e3f065956 39 #define CAN_IRQ USB_LP_CAN_RX0_IRQn
hudakz 14:0344705e6fb8 40
hudakz 11:439f3a34c42e 41 #include "pinmap.h"
hudakz 11:439f3a34c42e 42
hudakz 11:439f3a34c42e 43 #ifdef __cplusplus
hudakz 11:439f3a34c42e 44 extern "C"
hudakz 11:439f3a34c42e 45 {
hudakz 11:439f3a34c42e 46 #endif
hudakz 11:439f3a34c42e 47
hudakz 11:439f3a34c42e 48 /**
hudakz 11:439f3a34c42e 49 * @brief CAN initialization.
hudakz 11:439f3a34c42e 50 * @param obj: can_t object
hudakz 11:439f3a34c42e 51 * @param rxPin: RX pin name
hudakz 11:439f3a34c42e 52 * @param txPin: TX pin name
hudakz 11:439f3a34c42e 53 * @param abom: Automatic recovery from bus-off state
hudakz 11:439f3a34c42e 54 * @retval None
hudakz 11:439f3a34c42e 55 */
hudakz 21:bcd8161f8f6c 56 void initCAN(PinName rxPin, PinName txPin, FunctionalState abom);
hudakz 11:439f3a34c42e 57
hudakz 11:439f3a34c42e 58 /**
hudakz 11:439f3a34c42e 59 * @brief CAN MSP Initialization
hudakz 11:439f3a34c42e 60 * @param hcan: CAN handle pointer
hudakz 11:439f3a34c42e 61 * @retval None
hudakz 11:439f3a34c42e 62 */
hudakz 11:439f3a34c42e 63 void HAL_CAN_MspInit(CAN_HandleTypeDef* hcan);
hudakz 11:439f3a34c42e 64
hudakz 11:439f3a34c42e 65 /**
hudakz 11:439f3a34c42e 66 * @brief CAN MSP De-Initialization
hudakz 11:439f3a34c42e 67 * This function frees the hardware resources used:
hudakz 11:439f3a34c42e 68 * - Disable the Peripheral's clock
hudakz 11:439f3a34c42e 69 * - Revert GPIO to their default state
hudakz 11:439f3a34c42e 70 * @param hcan: CAN handle pointer
hudakz 11:439f3a34c42e 71 * @retval None
hudakz 11:439f3a34c42e 72 */
hudakz 11:439f3a34c42e 73 void HAL_CAN_MspDeInit(CAN_HandleTypeDef* hcan);
hudakz 11:439f3a34c42e 74
hudakz 11:439f3a34c42e 75 /**
hudakz 11:439f3a34c42e 76 * @brief Handles CAN1 RX0 interrupt request.
hudakz 11:439f3a34c42e 77 * @param None
hudakz 11:439f3a34c42e 78 * @retval None
hudakz 11:439f3a34c42e 79 */
hudakz 11:439f3a34c42e 80 void USB_LP_CAN_RX0_IRQHandler(void);
hudakz 11:439f3a34c42e 81
hudakz 11:439f3a34c42e 82 /**
hudakz 11:439f3a34c42e 83 * @brief Transmission complete callback in non blocking mode
hudakz 11:439f3a34c42e 84 * @param _canHandle: pointer to a CAN_HandleTypeDef structure that contains
hudakz 11:439f3a34c42e 85 * the configuration information for the specified CAN.
hudakz 11:439f3a34c42e 86 * @retval None
hudakz 11:439f3a34c42e 87 */
hudakz 11:439f3a34c42e 88 void HAL_CAN_RxCpltCallback(CAN_HandleTypeDef* _canHandle);
hudakz 11:439f3a34c42e 89
hudakz 11:439f3a34c42e 90 #ifdef __cplusplus
hudakz 11:439f3a34c42e 91 }
hudakz 11:439f3a34c42e 92
hudakz 11:439f3a34c42e 93 #endif
hudakz 11:439f3a34c42e 94
hudakz 21:bcd8161f8f6c 95 #endif