完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
注:以下示例代码仅供参考,具体实现可能因处理器型号等因素而有所不同。
触发BFARVALID为真且PRECISERR位也为真的总线故障的示例代码: ```c void HardFault_Handler(void) { volatile uint32_t* bfar = (volatile uint32_t*) (0xE000ED38U); // 获取BFAR寄存器地址 uint32_t bfarValue = *bfar; // 读取BFAR寄存器的值 // 判断BFARVALID位和PRECISERR位是否都为1 if ((SCB->CFSR & SCB_CFSR_BUSFAULTSR_Msk) == SCB_CFSR_BUSFAULTSR_BFARVALID_Msk | SCB_CFSR_BUSFAULTSR_PRECISERR_Msk) { // 触发了BFARVALID为真且PRECISERR位也为真的总线故障 // 处理代码 // ... } else { // 其他总线故障 // 处理代码 // ... } // 清除总线故障标志位 SCB->CFSR |= (1 << SCB_CFSR_BUSFAULTSR_Pos); // 执行返回从异常到主流程的处理 // ... } ``` 触发BFARVALID为真且PRECISERR位也为真的总线故障的示例: ```c // 假设要在存储器地址0x80000000处写入一个uint32_t类型的数据 volatile uint32_t* ptr = (volatile uint32_t*) 0x80000000; *ptr = 0xDEADBEEF; // 触发总线故障 ``` |
|
|
|
只有小组成员才能发言,加入小组>>
1936个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36433 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
5073 浏览 1 评论
6118 浏览 1 评论
6822 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4255 浏览 0 评论
656浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
646浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
647浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
738浏览 2评论
854浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-30 11:17 , Processed in 1.445034 second(s), Total 78, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号