您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ HAL_NVIC_EnableIRQ函数代码示例

51自学网 2021-06-01 21:21:20
  C++
这篇教程C++ HAL_NVIC_EnableIRQ函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中HAL_NVIC_EnableIRQ函数的典型用法代码示例。如果您正苦于以下问题:C++ HAL_NVIC_EnableIRQ函数的具体用法?C++ HAL_NVIC_EnableIRQ怎么用?C++ HAL_NVIC_EnableIRQ使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了HAL_NVIC_EnableIRQ函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: HAL_UART_MspInit

/**  * @brief UART MSP Initialization   *        This function configures the hardware resources used in this example:   *           - Peripheral's clock enable  *           - Peripheral's GPIO Configuration    *           - DMA configuration for transmission request by peripheral   *           - NVIC configuration for DMA interrupt request enable  * @param huart: UART handle pointer  * @retval None  */void HAL_UART_MspInit(UART_HandleTypeDef *huart){  static DMA_HandleTypeDef hdma_tx;  static DMA_HandleTypeDef hdma_rx;    GPIO_InitTypeDef  GPIO_InitStruct;    /*##-1- Enable peripherals and GPIO Clocks #################################*/  /* Enable GPIO TX/RX clock */  USARTx_TX_GPIO_CLK_ENABLE();  USARTx_RX_GPIO_CLK_ENABLE();  /* Enable USARTx clock */  USARTx_CLK_ENABLE();   /* Enable DMA clock */  DMAx_CLK_ENABLE();       /*##-2- Configure peripheral GPIO ##########################################*/    /* UART TX GPIO pin configuration  */  GPIO_InitStruct.Pin       = USARTx_TX_PIN;  GPIO_InitStruct.Mode      = GPIO_MODE_AF_PP;  GPIO_InitStruct.Pull      = GPIO_PULLUP;  GPIO_InitStruct.Speed     = GPIO_SPEED_HIGH;  GPIO_InitStruct.Alternate = USARTx_TX_AF;    HAL_GPIO_Init(USARTx_TX_GPIO_PORT, &GPIO_InitStruct);      /* UART RX GPIO pin configuration  */  GPIO_InitStruct.Pin = USARTx_RX_PIN;  GPIO_InitStruct.Alternate = USARTx_RX_AF;      HAL_GPIO_Init(USARTx_RX_GPIO_PORT, &GPIO_InitStruct);      /*##-3- Configure the DMA channels ##########################################*/  /* Configure the DMA handler for Transmission process */  hdma_tx.Instance                 = USARTx_TX_DMA_STREAM;    hdma_tx.Init.Direction           = DMA_MEMORY_TO_PERIPH;  hdma_tx.Init.PeriphInc           = DMA_PINC_DISABLE;  hdma_tx.Init.MemInc              = DMA_MINC_ENABLE;  hdma_tx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;  hdma_tx.Init.MemDataAlignment    = DMA_MDATAALIGN_BYTE;  hdma_tx.Init.Mode                = DMA_NORMAL;  hdma_tx.Init.Priority            = DMA_PRIORITY_LOW;    HAL_DMA_Init(&hdma_tx);       /* Associate the initialized DMA handle to the UART handle */  __HAL_LINKDMA(huart, hdmatx, hdma_tx);      /* Configure the DMA handler for reception process */  hdma_rx.Instance                 = USARTx_RX_DMA_STREAM;    hdma_rx.Init.Direction           = DMA_PERIPH_TO_MEMORY;  hdma_rx.Init.PeriphInc           = DMA_PINC_DISABLE;  hdma_rx.Init.MemInc              = DMA_MINC_ENABLE;  hdma_rx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;  hdma_rx.Init.MemDataAlignment    = DMA_MDATAALIGN_BYTE;  hdma_rx.Init.Mode                = DMA_NORMAL;  hdma_rx.Init.Priority            = DMA_PRIORITY_HIGH;  HAL_DMA_Init(&hdma_rx);      /* Associate the initialized DMA handle to the the UART handle */  __HAL_LINKDMA(huart, hdmarx, hdma_rx);      /*##-4- Configure the NVIC for DMA #########################################*/  /* NVIC configuration for DMA transfer complete interrupt (USARTx_TX) */  HAL_NVIC_SetPriority(USARTx_DMA_TX_IRQn, 0, 1);  HAL_NVIC_EnableIRQ(USARTx_DMA_TX_IRQn);      /* NVIC configuration for DMA transfer complete interrupt (USARTx_RX) */  HAL_NVIC_SetPriority(USARTx_DMA_RX_IRQn, 0, 0);     HAL_NVIC_EnableIRQ(USARTx_DMA_RX_IRQn);}
开发者ID:GreyCardinalRus,项目名称:stm32-cube,代码行数:86,


示例2: HAL_UART_MspInit

void HAL_UART_MspInit(UART_HandleTypeDef *huart){    GPIO_InitTypeDef  GPIO_InitStruct;	if( huart == &UartHandle ){		/*##-1- Enable peripherals and GPIO Clocks #################################*/		DMAx_CLK_ENABLE();		/* Enable GPIO TX/RX clock */		USARTx_TX_GPIO_CLK_ENABLE();		USARTx_RX_GPIO_CLK_ENABLE();		/* Enable USART2 clock */		USARTx_CLK_ENABLE(); 		/* Enable DMA1 clock */			/*##-2- Configure peripheral GPIO ##########################################*/  		/* UART TX GPIO pin configuration  */		GPIO_InitStruct.Pin       = USARTx_TX_PIN;		GPIO_InitStruct.Mode      = GPIO_MODE_AF_PP;		GPIO_InitStruct.Pull      = GPIO_NOPULL;		GPIO_InitStruct.Speed     = GPIO_SPEED_FAST;		GPIO_InitStruct.Alternate = USARTx_TX_AF;				HAL_GPIO_Init(USARTx_TX_GPIO_PORT, &GPIO_InitStruct);					/* UART RX GPIO pin configuration  */		GPIO_InitStruct.Pin = USARTx_RX_PIN;		GPIO_InitStruct.Alternate = USARTx_RX_AF;					HAL_GPIO_Init(USARTx_RX_GPIO_PORT, &GPIO_InitStruct);					/*##-3- Configure the DMA streams ##########################################*/		/* Configure the DMA handler for Transmission process */		hdma_tx.Instance                 = USARTx_TX_DMA_STREAM;				hdma_tx.Init.Channel             = USARTx_TX_DMA_CHANNEL;		hdma_tx.Init.Direction           = DMA_MEMORY_TO_PERIPH;		hdma_tx.Init.PeriphInc           = DMA_PINC_DISABLE;		hdma_tx.Init.MemInc              = DMA_MINC_ENABLE;		hdma_tx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;		hdma_tx.Init.MemDataAlignment    = DMA_MDATAALIGN_BYTE;		hdma_tx.Init.Mode                = DMA_NORMAL;		hdma_tx.Init.Priority            = DMA_PRIORITY_LOW;		hdma_tx.Init.FIFOMode            = DMA_FIFOMODE_DISABLE;		hdma_tx.Init.FIFOThreshold       = DMA_FIFO_THRESHOLD_FULL;		hdma_tx.Init.MemBurst            = DMA_MBURST_INC4;		hdma_tx.Init.PeriphBurst         = DMA_PBURST_INC4;				HAL_DMA_Init(&hdma_tx);   				/* Associate the initialized DMA handle to the the UART handle */		__HAL_LINKDMA(huart, hdmatx, hdma_tx);					/* Configure the DMA handler for Transmission process */		hdma_rx.Instance                 = USARTx_RX_DMA_STREAM;				hdma_rx.Init.Channel             = USARTx_RX_DMA_CHANNEL;		hdma_rx.Init.Direction           = DMA_PERIPH_TO_MEMORY;		hdma_rx.Init.PeriphInc           = DMA_PINC_DISABLE;		hdma_rx.Init.MemInc              = DMA_MINC_ENABLE;		hdma_rx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;		hdma_rx.Init.MemDataAlignment    = DMA_MDATAALIGN_BYTE;		hdma_rx.Init.Mode                = DMA_CIRCULAR;		hdma_rx.Init.Priority            = DMA_PRIORITY_HIGH;		hdma_rx.Init.FIFOMode            = DMA_FIFOMODE_DISABLE;         		hdma_rx.Init.FIFOThreshold       = DMA_FIFO_THRESHOLD_FULL;		hdma_rx.Init.MemBurst            = DMA_MBURST_INC4;		hdma_rx.Init.PeriphBurst         = DMA_PBURST_INC4;		HAL_DMA_Init(&hdma_rx);					/* Associate the initialized DMA handle to the the UART handle */		__HAL_LINKDMA(huart, hdmarx, hdma_rx);					/*##-4- Configure the NVIC for DMA #########################################*/		/* NVIC configuration for DMA transfer complete interrupt (USARTx_TX) */		HAL_NVIC_SetPriority(USARTx_DMA_TX_IRQn, 5, 3);		HAL_NVIC_EnableIRQ(USARTx_DMA_TX_IRQn);					/* NVIC configuration for DMA transfer complete interrupt (USARTx_RX) */		//HAL_NVIC_SetPriority(USARTx_DMA_RX_IRQn, 5, 2);   		//HAL_NVIC_EnableIRQ(USARTx_DMA_RX_IRQn);				/* NVIC configuration for USART TC interrupt */		HAL_NVIC_SetPriority(USARTx_IRQn, 6, 1);		HAL_NVIC_EnableIRQ(USARTx_IRQn);	}}
开发者ID:ydwzj,项目名称:STM32F4,代码行数:86,


示例3: HAL_CRYP_MspInit

void HAL_CRYP_MspInit(CRYP_HandleTypeDef *hcryp){  static DMA_HandleTypeDef   hdmaIn;  static DMA_HandleTypeDef   hdmaOut;    /*##-1- Enable peripherals Clock ###########################################*/  /* Enable CRYP clock */  __HAL_RCC_CRYP_CLK_ENABLE();      /* Enable DMA2 clocks */  __HAL_RCC_DMA2_CLK_ENABLE();    /*##-2- Configure the DMA streams ##########################################*/  /***************** Configure common DMA In parameters ***********************/  hdmaIn.Init.Channel             = DMA_CHANNEL_2;  hdmaIn.Init.Direction           = DMA_MEMORY_TO_PERIPH;  hdmaIn.Init.PeriphInc           = DMA_PINC_DISABLE;  hdmaIn.Init.MemInc              = DMA_MINC_ENABLE;  hdmaIn.Init.PeriphDataAlignment = DMA_PDATAALIGN_WORD;  hdmaIn.Init.MemDataAlignment    = DMA_MDATAALIGN_WORD;  hdmaIn.Init.Mode                = DMA_NORMAL;  hdmaIn.Init.Priority            = DMA_PRIORITY_HIGH;  hdmaIn.Init.FIFOMode            = DMA_FIFOMODE_ENABLE;  hdmaIn.Init.FIFOThreshold       = DMA_FIFO_THRESHOLD_HALFFULL;  hdmaIn.Init.MemBurst            = DMA_MBURST_SINGLE;  hdmaIn.Init.PeriphBurst         = DMA_PBURST_SINGLE;  hdmaIn.Instance = DMA2_Stream6;    /* Associate the DMA handle */  __HAL_LINKDMA(hcryp, hdmain, hdmaIn);    /* Configure the DMA Stream */  HAL_DMA_Init(hcryp->hdmain);          /* NVIC configuration for DMA Input data interrupt */  HAL_NVIC_SetPriority(DMA2_Stream6_IRQn, 0x0F, 0);  HAL_NVIC_EnableIRQ(DMA2_Stream6_IRQn);    /***************** Configure common DMA Out parameters **********************/  hdmaOut.Init.Channel             = DMA_CHANNEL_2;  hdmaOut.Init.Direction           = DMA_PERIPH_TO_MEMORY;  hdmaOut.Init.PeriphInc           = DMA_PINC_DISABLE;  hdmaOut.Init.MemInc              = DMA_MINC_ENABLE;  hdmaOut.Init.PeriphDataAlignment = DMA_PDATAALIGN_WORD;  hdmaOut.Init.MemDataAlignment    = DMA_MDATAALIGN_WORD;  hdmaOut.Init.Mode                = DMA_NORMAL;  hdmaOut.Init.Priority            = DMA_PRIORITY_VERY_HIGH;  hdmaOut.Init.FIFOMode            = DMA_FIFOMODE_ENABLE;  hdmaOut.Init.FIFOThreshold       = DMA_FIFO_THRESHOLD_HALFFULL;  hdmaOut.Init.MemBurst            = DMA_MBURST_SINGLE;  hdmaOut.Init.PeriphBurst         = DMA_PBURST_SINGLE;  hdmaOut.Instance = DMA2_Stream5;    /* Associate the DMA handle */  __HAL_LINKDMA(hcryp, hdmaout, hdmaOut);    /* Configure the DMA Stream */  HAL_DMA_Init(&hdmaOut);  /*##-3- Configure the NVIC for DMA #########################################*/  /* NVIC configuration for DMA output data interrupt */  HAL_NVIC_SetPriority(DMA2_Stream5_IRQn, 0x0F, 0);  HAL_NVIC_EnableIRQ(DMA2_Stream5_IRQn);}
开发者ID:eemei,项目名称:library-stm32f4,代码行数:63,


示例4: HAL_I2C_MspInit

/**  * @brief I2C MSP Initialization   *        This function configures the hardware resources used in this example:   *           - Peripheral's clock enable  *           - Peripheral's GPIO Configuration    *           - DMA configuration for transmission request by peripheral   *           - NVIC configuration for DMA interrupt request enable  * @param hi2c: I2C handle pointer  * @retval None  */void HAL_I2C_MspInit(I2C_HandleTypeDef *hi2c){  static DMA_HandleTypeDef hdma_tx;  static DMA_HandleTypeDef hdma_rx;    GPIO_InitTypeDef  GPIO_InitStruct;    /*##-1- Enable peripherals and GPIO Clocks #################################*/  /* Enable GPIO TX/RX clock */  I2Cx_SCL_GPIO_CLK_ENABLE();  I2Cx_SDA_GPIO_CLK_ENABLE();  /* Enable I2C1 clock */  I2Cx_CLK_ENABLE();   /* Enable DMA2 clock */  DMAx_CLK_ENABLE();       /*##-2- Configure peripheral GPIO ##########################################*/    /* I2C TX GPIO pin configuration  */  GPIO_InitStruct.Pin       = I2Cx_SCL_PIN;  GPIO_InitStruct.Mode      = GPIO_MODE_AF_OD;  GPIO_InitStruct.Pull      = GPIO_PULLUP;  GPIO_InitStruct.Speed     = GPIO_SPEED_FAST;  GPIO_InitStruct.Alternate = I2Cx_SCL_AF;    HAL_GPIO_Init(I2Cx_SCL_GPIO_PORT, &GPIO_InitStruct);      /* I2C RX GPIO pin configuration  */  GPIO_InitStruct.Pin = I2Cx_SDA_PIN;  GPIO_InitStruct.Alternate = I2Cx_SDA_AF;      HAL_GPIO_Init(I2Cx_SDA_GPIO_PORT, &GPIO_InitStruct);      /*##-3- Configure the DMA streams ##########################################*/  /* Configure the DMA handler for Transmission process */  hdma_tx.Instance                 = I2Cx_TX_DMA_STREAM;    hdma_tx.Init.Channel             = I2Cx_TX_DMA_CHANNEL;  hdma_tx.Init.Direction           = DMA_MEMORY_TO_PERIPH;  hdma_tx.Init.PeriphInc           = DMA_PINC_DISABLE;  hdma_tx.Init.MemInc              = DMA_MINC_ENABLE;  hdma_tx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;  hdma_tx.Init.MemDataAlignment    = DMA_MDATAALIGN_BYTE;  hdma_tx.Init.Mode                = DMA_NORMAL;  hdma_tx.Init.Priority            = DMA_PRIORITY_LOW;  hdma_tx.Init.FIFOMode            = DMA_FIFOMODE_DISABLE;           hdma_tx.Init.FIFOThreshold       = DMA_FIFO_THRESHOLD_FULL;  hdma_tx.Init.MemBurst            = DMA_MBURST_INC4;  hdma_tx.Init.PeriphBurst         = DMA_PBURST_INC4;    HAL_DMA_Init(&hdma_tx);       /* Associate the initialized DMA handle to the the I2C handle */  __HAL_LINKDMA(hi2c, hdmatx, hdma_tx);      /* Configure the DMA handler for Transmission process */  hdma_rx.Instance                 = I2Cx_RX_DMA_STREAM;    hdma_rx.Init.Channel             = I2Cx_RX_DMA_CHANNEL;  hdma_rx.Init.Direction           = DMA_PERIPH_TO_MEMORY;  hdma_rx.Init.PeriphInc           = DMA_PINC_DISABLE;  hdma_rx.Init.MemInc              = DMA_MINC_ENABLE;  hdma_rx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;  hdma_rx.Init.MemDataAlignment    = DMA_MDATAALIGN_BYTE;  hdma_rx.Init.Mode                = DMA_NORMAL;  hdma_rx.Init.Priority            = DMA_PRIORITY_HIGH;  hdma_rx.Init.FIFOMode            = DMA_FIFOMODE_DISABLE;           hdma_rx.Init.FIFOThreshold       = DMA_FIFO_THRESHOLD_FULL;  hdma_rx.Init.MemBurst            = DMA_MBURST_INC4;  hdma_rx.Init.PeriphBurst         = DMA_PBURST_INC4;   HAL_DMA_Init(&hdma_rx);      /* Associate the initialized DMA handle to the the I2C handle */  __HAL_LINKDMA(hi2c, hdmarx, hdma_rx);      /*##-4- Configure the NVIC for DMA #########################################*/  /* NVIC configuration for DMA transfer complete interrupt (I2C1_TX) */  HAL_NVIC_SetPriority(I2Cx_DMA_TX_IRQn, 0, 1);  HAL_NVIC_EnableIRQ(I2Cx_DMA_TX_IRQn);      /* NVIC configuration for DMA transfer complete interrupt (I2C1_RX) */  HAL_NVIC_SetPriority(I2Cx_DMA_RX_IRQn, 0, 0);     HAL_NVIC_EnableIRQ(I2Cx_DMA_RX_IRQn);}
开发者ID:EarnestHein89,项目名称:STM32Cube_FW_F4,代码行数:94,


示例5: HAL_PCD_MspInit

/**  * @brief  Initializes the PCD MSP.  * @param  hpcd: PCD handle  * @retval None  */void HAL_PCD_MspInit(PCD_HandleTypeDef *hpcd){  GPIO_InitTypeDef  GPIO_InitStruct;    /* Enable the GPIOA clock for USB DataLines */  __GPIOA_CLK_ENABLE();    /* Enable the GPIOB clock for USB external Pull-Up */  __GPIOB_CLK_ENABLE();    /* Configure USB DM and DP pins */  GPIO_InitStruct.Pin = (GPIO_PIN_11 | GPIO_PIN_12);  GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;  GPIO_InitStruct.Pull = GPIO_NOPULL;  GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;  HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);     /* Enable USB FS Clock */  __USB_CLK_ENABLE();    /* Enable SYSCFG Clock */  __SYSCFG_CLK_ENABLE();#if defined (USE_USB_INTERRUPT_REMAPPED)  /*USB interrupt remapping enable */  __HAL_REMAPINTERRUPT_USB_ENABLE();#endif    if(hpcd->Init.low_power_enable == 1)  {    /* Enable EXTI Line 18 for USB wakeup */    __HAL_USB_EXTI_CLEAR_FLAG();    __HAL_USB_EXTI_SET_RISING_EDGE_TRIGGER();    __HAL_USB_EXTI_ENABLE_IT();        #if defined (USE_USB_INTERRUPT_DEFAULT)    /* USB Default Wakeup Interrupt */    HAL_NVIC_EnableIRQ(USBWakeUp_IRQn);         /* Enable USB Wake-up interrupt */    HAL_NVIC_SetPriority(USBWakeUp_IRQn, 0, 0);    #elif defined (USE_USB_INTERRUPT_REMAPPED)        /* USB Remapped Wakeup Interrupt */    HAL_NVIC_EnableIRQ(USBWakeUp_RMP_IRQn);         /* Enable USB Wake-up interrupt */    HAL_NVIC_SetPriority(USBWakeUp_RMP_IRQn, 0, 0);#endif      } #if defined (USE_USB_INTERRUPT_DEFAULT)    /* Set USB Default FS Interrupt priority */  HAL_NVIC_SetPriority(USB_LP_CAN_RX0_IRQn, 0x0F, 0);    /* Enable USB FS Interrupt */  HAL_NVIC_EnableIRQ(USB_LP_CAN_RX0_IRQn);   #elif defined (USE_USB_INTERRUPT_REMAPPED)  /* Set USB Remapped FS Interrupt priority */  HAL_NVIC_SetPriority(USB_LP_IRQn, 0x0F, 0);    /* Enable USB FS Interrupt */  HAL_NVIC_EnableIRQ(USB_LP_IRQn); #endif}
开发者ID:afconsult-south,项目名称:dragonfly-fcb,代码行数:73,


示例6: MX_GPIO_Init

/** Configure pins as         * Analog         * Input         * Output        * EVENT_OUT        * EXTI*/void MX_GPIO_Init(void){  GPIO_InitTypeDef GPIO_InitStruct;  /* GPIO Ports Clock Enable */  __GPIOC_CLK_ENABLE();  __GPIOA_CLK_ENABLE();  __GPIOB_CLK_ENABLE();  /*Configure GPIO pin : PA1 */  GPIO_InitStruct.Pin = GPIO_PIN_1;  GPIO_InitStruct.Mode = GPIO_MODE_INPUT;  GPIO_InitStruct.Pull = GPIO_NOPULL;  HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);  /*Configure GPIO pins : PA4 PA7 PA8 PA15 */  GPIO_InitStruct.Pin = GPIO_PIN_4|GPIO_PIN_7|GPIO_PIN_8|GPIO_PIN_15;  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;  GPIO_InitStruct.Pull = GPIO_NOPULL;  GPIO_InitStruct.Speed = GPIO_SPEED_LOW;  HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);  /*Configure GPIO pin : PB0 */  GPIO_InitStruct.Pin = GPIO_PIN_0;  GPIO_InitStruct.Mode = GPIO_MODE_IT_FALLING;  GPIO_InitStruct.Pull = GPIO_PULLUP;  HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);  /*Configure GPIO pins : PB1 PB13 */  GPIO_InitStruct.Pin = GPIO_PIN_1|GPIO_PIN_13;  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;  GPIO_InitStruct.Pull = GPIO_NOPULL;  GPIO_InitStruct.Speed = GPIO_SPEED_LOW;  HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);  /*Configure GPIO pin : PB12 */  GPIO_InitStruct.Pin = GPIO_PIN_12;  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;  GPIO_InitStruct.Pull = GPIO_PULLUP;  GPIO_InitStruct.Speed = GPIO_SPEED_LOW;  HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);  /*Configure GPIO pins : PB14 PB15 PB7 */  GPIO_InitStruct.Pin = GPIO_PIN_14|GPIO_PIN_15|GPIO_PIN_7;  GPIO_InitStruct.Mode = GPIO_MODE_INPUT;  GPIO_InitStruct.Pull = GPIO_NOPULL;  HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);  /*Configure GPIO pins : PA9 PA10 PA12 */  GPIO_InitStruct.Pin = GPIO_PIN_9|GPIO_PIN_10|GPIO_PIN_12;  GPIO_InitStruct.Mode = GPIO_MODE_IT_FALLING;  GPIO_InitStruct.Pull = GPIO_PULLUP;  HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);  /*Configure GPIO pin : PA11 */  GPIO_InitStruct.Pin = GPIO_PIN_11;  GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING;  GPIO_InitStruct.Pull = GPIO_NOPULL;  HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);  /*Configure GPIO pin : PB6 */  GPIO_InitStruct.Pin = GPIO_PIN_6;  GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING_FALLING;  GPIO_InitStruct.Pull = GPIO_NOPULL;  HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);  /*Configure GPIO pin Output Level */  HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4|GPIO_PIN_7|GPIO_PIN_8|GPIO_PIN_15, GPIO_PIN_RESET);  /*Configure GPIO pin Output Level */  HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_RESET);  /*Configure GPIO pin Output Level */  HAL_GPIO_WritePin(GPIOB, GPIO_PIN_12|GPIO_PIN_13, GPIO_PIN_SET);  /* EXTI interrupt init*/  HAL_NVIC_SetPriority(EXTI0_IRQn, 5, 0);  HAL_NVIC_EnableIRQ(EXTI0_IRQn);  HAL_NVIC_SetPriority(EXTI9_5_IRQn, 5, 0);  HAL_NVIC_EnableIRQ(EXTI9_5_IRQn);  HAL_NVIC_SetPriority(EXTI15_10_IRQn, 5, 0);  HAL_NVIC_EnableIRQ(EXTI15_10_IRQn);}
开发者ID:hlmpost,项目名称:code_backup,代码行数:94,


