HT5009学习笔记----------------UART4串口

本文详细介绍了如何使用STM32进行UART4的初始化配置,包括时钟使能、GPIO复用设置、串口参数配置以及中断的启用。在中断处理函数中,实现了接收到数据后立即回显的功能,有助于理解STM32的串口通信和中断系统。
摘要由CSDN通过智能技术生成

```c
在这里插入代码片

/*串口UART4初始化函数*/
void UART4_Init()
{		
    UART_InitTypeDef UART_InitStructure;

    HT_CMU_ClkCtrl1Config(CMU_CLKCTRL1_UART4_7816_0EN, ENABLE);  /*!< 使能UART0模块 */
		
    HT_CMU->WPREG = 0xA55A;                                     //第一复用功能(IOCFG=1,AFCFG=0)
	  HT_GPIOE->IOCFG |= 0x0006;                			   //PE1 PE2 as TX4 RX4
    HT_GPIOE->AFCFG &=(~0x0006); 
	
    UART_InitStructure.UART_Logic = UartLogicPositive;          /*!< UART逻辑为正               */
    UART_InitStructure.UART_StopBits = OneStopBits;             /*!< 1位停止位                  */
    UART_InitStructure.UART_WordLength = WordLength_8Bits;      /*!< 8位数据位                  */
    UART_InitStructure.UART_Parity = UartParity_Disable;        /*!< 无校验                     */
    UART_InitStructure.UART_BaudRate = 2400;                    /*!< 波特率2400                 */
    UART_InitStructure.ReceiveEN = ENABLE;                      /*!< 接收使能   注:非中断使能  */
    UART_InitStructure.SendEN = ENABLE;                         /*!< 发送使能   注:非中断使能  */
	  
    HT_UART_Init(HT_UART4, &UART_InitStructure);                //初始化UART4 串口配置参数
	
	HT_UART_ITConfig(HT_UART4,UART_UARTCON_RXIE,ENABLE);        //使能UART4 串口中断
	NVIC_EnableIRQ(UART4_IRQn);                                 //打开UART4中断源
}

UART4中断入口函数
``
void UART4_IRQHandler()
{
    if(SET == HT_UART_ITFlagStatusGet(HT_UART4, UART_UARTSTA_RXIF))    /*!< UART4接收中断   */
    {			
      HT_UART_ClearITPendingBit(HT_UART4, UART_UARTSTA_RXIF);       /*!< 清除中断标志     */
	  HT_UART_SendData(HT_UART4,HT_UART_ReceiveData(HT_UART4));//将接收的数据发送到 串口助手上显示
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值