STM32F1学习笔记(1) – 注意事项与开发环境配置

开始学习STM32F1xx(ARM Cortex-M3),用的硬件是STM32F103VET6自制最小系统 + 山寨J-Link V8;软件主要用的是IAR + 3.5固件库,当然MDK有时也会用用。

先说说环境配置。

一、硬件注意事项

  1. J-link 不对目标 CPU 进行检测:要注意MCU的电源必须与J-Link连接,不连接J-link测不到目标电压会导致不检测CPU。
  2. J-Link 找不到目标 CPU :这次是因为AVCC没有连接电源,AVCC没有连接电源会导致J-link找不到目标CPU。
  3. 如何用 J-Link 查看目标 CPU 状态:其实很简单,连接好目标板和连接没有错误,只要打开J-Link Commander就会看到CPU状态。

二、软件注意事项

  1. IAR对 J-Link 的RDI支持好像有点问题(也许是我的设置有问题),开机后如果不使用IAR自带的J-Link功能仿真一次的话,RDI仿真肯定不成功,用IAR自带的J-Link功能仿真一次后,RDI功能就正常了。MDK没有这个问题。
  2. ST的固件库可以在这里:http://www.st.com/internet/com/SOFTWARE_RESOURCES/SW_COMPONENT/FIRMWARE/stm32f10x_stdperiph_lib.zip下载。
  3. 注意设置J-Link的Flash烧写功能。

再说说一些基础的东西

一、项目的模板的创建:STM32的项目不像51和AVR简单,需要在空项目上加入库文件和启动文件,所以最好创建一个项目的模板,再创建项目时就不需要再重复动作了,以IAR为例。

  1. 把库的头文件路径添加到项目的额外包含目录里(Project>Options>C\C++ Compiler>Preprocessor>Additional include directories)。主要有 “.\Libraries\CMSIS\CM3\CoreSupport”;”.\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x”;”.\Libraries\STM32F10x_StdPeriph_Driver\inc” 这三个位置。
  2. 把需要用到的库源文、system_stm32f10x.c、core_cm3.c、stm32f10x_it.c 、stm32f10x_it.h添加到项目里。这些文件可在“.\Libraries\CMSIS” 里的文件夹内找到。
  3. 启动文件(.s文件)添加进项目。启动文件各后序的意思为 cl——互联型(107)、hd——大容量(10xxC/D/E)、md——中容量、ld——小容量、xl——超小容量、vl——超值系列(100)。可在“.\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup”找到
  4. 添加stm32f10x_conf.h 到目录,可以在“.\Project\STM32F10x_StdPeriph_Template” 找到。
  5. 创建main.c #inlcude “stm32f10x.h” 。

其实最简单的方法是直接拷贝.\Project\STM32F10x_StdPeriph_Template的模板然后打开相应IDE文件夹的工程文件。

 

二、启动文件(.s文件)的作用:个人暂时理解成中断向量表,和指定中断处理函数。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注