Hardfault handler log saving

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

Hardfault handler log saving

跳至解决方案
6,181 次查看
Seongyon_Jeong
Contributor III

I.MXRT1020-EVK board.  MCUXpressoIDE 24.12 , SDK_2.x_EVK-MIMXRT1020  2.13.0

When hardfault occurred, I tried to move the previously logged content to flash.

This coding-job was based on an example that included Shell among an example using FreeRTOS.

1. fsl_debug_console.c

Before delivering the printbuffer to the DbgConsole_Vprintf function, we delivered the same content to the ringbuffer allocated 8KB using pvMalloc so that it can be stored continuously.

2. semihost_hardfault.c

In this function, if it is not under the _semihost_return condition of the existing code, jump to a function called hardfault_handler_main in BL.

    Hardfault_handler_main call hardfault_log_save_sc.

In hardfault_log_save_sc, the logs in the area 8KB assigned to the malloc defined in fsl_debug_console.c were sorted so that they were stored in the 3F0 and 3F1 sectors of flash from the very first log.
In RT1020, the 3F0 sector number of flash corresponds to 0x603F_0000 .

The reason why I'm posting the question here is. After creating a trigger_hardfault CMD command and function that deliberately attempts to write a value to the null point in the shell
volatile int *ptr = (int *)0x00000000; // NULL pointer
*ptr = 42; // trigger hardfault

If  intentionally causing hardfault.

Ease the first sector of hardfault_log_save_sc is successfully executed, but then the second sector erase and dump to Dram -> flash do not work.


How do I fix the file semihost_hardfault.c for hardfault handlers in SDK so that I can write what's in DRAM in flash correctly and fall out indefinitely?

标签 (1)
0 项奖励
回复
1 解答
6,160 次查看
Sam_Gao
NXP Employee
NXP Employee

Hi @Seongyon_Jeong 

It seems there are some issues about hardFault handle which are developed from your side. Generally speaking, it is out of our support role.

Here I would like to give advice that it's hard to handle flash sections, please follow flash_componment_nor_flexspi example to see how to use Nor_Flash_Erase_Sector Nor_Flash_Read functions.

在原帖中查看解决方案

0 项奖励
回复
5 回复数
6,161 次查看
Sam_Gao
NXP Employee
NXP Employee

Hi @Seongyon_Jeong 

It seems there are some issues about hardFault handle which are developed from your side. Generally speaking, it is out of our support role.

Here I would like to give advice that it's hard to handle flash sections, please follow flash_componment_nor_flexspi example to see how to use Nor_Flash_Erase_Sector Nor_Flash_Read functions.

0 项奖励
回复
6,123 次查看
Seongyon_Jeong
Contributor III

This is my SDK version for RT1020 EVK

스크린샷 2025-03-13 171055.png

 
 

I download two example  from SDK

스크린샷 2025-03-13 171013.png

freertos_hello_flash_operation works fine. 

rtos_flash.jpg

But  flash component nor  is not.

 Just Only ,  Import SDK example -> select  this example -> finish (no  change,  just default)
But.  Build & Download the image Using GUI Flash Tool of MCUXpressoIDE. ,

and. Nothing.......  so,  I  Enter  debug mode  of this project.

then....

 

스크린샷 2025-03-13 171627.png  

 

스크린샷 2025-03-13 171718.png

 

스크린샷 2025-03-13 172237.png

I do not  change anything  in this project.  just import & build & down.

 but this faced to  Hardfault   directly..... 

So,  I tested another project,   they work fine  with Default SDK Example Project state.

 I think  the Example project  has problem

标记 (1)
0 项奖励
回复
6,118 次查看
Sam_Gao
NXP Employee
NXP Employee

Hi @Seongyon_Jeong 

I used the latest SDK(v24.12 or v2.16.0) which need IDE v24 to run the same example (evkmimxrt1020_flash_component_nor_flexspi), but both of them all works fine.

Please double check from your side.

