为什么几乎每个例程里面都有“设置系统中断优先级分组2”和“初始化串口波特率为115200”,屏蔽掉就不行了呢?

2019-07-20 23:52发布

为什么几乎每个例程里面都有“设置系统中断优先级分组2”和“初始化串口波特率为115200”,屏蔽掉就不行了呢?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
q546163199
1楼-- · 2019-07-20 23:55
设置中断优先级分组,你可以去掉,前提是你所应用的所有外设中没有一个需要用到中断的,记住,我这里说的是,没有一个!,如果要是有两个及以上的外设需要中断应用的话,你就必须设置中断优先级分组,不然的话,如果在某一个时刻,多个中断同时发生了,那请问,你STM芯片执行哪个中断应用请求,这样很容易将芯片损坏的
至于初始化串口波特率为115200,你也可以去掉,如果你所设计的这个程序中,没有用到USART/UART的时候,你就可以去掉,不过我建议,你还是都加上吧,有个良好的编程思维
其实,我也是个新手,我不知道我说的对不对
ofourme
2楼-- · 2019-07-21 04:58
q546163199 发表于 2016-2-1 21:50
设置中断优先级分组,你可以去掉,前提是你所应用的所有外设中没有一个需要用到中断的,记住,我这里说的是 ...

很久没接触stm32了,大概记得cortex m3有默认抢占优先级和响应优先级的,不可能出现同个响应优先级的情况。至于说由于没设置中断分组导致硬件损坏,那更是匪夷所思,胡说八道了。
ofourme
3楼-- · 2019-07-21 06:19
 精彩回答 2  元偷偷看……
869192760
4楼-- · 2019-07-21 08:12
ofourme 发表于 2016-2-1 22:52
楼主所说的不行是指哪方面不行?如果你有用到串口,那肯定要先进行初始化。串口在单片机里经常用于通信,比 ...

我找到问题了,用液晶屏的时候一定要开串口,因为要用到printf函数,不然会液晶屏会死机,我说的不行就是没任何显示
q546163199
5楼-- · 2019-07-21 13:54
ofourme 发表于 2016-2-1 22:48
很久没接触stm32了,大概记得cortex m3有默认抢占优先级和响应优先级的,不可能出现同个响应优先级的情况 ...

我只是想表达,容易造成程序混乱的意思
ofourme
6楼-- · 2019-07-21 17:45
 精彩回答 2  元偷偷看……

一周热门 更多>