调试程序时需要频繁烧写Flash,一方面速度慢,另一方面过程很繁琐。现在想把程序放到RAM中调试;准备这样做:
先写一个BIOS,烧到Flash中,功能比较简单,上电后初始化串口,提供简单的命令行,支持xmodem协议通过串口下载程序bin文件到RAM,然后跳到RAM指定地址执行;
芯片是STM32F103VDT,RAM只有64K;RAM空间划分如下:
0x20000000~0x20001fff:8K,用作BIOS程序的RAM;
0x20002000~0x2000dfff:48K,用于存放RAM程序的映像文件,也就是在BIOS中通过串口下载的bin文件;
0x2000e000~0x2000ffff:8K,用作RAM程序的RAM;
现在有几个问题需要解决,希望各路大侠能指点一下,谢谢;
1、Keil只能编译生成Hex文件,用什么工具可以转成bin文件?
2、bin文件下载到RAM的0x20002000~0x2000dfff空间后,如何跳转到0x20002000地址执行RAM程序?
3、RAM程序的工程怎么设置? |