https://github.com/nxp-mcuxpresso/mcux-sdk-examples/tree/5a158afe9cdb70ca449667ed71490afd29655710/ev... 

 

***NOR Flash Component Demo Start!***


***NOR Flash Page 0 Read/Write Success!***


***NOR Flash Page 1 Read/Write Success!***


***NOR Flash Page 2 Read/Write Success!***


***NOR Flash Page 3 Read/Write Success!***


***NOR Flash Page 4 Read/Write Success!***


***NOR Flash Page 5 Read/Write Success!***


***NOR Flash Page 6 Read/Write Success!***


***NOR Flash Page 7 Read/Write Success!***


***NOR Flash Page 8 Read/Write Success!***


***NOR Flash Page 9 Read/Write Success!***


***NOR Flash Page 10 Read/Write Success!***


***NOR Flash Page 11 Read/Write Success!***


***NOR Flash Page 12 Read/Write Success!***


***NOR Flash Page 13 Read/Write Success!***


***NOR Flash Page 14 Read/Write Success!***


***NOR Flash Page 15 Read/Write Success!***

***NOR Flash All Pages Read/Write Success!***

 

0 项奖励
回复
6,080 次查看
Seongyon_Jeong
Contributor III

I did  double checks.  but  Still  hardfault occures
But I change SDK version or RT1020... SDK 2.13 -> SDK 24.12   then  It works fine

After comparing two version with diff sw tool,  
Now I   guess , previous SDK version Example has problem. 

anyway. thanks for your  f/up

 

 

6,173 次查看
Seongyon_Jeong
Contributor III

Ease the first sector of hardfault_log_save_sc is successfully executed

  => Erasing the first sector of hardfault_log_save_sc is successfully executed

Miss spelling..

