打印
[STM32F1]

stm32f103复位后串口不发送

[复制链接]
927|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
heweibig|  楼主 | 2021-11-21 17:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
stm32f103复位后串口不发送

使用特权

评论回复
沙发
shimx| | 2021-11-21 17:11 | 只看该作者

什么意思?不是很明白你说的什么,能再解释一下这个现象吗

使用特权

评论回复
板凳
zhaoxqi| | 2021-11-21 17:13 | 只看该作者
通过串口1一键下载模式下载的程序,程序刚下载进去单片机可以向电脑发送数据,但复位后就不会发送了,是哪里出问题了还是那个地方没有设置好呢        while(1)
        {        
                for(bb=200000;bb>0;bb-=1000)
                {
                        GPIO_WriteBit(GPIOB,GPIO_Pin_0,Bit_SET);
                        for(aa=0;aa<bb;aa++);
                        GPIO_WriteBit(GPIOB,GPIO_Pin_0,Bit_RESET);
                        for(aa=0;aa<bb;aa++);
                }
                USART1->DR=0xe0;
//                USART_SendData(USART1,0x55);
        }

就上面这个简单测试程序,复位后所操作的GPIO_0可以正常动作输出,就是串口1发送端用示波器测量没有数据输出,无论用寄存器还是函数都无输出

使用特权

评论回复
地板
wyjie| | 2021-11-21 17:15 | 只看该作者
仿真一下程序,看看哪里的问题

使用特权

评论回复
5
chuxh| | 2021-11-21 17:17 | 只看该作者
又进入下载模式了?

使用特权

评论回复
6
heweibig|  楼主 | 2021-11-21 17:19 | 只看该作者
没有,就一个简单的测试程序,复位后进入主循环所操作的GPIO_0可以正常动作输出,就是串口1发送端用示波器测量没有数据输出,无论用寄存器还是函数都无输出

使用特权

评论回复
7
zhanghqi| | 2021-11-21 17:20 | 只看该作者
是什么复位方式啊

使用特权

评论回复
8
xxrs| | 2021-11-21 17:22 | 只看该作者
硬件复位应该不会出现这种情况啊

使用特权

评论回复
9
chuxh| | 2021-11-21 17:26 | 只看该作者
掉电 然后再试试

使用特权

评论回复
10
dingy| | 2021-11-21 17:28 | 只看该作者
是不是供电不稳定

使用特权

评论回复
11
heweibig|  楼主 | 2021-11-21 17:29 | 只看该作者

其实还是不大明白,我再琢磨琢磨吧,多谢了哈先

使用特权

评论回复
12
feifan570| | 2021-11-22 09:19 | 只看该作者
先确认一下CPU有没有跑起来,是否没有退出复位状态。

使用特权

评论回复
13
_L_D_H_| | 2021-11-22 14:24 | 只看该作者
看下串口初始化,可以仿真看下UART1寄存器是不是正常

使用特权

评论回复
14
呐咯密密| | 2021-11-22 14:37 | 只看该作者
要不要试试加一下检测发送完成标志位呢,你的代码执行了,但是你没给usart发送数据的时间。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

869

主题

13089

帖子

7

粉丝