你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F3探索者套件学习之路之第一个测试程序:永恒的流水灯

[复制链接]
lee198717 提问时间:2013-3-6 21:21 /
上一篇文章中介绍了STM32F3系列处理器简单项目工程模板的建立方法,本文中将介绍该模板的用法及编写一个简单的流水灯测试程序:
       
  • 首先,建立一个测试工程命名为Demo,选择处理器为STM32F303VCT6,工程路径就选择在上文中提到的Project文件夹中。将其中的CMSIS、User、Startup、Hardware和STM32F30x_StdPeriph_Driver文件夹添加到测试工程目录中。并添加对应目录下的src文件夹中的所有.c文件到项目中。(注:作为测试程序把官方提供的所有外设库函数包含到项目中,其实为了提高编译速度则只需要选择用到的文件即可)。   
  • 进入工程配置窗口中,在output选项页中勾选Create Hex文件复选框,然后点击Select Folder for Object,设置工程输出文件目录为Project文件夹下的Object文件夹。   
  • 切换到Listing选项页,设置Select Folder for Listing输出目录为Project文件夹下的Listing文件夹。   
  • 切换到C/C++选项页,本选项页用于对工程进行配置。这里,我们为了在测试程序中使用官方提供的标准库函数,在Define栏填入USE_STDPERIPH_DRIVER。在Includes一栏中填入..\CMSIS;..\Libraries\STM32F30x_StdPeriph_Driver\inc;..\User\inc,用于告诉编译器所用到头文件的位置。   
  • 切换到Debug选项页选择调试工具为ST-Link Debugger   
  • 同样,切换到Utilites选项页选择调试工具为ST-Link Debugger,选择调试接口为SW接口;点击旁边的Setting按钮,在弹出的窗口中添加Flash为STM32F3xx Flash;   
  • 点击确定和OK,完成工程配置。
下面,在User文件夹中新建一个main.c文件,拷贝一下内容(一个简单的流水灯程序,里面包含有主要的注释)。用USB数据线连接你的STM32F3探索者套件(USB ST-LINK接口),编译,仿真即可观察到8个板载LED等顺时针旋转(间隔是500ms)。
#include "stm32f30x.h"
#include "core_cm4.h"//包含此头文件之后才可以使用SysTick?
static __IO uint32_t TimingDelay;
void Delay(__IO uint32_t nTime);
int main(void)
{
  /*!< At this stage the microcontroller clock setting is already configured,
       this is done through SystemInit() function which is called from startup
       file (startup_stm32f30x.s) before to branch to application main.
       To reconfigure the default setting of SystemInit() function, refer to
       system_stm32f30x.c file
     */
 u8 i;
 RCC_ClocksTypeDef RCC_Clocks;
 GPIO_InitTypeDef GPIO_InitStructure;
  RCC_GetClocksFreq(&RCC_Clocks);
  SysTick_Config(RCC_Clocks.HCLK_Frequency / 10);
  RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOE, ENABLE); 
  /* STM32F3探索者套件中八个LED灯分别对应PE8~PE15*/
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11 | GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14 | GPIO_Pin_15;
//  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All;
 
 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
  GPIO_Init(GPIOE, &GPIO_InitStructure);

  while (1)
  {  
  for(i=0;i

工程模板.zip

下载

4.44 MB, 下载次数: 601, 下载积分: ST金币 -1

收藏 1 评论1 发布时间:2013-3-6 21:21

举报

1个回答
阿呆 回答时间:2013-3-7 14:01:31

RE:STM32F3探索者套件学习之路之第一个测试程序:永恒的流水灯

沙发!感谢分享!

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版