這里只討論內核的軟件復位方式。像STM32的備份域復位里面也有軟件復位,則不在本文討論范圍。額外提一句,上電復位是完整復位芯片所有東西,包括內核、debug部分、外設、中間邏輯電路狀態(模塊外部的邏輯電路狀態,如果沒有復位,也會影響到下次運行),因此需要確保做完全復位時候,應該使用上電復位。
一、cortex-m3
圖1來自cortex m3編程手冊
該位只復位內核,不復位debug部分
(2)SCB_AIRCR寄存器,SYSRESETREQ位
該位一般叫做系統復位,該位定義為會復位內核,不復位debug部分,至于是否復位其他部分,比如外設,則由具體的芯片來實現
圖1
二、cortex-m0
圖2來自cortex m0編程手冊
(1)SCB_AIRCR寄存器,VECTRESET位
cortex-m0沒有提供這個位,也即cortex-m0沒有提供單獨復位內核的定義
(2)SCB_AIRCR寄存器,SYSRESETREQ位
參考cortex-m3
圖2
三、其他參考
以下圖3 圖4來自 Cortex-M3-Definitive-Guide-EN.pdf
圖3
圖4
-
寄存器
+關注
關注
31文章
5317瀏覽量
120004 -
內核
+關注
關注
3文章
1363瀏覽量
40228 -
STM32
+關注
關注
2266文章
10871瀏覽量
354796 -
Cortex-M
+關注
關注
2文章
227瀏覽量
29727 -
軟件復位
+關注
關注
0文章
10瀏覽量
2885
發布評論請先 登錄
相關推薦
評論