前几天在网上买了个nucleo f103来学习,由于完全是自学,身边没有大神可以指导,我win7 64位系统安装驱动都让我整了一天。为了搞定st-link/v2的ram调试我又搞了一天。完全都是在查论坛的资料看教程模仿,弯路走不少。在此记录下成果,供像我一样孤独的小白借鉴一下吧。 我的驱动安装方法: 我的用的是keil4 MDK472 。板子是官方的NUCLEO f103rb。由于官方板子是带的st-link/v2驱动请从官网自己下载。我下载的是 stsw-link009和stsw-link007。先安装 stsw-link009 文件下 dpinst_amd64.exe结果只成功第一个驱动,还用不了,试了好多方法一直找不到原因。后来用stsw-link007升级软件点一下Device Connect自己会找到驱动接着提示两个驱动都成功了,这就行了也不要继续点升级了。能用就行了,摸索一天真是醉了。 驱动安装成功,接着就介绍ram调试。理论就不多介绍了,就是相当于把ram里面的空间分成两个部分,一块大的用来写程序相当于'rom',一块小空间用来跑程序相当于'ram'。好处就是无限次擦写不损伤擦写有限次数的Flash。便于调试、掉电就会消失,调试成功以后可以写进Flash。但是由于ram本身比较小,可能只能写一些小程序,对小白做实验基本上市可以满足的。我的ram才20k,试了试居然还凑合。 接着上步骤: 打开Options设置,Device下选好自己芯片我的是STM32F103RB; Target下IROM1: ROM起始地址0x8000000改为ram起始地址0x2000000,大小根据你自己的ram的大小自己分配我的是0x4000,后面IRAM1起始地址改为0x20004000大小0x1000,这样我这20k的空间就被分配完了; Output下 HEX File勾选; C/c++下 define: VECT_TAB_RAM Debug下 选 ST-Link Debugger,后面setting设置Flash for Slgorithm star:0x20004000 size:0x1000,添加你自己的芯片,接着修改star:0x20000000 size:0x4000;确定。在initialization File下添加一个后缀.ini文件 文件里面创建的内容如下: /******************************************************************************/
/* RAM.INI: RAM Initialization File */
/******************************************************************************/
// <<< Use Configuration Wizard in Context Menu >>> //
/******************************************************************************/
/* This file is part of the uVision/ARM development tools. */
/* Copyright (c) 2005-2007 Keil Software. All rights reserved. */
/* This software may only be used under the terms of a valid, current, */
/* end user licence from KEIL for a compatible version of KEIL software */
/* development tools. Nothing else gives you the right to use this software. */
/******************************************************************************/ FUNC void Setup (void) {
SP = _RDWORD(0x20000000); // Setup Stack Pointer
PC = _RDWORD(0x20000004); // Setup Program Counter
// _WDWORD(0xE000ED08, 0x20000000); // Setup Vector Table Offset Register
} LOAD RAM\Blinky.axf INCREMENTAL // Download Setup(); // Setup for Running
g, main
接着设置Utilities设置里选择 ST-Link Debugger,setting设置类似Debug请参考上面, 最后就是编译和仿真了。以上具体的步骤借鉴刘凯老师的视频,大家嫌不够详细可以去下载观看。 |