示例7: HAL_ADC_MspInit

/**  * @brief ADC MSP initialization  *        This function configures the hardware resources used in this example:  *          - Enable clock of ADC peripheral  *          - Configure the GPIO associated to the peripheral channels  *          - Configure the DMA associated to the peripheral  *          - Configure the NVIC associated to the peripheral interruptions  * @param hadc: ADC handle pointer  * @retval None  */void HAL_ADC_MspInit(ADC_HandleTypeDef *hadc){  GPIO_InitTypeDef          GPIO_InitStruct;  static DMA_HandleTypeDef  DmaHandle;  /*##-1- Enable peripherals and GPIO Clocks #################################*/  /* Enable clock of GPIO associated to the peripheral channels */  ADCx_CHANNELa_GPIO_CLK_ENABLE();    /* Enable clock of ADCx peripheral */  ADCx_CLK_ENABLE();    /* Note: In case of usage of ADC dedicated asynchronous clock, with ADC     */  /*       setting "AdcHandle.Init.ClockPrescaler = ADC_CLOCK_ASYNC",         */  /*       the clock source has to be enabled using this macro:               */  /* __HAL_RCC_ADC12_CONFIG(RCC_ADC12PLLCLK_DIV1);                            */    /* Enable asynchronous clock source of ADCx */  __HAL_RCC_ADC1_CONFIG(RCC_ADC1PLLCLK_DIV1);     /* Enable clock of DMA associated to the peripheral */  ADCx_DMA_CLK_ENABLE();    /*##-2- Configure peripheral GPIO ##########################################*/  /* ADCx Channel GPIO pin configuration */  GPIO_InitStruct.Pin = ADCx_CHANNELa_PIN;  GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;  GPIO_InitStruct.Pull = GPIO_NOPULL;  HAL_GPIO_Init(ADCx_CHANNELa_GPIO_PORT, &GPIO_InitStruct);     /*##-3- Configure the DMA streams ##########################################*/  /* Configure DMA parameters */  DmaHandle.Instance = ADCx_DMA_STREAM;  DmaHandle.Init.Direction           = DMA_PERIPH_TO_MEMORY;  DmaHandle.Init.PeriphInc           = DMA_PINC_DISABLE;  DmaHandle.Init.MemInc              = DMA_MINC_ENABLE;  DmaHandle.Init.PeriphDataAlignment = DMA_PDATAALIGN_WORD;       /* Transfer from ADC by word to match with ADC resolution 10 or 12 bits */  DmaHandle.Init.MemDataAlignment    = DMA_MDATAALIGN_HALFWORD;   /* Transfer to memory by half-word to match with buffer variable type: half-word */  DmaHandle.Init.Mode                = DMA_CIRCULAR;  DmaHandle.Init.Priority            = DMA_PRIORITY_HIGH;    /* Deinitialize  & Initialize the DMA for new transfer */  HAL_DMA_DeInit(&DmaHandle);    HAL_DMA_Init(&DmaHandle);  /* Associate the initialized DMA handle to the ADC handle */  __HAL_LINKDMA(hadc, DMA_Handle, DmaHandle);    /*##-4- Configure the NVIC #################################################*/  /* NVIC configuration for DMA interrupt (transfer completion or error) */  /* Priority: high-priority */  HAL_NVIC_SetPriority(ADCx_DMA_IRQn, 1, 0);  HAL_NVIC_EnableIRQ(ADCx_DMA_IRQn);    /* NVIC configuration for ADC interrupt */  /* Priority: high-priority */  HAL_NVIC_SetPriority(ADCx_IRQn, 0, 0);  HAL_NVIC_EnableIRQ(ADCx_IRQn);}
开发者ID:eleciawhite,项目名称:STM32Cube,代码行数:73,


示例8: SD_MspInit

