Пример #1
0
/*********************************************************************************************************//**
  * @brief  Configures USART.
  * @retval None
  ***********************************************************************************************************/
void USART_Configuration(void)
{
  USART_InitTypeDef USART_InitStructure ;
  USART_InitStructure.USART_BaudRate = 115200 ;
  USART_InitStructure.USART_WordLength = USART_WORDLENGTH_8B ;
  USART_InitStructure.USART_StopBits = USART_STOPBITS_1;
  USART_InitStructure.USART_Parity = USART_PARITY_NO ;
  USART_InitStructure.USART_Mode = USART_MODE_NORMAL;

  /* Enable GPIO and AFIO clock */
  CKCU_APBPerip0ClockConfig(CKCU_APBEN0_PA | CKCU_APBEN0_AFIO, ENABLE);

  /* Enable USART clock */
  CKCU_APBPerip0ClockConfig(CKCU_APBEN0_USART, ENABLE);

  /* Configure USART Tx/Rx as alternate function */
   AFIO_GPAConfig(AFIO_PIN_8 | AFIO_PIN_9, AFIO_MODE_2);

  /* USART configuration */
   USART_Init(USART, &USART_InitStructure);
}
Пример #2
0
/**
 * @brief  初始化SPI0
 * @param  
 * @retval None
 */
void SPI0_Init(void)
{
	CKCU_PeripClockConfig_TypeDef CKCUClock = {{0}};

	/* Enable PA & SPI0 & AFIO */
	CKCUClock.Bit.PA         = 1;
	CKCUClock.Bit.SPI0       = 1;
	CKCUClock.Bit.AFIO       = 1;
	CKCU_PeripClockConfig(CKCUClock, ENABLE);

	/* SPI0_SEL idle state is HIGH */
	GPIO_PullResistorConfig(HT_GPIOA, GPIO_PIN_8, GPIO_PR_UP);

	/* Configure related IO to SPI0 */
	AFIO_GPAConfig(AFIO_PIN_4 | AFIO_PIN_5 | AFIO_PIN_6 | AFIO_PIN_7, AFIO_MODE_5);

	/* SPI0 configuration */
	SPI_InitStructure.SPI_Mode = SPI_MASTER;
	SPI_InitStructure.SPI_FIFO = SPI_FIFO_DISABLE;
	SPI_InitStructure.SPI_DataLength = SPI_DATALENGTH_8;
	SPI_InitStructure.SPI_SELMode = SPI_SEL_SOFTWARE;
	SPI_InitStructure.SPI_SELPolarity = SPI_SELPOLARITY_LOW;
	SPI_InitStructure.SPI_CPOL = SPI_CPOL_LOW;
	SPI_InitStructure.SPI_CPHA = SPI_CPHA_FIRST;
	SPI_InitStructure.SPI_FirstBit = SPI_FIRSTBIT_MSB;
	SPI_InitStructure.SPI_RxFIFOTriggerLevel = 0;
	SPI_InitStructure.SPI_TxFIFOTriggerLevel = 0;
	SPI_InitStructure.SPI_ClockPrescaler = 4;
	SPI_Init(HT_SPI0, &SPI_InitStructure);

	/* Set SEL as output mode for slave select */
	SPI_SELOutputCmd(HT_SPI0, ENABLE);

	/* Enable SPI0 */
	SPI_Cmd(HT_SPI0, ENABLE);
}