[STM32F1] stm32f103vet6 uart4中断出不来

[复制链接]
6043|34
 楼主| zhanglinsen 发表于 2015-10-21 16:26 | 显示全部楼层
710184559 发表于 2015-10-20 20:25
好好看看usart1 和 uart4 的NVIC设置有啥不一样

大神说下到底有啥不同 确实不太懂
710184559 发表于 2015-10-21 20:17 | 显示全部楼层
The table below gives the allowed values of the pre-emption priority and subpriority according
to the Priority Grouping configuration performed by NVIC_PriorityGroupConfig function
  ============================================================================================================================
    NVIC_PriorityGroup   | NVIC_IRQChannelPreemptionPriority | NVIC_IRQChannelSubPriority  | Description
  ============================================================================================================================
   NVIC_PriorityGroup_0  |                0                  |            0-15             |   0 bits for pre-emption priority
                         |                                   |                             |   4 bits for subpriority
  ----------------------------------------------------------------------------------------------------------------------------
   NVIC_PriorityGroup_1  |                0-1                |            0-7              |   1 bits for pre-emption priority
                         |                                   |                             |   3 bits for subpriority
  ----------------------------------------------------------------------------------------------------------------------------   
   NVIC_PriorityGroup_2  |                0-3                |            0-3              |   2 bits for pre-emption priority
                         |                                   |                             |   2 bits for subpriority
  ----------------------------------------------------------------------------------------------------------------------------   
   NVIC_PriorityGroup_3  |                0-7                |            0-1              |   3 bits for pre-emption priority
                         |                                   |                             |   1 bits for subpriority
  ----------------------------------------------------------------------------------------------------------------------------   
   NVIC_PriorityGroup_4  |                0-15               |            0                |   4 bits for pre-emption priority
                         |                                   |                             |   0 bits for subpriority                       
  ============================================================================================================================
710184559 发表于 2015-10-21 20:26 | 显示全部楼层
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0 );//此项分组的PreemptionPriority优先级不能为1吧
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;
稳稳の幸福 发表于 2015-10-22 20:15 | 显示全部楼层
莫非是NVIC的问题?这个功能太大了,设置上肯定不好搞。
捉虫天师 发表于 2015-10-22 21:25 | 显示全部楼层
莫非这个型号的芯片没4?
710184559 发表于 2015-10-23 18:49 | 显示全部楼层
优先级分组用四位表示
由上面的英文可知
NVIC_PriorityGroup_0       NVIC_IRQChannelPreemptionPriority 能设置成  0       NVIC_IRQChannelSubPriority 能设置成  0 - 15
NVIC_PriorityGroup_1       NVIC_IRQChannelPreemptionPriority 能设置成  0-1       NVIC_IRQChannelSubPriority 能设置成  0 - 7
NVIC_PriorityGroup_2       NVIC_IRQChannelPreemptionPriority 能设置成  0-3       NVIC_IRQChannelSubPriority 能设置成  0 - 3
NVIC_PriorityGroup_3      NVIC_IRQChannelPreemptionPriority 能设置成  0-15      NVIC_IRQChannelSubPriority 能设置成  0
而你选择的是 NVIC_PriorityGroup_0   所以应该是只能设置 NVIC_IRQChannelSubPriority 而NVIC_IRQChannelPreemptionPriority没有抢占优先级,你却设置了这个NVIC_IRQChannelPreemptionPriority的抢占优先级为 =1;
ywlzh 发表于 2015-10-23 18:53 | 显示全部楼层
好好看看你的中断服务程序,发完一个字节是会产生一个发送完的标志位的,没有清零是不会再发的
米尔豪斯 发表于 2015-10-23 21:44 | 显示全部楼层
NVIC比较灵活,需要好好研究
FireRiver9 发表于 2015-10-26 22:57 | 显示全部楼层
进到中断里,出不来了?查看一下中断标志位
豆腐块 发表于 2015-10-26 23:07 | 显示全部楼层
中断响应了吗,中断标志位清除了吗
643757107 发表于 2015-10-27 08:51 | 显示全部楼层
进到中断里,出不来了?查看一下中断标志位
应该是只能设置 NVIC_IRQChannelSubPriority 而NVIC_IRQChannelPreemptionPriority没有抢占优先级
309030106 发表于 2015-10-28 19:58 | 显示全部楼层
进中断后,中断有响应吗,清了标志位没
huangcunxiake 发表于 2015-10-28 22:17 | 显示全部楼层
NVIC一直都没研究透彻,这个功能真是太强大了。
lizhuang_1 发表于 2015-11-2 15:03 | 显示全部楼层
卡死是什么意思?波特率有没有设置正确啊?
 楼主| zhanglinsen 发表于 2015-11-2 17:13 | 显示全部楼层
lizhuang_1 发表于 2015-11-2 15:03
卡死是什么意思?波特率有没有设置正确啊?

有啊 就是一接收到数据就开在中断里
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部