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

【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立步骤详解及LDE闪烁实验

[复制链接]
巅峰残狼 发布时间:2014-8-23 20:18
  图片不知道为什么不显示,我也不知道怎么弄,所以我把原稿上传了上来,希望能帮助需要的朋友       
' T# a$ G$ `, u$ {% T) F- q
 

- x+ u6 o. c6 o1 N 
, Q5 C( O/ v- R- |. ^9 ?  n9 ^ 
0 B' i! e/ ]9 p  p' m' _8 o( h      从昨天开始收到板子,心里就异常兴奋,但是是在公司也不敢打开看一眼,最终还是忍到了下班。下班之后就迫不及待的打开板子原理图粗略的看一下,看有没有需要修改的地方,趁着公司有工具稍稍加工之后就可以在周末好好的玩玩了。对照着板子我自己加上了一个外部晶振(个人习惯喜欢用外部晶振)和两个电阻,其实这俩电阻只是起连接作用,没办法,晶振两引脚与MCU的引脚是用0欧电阻连接的,如果想用外部晶振,这个必须焊接。之后草草收拾一下快速飞奔回家,简单吃完饭之后就迫不及待的按照板子外壳上的提示操作了起来。期间也在咱们社区上搜索了一些资料,总算顺利的上手了。当然这都是基于mbed编译器的。对我来说这种编译方式确实很新鲜,以前开发的时候都是基于keil平台,从234到现在的keil5,一直很顺手。这次突然用这种方式当然感觉很新颖。抱着好奇的心开始了一晚上的学习。经过一晚上的熟练之后,感觉这种方式在开发更大程序的时候不是很方便,当然可能是我能力的问题,并没有接触到在线编译器的精髓。最后索性不在纠结于这个问题,之后开始想用keil5开发。1 R) W7 E8 y5 K& i
       第二天,也就是今天,参照一起开发103系列CPU的经验,开始了nucleo板工程的建立。虽然302103系列建立工程大同小异,但是总是有一些区别。还是不可避免走了一些弯路,不过感谢社区的朋友给予了帮助,这次顺利的工程建立成功,同时完成了第一个小实验,LED灯的闪烁实验,这里特别感谢:合肥晓宇 深圳一颗苹果 两位朋友的帮助。现在开始写下我建立工程的详细步骤,以帮助后来初学者(我也是初学者,哈哈)
- }% t6 W3 L2 B( C% @3 r  D/ Q 9 [) a# h- g$ z
1.       准备工作1:安装keil5开发平台,可去咱们群(330177207)里下载,由我师兄上传,特别感谢!1 i& g# Y: L6 l6 y5 k
2.       准备工作2:上步安装的软件并不支持nucleo开发板的开发,需要安装补丁方可,这里我走了弯路,在 合肥晓宇 的提醒下才知道还有补丁的存在。补丁就在你所下载的固件里:固件包下载地址:https://www.stmcu.org.cn/download/index.php?act=ziliao&id=149#786
0 O, D5 `% s2 |) D2 }解压固件包:  o; ]8 ^6 h+ j7 y. i
STM32_Nucleo_FW_V1.2.1----àUtilities---àThird_Party--àMDK-ARM_STM32F302R8_Patch即可找到,安装即可,不过安装位置需要跟你安装keil5的位置一致。2 l. r& c( y4 a' _
3.       工程建立! y) b9 ~1 B! Y% N. z" P
1.  新建工程目录文件夹,名称自己定,这里我定为:LED 闪烁0 e: X: x7 V7 w- {
2.  在新建目录文件夹下新建3个子文件夹,分别命名为:LibrariesProjectUser
* C+ _/ T+ J1 r, l. x3.  Project文件夹下再建立3个子文件夹,分别命名为:OBJLISTPRO
8 M% Y  t3 Q" B9 O4.  User文件夹下新建2个子文件夹,分别命名为:INCSRC0 v7 `6 q$ ?' z( {8 z
5.  将刚才下载的固件库目录下:STM32_Nucleo_FW_V1.2.1—>LibrariesàCMSISSTM32F30x_StdPeriph_Driver全部复制到刚才所建工程目录的Libraries
! }* O5 Y. U1 B- H' \+ K6.  将固件库目录下:STM32_Nucleo_FW_V1.2.1—> Projects—> NUCLEO-F302R8à IO_Toggleà system_stm32f30x.c文件复制所建工程下的User文件夹下的SRC文件夹下,同时新建一个main.c文件,什么都不写
5 S3 Q* f$ h. }4 u/ ~, K  g7.  将固件库目录下:STM32_Nucleo_FW_V1.2.1—> Projects—> NUCLEO-F302R8à IO_Toggleà stm32f30x_conf.h文件复制到所建工程目录下的User文件夹下的INC文件夹下# E+ @! s0 o/ E' u& {$ D
8.  打开keil5软件,一般安装之后桌面会有快捷方式。点击菜单栏的Project—>New uVision Project,将工程保存在所建目录下的Project文件夹下的PRO文件夹下,工程名命名为LED闪烁(根据自己定,可不与所建工程目录名相同)5 O9 G: e# a) A4 {0 G
9.  当点击保存后弹出选择CPU类型菜单栏
1 `" P9 a: b' a* q7 o( }- W! u
https://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image001.jpg

/ A( O/ F2 U/ h
点击“OK”根据需要选择CPU类型
2 {4 d+ i! ?. u$ T  I) h
https://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image002.jpg

5 c( |9 d& Z3 _  g10.选择https://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image003.jpg! Y% W) q  c0 U) S1 T
品字按钮,或者点击工程栏Project下的Target 1,右键选择“Manage Project Items”进入文件树添加菜单栏,最终添加目录如下:
3 P1 U8 a) o3 R; Z* J2 Q
https://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image005.jpg

# ~1 D4 y$ @5 g1 r, D! X0 @11.接下来将.c文件一一添加到所对应的组中。选中User,点击右下角的Add Files按钮,将工程目录下的User文件夹下的SRC下的3个.c文件加入到User分组中,如下所示:
6 a0 x7 P: Z& `& U( B% n5 |, B
https://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image006.jpg
* }4 Q- C7 F( \3 U4 N
 

/ W" v4 Q3 H. \" N) M: m3 z3 Z, B
 

+ b/ w$ g6 @7 }7 J
选中STM32_Lib,将工程目录下的Libraries下的STM32F30x_StdPeriph_Driver文件夹下的src文件夹下的本次试验能够用到的.c文件加入到STM32_Lib组中,如下图所示:

