轉:https://blog.csdn.net/daidi1989/article/details/86304843函數
IDA是一款功能強大的反編譯軟件,網上找了許久沒找到它的使用教程,通過摸索可將STM32的hex文件進行反彙編,操做步驟以下,首先下載IDA Pro版破解軟件,免安裝。工具
IDA Pro下載連接:https://pan.baidu.com/s/181PHGYRQvKUZlgL6VVQOIw 提取碼:sa2y .net
若是文件爲bin文件,可以使用bin轉hex工具轉爲hex格式3d
BinToHex下載連接:https://pan.baidu.com/s/12pkwO2DHhJd7_zVDF5RbaA 提取碼:8lel blog
一、打開解壓後目錄下的idaq.exe可執行文件,點擊[File]-[Open]看到以下界面教程
二、打開hex文件彈出提示圖片
三、【processot type】選擇小端ARM,點擊【set】保存內存
四、按順序點擊圖片中的1-2-3,設置好後點擊因此【ok】關閉提示框get
五、接下來將看到hex的文件內容,在CODE32下按d合併行編譯
六、右擊第二行跳到程序起始處
七、在跳轉到的程序前面按c鍵
八、反彙編完成,在CODE32處按F5鍵將生成類C僞代碼,見第12步
九、右擊函數頭選擇【Graph view】可查看函數間調用關係
十、查看函數調用關係
十一、在子函數中按【F5】鍵,生成反編譯代碼
十二、反編譯後的CODE32函數,該函數前面是stm32中啓動文件中的一些時鐘初始化函數,main函數的入口在最後sub_8003076();中,雙擊該函數便可進入。
1三、進入main函數中將看到以下一些具體功能實現代碼,注意寄存器的配置都是對芯片的某個內存地址進行操做,變量也是對應某一個存儲器地址。