打印
[STM32F1]

为什么程序单步仿真的时候才会出现想要的现象

[复制链接]
483|27
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
houcs|  楼主 | 2020-8-15 22:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
单步仿真才会有现象,直接运行就没有现象,小白求救

使用特权

评论回复
沙发
huangchui| | 2020-8-15 22:44 | 只看该作者
int main(void)
{        
    NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
         
        My_USART1_Init();

  
                          if (res==0x31)
                        {
                                LED_Type1();
                        }
                        else if (res==0x32)
                        {
                        LED_Type2();
                        }
                        else if(res == 0x33)
                        {
                                LED_Type3();
                        }
            while(1);
               
}

使用特权

评论回复
板凳
pengf| | 2020-8-15 22:48 | 只看该作者
是不是对速度有要求?

使用特权

评论回复
地板
renyaq| | 2020-8-15 22:52 | 只看该作者
你这个不是while循环的

使用特权

评论回复
5
supernan| | 2020-8-15 22:55 | 只看该作者
res是串口接收数据吗?

使用特权

评论回复
6
liuzaiy| | 2020-8-15 23:05 | 只看该作者

     while(1){
if (res==0x31)
                        {
                                LED_Type1();
                        }
                        else if (res==0x32)
                        {
                        LED_Type2();
                        }
                        else if(res == 0x33)
                        {
                                LED_Type3();
                        }
}

使用特权

评论回复
7
yinxiangh| | 2020-8-15 23:08 | 只看该作者
把代码放在中断这么执行

使用特权

评论回复
8
pangb| | 2020-8-15 23:12 | 只看该作者
这个单步调试才能接收大数据的。

使用特权

评论回复
9
huangchui| | 2020-8-15 23:15 | 只看该作者
最简单的就是放在中断函数里面。

使用特权

评论回复
10
ousj| | 2020-8-15 23:19 | 只看该作者
while(1)写错位置了。

使用特权

评论回复
11
morrisk| | 2020-8-15 23:26 | 只看该作者
单步调试的时候速度能够满足要求?

使用特权

评论回复
12
zyf部长| | 2020-8-15 23:31 | 只看该作者
应该是循环执行才对的。

使用特权

评论回复
13
xxmmi| | 2020-8-15 23:36 | 只看该作者
使用的中断执行 的对不对?

使用特权

评论回复
14
kangzj| | 2020-8-15 23:41 | 只看该作者
这个程序只能执行一次?

使用特权

评论回复
15
gongche| | 2020-8-15 23:51 | 只看该作者

if (res==0x31)
                        {
                                LED_Type1();
                        }
                        else if (res==0x32)
                        {
                        LED_Type2();
                        }
                        else if(res == 0x33)
                        {
                                LED_Type3();
                        } 放在中断里面就行。

使用特权

评论回复
16
huwr| | 2020-8-15 23:56 | 只看该作者
没有等待接收到数据程序就执行完成了。

使用特权

评论回复
17
zchong| | 2020-8-16 09:20 | 只看该作者
跑不动可能

使用特权

评论回复
18
happy_10| | 2020-8-16 10:45 | 只看该作者
程序存在问题,不能循环执行。

使用特权

评论回复
19
happy_10| | 2020-8-16 10:51 | 只看该作者
要把while放在函数里面才行。

使用特权

评论回复
20
liuzaiy| | 2020-8-16 10:55 | 只看该作者
只有res接收到才能判断函数代码。

使用特权

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

本版积分规则

743

主题

8382

帖子

5

粉丝