+ ~9 E4 K, n1 ?" Y: m* _" @
https://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image007.jpg

1 O. l( K" l# Q- A+ n  R
选中CMSIS,将工程目录下的Libraries下的CMSIS下的Device下的ST下的STM32F30x下的Source下的Templates下的arm下的startup_stm32f302x8.s文件加入到CMSIS分组中,这里可能显示不出来,此时需要你点击文件类型为All Files才可显示(默认是.c类型)。

% V$ b9 P7 h& G
 

5 a* L4 |' s2 h8 f$ C
12.到此文件都已添加完毕,点击OK退出添加,此时在工程栏Project下可看到如下文件:

; z# F+ @* t6 V& |
https://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image008.jpg

/ ]' E; l' I) M# D
 
; Y& {3 e* ~& `. U
13.点击保存所建工程后,退出keil5开发平台,将建立在桌面上的工程目录只读属性去掉。再次进入keil工程,此时从工程目录下的project目录下的PRO目录下进入
7 L5 }7 C2 `) S* t' s
 

- t1 n8 `( A$ P9 t/ f14.点击https://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image009.jpg魔术棒按钮,或者点击工程栏Project下的LED 闪烁(刚才的Target 1),右键选择“Options for Target”进入配置界面
9 H3 t/ R+ g% z& i" ^" xTarget选项下:晶振选择8MHz,其他默认
" \4 p' o6 o/ j7 f. h& TOutput选项下:点击:Select Folder For Objects,将其指向工程目录下的project文件夹下的OBJ文件夹下,同时在 Create HEX File选项栏前打勾
1 T8 u! |( v; x+ X' `1 ^- ^7 VListing选项下:点击:Select Folder For Listing,将其指向工程目录下的project文件夹下的LIST文件夹下$ c5 l( O  z0 \( a% d* d4 g
C/C++选项下:) K" r5 {+ `, r- O/ t9 w. l1 F' W
https://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image011.jpg

( y( Z  ?; C) CDefine中复制进:USE_STDPERIPH_DRIVER,在下面的Include Paths栏中,将头文件添加进工程中,点击此按钮即可添加9 u% C+ E8 _4 ^# Y% B: y* t3 a( Z
https://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image012.jpg

& i7 F9 ?6 N8 y1 F" m. l添加结果如下图所示:
0 d: `, i4 f6 P( ~3 I% S
https://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image013.jpg
/ g+ X& x. x3 @' R0 j9 N
 

0 H3 m" z; U! e1 B9 O5 T* f 
5 c/ b3 q. U8 s0 g+ ?) }* vDebug选项下:选择右侧的Use按钮,在下拉列表中选择:ST-Link Debugger,然后点击右侧的Setting按钮,选择SW模式,如下所示:
0 R; n& a' E& j$ Z! n% s
https://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image014.jpg
% E; {" o! `' ~
 
  R4 \( _3 M; n: X
Utilities选项下:点击Setting按钮
! }6 j% e* H/ M1 n! o& w1 [
https://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image015.jpg
8 X4 X, P& z5 Y) X: T
点击Add,选择64Kflash,如图所示:

' ]4 w& S! y+ _. D* M: c" G+ @
https://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image016.jpg
  w6 J) V! ]% D3 E2 P