/**  * @brief  Initializes the SD MSP.  * @param  None  * @retval None  */static void SD_MspInit(void){  static DMA_HandleTypeDef dmaRxHandle;  static DMA_HandleTypeDef dmaTxHandle;  GPIO_InitTypeDef GPIO_Init_Structure;  SD_HandleTypeDef *hsd = &uSdHandle;    /* Enable SDIO clock */  __SDIO_CLK_ENABLE();    /* Enable DMA2 clocks */  __DMAx_TxRx_CLK_ENABLE();  /* Enable GPIOs clock */  __GPIOC_CLK_ENABLE();  __GPIOD_CLK_ENABLE();    /* Common GPIO configuration */  GPIO_Init_Structure.Mode      = GPIO_MODE_AF_PP;  GPIO_Init_Structure.Pull      = GPIO_PULLUP;  GPIO_Init_Structure.Speed     = GPIO_SPEED_HIGH;  GPIO_Init_Structure.Alternate = GPIO_AF12_SDIO;    /* GPIOC configuration */  GPIO_Init_Structure.Pin = GPIO_PIN_8 | GPIO_PIN_9 | GPIO_PIN_10 | GPIO_PIN_11 | GPIO_PIN_12;     HAL_GPIO_Init(GPIOC, &GPIO_Init_Structure);  /* GPIOD configuration */  GPIO_Init_Structure.Pin = GPIO_PIN_2;  HAL_GPIO_Init(GPIOD, &GPIO_Init_Structure);  /* NVIC configuration for SDIO interrupts */  HAL_NVIC_SetPriority(SDIO_IRQn, 5, 0);  HAL_NVIC_EnableIRQ(SDIO_IRQn);      /* Configure DMA Rx parameters */  dmaRxHandle.Init.Channel             = SD_DMAx_Rx_CHANNEL;  dmaRxHandle.Init.Direction           = DMA_PERIPH_TO_MEMORY;  dmaRxHandle.Init.PeriphInc           = DMA_PINC_DISABLE;  dmaRxHandle.Init.MemInc              = DMA_MINC_ENABLE;  dmaRxHandle.Init.PeriphDataAlignment = DMA_PDATAALIGN_WORD;  dmaRxHandle.Init.MemDataAlignment    = DMA_MDATAALIGN_WORD;  dmaRxHandle.Init.Mode                = DMA_PFCTRL;  dmaRxHandle.Init.Priority            = DMA_PRIORITY_VERY_HIGH;  dmaRxHandle.Init.FIFOMode            = DMA_FIFOMODE_ENABLE;  dmaRxHandle.Init.FIFOThreshold       = DMA_FIFO_THRESHOLD_FULL;  dmaRxHandle.Init.MemBurst            = DMA_MBURST_INC4;  dmaRxHandle.Init.PeriphBurst         = DMA_PBURST_INC4;    dmaRxHandle.Instance = SD_DMAx_Rx_STREAM;    /* Associate the DMA handle */  __HAL_LINKDMA(hsd, hdmarx, dmaRxHandle);    /* Deinitialize the stream for new transfer */  HAL_DMA_DeInit(&dmaRxHandle);    /* Configure the DMA stream */  HAL_DMA_Init(&dmaRxHandle);    /* Configure DMA Tx parameters */  dmaTxHandle.Init.Channel             = SD_DMAx_Tx_CHANNEL;  dmaTxHandle.Init.Direction           = DMA_MEMORY_TO_PERIPH;  dmaTxHandle.Init.PeriphInc           = DMA_PINC_DISABLE;  dmaTxHandle.Init.MemInc              = DMA_MINC_ENABLE;  dmaTxHandle.Init.PeriphDataAlignment = DMA_PDATAALIGN_WORD;  dmaTxHandle.Init.MemDataAlignment    = DMA_MDATAALIGN_WORD;  dmaTxHandle.Init.Mode                = DMA_PFCTRL;  dmaTxHandle.Init.Priority            = DMA_PRIORITY_VERY_HIGH;  dmaTxHandle.Init.FIFOMode            = DMA_FIFOMODE_ENABLE;  dmaTxHandle.Init.FIFOThreshold       = DMA_FIFO_THRESHOLD_FULL;  dmaTxHandle.Init.MemBurst            = DMA_MBURST_INC4;  dmaTxHandle.Init.PeriphBurst         = DMA_PBURST_INC4;    dmaTxHandle.Instance = SD_DMAx_Tx_STREAM;    /* Associate the DMA handle */  __HAL_LINKDMA(hsd, hdmatx, dmaTxHandle);    /* Deinitialize the stream for new transfer */  HAL_DMA_DeInit(&dmaTxHandle);    /* Configure the DMA stream */  HAL_DMA_Init(&dmaTxHandle);     /* NVIC configuration for DMA transfer complete interrupt */  HAL_NVIC_SetPriority(SD_DMAx_Rx_IRQn, 6, 0);  HAL_NVIC_EnableIRQ(SD_DMAx_Rx_IRQn);    /* NVIC configuration for DMA transfer complete interrupt */  HAL_NVIC_SetPriority(SD_DMAx_Tx_IRQn, 6, 0);  HAL_NVIC_EnableIRQ(SD_DMAx_Tx_IRQn);}
开发者ID:ClintHaerinck,项目名称:STM32Cube_FW_F4,代码行数:99,


示例9: SDRAM_MspInit

/**  * @brief  Initializes SDRAM MSP.  * @param  hsdram: SDRAM handle  * @param  Params  * @retval None  */__weak void SDRAM_MspInit(SDRAM_HandleTypeDef  *hsdram, void *Params){  	static DMA_HandleTypeDef dma_handle;	GPIO_InitTypeDef gpio_init_structure;	/* Enable FMC clock */	__HAL_RCC_FMC_CLK_ENABLE();	/* Enable chosen DMAx clock */	__DMAx_CLK_ENABLE();	/* Enable GPIOs clock */	__HAL_RCC_GPIOC_CLK_ENABLE();	__HAL_RCC_GPIOD_CLK_ENABLE();	__HAL_RCC_GPIOE_CLK_ENABLE();	__HAL_RCC_GPIOF_CLK_ENABLE();	__HAL_RCC_GPIOG_CLK_ENABLE();	__HAL_RCC_GPIOH_CLK_ENABLE();	/* Common GPIO configuration */	gpio_init_structure.Mode      = GPIO_MODE_AF_PP;	gpio_init_structure.Pull      = GPIO_PULLUP;	gpio_init_structure.Speed     = GPIO_SPEED_FAST;	gpio_init_structure.Alternate = GPIO_AF12_FMC;	/* GPIOC configuration */	gpio_init_structure.Pin   = GPIO_PIN_3;	HAL_GPIO_Init(GPIOC, &gpio_init_structure);	/* GPIOD configuration */	gpio_init_structure.Pin   = GPIO_PIN_0 | GPIO_PIN_1 | GPIO_PIN_8 | GPIO_PIN_9 |							  GPIO_PIN_10 | GPIO_PIN_14 | GPIO_PIN_15;	HAL_GPIO_Init(GPIOD, &gpio_init_structure);	/* GPIOE configuration */  	gpio_init_structure.Pin   = GPIO_PIN_0 | GPIO_PIN_1 | GPIO_PIN_7| GPIO_PIN_8 | GPIO_PIN_9 |/							  GPIO_PIN_10 | GPIO_PIN_11 | GPIO_PIN_12 | GPIO_PIN_13 | GPIO_PIN_14 |/							  GPIO_PIN_15;	HAL_GPIO_Init(GPIOE, &gpio_init_structure);	/* GPIOF configuration */  	gpio_init_structure.Pin   = GPIO_PIN_0 | GPIO_PIN_1 | GPIO_PIN_2| GPIO_PIN_3 | GPIO_PIN_4 |/							  GPIO_PIN_5 | GPIO_PIN_11 | GPIO_PIN_12 | GPIO_PIN_13 | GPIO_PIN_14 |/							  GPIO_PIN_15;	HAL_GPIO_Init(GPIOF, &gpio_init_structure);	/* GPIOG configuration */  	gpio_init_structure.Pin   = GPIO_PIN_0 | GPIO_PIN_1 | GPIO_PIN_4| GPIO_PIN_5 | GPIO_PIN_8 |/							  GPIO_PIN_15;	HAL_GPIO_Init(GPIOG, &gpio_init_structure);	/* GPIOH configuration */  	gpio_init_structure.Pin   = GPIO_PIN_3 | GPIO_PIN_5;	HAL_GPIO_Init(GPIOH, &gpio_init_structure); 	/* Configure common DMA parameters */	dma_handle.Init.Channel             = SDRAM_DMAx_CHANNEL;	dma_handle.Init.Direction           = DMA_MEMORY_TO_MEMORY;	dma_handle.Init.PeriphInc           = DMA_PINC_ENABLE;	dma_handle.Init.MemInc              = DMA_MINC_ENABLE;	dma_handle.Init.PeriphDataAlignment = DMA_PDATAALIGN_WORD;	dma_handle.Init.MemDataAlignment    = DMA_MDATAALIGN_WORD;	dma_handle.Init.Mode                = DMA_NORMAL;	dma_handle.Init.Priority            = DMA_PRIORITY_HIGH;	dma_handle.Init.FIFOMode            = DMA_FIFOMODE_DISABLE;         	dma_handle.Init.FIFOThreshold       = DMA_FIFO_THRESHOLD_FULL;	dma_handle.Init.MemBurst            = DMA_MBURST_SINGLE;	dma_handle.Init.PeriphBurst         = DMA_PBURST_SINGLE; 	dma_handle.Instance = SDRAM_DMAx_STREAM;	/* Associate the DMA handle */	__HAL_LINKDMA(hsdram, hdma, dma_handle);	/* Deinitialize the stream for new transfer */	HAL_DMA_DeInit(&dma_handle);	/* Configure the DMA stream */	HAL_DMA_Init(&dma_handle); 	/* NVIC configuration for DMA transfer complete interrupt */	HAL_NVIC_SetPriority(SDRAM_DMAx_IRQn, 0x0F, 0);	HAL_NVIC_EnableIRQ(SDRAM_DMAx_IRQn);}
开发者ID:itxs,项目名称:STM32F7,代码行数:90,


示例10: main

//.........这里部分代码省略.........  BSP_LED_Off(LED3);  /* enable MCU wake-up by UART */  HAL_UARTEx_EnableStopMode(&UartHandle);   /* enter stop mode */  HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI);  /* ... STOP mode ... */  SystemClock_Config_fromSTOP();  /* at that point, MCU has been awoken: the LED has been turned back on */  /* Wake Up on 4-bit address detection successful */   /* wait for some delay */  HAL_Delay(100);  /* Inform other board that wake up is successful */  if (HAL_UART_Transmit(&UartHandle, (uint8_t*)aTxBuffer4, COUNTOF(aTxBuffer4)-1, 5000)!= HAL_OK)    {    Error_Handler();  }   #else  /* Configure PA.12 (Arduino D2) as input with External interrupt */  GPIO_InitStruct.Pin = GPIO_PIN_12;  GPIO_InitStruct.Pull = GPIO_PULLUP;  GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING;  /* Enable GPIOA clock */  __HAL_RCC_GPIOA_CLK_ENABLE();  HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);  /* Enable and set PA.12 (Arduino D2) EXTI Interrupt to the lowest priority */  NVIC_SetPriority((IRQn_Type)(EXTI4_15_IRQn), 0x03);  HAL_NVIC_EnableIRQ((IRQn_Type)(EXTI4_15_IRQn));  /* Wait for the user to set GPIOA to GND before starting the Communication.     In the meantime, LED3 is blinking */  while(VirtualUserButtonStatus == 0)  {      /* Toggle LED3*/      BSP_LED_Toggle(LED3);      HAL_Delay(100);  }      /*##-2- Send the wake-up from stop mode first trigger ######################*/  /*      (RXNE flag setting)                                                 */  BSP_LED_On(LED3);  if(HAL_UART_Transmit(&UartHandle, (uint8_t*)aWakeUpTrigger1, COUNTOF(aWakeUpTrigger1)-1, 5000)!= HAL_OK)  {    Error_Handler();  }    /* Put UART peripheral in reception process to wait for other board     wake up confirmation */    if(HAL_UART_Receive(&UartHandle, (uint8_t *)aRxBuffer, COUNTOF(aTxBuffer1)-1, 10000) != HAL_OK)  {    Error_Handler();  }   BSP_LED_Off(LED3);     /* Compare the expected and received buffers */  if(Buffercmp((uint8_t*)aTxBuffer1,(uint8_t*)aRxBuffer,COUNTOF(aTxBuffer1)-1))  {    Error_Handler();  } 
开发者ID:NjordCZ,项目名称:stm32cubef0,代码行数:67,


示例11: HAL_UART_MspInit

void HAL_UART_MspInit(UART_HandleTypeDef* huart){  GPIO_InitTypeDef GPIO_InitStruct;  if(huart->Instance==USART1)  {  /* USER CODE BEGIN USART1_MspInit 0 */  /* USER CODE END USART1_MspInit 0 */    /* Peripheral clock enable */    __HAL_RCC_USART1_CLK_ENABLE();      /**USART1 GPIO Configuration        PA9     ------> USART1_TX    PA10     ------> USART1_RX     */    GPIO_InitStruct.Pin = GPIO_PIN_9|GPIO_PIN_10;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;   // GPIO_InitStruct.Pull = GPIO_PULLUP;		GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;    GPIO_InitStruct.Alternate = GPIO_AF7_USART1;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);  /* USER CODE BEGIN USART1_MspInit 1 */    HAL_NVIC_SetPriority(USART1_IRQn, 0, 1);    HAL_NVIC_EnableIRQ(USART1_IRQn);  /* USER CODE END USART1_MspInit 1 */  }  else if(huart->Instance==USART2)  {  /* USER CODE BEGIN USART2_MspInit 0 */  /* USER CODE END USART2_MspInit 0 */    /* Peripheral clock enable */    __HAL_RCC_USART2_CLK_ENABLE();      /**USART2 GPIO Configuration        PD5     ------> USART2_TX    PD6     ------> USART2_RX     */    GPIO_InitStruct.Pin = GPIO_PIN_5|GPIO_PIN_6;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;  //  GPIO_InitStruct.Pull = GPIO_PULLUP;		GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;    GPIO_InitStruct.Alternate = GPIO_AF7_USART2;    HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);  /* USER CODE BEGIN USART2_MspInit 1 */    HAL_NVIC_SetPriority(USART2_IRQn, 0, 1);    HAL_NVIC_EnableIRQ(USART2_IRQn);  /* USER CODE END USART2_MspInit 1 */  }  else if(huart->Instance==USART3)  {  /* USER CODE BEGIN USART3_MspInit 0 */  /* USER CODE END USART3_MspInit 0 */    /* Peripheral clock enable */    __HAL_RCC_USART3_CLK_ENABLE();      /**USART3 GPIO Configuration        PD8     ------> USART3_TX    PD9     ------> USART3_RX     */    GPIO_InitStruct.Pin = GPIO_PIN_8|GPIO_PIN_9;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_PULLUP;    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;    GPIO_InitStruct.Alternate = GPIO_AF7_USART3;    HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);  /* USER CODE BEGIN USART3_MspInit 1 */  /* USER CODE END USART3_MspInit 1 */  }}
开发者ID:bens-unit01,项目名称:stm32-tests,代码行数:79,


示例12: HAL_PCD_MspInit

/**  * @brief  Initializes the PCD MSP.  * @param  hpcd: PCD handle  * @retval None  */void HAL_PCD_MspInit(PCD_HandleTypeDef *hpcd){  GPIO_InitTypeDef  GPIO_InitStruct;    if(hpcd->Instance == USB_OTG_FS)  {    /* Configure USB FS GPIOs */    __GPIOA_CLK_ENABLE();        /* Configure DM DP Pins */    GPIO_InitStruct.Pin = (GPIO_PIN_11 | GPIO_PIN_12);    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_FS;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);         /* Configure VBUS Pin */    GPIO_InitStruct.Pin = GPIO_PIN_9;    GPIO_InitStruct.Mode = GPIO_MODE_INPUT;    GPIO_InitStruct.Pull = GPIO_NOPULL;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);        /* Configure ID pin */    GPIO_InitStruct.Pin = GPIO_PIN_10;    GPIO_InitStruct.Mode = GPIO_MODE_AF_OD;    GPIO_InitStruct.Pull = GPIO_PULLUP;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_FS;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);        /* Enable USB FS Clock */    __USB_OTG_FS_CLK_ENABLE();        /* Set USBFS Interrupt priority */    HAL_NVIC_SetPriority(OTG_FS_IRQn, 5, 0);        /* Enable USBFS Interrupt */    HAL_NVIC_EnableIRQ(OTG_FS_IRQn);            if(hpcd->Init.low_power_enable == 1)    {      /* Enable EXTI Line 18 for USB wakeup*/      __HAL_USB_FS_EXTI_CLEAR_FLAG();      __HAL_USB_FS_EXTI_SET_RISING_EGDE_TRIGGER();      __HAL_USB_FS_EXTI_ENABLE_IT();                /* Set EXTI Wakeup Interrupt priority*/      HAL_NVIC_SetPriority(OTG_FS_WKUP_IRQn, 0, 0);            /* Enable EXTI Interrupt */      HAL_NVIC_EnableIRQ(OTG_FS_WKUP_IRQn);              }      }     else if(hpcd->Instance == USB_OTG_HS)  {    /* Configure USB FS GPIOs */    __GPIOA_CLK_ENABLE();    __GPIOB_CLK_ENABLE();    __GPIOC_CLK_ENABLE();    __GPIOH_CLK_ENABLE();    __GPIOI_CLK_ENABLE();        /* CLK */    GPIO_InitStruct.Pin = GPIO_PIN_5;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_HS;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);        /* D0 */    GPIO_InitStruct.Pin = GPIO_PIN_3;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_HS;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);        /* D1 D2 D3 D4 D5 D6 D7 */    GPIO_InitStruct.Pin = GPIO_PIN_0  | GPIO_PIN_1  | GPIO_PIN_5 |/      GPIO_PIN_10 | GPIO_PIN_11 | GPIO_PIN_12 | GPIO_PIN_13;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_HS;    HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);        /* STP */    GPIO_InitStruct.Pin = GPIO_PIN_0;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_HS;    HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);    //.........这里部分代码省略.........
开发者ID:EarnestHein89,项目名称:STM32Cube_FW_F4,代码行数:101,


