2011-06-17 125 views
2

編譯Arduino草圖時,它會創建一個.hex文件(存儲在臨時文件夾中)。當我在AVR Studio 4.18中打開這個文件時,它會嘗試從沒有代碼存在的位置開始。我應該怎麼做才能在AVR Studio模擬器中調試這些Arduino十六進制文件?Arduino:如何在AVR Studio中調試十六進制文件

回答

1

嗯,效果很好,當我選擇模擬器2 ...

0

你不能,你需要的對象文件。如果你想使用AVR模擬器,你將不得不用C語言或彙編語言編寫你的代碼,並使用GCC編譯器或同等工具將它編譯到AVR studio中。

+0

爲什麼你認爲我不能調試一個純粹的十六進制內容?我不需要看源代碼,反彙編的輸出對我來說就足夠了。 – Mot 2011-06-28 07:43:20

0

查找用於AVR-objdump的和HEX2BIN Atmel的手冊頁。這應該使您能夠反彙編程序文件,以便生成您可能需要的模擬器。

退房這個話題,它說明了目標代碼和機器代碼之間的區別: Assembly code vs Machine code vs Object code?

總之,你的十六進制文件是原始機器代碼:操作碼,參數,字符串等 - 即數據,代碼和文本部分,並且爲了方便起見,將它們全部混合並進行十六進制編碼。這是比較容易讀入程序文件的十六進制編碼比二進制格式:)

編輯:

至於我記得(它已經多年,因爲我已經使用了AVR Studio),您可以加載在AVR Studio中創建十六進制文件並創建反彙編。然後將其複製/粘貼到.asm文件並生成目標文件 - 如果這確實是你需要的。

本頁面對AVR Studio的一些信息,並生成拆卸:http://www.avrfreaks.net/index.php?name=PNphpBB2&file=printview&t=50456&start=0

相關問題