点击Add,点击确定,点击OK,至此魔术棒栏目下配置完成。保存。

$ F$ P0 Z; {, p% R3 K6 x+ @
 
/ j, t* c5 B  \& a3 Y
15.双击打开project工程,User下的main.c文件,在main.c贴如如下代码:
7 ~& _8 R/ W5 v! [/ P
#include "STM32F30x.h" 

& o* o0 w4 P! e6 u$ k) Z& y3 L% ^
unsigned int i=0;
9 j- O; {; d: n5 L, ^
void GPIO_Config(void);

' p0 ^, O: r; a
int main(void)
% y  M. X+ ]7 Z6 @6 Y3 a
{

4 u9 Q; U: D; g8 f8 d4 R1 Q
        GPIO_Config();

, z# ^1 a/ f- ^* x1 q; ^
  while (1)
* \- g" K& \5 Q
    {

7 I: \0 P' K& e" f9 c
       GPIO_SetBits(GPIOB,GPIO_Pin_13);

" j" L# H- p' }7 ]2 T
       for(i=0;ihttps://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image017.jpg
0 u! q) ^& r5 ^) u% ]/ v4 _5 @
 
" s% x8 }8 x4 E" i, K! `
编译结果如下,0错误,0警告
+ U- K& j" y; c3 Q7 P, I' ^3 a
https://www.stmcu.org.cn/file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image018.jpg
6 A+ k1 b/ |  G3 I! T
将程序下载到目标板中,即可看到nucleo板的LD2灯不间断的闪烁,至此工程建立完毕,以后做其他外设程序时直接在此工程下添加文件即可!
% q7 _9 f/ ?6 q( @* Q4 j

LED闪烁.rar

下载

4.72 MB, 下载次数: 262

【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立(详解)及LDE闪烁实验.doc

下载

922.5 KB, 下载次数: 248

收藏 评论29 发布时间:2014-8-23 20:18

举报

29个回答
快乐的石头 回答时间:2014-10-28 23:21:04
除了给好评,还能说什么?牛X
wyxy163@126.com 回答时间:2014-10-29 11:17:07
提示: 作者被禁止或删除 内容自动屏蔽
天天晓宇 回答时间:2014-8-23 20:38:16

RE:【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立步骤详解及LDE闪烁实验

共同学习,希望继续出评测帖
abo0811 回答时间:2014-8-23 21:16:16

RE:【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立步骤详解及LDE闪烁实验

我是小白,请问楼主怎么将程序下载进去啊?
巅峰残狼 回答时间:2014-8-23 21:28:57

回复:【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立步骤详解及LDE闪烁实验

回复第 3 楼 于2014-08-23 21:16:16发表:
0 a& L! ~/ y3 j  U* O: K$ I( n. p' G我是小白,请问楼主怎么将程序下载进去啊?% C, o1 j7 z3 |4 I8 g7 j7 D6 q
两种方式:1.点击downloda按钮  2.dubug按钮进入调试0 `: P* e7 r9 c* Y' @
 
霹雳之火 回答时间:2014-8-24 07:54:54

RE:【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立步骤详解及LDE闪烁实验

适合初学者的好教程
) G- s+ g: X" D3 I: p$ f5 r2 F% \期待后续更精彩
霹雳之火 回答时间:2014-8-24 08:16:38

