OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4116|回复: 1

STM32F429 UART5发送不了数据

[复制链接]

48

主题

176

帖子

0

精华

高级会员

Rank: 4

积分
770
金钱
770
注册时间
2013-4-23
在线时间
163 小时
发表于 2023-3-12 11:08:30 | 显示全部楼层 |阅读模式
10金钱
请大家帮我看看,我直接用原子哥的usart1例程改成UART5的,怎么发送不了数据?用cubemx配置可以,硬件没问题。
void uart5_init(u32 bound)//485接口
{
        //GPIO端口设置
        GPIO_InitTypeDef GPIO_InitStructure;
        USART_InitTypeDef USART_InitStructure;
        NVIC_InitTypeDef NVIC_InitStructure;
       
        RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC|RCC_AHB1Periph_GPIOD,ENABLE);
        RCC_APB2PeriphClockCmd(RCC_APB1Periph_UART5,ENABLE);

        GPIO_PinAFConfig(GPIOC,GPIO_PinSource12,GPIO_AF_UART5);
        GPIO_PinAFConfig(GPIOD,GPIO_PinSource2,GPIO_AF_UART5);

        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//复用功能
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;        //速度50MHz
        GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; //推挽复用输出
        GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; //上拉
        GPIO_Init(GPIOC,&GPIO_InitStructure);
       
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//复用功能
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;        //速度50MHz
        GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; //推挽复用输出
        GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; //上拉
        GPIO_Init(GPIOD,&GPIO_InitStructure);        

        USART_InitStructure.USART_BaudRate = bound;//波特率设置
        USART_InitStructure.USART_WordLength = USART_WordLength_8b;//字长为8位数据格式
        USART_InitStructure.USART_StopBits = USART_StopBits_1;//一个停止位
        USART_InitStructure.USART_Parity = USART_Parity_No;//无奇偶校验位
        USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;//无硬件数据流控制
        USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;        //收发模式
        USART_Init(UART5, &USART_InitStructure); //初始化串口
        USART_Cmd(UART5, ENABLE);  //使能串口1
       
        USART_ITConfig(UART5, USART_IT_RXNE, ENABLE);//开启相关中断

        //Usart1 NVIC 配置
        NVIC_InitStructure.NVIC_IRQChannel = UART5_IRQn;
        NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0;//抢占优先级0
        NVIC_InitStructure.NVIC_IRQChannelSubPriority =0;                //子优先级0
        NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;                        //IRQ通道使能
        NVIC_Init(&NVIC_InitStructure);       

       
}

最佳答案

查看完整内容[请看2#楼]

找到问题了,时钟错了,结题
努力做,耐心等
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

48

主题

176

帖子

0

精华

高级会员

Rank: 4

积分
770
金钱
770
注册时间
2013-4-23
在线时间
163 小时
 楼主| 发表于 2023-3-12 11:08:31 | 显示全部楼层
找到问题了,时钟错了,结题
努力做,耐心等
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-24 17:42

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表