当前位置: 首页 > news >正文

GD32C103RBT6 misc 内核驱动库极简解析

一、概述

gd32c10x_misc.c是 GD32C10x 固件库的内核杂项驱动,直接操作 Cortex‑M3 内核寄存器,实现三大功能:

  1. NVIC 中断优先级分组、中断开关
  2. 向量表重映射
  3. 低功耗模式、SysTick 时钟源配置所有外设中断配置都依赖本文件,使用频率极高。

二、核心函数说明

1.nvic_priority_group_set()

设置中断优先级分组(抢占优先级 + 子优先级)

  • 常用:NVIC_PRIGROUP_PRE2_SUB2(2 位抢占 + 2 位子优先级,默认)
  • 整个工程只调用一次,放在main最开头

2.nvic_irq_enable()

开启指定中断并配置优先级

  • 参数:中断号、抢占优先级、子优先级
  • 优先级数值越小,优先级越高

3.nvic_irq_disable()

关闭指定中断

4.nvic_vector_table_set()

向量表重映射(FLASH/RAM,IAP 升级常用)

5.system_lowpower_set / reset()

设置 / 清除睡眠、深度睡眠低功耗模式

6.systick_clksource_set()

配置 SysTick 时钟源:HCLK 或 HCLK/8

三、例程

#include "gd32c10x_misc.h"

int main(void)
{
// 1. 设置中断分组
nvic_priority_group_set(NVIC_PRIGROUP_PRE2_SUB2);

// 2. 开启外部中断0,抢占优先级1,子优先级0
nvic_irq_enable(EXTI0_IRQn, 1, 0);

// 3. SysTick时钟源配置
systick_clksource_set(SYSTICK_CLKSOURCE_HCLK_DIV8);

while(1)
{
}
}

// EXTI0中断服务函数
void EXTI0_IRQHandler(void)
{
if(exti_interrupt_flag_get(EXTI_0) != RESET)
{
exti_interrupt_flag_clear(EXTI_0);
// 中断业务逻辑
}
}

http://www.jsqmd.com/news/850560/

相关文章:

  • Linux 早已摆脱小众、极客、爱好者标签,跟这4个误区说拜拜吧
  • 手把手教你用C语言给STM32写一个Modbus RTU从机库(含完整项目源码)
  • Ubuntu开启SSH完整步骤
  • 量子对角化方法在强关联系统中的应用与优化
  • 解码AI信控的“参谋”身份
  • 基于555定时器的电荷泵倍压电路设计与实践
  • 嵌入式开发实战:在STM32上实现CRC16查表法(附Linux内核源码分析)
  • 脸部下垂怎么选合适的护肤品 CA逆时光 30天告别松弛纹 - 全网最美
  • DSP28335的SCI串口通信避坑指南:如何稳定驱动淘晶驰3.5寸屏显示实时数据
  • 3分钟搞定Chrome浏览器Markdown阅读难题:markdownReader完全指南
  • Palantir Ontology 深度解析:是什么、架构、工作原理、AI 大模型融合逻辑
  • EasyExcel导出财务数据报表:手把手教你配置金额、百分比、小数位格式(含完整代码)
  • 告别Keil,用VSCode+arm-gcc搭建STM32开发环境(保姆级避坑指南)
  • ESP32-CAM不止能监控:巧用RTSP推流,打造智能家居的‘眼睛’(VLC/Home Assistant实战)
  • UE5 GAS实战:用GameplayEffect堆叠机制,复刻LOL武器大师被动与火男爆炸效果
  • 购物卡闲置?大润发回收帮你变现! - 团团收购物卡回收
  • 三步实现Mac微信聊天记录完整备份:高效安全的本地导出方案
  • 手把手教你用L293D扩展板+Arduino Uno搭建一个简易CNC绘图仪(含28BYJ-48步进电机驱动教程)
  • RGB与YUV像素格式详解
  • GD32C103RBT6 PMU 电源管理驱动库详解
  • 青岛盛世鑫隆装饰:青岛靠谱的车库门定制厂家 - LYL仔仔
  • MusicFree插件完整指南:三分钟搭建免费音乐播放器
  • 思科网院模块测试题通关秘籍:从零基础到高分,我的CCNA备考实战笔记
  • 用GDAL和OpenCV处理遥感影像:从TIF到Mat的完整转换指南(附坐标转换)
  • 昆山捷新恒吊装搬运:苏州工业园靠谱的叉车租赁公司 - LYL仔仔
  • 别再手动解析了!用Java+GLTF-Java库5分钟搞定GLB/GLTF模型数据提取
  • 别再死记硬背了!一张图搞懂UDS 0x29认证的PKI与Challenge-Response流程区别
  • RDPWrap完整指南:免费解锁Windows多用户远程桌面终极教程
  • 用X4M200雷达模块DIY一个非接触式生命体征监测仪:从信号采集到心跳分离的完整流程
  • 反PUA30天 Day21:我花了很久才搞懂一件事——领导的情绪,不该是我的KPI |乐想屋