我需要帮助从ATmega32a微控制器中提取代码。我对硬件,寄存器和装配材料有所了解,但我甚至不熟悉嵌入式系统。即使我知道逆向工程不适合初学者,我仍然想学习至少在网上找不到的基本概念。
如何与芯片通信,提取代码并对其进行反编译?对此有哪些硬件/软件要求? (假设代码未受保护。)
提前致谢。
你永远无法从Atmega32芯片内部获得c代码,因为芯片永远不会知道c代码。
但是,您可以使用终端中的以下命令从机器中获取机器代码
avrdude -c <programmer name> -p m32 -U flash:r:read_firmware.hex:i
为此,您必须在系统中安装avrdude。阅读更多here您还需要一个用于atmega芯片的SPI编程器。我最喜欢的是pocket programmer from sparkfun
然后,您可以通过文本编辑器浏览hex文件,并尝试使用Atmega32数据表了解机器代码。
就个人而言,我从未觉得值得付出努力。