示例13: MspInit

//.........这里部分代码省略.........  /* Enable GPIOs clock */  __GPIOB_CLK_ENABLE();  __GPIOC_CLK_ENABLE();  __GPIOD_CLK_ENABLE();  __GPIOE_CLK_ENABLE();  __GPIOF_CLK_ENABLE();  __GPIOG_CLK_ENABLE();                            /*-- GPIOs Configuration -----------------------------------------------------*//* +-------------------+--------------------+--------------------+--------------------+ +                       SDRAM pins assignment                                      + +-------------------+--------------------+--------------------+--------------------+ | PD0  <-> FMC_D2   | PE0  <-> FMC_NBL0  | PF0  <-> FMC_A0    | PG0  <-> FMC_A10   | | PD1  <-> FMC_D3   | PE1  <-> FMC_NBL1  | PF1  <-> FMC_A1    | PG1  <-> FMC_A11   | | PD8  <-> FMC_D13  | PE7  <-> FMC_D4    | PF2  <-> FMC_A2    | PG8  <-> FMC_SDCLK | | PD9  <-> FMC_D14  | PE8  <-> FMC_D5    | PF3  <-> FMC_A3    | PG15 <-> FMC_NCAS  | | PD10 <-> FMC_D15  | PE9  <-> FMC_D6    | PF4  <-> FMC_A4    |--------------------+  | PD14 <-> FMC_D0   | PE10 <-> FMC_D7    | PF5  <-> FMC_A5    |    | PD15 <-> FMC_D1   | PE11 <-> FMC_D8    | PF11 <-> FMC_NRAS  |  +-------------------| PE12 <-> FMC_D9    | PF12 <-> FMC_A6    |                      | PE13 <-> FMC_D10   | PF13 <-> FMC_A7    |                         | PE14 <-> FMC_D11   | PF14 <-> FMC_A8    |                     | PE15 <-> FMC_D12   | PF15 <-> FMC_A9    | +-------------------+--------------------+--------------------+ | PB5 <-> FMC_SDCKE1|  | PB6 <-> FMC_SDNE1 |  | PC0 <-> FMC_SDNWE | +-------------------+    */    /* Common GPIO configuration */  GPIO_InitStructure.Mode  = GPIO_MODE_AF_PP;  GPIO_InitStructure.Speed = GPIO_SPEED_FAST;  GPIO_InitStructure.Pull  = GPIO_NOPULL;  GPIO_InitStructure.Alternate = GPIO_AF12_FMC;  /* GPIOB configuration */  GPIO_InitStructure.Pin = GPIO_PIN_5 | GPIO_PIN_6;  HAL_GPIO_Init(GPIOB, &GPIO_InitStructure);    /* GPIOC configuration */  GPIO_InitStructure.Pin = GPIO_PIN_0;        HAL_GPIO_Init(GPIOC, &GPIO_InitStructure);      /* GPIOD configuration */  GPIO_InitStructure.Pin = GPIO_PIN_0 | GPIO_PIN_1  | GPIO_PIN_8 |                           GPIO_PIN_9 | GPIO_PIN_10 | GPIO_PIN_14 |                           GPIO_PIN_15;  HAL_GPIO_Init(GPIOD, &GPIO_InitStructure);  /* GPIOE configuration */  GPIO_InitStructure.Pin = GPIO_PIN_0  | GPIO_PIN_1  | GPIO_PIN_7 |                           GPIO_PIN_8  | GPIO_PIN_9  | GPIO_PIN_10 |                           GPIO_PIN_11 | GPIO_PIN_12 | GPIO_PIN_13 |                           GPIO_PIN_14 | GPIO_PIN_15;  HAL_GPIO_Init(GPIOE, &GPIO_InitStructure);  /* GPIOF configuration */  GPIO_InitStructure.Pin = GPIO_PIN_0  | GPIO_PIN_1 | GPIO_PIN_2 |                            GPIO_PIN_3  | GPIO_PIN_4 | GPIO_PIN_5 |                           GPIO_PIN_11 | GPIO_PIN_12 | GPIO_PIN_13 |                           GPIO_PIN_14 | GPIO_PIN_15;  HAL_GPIO_Init(GPIOF, &GPIO_InitStructure);  /* GPIOG configuration */  GPIO_InitStructure.Pin = GPIO_PIN_0 | GPIO_PIN_1 | GPIO_PIN_4 |                           GPIO_PIN_5 | GPIO_PIN_8 | GPIO_PIN_15;  HAL_GPIO_Init(GPIOG, &GPIO_InitStructure);  /* Configure common DMA parameters */  dmaHandle.Init.Channel             = SDRAM_DMAx_CHANNEL;  dmaHandle.Init.Direction           = DMA_MEMORY_TO_MEMORY;  dmaHandle.Init.PeriphInc           = DMA_PINC_ENABLE;  dmaHandle.Init.MemInc              = DMA_MINC_ENABLE;  dmaHandle.Init.PeriphDataAlignment = DMA_PDATAALIGN_WORD;  dmaHandle.Init.MemDataAlignment    = DMA_MDATAALIGN_WORD;  dmaHandle.Init.Mode                = DMA_NORMAL;  dmaHandle.Init.Priority            = DMA_PRIORITY_HIGH;  dmaHandle.Init.FIFOMode            = DMA_FIFOMODE_DISABLE;  dmaHandle.Init.FIFOThreshold       = DMA_FIFO_THRESHOLD_FULL;  dmaHandle.Init.MemBurst            = DMA_MBURST_SINGLE;  dmaHandle.Init.PeriphBurst         = DMA_PBURST_SINGLE;     dmaHandle.Instance = SDRAM_DMAx_STREAM;    /* Associate the DMA handle */  __HAL_LINKDMA(hsdram, hdma, dmaHandle);    /* Deinitialize the stream for new transfer */  HAL_DMA_DeInit(&dmaHandle);    /* Configure the DMA stream */  HAL_DMA_Init(&dmaHandle);     /* NVIC configuration for DMA transfer complete interrupt */  HAL_NVIC_SetPriority(SDRAM_DMAx_IRQn, 0, 0);  HAL_NVIC_EnableIRQ(SDRAM_DMAx_IRQn);}
开发者ID:451506709,项目名称:automated_machine,代码行数:101,


示例14: MX_GPIO_Init

//.........这里部分代码省略.........                          |GPIO_PIN_12|GPIO_PIN_13|GPIO_PIN_14|GPIO_PIN_15;  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;  GPIO_InitStruct.Pull = GPIO_NOPULL;  GPIO_InitStruct.Speed = GPIO_SPEED_LOW;  HAL_GPIO_Init(GPIOE, &GPIO_InitStruct);  /*Configure GPIO pin : PtPin */  GPIO_InitStruct.Pin = in_CALL_Pin;  GPIO_InitStruct.Mode = GPIO_MODE_INPUT;  GPIO_InitStruct.Pull = GPIO_NOPULL;  HAL_GPIO_Init(in_CALL_GPIO_Port, &GPIO_InitStruct);  /*Configure GPIO pins : PFPin PF13 PFPin */  GPIO_InitStruct.Pin = in_IGN_STM_Pin|GPIO_PIN_13|in_case_open_sw_Pin;  GPIO_InitStruct.Mode = GPIO_MODE_INPUT;  GPIO_InitStruct.Pull = GPIO_NOPULL;  HAL_GPIO_Init(GPIOF, &GPIO_InitStruct);  /*Configure GPIO pin : PtPin */  GPIO_InitStruct.Pin = in_1_wire_in_Pin;  GPIO_InitStruct.Mode = GPIO_MODE_INPUT;  GPIO_InitStruct.Pull = GPIO_NOPULL;  HAL_GPIO_Init(in_1_wire_in_GPIO_Port, &GPIO_InitStruct);  /*Configure GPIO pin : PtPin */  GPIO_InitStruct.Pin = out_1_Wire_ctrl_Pin;  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;  GPIO_InitStruct.Pull = GPIO_NOPULL;  GPIO_InitStruct.Speed = GPIO_SPEED_LOW;  HAL_GPIO_Init(out_1_Wire_ctrl_GPIO_Port, &GPIO_InitStruct);  /*Configure GPIO pins : PB0 PBPin */  GPIO_InitStruct.Pin = GPIO_PIN_0|out_SPI2_NSS_Pin;  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;  GPIO_InitStruct.Pull = GPIO_NOPULL;  GPIO_InitStruct.Speed = GPIO_SPEED_LOW;  HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);  /*Configure GPIO pins : PF11 PF12 */  GPIO_InitStruct.Pin = GPIO_PIN_11|GPIO_PIN_12;  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;  GPIO_InitStruct.Pull = GPIO_NOPULL;  GPIO_InitStruct.Speed = GPIO_SPEED_LOW;  HAL_GPIO_Init(GPIOF, &GPIO_InitStruct);  /*Configure GPIO pins : PG0 PG1 */  GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1;  GPIO_InitStruct.Mode = GPIO_MODE_INPUT;  GPIO_InitStruct.Pull = GPIO_NOPULL;  HAL_GPIO_Init(GPIOG, &GPIO_InitStruct);  /*Configure GPIO pins : PE9 PE11 */  GPIO_InitStruct.Pin = GPIO_PIN_9|GPIO_PIN_11;  GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING;  GPIO_InitStruct.Pull = GPIO_NOPULL;  HAL_GPIO_Init(GPIOE, &GPIO_InitStruct);  /*Configure GPIO pin : PB10 */  GPIO_InitStruct.Pin = GPIO_PIN_10;  GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;  GPIO_InitStruct.Pull = GPIO_NOPULL;  GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;  GPIO_InitStruct.Alternate = GPIO_AF5_SPI2;  HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);  /*Configure GPIO pins : PG2 PGPin */  GPIO_InitStruct.Pin = GPIO_PIN_2|out_UART6_dir_Pin;  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;  GPIO_InitStruct.Pull = GPIO_NOPULL;  GPIO_InitStruct.Speed = GPIO_SPEED_LOW;  HAL_GPIO_Init(GPIOG, &GPIO_InitStruct);  /*Configure GPIO pin : PtPin */  GPIO_InitStruct.Pin = out_UART1_dir_Pin;  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;  GPIO_InitStruct.Pull = GPIO_NOPULL;  GPIO_InitStruct.Speed = GPIO_SPEED_LOW;  HAL_GPIO_Init(out_UART1_dir_GPIO_Port, &GPIO_InitStruct);  /*Configure GPIO pins : PDPin PDPin */  GPIO_InitStruct.Pin = out_UART5_dir_Pin|out_UART4_dir_Pin;  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;  GPIO_InitStruct.Pull = GPIO_NOPULL;  GPIO_InitStruct.Speed = GPIO_SPEED_LOW;  HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);  /* EXTI interrupt init*/  HAL_NVIC_SetPriority(EXTI9_5_IRQn, 5, 0);  HAL_NVIC_EnableIRQ(EXTI9_5_IRQn);  HAL_NVIC_SetPriority(EXTI15_10_IRQn, 5, 0);  HAL_NVIC_EnableIRQ(EXTI15_10_IRQn);/* USER CODE BEGIN 2 */HAL_GPIO_WritePin(GPIOE,	out_CAN1_SD_Pin, GPIO_PIN_RESET);HAL_GPIO_WritePin(GPIOE,	out_CAN2_SD_Pin, GPIO_PIN_RESET);/* USER CODE END 2 */}
开发者ID:nowhard,项目名称:STM32F4_GLOSAV,代码行数:101,


示例15: HAL_LTDC_MspInit

/**  * @brief LTDC MSP Initialization   *        This function configures the hardware resources used in this example:   *           - Peripheral's clock enable  *           - Peripheral's GPIO Configuration    * @param hltdc: LTDC handle pointer  * @retval None  */void HAL_LTDC_MspInit(LTDC_HandleTypeDef *hltdc){    GPIO_InitTypeDef GPIO_Init_Structure;    /*##-1- Enable peripherals and GPIO Clocks #################################*/    /* Enable the LTDC Clock */  __HAL_RCC_LTDC_CLK_ENABLE();  /* Enable GPIOs clock */  __HAL_RCC_GPIOA_CLK_ENABLE();  __HAL_RCC_GPIOB_CLK_ENABLE();  __HAL_RCC_GPIOC_CLK_ENABLE();  __HAL_RCC_GPIOD_CLK_ENABLE();  __HAL_RCC_GPIOF_CLK_ENABLE();  __HAL_RCC_GPIOG_CLK_ENABLE();  /*##-2- Configure peripheral GPIO ##########################################*/  /******************** LTDC Pins configuration *************************/  /*   +------------------------+-----------------------+----------------------------+   +                       LCD pins assignment                                   +   +------------------------+-----------------------+----------------------------+   |  LCD_TFT R2 <-> PC.10  |  LCD_TFT G2 <-> PA.06 |  LCD_TFT B2 <-> PD.06      |   |  LCD_TFT R3 <-> PB.00  |  LCD_TFT G3 <-> PG.10 |  LCD_TFT B3 <-> PG.11      |   |  LCD_TFT R4 <-> PA.11  |  LCD_TFT G4 <-> PB.10 |  LCD_TFT B4 <-> PG.12      |   |  LCD_TFT R5 <-> PA.12  |  LCD_TFT G5 <-> PB.11 |  LCD_TFT B5 <-> PA.03      |   |  LCD_TFT R6 <-> PB.01  |  LCD_TFT G6 <-> PC.07 |  LCD_TFT B6 <-> PB.08      |   |  LCD_TFT R7 <-> PG.06  |  LCD_TFT G7 <-> PD.03 |  LCD_TFT B7 <-> PB.09      |   -------------------------------------------------------------------------------            |  LCD_TFT HSYNC <-> PC.06  | LCDTFT VSYNC <->  PA.04 |            |  LCD_TFT CLK   <-> PG.07  | LCD_TFT DE   <->  PF.10 |             -----------------------------------------------------  */  /* LTDC pins configuraiton: PA3 -- 12 */    GPIO_Init_Structure.Pin = GPIO_PIN_3 | GPIO_PIN_4 | GPIO_PIN_6 |                                GPIO_PIN_11 | GPIO_PIN_12;  GPIO_Init_Structure.Mode = GPIO_MODE_AF_PP;  GPIO_Init_Structure.Pull = GPIO_NOPULL;  GPIO_Init_Structure.Speed = GPIO_SPEED_FAST;  GPIO_Init_Structure.Alternate= GPIO_AF14_LTDC;  HAL_GPIO_Init(GPIOA, &GPIO_Init_Structure);    /* LTDC pins configuraiton: PB8 -- 11 */    GPIO_Init_Structure.Pin = GPIO_PIN_8 | /                             GPIO_PIN_9 | GPIO_PIN_10 | GPIO_PIN_11;  HAL_GPIO_Init(GPIOB, &GPIO_Init_Structure);  /* LTDC pins configuraiton: PC6 -- 10 */    GPIO_Init_Structure.Pin = GPIO_PIN_6 | GPIO_PIN_7 | GPIO_PIN_10;  HAL_GPIO_Init(GPIOC, &GPIO_Init_Structure);  /* LTDC pins configuraiton: PD3 -- 6 */    GPIO_Init_Structure.Pin = GPIO_PIN_3 | GPIO_PIN_6;  HAL_GPIO_Init(GPIOD, &GPIO_Init_Structure);    /* LTDC pins configuraiton: PF10*/    GPIO_Init_Structure.Pin = GPIO_PIN_10;  HAL_GPIO_Init(GPIOF, &GPIO_Init_Structure);       /* LTDC pins configuraiton: PG6 -- 7 */    GPIO_Init_Structure.Pin = GPIO_PIN_6 | GPIO_PIN_7 | /                             GPIO_PIN_11;  HAL_GPIO_Init(GPIOG, &GPIO_Init_Structure);   /* LTDC pins configuraiton: PB1 -- 1 */    GPIO_Init_Structure.Pin = GPIO_PIN_0 | GPIO_PIN_1;  GPIO_Init_Structure.Alternate= GPIO_AF14_LTDC;  HAL_GPIO_Init(GPIOB, &GPIO_Init_Structure);  /* LTDC pins configuraiton: PG10 -- 12 */    GPIO_Init_Structure.Pin = GPIO_PIN_10 | GPIO_PIN_12;  HAL_GPIO_Init(GPIOG, &GPIO_Init_Structure);    /* Set LTDC Interrupt to the lowest priority */  HAL_NVIC_SetPriority(LTDC_IRQn, 0xE, 0);     /* Enable LTDC Interrupt */  HAL_NVIC_EnableIRQ(LTDC_IRQn);   }
开发者ID:PaxInstruments,项目名称:STM32CubeF4,代码行数:89,


