在SWM系列MCU產品中有多種加密手段保護用戶程序。在這里我們以SWM190為例給大家簡單介紹一下MCU的加密功能。
我們程序加密的目的是防止芯片中的程序被他人讀出使用,現主要介紹的加密方法有:
1、讀 保 護
2、SWD封鎖
以上加密方法通過在用戶程序中將0x1C偏移地址初始化為指定關鍵字,即可實現以下指定級別的加密。
程序下載后再次上電,芯片將處于指定加密級別的狀態。
SWM190——加密操作函數配置
以SWM190為例,我們打開工程文件中的startup_SWM190.s文件,找到__Vectors,以其為0x00地址,找到0x1c地址處,此處默認值為0,默認FLASH讀正常。
正常讀寫具體配置函數如下圖所示:
SWD讀取加密時,將0x1c處寫0x43211234,編譯程序并下載,重新上電后芯片處于SWD讀加密狀態,無法訪問FLASH,但可以讀取RAM中的數據,可通過擦除FALSH并復位解除SWD讀鎖定。
具體操作如下:
SWD封鎖加密時,將0x1c處寫0xABCD1234,編譯程序并下載,重新上電后無法通過仿真器訪問芯片,不能執行讀寫擦除操作。
此時SWD端口切換為通用IO。只能通過ISP進行單向訪問。具體操作如下:
以SWM190為例
我們需要將ISP引腳(B0)接高,當芯片重新上電后檢測到B0引腳持續1ms以上的高電平后,將會進入ISP(在應用編程)模式。
通用ISP程序使用串口進行通信,默認為UART0,引腳為A0(RX),A1(TX),硬件連接完成后打開我司提供的上位機軟件,選擇SWM190芯片型號,可執行擦除或下載操作來更新程序以解除加密。
以上是本次介紹的加密手段,如果用戶想更多了解SWM的加密手段請聯系華芯微特技術人員。詳情可登錄華芯微特官網:http://www.synwit.cn/
來源:華芯微特32位MCU
-
芯片
+關注
關注
456文章
51170瀏覽量
427252 -
mcu
+關注
關注
146文章
17317瀏覽量
352642 -
程序
+關注
關注
117文章
3795瀏覽量
81411 -
函數
+關注
關注
3文章
4346瀏覽量
62971
發布評論請先 登錄
相關推薦
評論