您的当前位置:首页STM32使用说明

STM32使用说明

来源:乌哈旅游
STM32F103核心模块开发板使用说明V1.0

一、核心模块特点介绍

1、MCU:STM32F103VB,Cortex-M3内核,128kB Flash, 20KB RAM,最高工作时钟72MHz,100脚

2、USB接口,可以做USB实验

3、包括CAN-BUS芯片TJA1050,可做CAN通信实验 4、ARM JTAG 2x10 座 5、所有 IO 口均引出 6、专用复位芯片电路

7、电源指示灯、状态指示灯 8、两个用户按键 9、启动模式选择

10、板载5V、3.3V LDO 1117,最大提供 800mA 电流 11、USB供电或单电源供电: +9VDC ,电容滤波 12、8MHz 晶振,32.768kHz 晶振 13、PCB尺寸: 90mm×64mm

1

二、跳线说明

1、启动方式选择跳线说明

开发板上的启动方式选择跳线

1SW12V3331SW22V333R15100KPB2R16100KBOOT0

启动方式选择跳线对应的原理图

SW1和SW2为STM32启动方式选择跳线,当SW2左边两个插针短接(即中间插针BOOT0与GND短接),SW1不接任何跳线帽时,为从FLASH启动模式,正常使用开发板时,此跳线需短接,如上图所示。

当SW1左边两个插针短接(即中间插针PB2与GND短接,1和2短接),SW2不接任何跳线帽时,为System Memory模式。

2、其他跳线说明 (1) JP4和JP5

2

开发板上的JP4和JP5跳线

JP4和JP5跳线对应的原理图

如上图所示,JP4短接后可以通过USB接口给开发板供电,JP5用来选择是否给PA12(D+)提供1.5k电阻的上拉,做USB相关实验时,需短接。

(2) JP8跳线

开发板上的JP8跳线

3

JP8V33VDDAJP8跳线对应的原理图

JP8跳线用来给STM32芯片的模拟电源选择供电电源,通常情况下,JP8跳线需短接,用+3.3V提供电源。 (3) JP9双排针

(4) JP10双排针

4

(5) JP11双排针

5

(6) JP12双排针

6

三、IAR下用Jlink调试STM32核心模块开发板

确认SW2,JP8,JP4,JP5跳线正确短接后,开始安装IAR软件,安装EWARM-EV-WEB-511后,在安装后的目录里

\\Program Files\\IAR Systems\\Embedded Workbench 5.0 Evaluation\\ARM\\examples\\ST\\STM32F10x\\IAR-STM32-SK ,打开IAR-STM32-SK.eww文件,它里面包含多个工程,除了LCD_Demo外,其它工程均无需改动,可以直接使用JLINK下载调试。

四、KEIL下用Ulink1调试STM32核心模块开发板

正确安装KEIL MDK3.20后,并按照网站上“[转]MDK320下使用ulink和jlink

的方法” 添加Ulink和Jlink调试选项后,在安装后的目录里 \\Keil\\ARM\\Boards\\Keil\\MCBSTM32,有多个测试例程,如下图所示:

7

因为MDK3.20默认是使用Ulink2来调试的,若使用Ulink调试,需要修改一下设置,我们打开其中一个例子,来看一下如何设置用ulink调试。

打开USBHID例子,打开工程设置对话框,点击Device标签,选择STM32F103VB,如下图所示:

然后点击Debug标签,选择“Ulink1 Cortex Debugger”,不要选择”Ulink1 ARM Debugger”,如下图所示。

8

点击Settings按钮,找到ARM Cortex-M3内核,如下图所示:

确认设置无误后,点击OK,再点击Utilities标签,选择Ulink1 Cortex Debugger,并在 Update Target before Debugging前打勾,如下图所示:

9

点击Settings按钮,如下图所示:

默认没有编程算法,单击Add按钮,选择STM32对应的算法,如下图所示:

10

点击Add按钮完成添加,添加后如下图所示:

点击OK,完成设置。

为了使例子可以正常运行,需要注释掉main函数中关于LCD的部分,如下所示:

11

修改完成后,点击Debug开始调试,如下图所示:

下载完成后进入调试界面,如下图所示:

程序运行后,windows会识别出来一个HID设备,如下图所示:

12

五、KEIL下用Jlink调试STM32核心模块开发板

说明:从KEIL MKD3.24版本之后,KEIL可以很好的支持JLINK,不用再做下面所说的修改。

大家知道,之前在Keil下可以通过RDI方式使用全功能版Jlink来调试LPC2000、STR912等很多芯片的,不过唯独是无法用Jlink 的RDI方式来调试STM32系列,因为在Jlink RDI Configuration 中的Flash设置中没有STM32芯片的选项,如下图所示。

13

在Keil宣布支持Jlink后的MDK3.22版本中开始直接支持Jlink了,这对大家来说无疑是一个好消息,因为在Keil中可以直接像使用Ulink2一样使用Jlink了。不过经过测试好像还存在一些bug,测试情况详见:

http://www.icdev.com.cn/bbs/viewthread.php?tid=8933&extra=page%3D3

最主要的问题就是:添加下载算法不能一一对应,完全是乱的,如下图所示:

14

后来经过awake兄弟的指导和帮助终于搞定了,在这里对awake兄弟表示感谢。

这个问题在Keil的官方网站给出了答案,详见: http://www.keil.com/support/docs/3410.htm

下面就给出具体解决方法,很简单,只需两步,复制三个文件即可:

1、安装Jlink的最新驱动,本文安装的是V3.88版本,最新的驱动可以从segger官方网站下载:http://www.segger.com/download_jlink.html 。安装完成后,打开C:\\Program Files\\SEGGER\\JLinkARM_V388目录(默认安装目录),如下图所示,

15

复制JLinkARM.dll和JLinkRDI.dll两个文件到Keil的安装目录:\\Keil\\ARM\\Segger下,替换以前的文件,如下所示:

2、从keil网站下载JLTAgdi.dll文件也复制到:\\Keil\\ARM\\Segger目录下,添加完成后如下图所示:

完成上面两步后,现在我们打开Keil软件来进行一个验证。

任意打开一个STM32的程序,本文打开时Keil自带的USBMem例程,在:\\Keil\\ARM\\Boards\\Keil\\MCBSTM32\\USBMem目录下。

工程打开后,打开设置对话框来进行Jlink调试设置,点击Debug标签,选择调试工具“J-LINK/J-TRACE”如下所示:

16

点击Settings,如下所示:

点击Utilities标签,选择编程工具“J-LINK/J-TRACE”,并在Update Target before Debugging前打勾,如下所示:

17

然后点击Settings设置编程算法,如下所示:

选择好算法后点击Add完成添加,如下图所示:

18

完成以上所有设置后,可以开始调试,点击Debug,程序会下载进去,下载完毕后即出现调试界面如下所示:

19

至此,在KEIL下就可以用JLINK来调试STM32了,亲自动手试一试吧,哈,祝大家开发顺利,没事儿常去网站和论坛看看,大家多多交流,一起进步!

20

21

因篇幅问题不能全部显示,请点此查看更多更全内容