示例16: HAL_HCD_MspInit

/**  * @brief  Initializes the HCD MSP.  * @param  hhcd: HCD handle  * @retval None  */void HAL_HCD_MspInit(HCD_HandleTypeDef *hhcd){  GPIO_InitTypeDef  GPIO_InitStruct;    if(hhcd->Instance == USB_OTG_FS)  {    /* Configure USB FS GPIOs */    __HAL_RCC_GPIOA_CLK_ENABLE();    GPIO_InitStruct.Pin = (GPIO_PIN_11 | GPIO_PIN_12);    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_FS;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);         GPIO_InitStruct.Pin = GPIO_PIN_10;    GPIO_InitStruct.Mode = GPIO_MODE_AF_OD;    GPIO_InitStruct.Pull = GPIO_PULLUP;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_FS;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);         /* Configure POWER_SWITCH IO pin */    BSP_IO_ConfigPin(OTG_FS1_POWER_SWITCH_PIN, IO_MODE_OUTPUT);        /* Enable USB FS Clocks */     __HAL_RCC_USB_OTG_FS_CLK_ENABLE();        /* Set USBFS Interrupt to the lowest priority */    HAL_NVIC_SetPriority(OTG_FS_IRQn, 5, 0);        /* Enable USBFS Interrupt */    HAL_NVIC_EnableIRQ(OTG_FS_IRQn);      }     else if(hhcd->Instance == USB_OTG_HS)  {#ifdef USE_USB_HS_IN_FS        /* Configure POWER_SWITCH IO pin */    BSP_IO_ConfigPin(OTG_FS2_POWER_SWITCH_PIN, IO_MODE_OUTPUT);        __HAL_RCC_GPIOB_CLK_ENABLE();        /*Configure GPIO for HS on FS mode*/    GPIO_InitStruct.Pin = GPIO_PIN_12  | GPIO_PIN_13  | GPIO_PIN_14 |GPIO_PIN_15;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Alternate = GPIO_AF12_OTG_HS_FS;    HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);    #else    /* Configure USB FS GPIOs */    __HAL_RCC_GPIOA_CLK_ENABLE();    __HAL_RCC_GPIOB_CLK_ENABLE();    __HAL_RCC_GPIOC_CLK_ENABLE();    __HAL_RCC_GPIOH_CLK_ENABLE();            __HAL_RCC_GPIOI_CLK_ENABLE();        /* CLK */    GPIO_InitStruct.Pin = GPIO_PIN_5;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_HS;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);         /* D0 */    GPIO_InitStruct.Pin = GPIO_PIN_3;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_HS;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);         /* D1 D2 D3 D4 D5 D6 D7 */    GPIO_InitStruct.Pin = GPIO_PIN_0  | GPIO_PIN_1  | GPIO_PIN_5 |/      GPIO_PIN_10 | GPIO_PIN_11 | GPIO_PIN_12 | GPIO_PIN_13;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_HS;    HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);         /* STP */         GPIO_InitStruct.Pin = GPIO_PIN_0;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_HS;    HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);         /* NXT */     GPIO_InitStruct.Pin = GPIO_PIN_4;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;//.........这里部分代码省略.........
开发者ID:pierreroth64,项目名称:STM32Cube_FW_F4,代码行数:101,


示例17: HAL_PCD_MspInit

/**  * @brief  Initializes the PCD MSP.  * @param  hpcd: PCD handle  * @retval None  */void HAL_PCD_MspInit(PCD_HandleTypeDef *hpcd){  GPIO_InitTypeDef  GPIO_InitStruct;  if(hpcd->Instance == USB_OTG_FS)  {    /* Configure USB FS GPIOs */    __HAL_RCC_GPIOA_CLK_ENABLE();    	/* Configure DM DP Pins */    GPIO_InitStruct.Pin = (GPIO_PIN_11 | GPIO_PIN_12);    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_FS;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);     	/* Configure VBUS Pin */    GPIO_InitStruct.Pin = GPIO_PIN_9;    GPIO_InitStruct.Mode = GPIO_MODE_INPUT;    GPIO_InitStruct.Pull = GPIO_NOPULL;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);        /* Configure ID pin */    GPIO_InitStruct.Pin = GPIO_PIN_10;    GPIO_InitStruct.Mode = GPIO_MODE_AF_OD;    GPIO_InitStruct.Pull = GPIO_PULLUP;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_FS;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);        /* Enable USB FS Clocks */    __HAL_RCC_USB_OTG_FS_CLK_ENABLE();     /* Set USBFS Interrupt to the lowest priority */    HAL_NVIC_SetPriority(OTG_FS_IRQn, 7, 0);        /* Enable USBFS Interrupt */    HAL_NVIC_EnableIRQ(OTG_FS_IRQn);  }     else if(hpcd->Instance == USB_OTG_HS)  {    /* Configure USB FS GPIOs */    __HAL_RCC_GPIOA_CLK_ENABLE();    __HAL_RCC_GPIOB_CLK_ENABLE();    __HAL_RCC_GPIOC_CLK_ENABLE();    __HAL_RCC_GPIOH_CLK_ENABLE();    __HAL_RCC_GPIOI_CLK_ENABLE();        /* CLK */    GPIO_InitStruct.Pin = GPIO_PIN_5;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_HS;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);        /* D0 */    GPIO_InitStruct.Pin = GPIO_PIN_3;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_HS;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);        /* D1 D2 D3 D4 D5 D6 D7 */    GPIO_InitStruct.Pin = GPIO_PIN_0  | GPIO_PIN_1  | GPIO_PIN_5 |/                          GPIO_PIN_10 | GPIO_PIN_11 | GPIO_PIN_12 | GPIO_PIN_13;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_HS;    HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);        /* STP */    GPIO_InitStruct.Pin = GPIO_PIN_0;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_HS;    HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);        /* NXT */    GPIO_InitStruct.Pin = GPIO_PIN_4;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_HS;    HAL_GPIO_Init(GPIOH, &GPIO_InitStruct);        /* DIR */    GPIO_InitStruct.Pin = GPIO_PIN_11;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;    GPIO_InitStruct.Alternate = GPIO_AF10_OTG_HS;    HAL_GPIO_Init(GPIOI, &GPIO_InitStruct);        /* Enable USB HS Clocks */    __HAL_RCC_USB_OTG_HS_CLK_ENABLE();//.........这里部分代码省略.........
开发者ID:eemei,项目名称:library-stm32f4,代码行数:101,


示例18: main

