二、连接ST-LINK V2
ST-LINK V2 STM32
33V 3V3
SWDIO SWIO
SWCLK SWCLK
GND GND
三、下载好keil5 MDK 版
计算机的,下载的软件应该很简单吧
四、安装驱动
先下载驱动
插上你的调试器,下载好打开下图这个,一直next就好,然后打开设备管理器
五、打开一个现成的工程
出现什么乱七八糟的先不要理他,后面我们慢慢调
六、配置
点击小魔术棒,找到debug,先找flash downlode
也可以去官网下载。
下载好后
file------------>import-------------------->找到刚刚下载的东西
一直next就好,前提你得安装好MDK版的keil5
Flash文件夹下就会多了很多东西
重新打开keil5,小魔术棒找到debug,进入setting,再选择debug,跟着选择这几个,点确定和OK,之后,如果出现,这是因为目标板的芯片处于休眠的状态,按复位键(板子上的小红色按键),再重新编译和下载就好,这样就是成功了的,现在可以看到板子一闪一闪的了。对绝对的地址空间进行读写即可。
比如STM32自身的SRAM地址空间范围是0x20000000-0xXXXXXXXX(结束地址根据不同型号而不同,比如STM32F103ZET6的SRAM地址空间为0x20000000-0x2000FFFF共64KB),对绝对地址进行访问的C语言代码是:
a = (u8 )0x20000000;//将地址为0x20000000的一个字节数据读取到变量a中
(u8 )0x20000100 = a; //将变量a的值放到地址0x20000100处
不过不推荐直接访问绝对地址,因为这样可能会破坏堆栈而导致程序跑乱跑飞等问题的出现。如果你想得到的是单片机里别人烧写进去的程序,这是几乎不可能的,你只能根据他的功能自己编写
如果你想吧别人写好的hex文件翻译成C语言或者汇编程序,这也几乎是不可能实现的。
就和win平台的exe程序一样,一旦封装好了,解开是很困难的,绅士解开比你自己写花费的精力还要多
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)