RE:【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立步骤详解及LDE闪烁实验

图片要从本地上传
巅峰残狼 回答时间:2014-8-25 11:17:21

回复:【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立步骤详解及LDE闪烁实验

回复第 6 楼 于2014-08-24 08:16:38发表:/ ?, }9 E, L; |; X' G/ k$ V4 @
图片要从本地上传! x4 s0 ]; e1 r' l# V' U/ u) t
 : R/ ], j% ~; Y8 K, ^2 A0 c4 Q! ~
谢谢,已经按照你说的成功了,呵呵
7 X% Y6 |; ^7 U& ?' O( k& y( g 
三生石-350221 回答时间:2014-8-25 13:47:54

回复:【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立步骤详解及LDE闪烁实验

 
qzwx741 回答时间:2014-8-25 20:46:43

RE:【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立步骤详解及LDE闪烁实验

刚拿到板子,学习了,谢谢
wudianjun2001 回答时间:2014-8-25 21:16:33

RE:【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立步骤详解及LDE闪烁实验

图片看不到啊。。。
Robot@HCS 回答时间:2014-8-25 21:58:32

RE:【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立步骤详解及LDE闪烁实验

挺详细的  就是图片没显示!
巅峰残狼 回答时间:2014-8-25 22:30:51

回复:【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立步骤详解及LDE闪烁实验

回复第 11 楼 于2014-08-25 21:58:32发表:
, o+ P" p. \) `挺详细的  就是图片没显示!
0 N  S2 X) r9 T$ o8 w5 }; B请下载附件,原稿,里面有图片$ a! e# [9 O" L; h# `
 
巅峰残狼 回答时间:2014-8-25 22:31:14

回复:【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立步骤详解及LDE闪烁实验

回复第 10 楼 于2014-08-25 21:16:33发表:
; H3 G" m" \  L/ G图片看不到啊。。。
3 T, }. A* t9 \请下载附件,原稿,里面有图片) T( d( o! V: y8 `" L- e; y2 ~
 
yceast 回答时间:2014-8-26 15:34:45

RE:【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立步骤详解及LDE闪烁实验

学习
" L( u1 n$ O  vNucleo板开发
outstanding1573 回答时间:2014-9-5 08:03:37

RE:【Nucleo板开发日志】+Nucleo(STM32302R8)基于keil5开发平台的工程建立步骤详解及LDE闪烁实验

你是直接复制的吧 图片要一个个的传哦
12下一页

所属标签

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