int main(void){    /* USER CODE BEGIN 1 */    /* USER CODE END 1 */    /* MCU Configuration----------------------------------------------------------*/    /* Reset of all peripherals, Initializes the Flash interface and the Systick. */    HAL_Init();    /* Configure the system clock */    SystemClock_Config();    /* Initialize all configured peripherals */    MX_GPIO_Init();    HAL_NVIC_SetPriority(EXTI0_1_IRQn, 3, 0);    HAL_NVIC_EnableIRQ(EXTI0_1_IRQn);    /* USER CODE BEGIN 2 */    /* USER CODE END 2 */    /* USER CODE BEGIN RTOS_MUTEX */    /* add mutexes, ... */    /* USER CODE END RTOS_MUTEX */    /* USER CODE BEGIN RTOS_SEMAPHORES */    /* add semaphores, ... */    /* USER CODE END RTOS_SEMAPHORES */    /* USER CODE BEGIN RTOS_TIMERS */    /* start timers, add new ones, ... */    /* USER CODE END RTOS_TIMERS */    /* Create the thread(s) */    /* definition and creation of defaultTask */    //osThreadDef(defaultTask, StartDefaultTask, osPriorityNormal, 0, 128);    //defaultTaskHandle = osThreadCreate(osThread(defaultTask), NULL);    // TODO: make the total stack size allowable bigger. It seems that it is currently set to 500.    osThreadDef(uart_task, uart_thread, osPriorityNormal, 0, 450);    uart_task_handle = osThreadCreate(osThread(uart_task), NULL);    osThreadDef(button_task, button_thread, osPriorityNormal, 0, 50);    button_task_handle = osThreadCreate(osThread(button_task), NULL);    /* USER CODE BEGIN RTOS_THREADS */    /* add threads, ... */    /* USER CODE END RTOS_THREADS */    /* USER CODE BEGIN RTOS_QUEUES */    /* add queues, ... */    /* USER CODE END RTOS_QUEUES */    /* Start scheduler */    osKernelStart(NULL, NULL);    /* We should never get here as control is now taken by the scheduler */    /* Infinite loop */    /* USER CODE BEGIN WHILE */    while (1)    {    /* USER CODE END WHILE */    /* USER CODE BEGIN 3 */    }    /* USER CODE END 3 */}
开发者ID:WiFind,项目名称:WiFind_MCU,代码行数:73,


示例19: DCMI_MspInit

/**  * @brief  Initializes the DCMI MSP.  * @param  None  * @retval None  */static void DCMI_MspInit(void){  static DMA_HandleTypeDef hdma_eval;  GPIO_InitTypeDef GPIO_Init_Structure;  DCMI_HandleTypeDef *hdcmi = &hdcmi_eval;    /*** Enable peripherals and GPIO clocks ***/  /* Enable DCMI clock */  __DCMI_CLK_ENABLE();  /* Enable DMA2 clock */  __DMA2_CLK_ENABLE();     /* Enable GPIO clocks */  __GPIOA_CLK_ENABLE();  __GPIOB_CLK_ENABLE();  __GPIOC_CLK_ENABLE();  __GPIOD_CLK_ENABLE();  __GPIOE_CLK_ENABLE();  /*** Configure the GPIO ***/  /* Configure DCMI GPIO as alternate function */  GPIO_Init_Structure.Pin       = GPIO_PIN_4;   GPIO_Init_Structure.Mode      = GPIO_MODE_AF_PP;  GPIO_Init_Structure.Pull      = GPIO_PULLUP;  GPIO_Init_Structure.Speed     = GPIO_SPEED_HIGH;  GPIO_Init_Structure.Alternate = GPIO_AF13_DCMI;    HAL_GPIO_Init(GPIOA, &GPIO_Init_Structure);  GPIO_Init_Structure.Pin       = GPIO_PIN_7 | GPIO_PIN_8;   GPIO_Init_Structure.Mode      = GPIO_MODE_AF_PP;  GPIO_Init_Structure.Pull      = GPIO_PULLUP;  GPIO_Init_Structure.Speed     = GPIO_SPEED_HIGH;  GPIO_Init_Structure.Alternate = GPIO_AF13_DCMI;     HAL_GPIO_Init(GPIOB, &GPIO_Init_Structure);  GPIO_Init_Structure.Pin       = GPIO_PIN_6 | GPIO_PIN_7  | GPIO_PIN_8  |/                                  GPIO_PIN_9 | GPIO_PIN_10 | GPIO_PIN_11 |/                                  GPIO_PIN_12;   GPIO_Init_Structure.Mode      = GPIO_MODE_AF_PP;  GPIO_Init_Structure.Pull      = GPIO_PULLUP;  GPIO_Init_Structure.Speed     = GPIO_SPEED_HIGH;  GPIO_Init_Structure.Alternate = GPIO_AF13_DCMI;     HAL_GPIO_Init(GPIOC, &GPIO_Init_Structure);  GPIO_Init_Structure.Pin       = GPIO_PIN_2 | GPIO_PIN_3 | GPIO_PIN_6;   GPIO_Init_Structure.Mode      = GPIO_MODE_AF_PP;  GPIO_Init_Structure.Pull      = GPIO_PULLUP;  GPIO_Init_Structure.Speed     = GPIO_SPEED_HIGH;  GPIO_Init_Structure.Alternate = GPIO_AF13_DCMI;     HAL_GPIO_Init(GPIOD, &GPIO_Init_Structure);  GPIO_Init_Structure.Pin       = GPIO_PIN_6;   GPIO_Init_Structure.Mode      = GPIO_MODE_AF_PP;  GPIO_Init_Structure.Pull      = GPIO_PULLUP;  GPIO_Init_Structure.Speed     = GPIO_SPEED_HIGH;  GPIO_Init_Structure.Alternate = GPIO_AF13_DCMI;     HAL_GPIO_Init(GPIOE, &GPIO_Init_Structure);     GPIO_Init_Structure.Pin       = GPIO_PIN_6;   GPIO_Init_Structure.Mode      = GPIO_MODE_AF_PP;  GPIO_Init_Structure.Pull      = GPIO_PULLUP;  GPIO_Init_Structure.Speed     = GPIO_SPEED_HIGH;  GPIO_Init_Structure.Alternate = GPIO_AF13_DCMI;     HAL_GPIO_Init(GPIOA, &GPIO_Init_Structure);    /*** Configure the DMA ***/  /* Set the parameters to be configured */  hdma_eval.Init.Channel             = DMA_CHANNEL_1;  hdma_eval.Init.Direction           = DMA_PERIPH_TO_MEMORY;  hdma_eval.Init.PeriphInc           = DMA_PINC_DISABLE;  hdma_eval.Init.MemInc              = DMA_MINC_ENABLE;  hdma_eval.Init.PeriphDataAlignment = DMA_PDATAALIGN_WORD;  hdma_eval.Init.MemDataAlignment    = DMA_MDATAALIGN_WORD;  hdma_eval.Init.Mode                = DMA_CIRCULAR;  hdma_eval.Init.Priority            = DMA_PRIORITY_HIGH;  hdma_eval.Init.FIFOMode            = DMA_FIFOMODE_DISABLE;           hdma_eval.Init.FIFOThreshold       = DMA_FIFO_THRESHOLD_FULL;  hdma_eval.Init.MemBurst            = DMA_MBURST_SINGLE;  hdma_eval.Init.PeriphBurst         = DMA_PBURST_SINGLE;   hdma_eval.Instance = DMA2_Stream1;  /* Associate the initialized DMA handle to the DCMI handle */  __HAL_LINKDMA(hdcmi, DMA_Handle, hdma_eval);    /*** Configure the NVIC for DCMI and DMA ***/  /* NVIC configuration for DCMI transfer complete interrupt */  HAL_NVIC_SetPriority(DCMI_IRQn, 5, 0);  HAL_NVIC_EnableIRQ(DCMI_IRQn);      /* NVIC configuration for DMA2D transfer complete interrupt */  HAL_NVIC_SetPriority(DMA2_Stream1_IRQn, 5, 0);  HAL_NVIC_EnableIRQ(DMA2_Stream1_IRQn);  //.........这里部分代码省略.........
开发者ID:erdincay,项目名称:stm32f401-nucleo-basic-template,代码行数:101,


示例20: HAL_QSPI_MspInit

/**  * @brief QSPI MSP Initialization  *        This function configures the hardware resources used in this example:  *           - Peripheral's clock enable  *           - Peripheral's GPIO Configuration  *           - DMA configuration for requests by peripheral  *           - NVIC configuration for DMA and QSPI interrupts  * @param hqspi: QSPI handle pointer  * @retval None  */void HAL_QSPI_MspInit(QSPI_HandleTypeDef *hqspi){  GPIO_InitTypeDef GPIO_InitStruct;  static DMA_HandleTypeDef hdma;  /*##-1- Enable peripherals and GPIO Clocks #################################*/  /* Enable the QuadSPI memory interface clock */  QSPI_CLK_ENABLE();  /* Reset the QuadSPI memory interface */  QSPI_FORCE_RESET();  QSPI_RELEASE_RESET();  /* Enable GPIO clocks */  QSPI_CS_GPIO_CLK_ENABLE();  QSPI_CLK_GPIO_CLK_ENABLE();  QSPI_D0_GPIO_CLK_ENABLE();  QSPI_D1_GPIO_CLK_ENABLE();  QSPI_D2_GPIO_CLK_ENABLE();  QSPI_D3_GPIO_CLK_ENABLE();  /* Enable DMA clock */  QSPI_DMA_CLK_ENABLE();  /*##-2- Configure peripheral GPIO ##########################################*/  /* QSPI CS GPIO pin configuration  */  GPIO_InitStruct.Pin       = QSPI_CS_PIN;  GPIO_InitStruct.Mode      = GPIO_MODE_AF_PP;  GPIO_InitStruct.Pull      = GPIO_PULLUP;  GPIO_InitStruct.Speed     = GPIO_SPEED_HIGH;  GPIO_InitStruct.Alternate = GPIO_AF10_QSPI;  HAL_GPIO_Init(QSPI_CS_GPIO_PORT, &GPIO_InitStruct);  /* QSPI CLK GPIO pin configuration  */  GPIO_InitStruct.Pin       = QSPI_CLK_PIN;  GPIO_InitStruct.Pull      = GPIO_NOPULL;  GPIO_InitStruct.Alternate = GPIO_AF9_QSPI;  HAL_GPIO_Init(QSPI_CLK_GPIO_PORT, &GPIO_InitStruct);  /* QSPI D0 GPIO pin configuration  */  GPIO_InitStruct.Pin       = QSPI_D0_PIN;  GPIO_InitStruct.Alternate = GPIO_AF10_QSPI;  HAL_GPIO_Init(QSPI_D0_GPIO_PORT, &GPIO_InitStruct);  /* QSPI D1 GPIO pin configuration  */  GPIO_InitStruct.Pin       = QSPI_D1_PIN;  GPIO_InitStruct.Alternate = GPIO_AF10_QSPI;  HAL_GPIO_Init(QSPI_D1_GPIO_PORT, &GPIO_InitStruct);  /* QSPI D2 GPIO pin configuration  */  GPIO_InitStruct.Pin       = QSPI_D2_PIN;  GPIO_InitStruct.Alternate = GPIO_AF9_QSPI;  HAL_GPIO_Init(QSPI_D2_GPIO_PORT, &GPIO_InitStruct);  /* QSPI D3 GPIO pin configuration  */  GPIO_InitStruct.Pin       = QSPI_D3_PIN;  GPIO_InitStruct.Alternate = GPIO_AF9_QSPI;  HAL_GPIO_Init(QSPI_D3_GPIO_PORT, &GPIO_InitStruct);  /*##-3- Configure the NVIC for QSPI #########################################*/  /* NVIC configuration for QSPI interrupt */  HAL_NVIC_SetPriority(QUADSPI_IRQn, 0x0F, 0);  HAL_NVIC_EnableIRQ(QUADSPI_IRQn);  /*##-4- Configure the DMA channel ###########################################*/  /* QSPI DMA channel configuration */  hdma.Init.Channel             = QSPI_DMA_CHANNEL;  hdma.Init.PeriphInc           = DMA_PINC_DISABLE;  hdma.Init.MemInc              = DMA_MINC_ENABLE;  hdma.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;  hdma.Init.MemDataAlignment    = DMA_MDATAALIGN_BYTE;  hdma.Init.Mode                = DMA_NORMAL;  hdma.Init.Priority            = DMA_PRIORITY_LOW;  hdma.Init.FIFOMode            = DMA_FIFOMODE_DISABLE;        /* FIFO mode disabled     */  hdma.Init.FIFOThreshold       = DMA_FIFO_THRESHOLD_FULL;  hdma.Init.MemBurst            = DMA_MBURST_SINGLE;           /* Memory burst           */  hdma.Init.PeriphBurst         = DMA_PBURST_SINGLE;           /* Peripheral burst       */  hdma.Instance                 = QSPI_DMA_INSTANCE;  __HAL_LINKDMA(hqspi, hdma, hdma);  HAL_DMA_Init(&hdma);  /* NVIC configuration for DMA interrupt */  HAL_NVIC_SetPriority(QSPI_DMA_IRQ, 0x00, 0);  HAL_NVIC_EnableIRQ(QSPI_DMA_IRQ);}
开发者ID:Joe-Merten,项目名称:Stm32-Tools-Evaluation,代码行数:94,


示例21: HAL_InitTick

//.........这里部分代码省略.........  RCC_OscInitStruct.LSIState = RCC_LSI_ON;  PeriphClkInitStruct.RTCClockSelection = RCC_RTCCLKSOURCE_LSI;#elif defined (RTC_CLOCK_SOURCE_HSE)  /* Configue HSE as RTC clock soucre */  RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;  RCC_OscInitStruct.PLL.PLLState = RCC_PLL_NONE;  RCC_OscInitStruct.HSEState = RCC_HSE_ON;  /* Ensure that RTC is clocked by 1MHz */  PeriphClkInitStruct.RTCClockSelection = RCC_RTCCLKSOURCE_1MHZ;#else#error Please select the RTC Clock source#endif /* RTC_CLOCK_SOURCE_LSE */  if(HAL_RCC_OscConfig(&RCC_OscInitStruct) == HAL_OK)  {    PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_RTC;    if(HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) == HAL_OK)    {      /* Enable RTC Clock */      __HAL_RCC_RTC_ENABLE();      /* The time base should be 1ms         Time base = ((RTC_ASYNCH_PREDIV + 1) * (RTC_SYNCH_PREDIV + 1)) / RTC_CLOCK          HSE as RTC clock            Time base = ((99 + 1) * (9 + 1)) / 1MHz                     = 1ms         LSE as RTC clock            Time base = ((31 + 1) * (0 + 1)) / 32.768KHz                     = ~1ms         LSI as RTC clock            Time base = ((31 + 1) * (0 + 1)) / 32KHz                     = 1ms      */      hRTC_Handle.Instance = RTC;      hRTC_Handle.Init.HourFormat = RTC_HOURFORMAT_24;      hRTC_Handle.Init.AsynchPrediv = RTC_ASYNCH_PREDIV;      hRTC_Handle.Init.SynchPrediv = RTC_SYNCH_PREDIV;      hRTC_Handle.Init.OutPut = RTC_OUTPUT_DISABLE;      hRTC_Handle.Init.OutPutPolarity = RTC_OUTPUT_POLARITY_HIGH;      hRTC_Handle.Init.OutPutType = RTC_OUTPUT_TYPE_OPENDRAIN;      HAL_RTC_Init(&hRTC_Handle);      /* Disable the write protection for RTC registers */      __HAL_RTC_WRITEPROTECTION_DISABLE(&hRTC_Handle);      /* Disable the Alarm A interrupt */      __HAL_RTC_ALARMA_DISABLE(&hRTC_Handle);      /* Clear flag alarm A */      __HAL_RTC_ALARM_CLEAR_FLAG(&hRTC_Handle, RTC_FLAG_ALRAF);      counter = 0U;      /* Wait till RTC ALRAWF flag is set and if Time out is reached exit */      while(__HAL_RTC_ALARM_GET_FLAG(&hRTC_Handle, RTC_FLAG_ALRAWF) == RESET)      {        if(counter++ == (SystemCoreClock /48U)) /* Timeout = ~ 1s */        {          return HAL_ERROR;        }      }      hRTC_Handle.Instance->ALRMAR = (uint32_t)0x01U;      /* Configure the Alarm state: Enable Alarm */      __HAL_RTC_ALARMA_ENABLE(&hRTC_Handle);      /* Configure the Alarm interrupt */      __HAL_RTC_ALARM_ENABLE_IT(&hRTC_Handle, RTC_IT_ALRA);      /* RTC Alarm Interrupt Configuration: EXTI configuration */      __HAL_RTC_ALARM_EXTI_ENABLE_IT();      __HAL_RTC_ALARM_EXTI_ENABLE_RISING_EDGE();      /* Check if the Initialization mode is set */      if((hRTC_Handle.Instance->ISR & RTC_ISR_INITF) == (uint32_t)RESET)      {        /* Set the Initialization mode */        hRTC_Handle.Instance->ISR = (uint32_t)RTC_INIT_MASK;        counter = 0U;        while((hRTC_Handle.Instance->ISR & RTC_ISR_INITF) == (uint32_t)RESET)        {          if(counter++ == (SystemCoreClock /48U)) /* Timeout = ~ 1s */          {            return HAL_ERROR;          }        }      }      hRTC_Handle.Instance->DR = 0U;      hRTC_Handle.Instance->TR = 0U;      hRTC_Handle.Instance->ISR &= (uint32_t)~RTC_ISR_INIT;      /* Enable the write protection for RTC registers */      __HAL_RTC_WRITEPROTECTION_ENABLE(&hRTC_Handle);      HAL_NVIC_SetPriority(RTC_Alarm_IRQn, TickPriority, 0U);      HAL_NVIC_EnableIRQ(RTC_Alarm_IRQn);      return HAL_OK;    }  }  return HAL_ERROR;}
开发者ID:Hom-Wang,项目名称:SmartIMU,代码行数:101,


示例22: TIM_LED_Config

/**  * @brief  Configures TIM4 Peripheral for LEDs lighting.  * @param  None  * @retval None  */static void TIM_LED_Config(void){  uint16_t prescalervalue = 0;  uint32_t tmpvalue = 0;  /* TIM4 clock enable */  __HAL_RCC_TIM4_CLK_ENABLE();    /* Enable the TIM4 global Interrupt */  HAL_NVIC_SetPriority(TIM4_IRQn, 7, 0);    HAL_NVIC_EnableIRQ(TIM4_IRQn);    /* -----------------------------------------------------------------------  TIM4 Configuration: Output Compare Timing Mode:      To get TIM4 counter clock at 550 KHz, the prescaler is computed as follows:    Prescaler = (TIM4CLK / TIM4 counter clock) - 1    Prescaler = ((f(APB1) * 2) /550 KHz) - 1      CC update rate = TIM4 counter clock / CCR_Val = 32.687 Hz    ==> Toggling frequency = 16.343 Hz    ----------------------------------------------------------------------- */    /* Compute the prescaler value */  tmpvalue = HAL_RCC_GetPCLK1Freq();  prescalervalue = (uint16_t) ((tmpvalue * 2) / 550000) - 1;    /* Time base configuration */  hTimLed.Instance = TIM4;  hTimLed.Init.Period = 65535;  hTimLed.Init.Prescaler = prescalervalue;  hTimLed.Init.ClockDivision = 0;  hTimLed.Init.CounterMode = TIM_COUNTERMODE_UP;  if(HAL_TIM_OC_Init(&hTimLed) != HAL_OK)  {    /* Initialization Error */    Error_Handler();  }    /* Output Compare Timing Mode configuration: Channel1 */  sConfigLed.OCMode = TIM_OCMODE_TIMING;  sConfigLed.OCIdleState = TIM_OCIDLESTATE_SET;  sConfigLed.Pulse = CCR1Val;  sConfigLed.OCPolarity = TIM_OCPOLARITY_HIGH;  sConfigLed.OCNPolarity = TIM_OCNPOLARITY_HIGH;  sConfigLed.OCFastMode = TIM_OCFAST_ENABLE;  sConfigLed.OCNIdleState = TIM_OCNIDLESTATE_SET;    /* Initialize the TIM4 Channel1 with the structure above */  if(HAL_TIM_OC_ConfigChannel(&hTimLed, &sConfigLed, TIM_CHANNEL_1) != HAL_OK)  {    /* Initialization Error */    Error_Handler();  }  /* Start the Output Compare */  if(HAL_TIM_OC_Start_IT(&hTimLed, TIM_CHANNEL_1) != HAL_OK)  {    /* Start Error */    Error_Handler();  }}
开发者ID:glocklueng,项目名称:STM32F401-TP_FINAL,代码行数:66,


示例23: uart_init_peripheral

static int uart_init_peripheral(void){  __HAL_RCC_USART2_CLK_ENABLE();  __HAL_RCC_DMA1_CLK_ENABLE();  UARThandle.Instance                   = UART_INSTANCE;  UARThandle.Init.BaudRate              = UART_BAUDRATE;  UARThandle.Init.WordLength            = UART_WORDLENGTH_8B;  UARThandle.Init.StopBits              = UART_STOPBITS_1;  UARThandle.Init.Parity                = UART_PARITY_NONE;  UARThandle.Init.HwFlowCtl             = UART_HWCONTROL_NONE;  UARThandle.Init.OverSampling          = UART_OVERSAMPLING_8;  UARThandle.Init.Mode                  = UART_MODE_TX_RX;  DMAhandle_TX.Instance                 = DMA1_Stream6;  DMAhandle_TX.Init.Channel             = DMA_CHANNEL_4;  DMAhandle_TX.Init.Direction           = DMA_MEMORY_TO_PERIPH;  DMAhandle_TX.Init.FIFOMode            = DMA_FIFOMODE_DISABLE;  DMAhandle_TX.Init.MemBurst            = DMA_MBURST_SINGLE;  DMAhandle_TX.Init.MemDataAlignment    = DMA_MDATAALIGN_BYTE;  DMAhandle_TX.Init.MemInc              = DMA_MINC_ENABLE;  DMAhandle_TX.Init.Mode                = DMA_NORMAL;  DMAhandle_TX.Init.PeriphBurst         = DMA_PBURST_SINGLE;  DMAhandle_TX.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;  DMAhandle_TX.Init.PeriphInc           = DMA_PINC_DISABLE;  DMAhandle_TX.Init.Priority            = DMA_PRIORITY_LOW;  DMAhandle_RX                          = DMAhandle_TX;  DMAhandle_RX.Instance                 = DMA1_Stream5;  DMAhandle_RX.Init.Channel             = DMA_CHANNEL_4;  DMAhandle_RX.Init.Direction           = DMA_PERIPH_TO_MEMORY;  DMAhandle_RX.Init.Mode                = DMA_CIRCULAR;  UARThandle.hdmatx = &DMAhandle_TX;  UARThandle.hdmarx = &DMAhandle_RX;  HAL_UART_DeInit(&UARThandle);  HAL_UART_Init(&UARThandle);  UART_INSTANCE->BRR = (2u << 4u) | (5u); /* Baudrate = 2000000 with SYSCLK=168MHz,                                           * HAL is not very good at figuring this number out... */  HAL_DMA_DeInit(&DMAhandle_TX);  HAL_DMA_Init(&DMAhandle_TX);  HAL_DMA_DeInit(&DMAhandle_RX);  HAL_DMA_Init(&DMAhandle_RX);  NVIC_SetPriority(DMA1_Stream6_IRQn, UART_DMA_TX_IRQ_PRIO);  HAL_NVIC_EnableIRQ(DMA1_Stream6_IRQn);  NVIC_SetPriority(DMA1_Stream5_IRQn, UART_DMA_RX_IRQ_PRIO);  HAL_NVIC_EnableIRQ(DMA1_Stream5_IRQn);  /* Use uart data register as peripheral destination for TX */  DMAhandle_TX.Instance->PAR = (uint32_t) &(UARThandle.Instance->DR);  /* Set source and destination address and buffer length */  DMAhandle_RX.Instance->NDTR = RX_BUF_LEN;  DMAhandle_RX.Instance->PAR  = (uint32_t) &(UARThandle.Instance->DR);  DMAhandle_RX.Instance->M0AR = (uint32_t) dma_buffer_rx;  /* Enable UART as DMA enabled receiver */  UARThandle.Instance->CR3 |= USART_CR3_DMAR;  /* Enable transfer complete interrupt */  __HAL_DMA_ENABLE_IT(&DMAhandle_RX, DMA_IT_TC);  __HAL_DMA_ENABLE(&DMAhandle_RX);  return 0;}
开发者ID:osannolik,项目名称:calmeas,代码行数:69,


示例24: hw_TemperatureManageInit

/** /brief 温度控制硬件初始化 * * /return void */void hw_TemperatureManageInit(void){    ///ADC配置,ADC1,in10,in11,in12,in13    GPIO_InitTypeDef    GPIO_InitStruct;    TIM_OC_InitTypeDef  TIM_InitStruct;    ADC_ChannelConfTypeDef sConfig;    ADC_HandleStruct.Instance                       = ADC1;    if (HAL_ADC_DeInit(&ADC_HandleStruct) != HAL_OK)    {        return;    }    ADC_HandleStruct.Init.ScanConvMode              = ADC_SCAN_ENABLE;    ADC_HandleStruct.Init.ContinuousConvMode        = ENABLE;    ADC_HandleStruct.Init.DiscontinuousConvMode     = DISABLE;    ADC_HandleStruct.Init.DataAlign                 = ADC_DATAALIGN_RIGHT;    ADC_HandleStruct.Init.ExternalTrigConv          = ADC_SOFTWARE_START;    ADC_HandleStruct.Init.NbrOfConversion           = HEATER_COUNT;    init_BeforeADC();    HAL_ADC_Init(&ADC_HandleStruct);    sConfig.Channel = ADC_CHANNEL_10;                        ///Channel_Extruder_0    sConfig.Rank = 1;    sConfig.SamplingTime = ADC_SAMPLETIME_71CYCLES_5;    HAL_ADC_ConfigChannel(&ADC_HandleStruct, &sConfig);#ifdef HEATBED_ENABLED    sConfig.Channel = ADC_CHANNEL_11;                        ///Channel_bed    sConfig.Rank = 2;    sConfig.SamplingTime = ADC_SAMPLETIME_71CYCLES_5;    HAL_ADC_ConfigChannel(&ADC_HandleStruct, &sConfig);#endif#ifdef EXTRUDER_2_ENABLED    sConfig.Channel = ADC_CHANNEL_12;                        ///Channel_Extruder_1    sConfig.Rank = 3;    sConfig.SamplingTime = ADC_SAMPLETIME_71CYCLES_5;    HAL_ADC_ConfigChannel(&ADC_HandleStruct, &sConfig);#endif#ifdef EXTRUDER_3_ENABLED    sConfig.Channel = ADC_CHANNEL_13;                        ///Channel_Extruder_2    sConfig.Rank = 4;    sConfig.SamplingTime = ADC_SAMPLETIME_71CYCLES_5;    HAL_ADC_ConfigChannel(&ADC_HandleStruct, &sConfig);#endif    HAL_ADCEx_Calibration_Start(&ADC_HandleStruct);    ///ADC时钟配置  采样周期100ms    __HAL_RCC_TIM6_CLK_ENABLE();    TIM_ADC_HandleStruct.Instance           = TIM6;    TIM_ADC_HandleStruct.Init.Period        = 1000 - 1;    TIM_ADC_HandleStruct.Init.Prescaler     = (uint32_t) (SystemCoreClock/2/10000) - 1;    TIM_ADC_HandleStruct.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;    TIM_ADC_HandleStruct.Init.CounterMode   = TIM_COUNTERMODE_UP;    HAL_TIM_Base_Init(&TIM_ADC_HandleStruct);    __HAL_TIM_SET_COUNTER(&TIM_ADC_HandleStruct, 0);    HAL_NVIC_SetPriority(TIM6_IRQn, 4, 0);    HAL_NVIC_EnableIRQ(TIM6_IRQn);    ///加热PWM配置  PB6,7,8,9    __HAL_RCC_GPIOB_CLK_ENABLE();    GPIO_InitStruct.Pin = GPIO_PIN_6;#ifdef HEATBED_ENABLED    GPIO_InitStruct.Pin |= GPIO_PIN_7;#endif#ifdef EXTRUDER_2_ENABLED    GPIO_InitStruct.Pin |= GPIO_PIN_8;#endif#ifdef EXTRUDER_3_ENABLED    GPIO_InitStruct.Pin |= GPIO_PIN_9;#endif    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_NOPULL;             ///内部不做上下拉电阻    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;    HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);    ///PWM时钟配置    __HAL_RCC_TIM4_CLK_ENABLE();    TIM_PWM_HandleStruct.Instance = TIM4;    TIM_PWM_HandleStruct.Init.Prescaler = (uint32_t) (SystemCoreClock/2/250000) - 1;    TIM_PWM_HandleStruct.Init.Period = 254;         ///总共255    TIM_PWM_HandleStruct.Init.ClockDivision = 0;    TIM_PWM_HandleStruct.Init.CounterMode = TIM_COUNTERMODE_UP;    HAL_TIM_PWM_Init(&TIM_PWM_HandleStruct);    TIM_InitStruct.OCMode = TIM_OCMODE_PWM1;    TIM_InitStruct.OCPolarity = TIM_OCPOLARITY_HIGH;    TIM_InitStruct.OCFastMode = TIM_OCFAST_DISABLE;    TIM_InitStruct.Pulse = 0;    HAL_TIM_PWM_ConfigChannel(&TIM_PWM_HandleStruct, &TIM_InitStruct, TIM_CHANNEL_1);//.........这里部分代码省略.........
开发者ID:RennWang,项目名称:JawsFromMarlin,代码行数:101,


示例25: HAL_TIM_IC_MspInit

/**  * @brief TIM MSP Initialization   *        This function configures the hardware resources used in this example:   *           - Peripheral's clock enable  *           - Peripheral's GPIO Configuration    * @param htim: TIM handle pointer  * @retval None  */void HAL_TIM_IC_MspInit(TIM_HandleTypeDef *htim){  GPIO_InitTypeDef   GPIO_InitStruct;	if( htim == &TimHandleSonar){		/*##-1- Enable peripherals and GPIO Clocks #################################*/		/* TIMx Peripheral clock enable */		TIMsonar_CLK_ENABLE();					/* Enable GPIO channels Clock */		ICx_PORT_CLK_ENABLE();				/* Configure  (TIMx_Channel) in Alternate function, push-pull and 100MHz speed */		GPIO_InitStruct.Pin = ICx_PIN;		GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;		GPIO_InitStruct.Pull = GPIO_PULLUP;		GPIO_InitStruct.Speed = GPIO_SPEED_MEDIUM;		GPIO_InitStruct.Alternate = GPIO_AF_TIMsonar;		HAL_GPIO_Init(ICx_PORT, &GPIO_InitStruct);		/*##-2- Configure the NVIC for TIMx ########################################*/		/* Set the TIMx priority */		HAL_NVIC_SetPriority(TIMsonar_IRQn, 0, 1);				/* Enable the TIMx global Interrupt */		HAL_NVIC_EnableIRQ(TIMsonar_IRQn);  	}	#ifdef INPUT_PWM	else if( htim == &TimHandle_PWM ){		/*##-1- Enable peripherals and GPIO Clocks #################################*/		/* TIM_PWM Peripheral clock enable */		TIM_PWM_CLK_ENABLE();		/* Enable GPIO Channels Clock */		TIM_PWM_GPIO_CLK_ENABLE();		/*##-2- Configure I/Os #####################################################*/		/*		*/		/* Common configuration for all channels */		GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;		GPIO_InitStruct.Pull = GPIO_PULLUP;		GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;		GPIO_InitStruct.Alternate = GPIO_AF2_TIM4;				GPIO_InitStruct.Pin = GPIO_PIN_CHANNEL1;		HAL_GPIO_Init(TIM_PWM_GPIO_PORT, &GPIO_InitStruct);				GPIO_InitStruct.Pin = GPIO_PIN_CHANNEL2;		HAL_GPIO_Init(TIM_PWM_GPIO_PORT, &GPIO_InitStruct);				GPIO_InitStruct.Pin = GPIO_PIN_CHANNEL3;		HAL_GPIO_Init(TIM_PWM_GPIO_PORT, &GPIO_InitStruct);				GPIO_InitStruct.Pin = GPIO_PIN_CHANNEL4;		HAL_GPIO_Init(TIM_PWM_GPIO_PORT, &GPIO_InitStruct);		/*##-2- Configure the NVIC for TIMx ########################################*/		/* Set the TIMx priority */		HAL_NVIC_SetPriority(TIM_PWM_IRQn, 4, 1);				/* Enable the TIMx global Interrupt */		HAL_NVIC_EnableIRQ(TIM_PWM_IRQn);  	}	#endif}
开发者ID:ydwzj,项目名称:STM32F4,代码行数:70,


示例26: configure_stepper_motor

//******************************************************************************//   Configure Stepper Motor////             Configure the stepp er motor we will be using://                - Configure control pins:  DIR,//                - Configure SPI uses to talk to EasySpin chip//                - Setup interrupt handlers to catch IRQ requests from EasySpin//******************************************************************************int  configure_stepper_motor (void){    int   rc;    TIM_HandleTypeDef  *tim_handle;              // CHEAP HACK - FIX      TIM_MasterConfigTypeDef  sMasterConfig;    // TEMP HACK// --- begin --- The following is equivalent to Easyspin_Begin() code       //---------------------------------------------------------------------       // Configure easySPIN - DIR pin for device 1 - D7       //---------------------------------------------------------------------    pin_Config (L6474_DIR_1_PIN, GPIO_OUTPUT, 0);    pin_High (L6474_DIR_1_PIN);            // set default direction = Forward                                           //    1 = forward,  0 = Backward       //---------------------------------------------------------------------       // Configure easySPIN - STBY/RESET pin  -  D8       //---------------------------------------------------------------------    pin_Config (L6474_RESET_PIN, GPIO_OUTPUT, 0);    pin_Low (L6474_RESET_PIN);                     // turn on RESET to L6474     //--------------------------------------------------------------------------     // Config easySPIN - Interrupt IRQ Flag pin and associated EXTI in NVIC - D2     //     // Note that this configures everything, but leaves the interrupt disabled.     // This is done in order to complete any other needed config operations,     // before turning on interrupts.     // A subsequent call to pin_Enable_IRQ() will enable the NVIC interrupt.     //--------------------------------------------------------------------------    pin_Config_IRQ_Pin (L6474_IRQ_PIN, GPIO_RUPT_MODE_FALLING, PIN_USE_PULLUP,                        L6474_EXTI_IRQ_NUM, 5);// BUG in above code not setting IRQn right ?        /* Set Priority of External Line Interrupt used for the Flag interrupt*/     HAL_NVIC_SetPriority (L6474_EXTI_IRQ_NUM, 5, 0);     // EXTI15_10_IRQn        /* Enable the External Line Interrupt used for the Flag interrupt */     HAL_NVIC_EnableIRQ (L6474_EXTI_IRQ_NUM);       //-----------------------------------------------------------------------       //                         SPI  Init       // Config easySPIN  SPI  interface and  CS  pin.            CS pin is D10       // Uses SPI 1 (PA5 / PA6 / PA7) on most Nucleos.       //-----------------------------------------------------------------------// easyspin uses: SPI_BAUDRATEPRESCALER_32  -  FIX THIS    pin_Config (L6474_CS_PIN, GPIO_OUTPUT, 0);           // configure Chip Select    pin_High (L6474_CS_PIN);                             //   and DE-Assert CS    rc = spi_Init (L6474_SPI_MODULE, SPI_MASTER, L6474_SPI_MODE,                         L6474_SPI_BAUD, 0);       //-----------------------------------------------------------------       //                         PWM  Init       // Configure the PWM module to be used to drive the Stepper motor       //       //   Uses PC7 (Arduino D9) = TIM3_CH2       //   PC7 has Timer3 Ch2 for _all_ chips _except_ F3-02 and L0-53       //-----------------------------------------------------------------       // SystemCoreClock variable holds HCLK frequency and is defined in system_stm32f4xx.c file.// easy_spin uses Init.ClockDivision = TIM_CLOCKDIVISION_DIV1   !!! ??? FIX THIS !!! ???  WVD/// uwPeriod = (SystemCoreClock / 20000 ) - 1;       // set period = 20 K Hz - WVD LOGIC    uwPeriod = 0;                                    // at startup, period is set to 0    if (rc == HAL_OK)       rc = pwm_Init (L6474_PWM_1_MODULE, uwPeriod,                      0);                     // actual rate on scope = 40 KHz !    timer_Set_Prescalar(L6474_PWM_1_MODULE, (TIMER_PRESCALER - 1), 0);  // ensure pwm_Init turned on clocks//pHTim->Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;       //-------------------------------------       // Configure PWM channel to be used       //-------------------------------------    if (rc == HAL_OK)       rc = pwm_Config_Channel (L6474_PWM_1_MODULE, L6474_PWM_1_CHANNEL,                                0, TIMER_PIN_POLARITY_HIGH);   // 0 % duty cycle//  sConfigOC.OCMode     = TIM_OCMODE_PWM1;//  sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;//  sConfigOC.OCFastMode = TIM_OCFAST_DISABLE;// ??? !!!  WVD  ??? !!! RESOLVE THIS    tim_handle = (TIM_HandleTypeDef*) board_timerpwm_get_handle (L6474_PWM_1_MODULE); // !!! CHEAP HACK - WVD FIX THIS !!! ???    sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;    sMasterConfig.MasterSlaveMode     = TIM_MASTERSLAVEMODE_DISABLE;    HAL_TIMEx_MasterConfigSynchronization (tim_handle, &sMasterConfig);       //---------------------------------------------------------       // Setup the callback handler for the PWM/Timer Interrupt       //---------------------------------------------------------//.........这里部分代码省略.........
开发者ID:GrandviewIoT,项目名称:Industrial_IoT_Projects,代码行数:101,


示例27: main_task

void main_task(void *pvParameters){	(void) pvParameters;	vTaskDelay(500 / portTICK_RATE_MS);	SPIMaster spi5(SPI5, SPI_BAUDRATEPRESCALER_32, 0x2000, {				{MEMS_SPI_SCK_PIN,  GPIO_MODE_AF_PP, GPIO_PULLDOWN, GPIO_SPEED_MEDIUM, GPIO_AF5_SPI5},				{MEMS_SPI_MISO_PIN, GPIO_MODE_AF_PP, GPIO_PULLDOWN, GPIO_SPEED_MEDIUM, GPIO_AF5_SPI5},				{MEMS_SPI_MOSI_PIN, GPIO_MODE_AF_PP, GPIO_NOPULL,   GPIO_SPEED_MEDIUM, GPIO_AF5_SPI5},			}, {				{GYRO_CS_PIN,  GPIO_MODE_OUTPUT_PP, GPIO_PULLUP, GPIO_SPEED_MEDIUM, 0},				{ACCEL_CS_PIN, GPIO_MODE_OUTPUT_PP, GPIO_PULLUP, GPIO_SPEED_MEDIUM, 0},			});	SPIMaster spi2(SPI2, SPI_BAUDRATEPRESCALER_32, 0x2000, {					{EXT_MEMS_SPI_SCK_PIN,  GPIO_MODE_AF_PP, GPIO_PULLDOWN, GPIO_SPEED_MEDIUM, GPIO_AF5_SPI2},					{EXT_MEMS_SPI_MISO_PIN, GPIO_MODE_AF_PP, GPIO_PULLDOWN, GPIO_SPEED_MEDIUM, GPIO_AF5_SPI2},					{EXT_MEMS_SPI_MOSI_PIN, GPIO_MODE_AF_PP, GPIO_NOPULL,   GPIO_SPEED_MEDIUM, GPIO_AF5_SPI2},				}, {					{EXT_GYRO_CS_PIN,  GPIO_MODE_OUTPUT_PP, GPIO_PULLUP, GPIO_SPEED_MEDIUM, 0},					{LPS25HB_PRESSURE_CS_PIN,  GPIO_MODE_OUTPUT_PP, GPIO_PULLUP, GPIO_SPEED_MEDIUM, 0},					{BMP280_PRESSURE_CS_PIN,  GPIO_MODE_OUTPUT_PP, GPIO_PULLUP, GPIO_SPEED_MEDIUM, 0},				});	L3GD20 gyro(spi5, 0);	LPS25HB lps25hb(spi2, 1);	BMP280 bmp2(spi2, 2);	LSM303D accel(spi5, 1);	uint8_t gyro_wtm = 5;	uint8_t acc_wtm = 8;	TimeStamp console_update_time;	TimeStamp sample_dt;	TimeStamp led_toggle_ts;	FlightControl flight_ctl;	static bool print_to_console = false;	LowPassFilter<Vector3f, float> gyro_lpf({0.5});	LowPassFilter<Vector3f, float> acc_lpf_alt({0.9});	LowPassFilter<Vector3f, float> acc_lpf_att({0.990});	LowPassFilter<float, float> pressure_lpf({0.6});	attitudetracker att;	/*	 * Apply the boot configuration from flash memory.	 */	dronestate_boot_config(*drone_state);	L3GD20Reader gyro_reader(gyro, GYRO_INT2_PIN, gyro_align);	LSM303Reader acc_reader(accel, ACC_INT2_PIN, acc_align);	UartRpcServer rpcserver(*drone_state, configdata, acc_reader.mag_calibrator_);	bmp2.set_oversamp_pressure(BMP280_OVERSAMP_16X);	bmp2.set_work_mode(BMP280_ULTRA_HIGH_RESOLUTION_MODE);	bmp2.set_filter(BMP280_FILTER_COEFF_OFF);	Bmp280Reader bmp_reader(bmp2);	HAL_NVIC_SetPriority(DMA1_Stream6_IRQn, 1, 1);	HAL_NVIC_EnableIRQ (DMA1_Stream6_IRQn);	HAL_NVIC_SetPriority(DMA1_Stream5_IRQn, 1, 0);	HAL_NVIC_EnableIRQ (DMA1_Stream5_IRQn);#ifndef ENABLE_UART_TASK	uart2.uart_dmarx_start();#endif	printf("Priority Group: %lu/n", NVIC_GetPriorityGrouping());	printf("SysTick_IRQn priority: %lu/n", NVIC_GetPriority(SysTick_IRQn) << __NVIC_PRIO_BITS);	printf("configKERNEL_INTERRUPT_PRIORITY: %d/n", configKERNEL_INTERRUPT_PRIORITY);	printf("configMAX_SYSCALL_INTERRUPT_PRIORITY: %d/n", configMAX_SYSCALL_INTERRUPT_PRIORITY);	printf("LPS25HB Device id: %d/n", lps25hb.Get_DeviceID());	vTaskDelay(500 / portTICK_RATE_MS);	gyro_reader.init(gyro_wtm);	gyro_reader.enable_int2(false);	vTaskDelay(500 / portTICK_RATE_MS);	acc_reader.init(acc_wtm);	acc_reader.enable_int2(false);	acc_reader.mag_calibrator_.set_bias(drone_state->mag_bias_);	acc_reader.mag_calibrator_.set_scale_factor(drone_state->mag_scale_factor_);	vTaskDelay(500 / portTICK_RATE_MS);	printf("Calibrating...");	gyro_reader.enable_int2(true);	gyro_reader.calculate_static_bias_filtered(2400);	printf(" Done!/n");	flight_ctl.start_receiver();	printf("Entering main loop.../n");	gyro_reader.enable_int2(true);	sample_dt.time_stamp();	lps25hb.Set_FifoMode(LPS25HB_FIFO_STREAM_MODE);	lps25hb.Set_FifoModeUse(LPS25HB_ENABLE);	lps25hb.Set_Odr(LPS25HB_ODR_25HZ);	lps25hb.Set_Bdu(LPS25HB_BDU_NO_UPDATE);//.........这里部分代码省略.........
开发者ID:sigmadrone,项目名称:sigmadrone,代码行数:101,


示例28: HAL_TIM_PWM_MspInit

/*******************************************************************************  *                                 PWM  *  * @brief PWM MSP Initialization  * @param[in] htim_pwm PWM handle pointer  * @retval None  */void  HAL_TIM_PWM_MspInit (TIM_HandleTypeDef* htim_pwm){  GPIO_InitTypeDef GPIO_InitStruct;  if (htim_pwm->Instance == easySPIN_TIMER_PWM1)   {       /* Peripheral clock enable */    __easySPIN_PWM1_CLCK_ENABLE();       /* GPIO configuration */    GPIO_InitStruct.Pin       = easySPIN_PWM_1_PIN;    GPIO_InitStruct.Mode      = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull      = GPIO_NOPULL;    GPIO_InitStruct.Speed     = GPIO_SPEED_LOW;    GPIO_InitStruct.Alternate = easySPIN_AFx_TIMx_PWM1;    HAL_GPIO_Init (easySPIN_PWM_1_PORT, &GPIO_InitStruct);       /* Set Interrupt Group Priority of Timer3 Interrupt*/    HAL_NVIC_SetPriority(easySPIN_PWM1_IRQn, 4, 0);       /* Enable the timer3 global Interrupt */    HAL_NVIC_EnableIRQ(easySPIN_PWM1_IRQn);   }  else if (htim_pwm->Instance == easySPIN_TIMER_PWM2)   {       /* Peripheral clock enable */    __easySPIN_PWM2_CLCK_ENABLE();       /* GPIO configuration */    GPIO_InitStruct.Pin       = easySPIN_PWM_2_PIN;    GPIO_InitStruct.Mode      = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull      = GPIO_NOPULL;    GPIO_InitStruct.Speed     = GPIO_SPEED_LOW;    GPIO_InitStruct.Alternate = easySPIN_AFx_TIMx_PWM2;    HAL_GPIO_Init (easySPIN_PWM_2_PORT, &GPIO_InitStruct);       /* Set Interrupt Group Priority of Timer2 Interrupt*/    HAL_NVIC_SetPriority(easySPIN_PWM2_IRQn, 4, 0);       /* Enable the timer2 global Interrupt */    HAL_NVIC_EnableIRQ(easySPIN_PWM2_IRQn);   }  else if (htim_pwm->Instance == easySPIN_TIMER_PWM3)   {       /* Peripheral clock enable */    __easySPIN_PWM3_CLCK_ENABLE();       /* GPIO configuration */    GPIO_InitStruct.Pin   = easySPIN_PWM_3_PIN;    GPIO_InitStruct.Mode  = GPIO_MODE_OUTPUT_PP;    GPIO_InitStruct.Pull  = GPIO_NOPULL;    GPIO_InitStruct.Speed = GPIO_SPEED_LOW;    HAL_GPIO_Init (easySPIN_PWM_3_PORT, &GPIO_InitStruct);       /* Set Interrupt Group Priority of Timer4 Interrupt*/    HAL_NVIC_SetPriority(easySPIN_PWM3_IRQn, 3, 0);       /* Enable the timer4 global Interrupt */    HAL_NVIC_EnableIRQ(easySPIN_PWM3_IRQn);   }}
开发者ID:GrandviewIoT,项目名称:Industrial_IoT_Projects,代码行数:71,


示例29: HAL_UART_MspInit

void HAL_UART_MspInit(UART_HandleTypeDef* huart){  GPIO_InitTypeDef GPIO_InitStruct;  if(huart->Instance==USART2)  {  /* USER CODE BEGIN USART2_MspInit 0 */  /* USER CODE END USART2_MspInit 0 */    /* Peripheral clock enable */    __HAL_RCC_USART2_CLK_ENABLE();      /**USART2 GPIO Configuration        PA2     ------> USART2_TX    PA3     ------> USART2_RX     */    GPIO_InitStruct.Pin = UART_TX_Pin|UART_RX_Pin;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Pull = GPIO_PULLUP;    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;    GPIO_InitStruct.Alternate = GPIO_AF7_USART2;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);    /* Peripheral DMA init*/      hdma_usart2_rx.Instance = DMA1_Stream5;    hdma_usart2_rx.Init.Channel = DMA_CHANNEL_4;    hdma_usart2_rx.Init.Direction = DMA_PERIPH_TO_MEMORY;    hdma_usart2_rx.Init.PeriphInc = DMA_PINC_DISABLE;    hdma_usart2_rx.Init.MemInc = DMA_MINC_ENABLE;    hdma_usart2_rx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;    hdma_usart2_rx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE;    hdma_usart2_rx.Init.Mode = DMA_NORMAL;    hdma_usart2_rx.Init.Priority = DMA_PRIORITY_LOW;    hdma_usart2_rx.Init.FIFOMode = DMA_FIFOMODE_DISABLE;    HAL_DMA_Init(&hdma_usart2_rx);    __HAL_LINKDMA(huart,hdmarx,hdma_usart2_rx);    hdma_usart2_tx.Instance = DMA1_Stream6;    hdma_usart2_tx.Init.Channel = DMA_CHANNEL_4;    hdma_usart2_tx.Init.Direction = DMA_MEMORY_TO_PERIPH;    hdma_usart2_tx.Init.PeriphInc = DMA_PINC_DISABLE;    hdma_usart2_tx.Init.MemInc = DMA_MINC_ENABLE;    hdma_usart2_tx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;    hdma_usart2_tx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE;    hdma_usart2_tx.Init.Mode = DMA_NORMAL;    hdma_usart2_tx.Init.Priority = DMA_PRIORITY_LOW;    hdma_usart2_tx.Init.FIFOMode = DMA_FIFOMODE_DISABLE;    HAL_DMA_Init(&hdma_usart2_tx);    __HAL_LINKDMA(huart,hdmatx,hdma_usart2_tx);    /* Peripheral interrupt init */    HAL_NVIC_SetPriority(USART2_IRQn, 4, 0);    HAL_NVIC_EnableIRQ(USART2_IRQn);  /* USER CODE BEGIN USART2_MspInit 1 */  /* USER CODE END USART2_MspInit 1 */  }}
开发者ID:omuzychko,项目名称:StepperHub,代码行数:62,


示例30: HAL_RTC_MspInit

/**  * @brief RTC MSP Initialization   *        This function configures the hardware resources used in this example  * @param hrtc: RTC handle pointer  *   * @note  Care must be taken when HAL_RCCEx_PeriphCLKConfig() is used to select   *        the RTC clock source; in this case the Backup domain will be reset in    *        order to modify the RTC Clock source, as consequence RTC registers (including   *        the backup registers) and RCC_BDCR register are set to their reset values.  *               * @retval None  */void HAL_RTC_MspInit(RTC_HandleTypeDef *hrtc){  RCC_OscInitTypeDef        RCC_OscInitStruct;  RCC_PeriphCLKInitTypeDef  PeriphClkInitStruct;  /*##-1- Enables the PWR Clock and Enables access to the backup domain ###################################*/  /* To change the source clock of the RTC feature (LSE, LSI), You have to:     - Enable the power clock using __PWR_CLK_ENABLE()     - Enable write access using HAL_PWR_EnableBkUpAccess() function before to        configure the RTC clock source (to be done once after reset).     - Reset the Back up Domain using __HAL_RCC_BACKUPRESET_FORCE() and        __HAL_RCC_BACKUPRESET_RELEASE().     - Configure the needed RTc clock source */  __PWR_CLK_ENABLE();  HAL_PWR_EnableBkUpAccess();  /*##-2- Configue LSE/LSI as RTC clock soucre ###############################*/#ifdef RTC_CLOCK_SOURCE_LSE  RCC_OscInitStruct.OscillatorType =  RCC_OSCILLATORTYPE_LSI | RCC_OSCILLATORTYPE_LSE;  RCC_OscInitStruct.PLL.PLLState = RCC_PLL_NONE;  RCC_OscInitStruct.LSEState = RCC_LSE_ON;  RCC_OscInitStruct.LSIState = RCC_LSI_OFF;  if(HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)  {     Error_Handler();  }    PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_RTC;  PeriphClkInitStruct.RTCClockSelection = RCC_RTCCLKSOURCE_LSE;  if(HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK)  {     Error_Handler();  }#elif defined (RTC_CLOCK_SOURCE_LSI)    RCC_OscInitStruct.OscillatorType =  RCC_OSCILLATORTYPE_LSI | RCC_OSCILLATORTYPE_LSE;  RCC_OscInitStruct.PLL.PLLState = RCC_PLL_NONE;  RCC_OscInitStruct.LSIState = RCC_LSI_ON;  RCC_OscInitStruct.LSEState = RCC_LSE_OFF;  if(HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)  {     Error_Handler();  }    PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_RTC;  PeriphClkInitStruct.RTCClockSelection = RCC_RTCCLKSOURCE_LSI;  if(HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK)  {     Error_Handler();  }#else#error Please select the RTC Clock source inside the main.h file#endif /*RTC_CLOCK_SOURCE_LSE*/    /*##-3- Enable RTC peripheral Clocks #######################################*/  /* Enable RTC Clock */  __HAL_RCC_RTC_ENABLE();    /*##-4- Configure the NVIC for RTC Tamper ###################################*/  HAL_NVIC_SetPriority(TAMP_STAMP_IRQn, 0x0F, 0);  HAL_NVIC_EnableIRQ(TAMP_STAMP_IRQn);}
开发者ID:afconsult-south,项目名称:dragonfly-fcb,代码行数:74,



注:本文中的HAL_NVIC_EnableIRQ函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ HAL_NVIC_SetPriority函数代码示例
C++ HAL_NVIC_DisableIRQ函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。