0 项奖励
回复
%3CLINGO-SUB%20id%3D%22lingo-sub-2060117%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E7%A1%AC%E6%95%85%E9%9A%9C%E5%A4%84%E7%90%86%E7%A8%8B%E5%BA%8F%E6%97%A5%E5%BF%97%E4%BF%9D%E5%AD%98%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2060117%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EI.MXRT1020-EVK%E6%9D%BF%E3%80%82MCUXpressoIDE%2024.12%EF%BC%8CSDK_2.x_EVK-MIMXRT1020%202.13.0%3C%2FP%3E%3CP%3E%3CSPAN%3E%E5%BD%93%E5%8F%91%E7%94%9Fhardfault%E6%97%B6%EF%BC%8C%E6%88%91%E5%B0%9D%E8%AF%95%E5%B0%86%E4%B9%8B%E5%89%8D%E8%AE%B0%E5%BD%95%E7%9A%84%E5%86%85%E5%AE%B9%E7%A7%BB%E5%8A%A8%E5%88%B0flash%E4%B8%AD%E3%80%82%3C%2FSPAN%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CSPAN%3E%E6%AD%A4%E7%BC%96%E7%A0%81%E4%BD%9C%E4%B8%9A%E5%9F%BA%E4%BA%8E%E4%BD%BF%E7%94%A8%20FreeRTOS%20%E7%9A%84%E7%A4%BA%E4%BE%8B%E4%B8%AD%E5%8C%85%E5%90%AB%20Shell%20%E7%9A%84%E7%A4%BA%E4%BE%8B%E3%80%82%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FSPAN%3E1.fsl_debug_console.c%3C%2FP%3E%3CP%3E%3CSPAN%3E%E5%9C%A8%E5%B0%86%E6%89%93%E5%8D%B0%E7%BC%93%E5%86%B2%E5%8C%BA%E4%BC%A0%E9%80%92%E7%BB%99DbgConsole_Vprintf%E5%87%BD%E6%95%B0%E4%B9%8B%E5%89%8D%EF%BC%8C%E6%88%91%E4%BB%AC%E5%B0%86%E7%9B%B8%E5%90%8C%E7%9A%84%E5%86%85%E5%AE%B9%E4%BC%A0%E9%80%92%E7%BB%99%E4%BD%BF%E7%94%A8pvMalloc%E5%88%86%E9%85%8D%E7%9A%848KB%E7%8E%AF%E5%BD%A2%E7%BC%93%E5%86%B2%E5%8C%BA%EF%BC%8C%E4%BB%A5%E4%BE%BF%E5%8F%AF%E4%BB%A5%E8%BF%9E%E7%BB%AD%E5%AD%98%E5%82%A8%E3%80%82%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E2.%20semihost_hardfault.c%3CBR%20%2F%3E%3CBR%20%2F%3E%E5%9C%A8%E8%BF%99%E4%B8%AA%E5%87%BD%E6%95%B0%E4%B8%AD%EF%BC%8C%E5%A6%82%E6%9E%9C%E4%B8%8D%E5%9C%A8%E7%8E%B0%E6%9C%89%E4%BB%A3%E7%A0%81%E7%9A%84_semihost_return%E6%9D%A1%E4%BB%B6%E4%B8%8B%EF%BC%8C%E5%B0%B1%E8%B7%B3%E8%BD%AC%E5%88%B0BL%E4%B8%AD%E4%B8%80%E4%B8%AA%E5%8F%ABhardfault_handler_main%E7%9A%84%E5%87%BD%E6%95%B0%E3%80%82%3CBR%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EHardfault_handler_main%20%E8%B0%83%E7%94%A8%20hardfault_log_save_sc%E3%80%82%3CBR%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E%E5%9C%A8%20hardfault_log_save_sc%20%E4%B8%AD%EF%BC%8C%E5%AF%B9%20fsl_debug_console.c%20%E4%B8%AD%E5%AE%9A%E4%B9%89%E7%9A%84%E5%88%86%E9%85%8D%E7%BB%99%20malloc%20%E7%9A%84%208KB%20%E5%8C%BA%E5%9F%9F%E4%B8%AD%E7%9A%84%E6%97%A5%E5%BF%97%E8%BF%9B%E8%A1%8C%E6%8E%92%E5%BA%8F%EF%BC%8C%E4%BB%A5%E4%BE%BF%E4%BB%8E%E7%AC%AC%E4%B8%80%E4%B8%AA%E6%97%A5%E5%BF%97%E5%BC%80%E5%A7%8B%E5%B0%86%E5%AE%83%E4%BB%AC%E5%AD%98%E5%82%A8%E5%9C%A8%E9%97%AA%E5%AD%98%E7%9A%84%203F0%20%E5%92%8C%203F1%20%E6%89%87%E5%8C%BA%E4%B8%AD%E3%80%82%3CBR%20%2F%3E%E5%9C%A8RT1020%E4%B8%AD%EF%BC%8C%E9%97%AA%E5%AD%98%E7%9A%843F0%E6%89%87%E5%8C%BA%E5%8F%B7%E5%AF%B9%E5%BA%94%E4%B8%BA0x603F_0000%E3%80%82%3CBR%20%2F%3E%3CBR%20%2F%3E%E6%88%91%E5%9C%A8%E8%BF%99%E9%87%8C%E5%8F%91%E5%B8%83%E8%BF%99%E4%B8%AA%E9%97%AE%E9%A2%98%E7%9A%84%E5%8E%9F%E5%9B%A0%E6%98%AF%EF%BC%8C%E5%9C%A8%E5%88%9B%E5%BB%BA%E4%BA%86%E4%B8%80%E4%B8%AAtrigger_hardfault%20CMD%E5%91%BD%E4%BB%A4%E5%92%8C%E5%87%BD%E6%95%B0%E4%B9%8B%E5%90%8E%EF%BC%8C%E5%AE%83%E4%BC%9A%E6%95%85%E6%84%8F%E5%B0%9D%E8%AF%95%E5%B0%86%E5%80%BC%E5%86%99%E5%85%A5shell%E4%B8%AD%E7%9A%84%E7%A9%BA%E5%80%BC%3CBR%20%2F%3Evolatile%20int%20*ptr%20%3D%20(int%20*)0x00000000%3B%20%2F%2F%20%E7%A9%BA%E6%8C%87%E9%92%88%3CBR%20%2F%3E*ptr%20%3D%2042%3B%20%2F%2F%20%E8%A7%A6%E5%8F%91%E7%A1%AC%E6%95%85%E9%9A%9C%3CBR%20%2F%3E%3CBR%20%2F%3E%E5%A6%82%E6%9E%9C%E6%95%85%E6%84%8F%E9%80%A0%E6%88%90%E7%A1%AC%E6%95%85%E9%9A%9C%E3%80%82%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FSPAN%3E%3CSPAN%3E%E8%BD%BB%E6%9D%BE%E6%88%90%E5%8A%9F%E6%89%A7%E8%A1%8C%20hardfault_log_save_sc%20%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AA%E6%89%87%E5%8C%BA%EF%BC%8C%E4%BD%86%E9%9A%8F%E5%90%8E%E6%93%A6%E9%99%A4%E7%AC%AC%E4%BA%8C%E4%B8%AA%E6%89%87%E5%8C%BA%E5%B9%B6%E8%BD%AC%E5%82%A8%E5%88%B0%20Dram%20-%26gt%3B%20flash%20%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8%E3%80%82%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E%3CBR%20%2F%3E%E5%A6%82%E4%BD%95%E4%BF%AE%E5%A4%8D%E6%96%87%E4%BB%B6%20semihost_hardfault.c%E7%94%A8%E4%BA%8E%20SDK%20%E4%B8%AD%E7%9A%84%E7%A1%AC%E6%95%85%E9%9A%9C%E5%A4%84%E7%90%86%E7%A8%8B%E5%BA%8F%EF%BC%8C%E4%BB%A5%E4%BE%BF%E6%88%91%E5%8F%AF%E4%BB%A5%E6%AD%A3%E7%A1%AE%E5%9C%B0%E5%B0%86%20DRAM%20%E4%B8%AD%E7%9A%84%E5%86%85%E5%AE%B9%E5%86%99%E5%85%A5%E9%97%AA%E5%AD%98%E4%B8%AD%E5%B9%B6%E6%97%A0%E9%99%90%E6%9C%9F%E5%9C%B0%E9%80%80%E5%87%BA%EF%BC%9F%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-2060117%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CLINGO-LABEL%3Ei.MXRT%20102x%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2061712%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E5%9B%9E%E5%A4%8D%EF%BC%9AFlash%20%E7%BB%84%E4%BB%B6%E9%A1%B9%E7%9B%AE%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2061712%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E6%88%91%E5%8F%88%E4%BB%94%E7%BB%86%E6%A3%80%E6%9F%A5%E4%BA%86%E4%B8%80%E9%81%8D%E3%80%82%E4%BD%86%E4%BB%8D%E7%84%B6%E5%8F%91%E7%94%9F%E7%A1%AC%E6%95%85%E9%9A%9C%3CBR%20%2F%3E%E4%BD%86%E6%88%91%E6%94%B9%E5%8F%98%E4%BA%86%20SDK%20%E7%89%88%E6%9C%AC%E6%88%96%20RT1020...SDK%202.13%20-%26gt%3B%20SDK%2024.12%20%E7%84%B6%E5%90%8E%E5%AE%83%E8%BF%90%E8%A1%8C%E6%AD%A3%E5%B8%B8%3C%2FP%3E%3CP%3E%E4%BD%BF%E7%94%A8%20diff%20sw%20%E5%B7%A5%E5%85%B7%E6%AF%94%E8%BE%83%E4%B8%A4%E4%B8%AA%E7%89%88%E6%9C%AC%E5%90%8E%EF%BC%8C%3CBR%20%2F%3E%E7%8E%B0%E5%9C%A8%E6%88%91%E7%8C%9C%E6%B5%8B%EF%BC%8C%E4%BB%A5%E5%89%8D%E7%9A%84%20SDK%20%E7%89%88%E6%9C%AC%E7%A4%BA%E4%BE%8B%E6%9C%89%E9%97%AE%E9%A2%98%E3%80%82%3C%2FP%3E%3CP%3E%E5%8F%8D%E6%AD%A3%E3%80%82%E8%B0%A2%E8%B0%A2%E4%BD%A0%E7%9A%84f%2Fup%3C%2FP%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2061142%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E5%9B%9E%E5%A4%8D%EF%BC%9AFlash%20%E7%BB%84%E4%BB%B6%E9%A1%B9%E7%9B%AE%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2061142%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F220925%22%20target%3D%22_blank%22%3E%40Seongyon_Jeong%3C%2FA%3E%3C%2FP%3E%0A%3CP%3E%E6%88%91%E4%BD%BF%E7%94%A8%E4%BA%86%E6%9C%80%E6%96%B0%E7%9A%84%20SDK%EF%BC%88v24.12%20%E6%88%96%20v2.16.0%EF%BC%89%EF%BC%8C%E5%AE%83%E9%9C%80%E8%A6%81%20IDE%20v24%20%E6%9D%A5%E8%BF%90%E8%A1%8C%E7%9B%B8%E5%90%8C%E7%9A%84%E7%A4%BA%E4%BE%8B%EF%BC%88evkmimxrt1020_flash_component_nor_flexspi%EF%BC%89%EF%BC%8C%E4%BD%86%E5%AE%83%E4%BB%AC%E9%83%BD%E8%BF%90%E8%A1%8C%E8%89%AF%E5%A5%BD%E3%80%82%3C%2FP%3E%0A%3CP%3E%E8%AF%B7%E4%BB%8E%E4%BD%A0%E7%9A%84%E8%A7%92%E5%BA%A6%E5%86%8D%E4%B8%89%E6%A3%80%E6%9F%A5%E3%80%82%3C%2FP%3E%0A%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fnxp-mcuxpresso%2Fmcux-sdk-examples%2Ftree%2F5a158afe9cdb70ca449667ed71490afd29655710%2Fevkmimxrt1020%2Fcomponent_examples%2Fflash_component%2Fflexspi_nor%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fgithub.com%2Fnxp-mcuxpresso%2Fmcux-sdk-examples%2Ftree%2F5a158afe9cdb70ca449667ed71490afd29655710%2Fevkmimxrt1020%2Fcomponent_examples%2Fflash_component%2Fflexspi_nor%3C%2FA%3E%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-c%22%3E%3CCODE%20translate%3D%22no%22%3E***NOR%20Flash%20Component%20Demo%20Start!***%0A%0A%0A***NOR%20Flash%20Page%200%20Read%2FWrite%20Success!***%0A%0A%0A***NOR%20Flash%20Page%201%20Read%2FWrite%20Success!***%0A%0A%0A***NOR%20Flash%20Page%202%20Read%2FWrite%20Success!***%0A%0A%0A***NOR%20Flash%20Page%203%20Read%2FWrite%20Success!***%0A%0A%0A***NOR%20Flash%20Page%204%20Read%2FWrite%20Success!***%0A%0A%0A***NOR%20Flash%20Page%205%20Read%2FWrite%20Success!***%0A%0A%0A***NOR%20Flash%20Page%206%20Read%2FWrite%20Success!***%0A%0A%0A***NOR%20Flash%20Page%207%20Read%2FWrite%20Success!***%0A%0A%0A***NOR%20Flash%20Page%208%20Read%2FWrite%20Success!***%0A%0A%0A***NOR%20Flash%20Page%209%20Read%2FWrite%20Success!***%0A%0A%0A***NOR%20Flash%20Page%2010%20Read%2FWrite%20Success!***%0A%0A%0A***NOR%20Flash%20Page%2011%20Read%2FWrite%20Success!***%0A%0A%0A***NOR%20Flash%20Page%2012%20Read%2FWrite%20Success!***%0A%0A%0A***NOR%20Flash%20Page%2013%20Read%2FWrite%20Success!***%0A%0A%0A***NOR%20Flash%20Page%2014%20Read%2FWrite%20Success!***%0A%0A%0A***NOR%20Flash%20Page%2015%20Read%2FWrite%20Success!***%0A%0A***NOR%20Flash%20All%20Pages%20Read%2FWrite%20Success!***%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2060268%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E5%9B%9E%E5%A4%8D%EF%BC%9A%E7%A1%AC%E6%95%85%E9%9A%9C%E5%A4%84%E7%90%86%E7%A8%8B%E5%BA%8F%E6%97%A5%E5%BF%97%E4%BF%9D%E5%AD%98%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2060268%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F220925%22%20target%3D%22_blank%22%3E%40Seongyon_Jeong%3C%2FA%3E%3C%2FP%3E%0A%3CP%3E%E7%9C%8B%E8%B5%B7%E6%9D%A5%3CCODE%20translate%3D%22no%22%3EhardFault%20handle%3C%2FCODE%3E%E5%AD%98%E5%9C%A8%E4%B8%80%E4%BA%9B%E7%94%B1%E6%82%A8%E6%9C%AC%E4%BA%BA%E5%BC%95%E5%8F%91%E7%9A%84%E9%97%AE%E9%A2%98%E3%80%82%E4%B8%80%E8%88%AC%E6%9D%A5%E8%AF%B4%EF%BC%8C%E8%BF%99%3CSTRONG%3E%E8%B6%85%E5%87%BA%E4%BA%86%E6%88%91%E4%BB%AC%E7%9A%84%E6%94%AF%E6%8C%81%E8%81%8C%E8%B4%A3%3C%2FSTRONG%3E%E3%80%82%3C%2FP%3E%0A%3CP%3E%E8%BF%99%E9%87%8C%E6%88%91%E6%83%B3%E6%8F%90%E4%B8%80%E4%B8%8B%EF%BC%8C%E5%A4%84%E7%90%86%20flash%20%E9%83%A8%E5%88%86%E6%AF%94%E8%BE%83%E5%9B%B0%E9%9A%BE%EF%BC%8C%E8%AF%B7%E6%8C%89%E7%85%A7%20flash_componment_nor_flexspi%20%E7%A4%BA%E4%BE%8B%E6%9D%A5%E4%BA%86%E8%A7%A3%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%3CCODE%20translate%3D%22no%22%3ENor_Flash_Erase_Sector%3C%2FCODE%3E%20%3CCODE%20translate%3D%22no%22%3ENor_Flash_Read%3C%2FCODE%3E%E5%87%BD%E6%95%B0%E3%80%82%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2060124%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E5%9B%9E%E5%A4%8D%EF%BC%9A%E7%A1%AC%E6%95%85%E9%9A%9C%E5%A4%84%E7%90%86%E7%A8%8B%E5%BA%8F%E6%97%A5%E5%BF%97%E4%BF%9D%E5%AD%98%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2060124%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%3CSPAN%3E%E7%BC%93%E8%A7%A3%20hardfault_log_save_sc%20%E7%AC%AC%E4%B8%80%E4%B8%AA%E6%89%87%E5%8C%BA%E6%98%AF%E5%90%A6%E6%88%90%E5%8A%9F%E6%89%A7%E8%A1%8C%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E%3D%26gt%3B%20%E6%88%90%E5%8A%9F%E6%89%A7%E8%A1%8Chardfault_log_save_sc%E7%AC%AC%E4%B8%80%E4%B8%AA%E6%89%87%E5%8C%BA%E7%9A%84%E6%93%A6%E9%99%A4%3CBR%20%2F%3E%3CBR%20%2F%3E%E6%8B%BC%E5%86%99%E9%94%99%E8%AF%AF..%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E