matlab串口固定结尾中断,求助:串口一直进入接收中断的问题。

本文详细介绍了如何配置USART1模块进行串口通信,包括USART_InitStructure参数设置、GPIO初始化以及中断、使能和AF配置。重点在于设置波特率、位宽、校验方式和硬件流控,适合初学者理解串口通信的基础配置过程。
摘要由CSDN通过智能技术生成

void uart1_config(void)

{

USART_InitPara USART_InitStructure;

GPIO_InitPara GPIO_InitStructure;

USART_InitStructure.USART_BRR = 9600;

USART_InitStructure.USART_WL = USART_WL_8B;

USART_InitStructure.USART_STBits = USART_STBITS_1;

USART_InitStructure.USART_Parity = USART_PARITY_RESET;

USART_InitStructure.USART_HardwareFlowControl = USART_HARDWAREFLOWCONTROL_NONE;

USART_InitStructure.USART_RxorTx = USART_RXORTX_RX | USART_RXORTX_TX;

USART_Init(USART1, &USART_InitStructure);

USART_INT_Set(USART1, USART_INT_RBNE, ENABLE);

USART_Enable(USART1, ENABLE);

GPIO_PinAFConfig(UART1TX_GPIO, UART1TX_PIN, GPIO_AF_1);

GPIO_PinAFConfig(UART1RX_GPIO, UART1RX_PIN, GPIO_AF_1);

GPIO_InitStructure.GPIO_Pin = UART1TX_PIN;

GPIO_InitStructure.GPIO_Mode  = GPIO_MODE_AF;

GPIO_InitStructure.GPIO_Speed = GPIO_SPEED_50MHZ;

GPIO_InitStructure.GPIO_OType = GPIO_OTYPE_PP;

GPIO_InitStructure.GPIO_PuPd  = GPIO_PUPD_NOPULL;

GPIO_Init(UART1TX_GPIO, &GPIO_InitStructure);

GPIO_InitStructure.GPIO_Pin = UART1RX_PIN;

GPIO_InitStructure.GPIO_Mode  = GPIO_MODE_AF;

GPIO_InitStructure.GPIO_Speed = GPIO_SPEED_50MHZ;

GPIO_InitStructure.GPIO_OType = GPIO_OTYPE_PP;

GPIO_InitStructure.GPIO_PuPd  = GPIO_PUPD_NOPULL;

GPIO_Init(UART1RX_GPIO, &GPIO_InitStructure);

GPIO_InitStructure.GPIO_Pin = UART1EN_PIN;

GPIO_InitStructure.GPIO_Mode  = GPIO_MODE_OUT;

GPIO_InitStructure.GPIO_Speed = GPIO_SPEED_50MHZ;

GPIO_InitStructure.GPIO_OType = GPIO_OTYPE_PP;

GPIO_InitStructure.GPIO_PuPd  = GPIO_PUPD_NOPULL;

GPIO_Init(UART1EN_GPIO, &GPIO_InitStructure);

UART1RXEN();

//UART1TXEN();

}

配置函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值