中断的 概念
- 中断
- NVIC
- 中断的嵌套
- 抢占优先级
- 子优先级
- 多个中断来是怎么判定先后顺序
- 串口中断
- 串口得配置以及中断函数得原理
就是主程序在正常只能怪main函数,突然来了一个,有一个外设申请中断,暂停去执行中断函数。

单独通过接收数据去控制led灯的亮灭 首开启灯就要花费200ms 而串口接收数据一秒就可以接收11520个字节 串口发送数据很快 这就导致在程序中等待开启灯的时间数据丢失
所以我们就要用中断

中断优先级
中断优先级的配置就是说 main函数在执行期间 有多个中断来 我们在程序配置中设置分组 ,抢占和响应是几位比较抢占的大小(二进制) 子优先级高的有机会提前排队 抢占优先级高的直接中止上个中断的运行 等抢占的执行完在去看执行上个被抢占的 执行完 
看子优先级和抢占优先级的位数 比较大小
规定抢占和子优先级的位数
他们共占四个比特位 不同的分组可以看你是想要比较抢占还是子优先级 看分组高位的大小决定抢占 能不能抢占他的运行从而·提前执行 低位的大小决定能不能优先排队

通过比较数据的大小 越小的越先执行 优先比较高位 高位一致的 在比较低位 在进行排数
抢占优先级都是0~15 子优先级都是0~15,有四个组别


管理这些的就是NVIC 是系统内核外设


串口中断

通过发送数据这个动作控制LED灯的亮灭,一旦检测到PC机给单片机发数据就执行对应的函数比如让灯闪得更快 可以设置多个逻辑改变亮灭得频率
配置
灯得配置要设置为开漏输出 灯得一段接3.3v另一端由单片机控制
通过配置串口初始化串口中断 然后编写中断函数 我们发送PC机什么他就执行什么
发数据这个动作就会触发中断 从而控制灯闪烁变量


AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)