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

CH5xx BLE芯片复位排查方法

一.打印复位状态寄存器:R8_RESET_STATUS

该寄存器的低三位对应以下复位原因:

最近一次复位状态:

000:软件复位 SR(RB_WDOG_RST_EN=0 时软件复位可产生此状态,否则可复位 但不产生此状态);

001:上电复位 RPOR;

010:看门狗超时复位 WTR;

011:外部手动复位 MR;

101:从下电模式唤醒时的复位 GRWSM; 100/110/111:唤醒复位 LRW,且此前的 上一次复位分别是 SR/WTR/MR。  

void print_reset_reason(void) {uint8_t rst = R8_RESET_STATUS & 0x07;  // 仅取低3位复位标识PRINT("R8_RESET_STATUS=0x%x\n", R8_RESET_STATUS);PRINT("Reset Reason: ");switch (rst) {case 0x00: PRINT("Software Reset (SR)\n"); break;case 0x01: PRINT("Power-On Reset (RPOR)\n"); break;case 0x02: PRINT("Watchdog Reset (WTR)\n"); break;case 0x03: PRINT("Manual Reset (MR)\n"); break;case 0x04: PRINT("Wake-Up Reset (LRW, prev: SR)\n"); break;case 0x05: PRINT("Power-Down Wake-Up (GRWSM)\n"); break;case 0x06: PRINT("Wake-Up Reset (LRW, prev: WTR)\n"); break;case 0x07: PRINT("Wake-Up Reset (LRW, prev: MR)\n"); break;default:   PRINT("Unknown (0x%x)\n", rst); break;}
}void main(void) {// 系统初始化(时钟、串口等,按硬件需求添加)print_reset_reason();  // 打印复位原因while (1) {// 业务逻辑// ...}

二.添加打印查看Hardfault

__attribute__((section(".highcode")))             //put in ram
__attribute__((interrupt("WCH-Interrupt-fast")))  //disable soft push/pull
void HardFault_Handler(void) {uint32_t v_mepc,v_mcause,v_mtval;PRINT("hardfault\n"); v_mepc=__get_MEPC();v_mcause=__get_MCAUSE();v_mtval=__get_MTVAL(); PRINT("mepc:%08x\n",v_mepc);PRINT("mcause:%08x\n",v_mcause);PRINT("mtval:%08x\n",v_mtval);while(1);
}

mepc可以在list文件中查看,

mause:

InterruptException CodeDescription
1 0 User software interrupt
1 1 Supervisor software interrupt
1 2 Hypervisor software interrupt
1 3 Machine software interrupt
1 4 User timer interrupt
1 5 Supervisor timer interrupt
1 6 Hypervisor timer interrupt
1 7 Machine timer interrupt
1 8 User external interrupt
1 9 Supervisor external interrupt
1 10 Hypervisor external interrupt
1 11 Machine external interrupt
1 ≥12 Reserved
0 0 Instruction address misaligned
0 1 Instruction access fault
0 2 Illegal instruction
0 3 Breakpoint
0 4 Load address misaligned
0 5 Load access fault
0 6 Store/AMO address misaligned
0 7 Store/AMO access fault
0 8 Environment call from U-mode
0 9 Environment call from S-mode
0 10 Environment call from H-mode
0 11 Environment call from M-mode
0 ≥12 Reserved
http://www.jsqmd.com/news/59613/

相关文章:

  • 行业洞察:电子测试痛点如何破局?上海柏毅小型高低温试验箱成关键解
  • 别再装系统了!Linux 镜像到底是什么?一篇讲到你怀疑人生
  • day6敏捷冲刺
  • mysql join on where
  • 第4天
  • 2025年数控机床钣金外壳优质供应商TOP5排名
  • 2025年徐州人力资源服务外包公司权威推荐榜单:人力资源外包公司‌/外包人力资源公司‌/人力资源外包服务‌源头公司精选
  • 2025年BI本地私有化部署厂商选择指南:AI驱动下的企业数据管理新范式(企业智能BI私有化部署厂商/BI私有化部署方案商深度盘点)
  • 2025年PPH环保型水喷射真空机组厂家权威推荐榜单:真空机组‌/聚丙烯水喷射真空机组‌/PPH水喷射真空机组‌源头厂家精选
  • 2025年广东阻燃母粒制造厂排名:阻燃母粒环保型厂家哪家好?
  • AI伦理误区:ABCD模型哲学体系
  • APP界面设计公司分享:物流APP工业风让数据高效可读
  • 高级程序语言设计第八次
  • 2025 年 12 月激光切割机厂家推荐榜单:数控/小型/精密/金属/型材/钢板/大型/圆管/光纤,高效精准切割利器!
  • 2025年成都网络推广公司推荐,抖音代运营/新闻营销/抖音推广/小红书推广/SEO优化/网络推广企业排行榜
  • 不只是“外包”,而是共创:兰亭妙微解读UI设计合作的升维之道
  • 【运维自动化-标准运维】如何创建流程嵌套(子流程)
  • 第03章 - 核心架构解析
  • 2025年房梁榫卯产品定制厂家权威推荐榜单:房梁榫卯产品介绍图‌/房梁结构‌/房梁榫卯产品介绍‌源头厂家精选
  • 2025热处理行业厂家TOP5指南:甄选制造商助力工业升级
  • day4敏捷冲刺
  • 深入解析:微信小程序如何优雅地跳转外部链接?WebView + 复制方案实战
  • 2025年高性价比金属探测仪品牌推荐,看看哪家实力强
  • 2025年中国十大热处理服务商家推荐:看看哪家技术实力更强
  • 2025年成都值得信赖的网络推广服务商排行,网络推广/网络公关/GEO优化/SEO优化/网站建设/小红书代运营/小红书推广网络推广公司找哪家
  • 全自动咖啡机品牌排名 哪些品牌值得关注
  • day3敏捷冲刺
  • 什么是Hook?
  • 全自动咖啡机推荐:多场景适用的品质之选
  • 习题解析之:查找特征数