ADSP-BF706UART串口之中断模式

上次说写uart的中断模式,今天才开始写,主要是把我之前通过测试的配置注在这里,开发的时候会比较多使用DMA模式,中断模式配置相对也比之复杂一些。
1、初始化配置:

void InitCoreUartx(uint8_t* buffer)                    //Uartx uartx,
{
	 uint32_t temp_reg = 0, ClkDivide_1 = 0;
	 uint32_t fcclk = 0u;
	 uint32_t fsysclk = 0u;
	 uint32_t fsclk0 = 0u;
	 uint32_t fsclk1 = 0u;
	 uint32_t coreclk;
	 uint32_t systemclk;

	 adi_pwr_GetCoreFreq(DEV_NUM, &fcclk);
	 adi_pwr_GetSystemFreq(DEV_NUM, &fsysclk, &fsclk0, &fsclk1);

  //配置串口波特率
   ClkDivide_1 = (uint32_t) ( ((float)fsclk0 / ((float)BAUD_RATE)));
   *pREG_UART0_CLK = (ENUM_UART_CLK_EN_DIV_BY_ONE|(ClkDivide_1));

  //W1C清除标志
  *pREG_UART0_STAT=ENUM_UART_STAT_OVR_ERR        |
  			         ENUM_UART_STAT_PARITY_ERR   |
					 ENUM_UART_STAT_FRAMING_ERR  |
					 ENUM_UART_STAT_BREAK_INT    |
					 ENUM_UART_STAT_ADDR_HI_STKY |
					 ENUM_UART_STAT_ADDR_HI      |
					 ENUM_UART_STAT_CTS_HI_STKY;
//清除所有与中断有关的状态 M

你可能感兴趣的:(DSP,dsp,单片机)