/**
* @brief This function handles I2C2 event interrupt.
*/
void I2C2_EV_IRQHandler(void)
{
  /* USER CODE BEGIN I2C2_EV_IRQn 0 */
  SEGGER_SYSVIEW_RecordEnterISR();
  /* USER CODE END I2C2_EV_IRQn 0 */
  HAL_I2C_EV_IRQHandler(&hi2c2);
  /* USER CODE BEGIN I2C2_EV_IRQn 1 */
  SEGGER_SYSVIEW_RecordEnterISR();
  /* USER CODE END I2C2_EV_IRQn 1 */
}
Esempio n. 2
0
/**
* @brief This function handles I2C3 event interrupt.
*/
void I2C3_EV_IRQHandler(void)
{
  /* USER CODE BEGIN I2C3_EV_IRQn 0 */

  /* USER CODE END I2C3_EV_IRQn 0 */
  HAL_I2C_EV_IRQHandler(&hi2c3);
  /* USER CODE BEGIN I2C3_EV_IRQn 1 */

  /* USER CODE END I2C3_EV_IRQn 1 */
}
Esempio n. 3
0
/**
* @brief This function handles I2C3 event interrupt.
*/
void I2C3_EV_IRQHandler(void)
{
  /* USER CODE BEGIN I2C3_EV_IRQn 0 */

  /* USER CODE END I2C3_EV_IRQn 0 */
  HAL_NVIC_ClearPendingIRQ(I2C3_EV_IRQn);
  HAL_I2C_EV_IRQHandler(&hi2c3);
  /* USER CODE BEGIN I2C3_EV_IRQn 1 */

  /* USER CODE END I2C3_EV_IRQn 1 */
}
Esempio n. 4
0
void i2c_ev_irq_handler(mp_uint_t i2c_id) {
    I2C_HandleTypeDef *hi2c;

    switch (i2c_id) {
        #if defined(MICROPY_HW_I2C1_SCL)
        case 1:
            hi2c = &I2CHandle1;
            break;
        #endif
        #if defined(MICROPY_HW_I2C2_SCL)
        case 2:
            hi2c = &I2CHandle2;
            break;
        #endif
        #if defined(MICROPY_HW_I2C3_SCL)
        case 3:
            hi2c = &I2CHandle3;
            break;
        #endif
        #if defined(MICROPY_HW_I2C4_SCL)
        case 4:
            hi2c = &I2CHandle4;
            break;
        #endif
        default:
            return;
    }

    #if defined(MCU_SERIES_F4)

    if (hi2c->Instance->SR1 & I2C_FLAG_BTF && hi2c->State == HAL_I2C_STATE_BUSY_TX) {
        if (hi2c->XferCount != 0U) {
            hi2c->Instance->DR = *hi2c->pBuffPtr++;
            hi2c->XferCount--;
        } else {
            __HAL_I2C_DISABLE_IT(hi2c, I2C_IT_EVT | I2C_IT_BUF | I2C_IT_ERR);
            if (hi2c->XferOptions != I2C_FIRST_FRAME) {
                hi2c->Instance->CR1 |= I2C_CR1_STOP;
            }
            hi2c->Mode = HAL_I2C_MODE_NONE;
            hi2c->State = HAL_I2C_STATE_READY;
        }
    }

    #else

    // if not an F4 MCU, use the HAL's IRQ handler
    HAL_I2C_EV_IRQHandler(hi2c);

    #endif
}
Esempio n. 5
0
/**
* @brief This function handles I2C2 global interrupt.
*/
void I2C2_IRQHandler(void)
{
  /* USER CODE BEGIN I2C2_IRQn 0 */

  /* USER CODE END I2C2_IRQn 0 */
  if (hi2c2.Instance->ISR & (I2C_FLAG_BERR | I2C_FLAG_ARLO | I2C_FLAG_OVR)) {
    HAL_I2C_ER_IRQHandler(&hi2c2);
  } else {
    HAL_I2C_EV_IRQHandler(&hi2c2);
  }
  /* USER CODE BEGIN I2C2_IRQn 1 */

  /* USER CODE END I2C2_IRQn 1 */
}
Esempio n. 6
0
/**
* @brief This function handles I2C1 event interrupt.
*/
void I2C1_EV_IRQHandler(void)
{
	//uint8_t rxBuffer[3];
  /* USER CODE BEGIN I2C1_EV_IRQn 0 */

//  /* USER CODE END I2C1_EV_IRQn 0 */
  HAL_I2C_EV_IRQHandler(&hi2c1);
		
//	SendStr((char *) rxBuffer);
//  /* USER CODE BEGIN I2C1_EV_IRQn 1 */
//	uint16_t buff_Size = hi2c1.XferSize;
//	uint8_t buff[buff_Size +1];
//	for (i = 0; i < buff_Size; i++) {
//		buff[i] = hi2c1.pBuffPtr[i];
//	}
//	buff[i] = (uint8_t) '\n';
//	SendStr((char *) buff);
	//osSignalSet(uart_i2c_ID,1);
  /* USER CODE END I2C1_EV_IRQn 1 */
}
Esempio n. 7
0
void I2C2_EV_IRQHandler(void)
{
    HAL_I2C_EV_IRQHandler(&i2cHandle[I2CDEV_2].Handle);
}
Esempio n. 8
0
void I2C1_EV_IRQHandler(void)
{
    HAL_I2C_EV_IRQHandler(&i2cHandle[I2CDEV_1].Handle);
}
Esempio n. 9
0
void I2C4_EV_IRQHandler(void)
{
    HAL_I2C_EV_IRQHandler(&i2cHandle[I2CDEV_4].Handle);
}
Esempio n. 10
0
void I2C3_EV_IRQHandler(void)
{
    HAL_I2C_EV_IRQHandler(&i2cHandle[I2CDEV_3].Handle);
}
Esempio n. 11
0
void I2C1_Handler(void) {
	//Call Hal_I2C_EventHandler
	HAL_I2C_EV_IRQHandler(&hnd);  //Eventhandler - Dieser kümmert sich automatisch um das erzeugen von Startconditions, ACKs, NACKs, Stopbits und Stopcondition
	HAL_I2C_ER_IRQHandler(&hnd);  //Errorhandler
}
Esempio n. 12
0
void I2C4_EV_IRQHandler(void)
{
    HAL_I2C_EV_IRQHandler(&i2cDevice[I2CDEV_4].handle);
}
Esempio n. 13
0
/**
* @brief This function handles I2C1 event interrupt.
*/
void I2C1_EV_IRQHandler(void)
{
  HAL_I2C_EV_IRQHandler(&hi2c1_at24c16);
}
Esempio n. 14
0
/**
  * @brief  This function handles I2C event interrupt request.  
  * @param  None
  * @retval None
  * @Note   This function is redefined in "main.h" and related to I2C data transmission     
  */
void I2Cx_EV_IRQHandler(void)
{
  HAL_I2C_EV_IRQHandler(&handleIIC);
}
Esempio n. 15
0
/**
  * @brief  This function handles I2C event interrupt request.  
  * @param  None
  * @retval None
  * @Note   This function is redefined in "main.h" and related to I2C data transmission     
  */
void I2Cx_EV_IRQHandler(void)
{
  HAL_I2C_EV_IRQHandler(& I2cHandle);
}
Esempio n. 16
0
/**
* @brief This function handles I2C1 event interrupt.
*/
void I2C1_EV_IRQHandler(void)
{
  HAL_NVIC_ClearPendingIRQ(I2C1_EV_IRQn);
  HAL_I2C_EV_IRQHandler(&hi2c1);
}
Esempio n. 17
0
static irq_return_t i2c_ev_irq_handler(unsigned int irq_nr, void *data) {
	I2C_HandleTypeDef *I2cHandle = (I2C_HandleTypeDef *) data;
	HAL_I2C_EV_IRQHandler(I2cHandle);
	return IRQ_HANDLED;
}