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

Nucleo32 F042K6上电测试

[复制链接]
电子星辰 发布时间:2018-6-17 21:13
本帖最后由 电子星辰 于 2018-6-17 21:19 编辑 0 x" t( S% i- `! ~- a  s

7 X/ @! v' `* {3 ?; A5 m+ K开发环境:WIN7_64位系统;Keil MDK5STM32CubeMX。(Java环境(Cube必须)/ v8 E& l& \4 M0 ]& Y, T
1、下载并安装好STM32CubeF0_V1.9.0,USB驱动:STSW_LINK009_V2.0.0
' A% D. m( [* V9 Q7 Z2、随便找一根MicroUSB的安卓手机线连接Nucleo板和电脑就可以了。
2 o$ ?; o2 n7 e: r6 B
' W- u, A/ B  D# @& }: V上电之后LED1先亮,随后LED2亮起,LED3闪烁。将D2和GND的跳线帽拔掉,LED3闪烁频率加快。
/ e  Z6 |# }' X/ o# t2 k+ y8 S; {3 [0 P: K: ?1 h) _: x' w
6 |" I; ]* S  w. b7 ~4 y7 {
找到官方的例程代码
, `2 L/ X& J' U, d: W0 [. n2 O...\Repository\STM32Cube_FW_F0_V1.9.0\Projects\STM32F042K6-Nucleo\Examples\GPIO\GPIO_IOToggle9 {" t) O7 ]* U1 Z/ E, m0 |! d) l
这个例程是展示,通过HAL API来配置GPIO的。我觉得例程说明比较像板载的原始代码。$ O- M5 j2 s% r# X0 ^9 ~( p
编译,下载。
: w9 G" ?; Q2 D8 S* f! S下载失败。。。+ j2 a% Y/ N! C, W: Q

' @( Z- p  \& {, s0 L% m0 D( K5 E' @# `( |/ p6 Y) o
打开设置里-Debug-STLink Debugger的Settings-Flash Download
5 O: ?/ l) c, H* o% _6 F" T$ B点Add,选32K的。" J7 ~$ w1 K; e: I3 L9 u

9 S2 E9 w" B  p, I
# u; l" M5 R9 I1 M, n5 Z好,这次可以了。) T& l8 z0 V4 m5 h1 c- j! ?" M: Q
这时,LED3闪烁频率加快,拔掉跳线帽也对闪烁没有影响。哦豁,下错了。
7 y4 r. f/ h; F& K: s% w1 t( Z附一下例程部分代码:# O3 P( X+ [( r% e
  1. int main(void)1 J! D+ a2 B1 W, U- Y
  2. {% u# |! l* j9 o" E. v) j1 |" J
  3.   /* This sample code shows how to use GPIO HAL API to toggle LED3 IO7 N8 s5 q* J$ Y+ G! F
  4.     in an infinite loop. */) i) z8 n6 t; s" u6 J# b( i

  5. 6 j2 c/ j* f2 o' [0 `/ B
  6.   /* STM32F0xx HAL library initialization:: s  e* k# Z/ B& y6 y, j9 g, w+ q
  7.        - Configure the Flash prefetch
    6 C% c( U3 g9 L) j- T
  8.        - Systick timer is configured by default as source of time base, but user ! Z4 ^# d( q) _, \% L+ W$ h6 h
  9.              can eventually implement his proper time base source (a general purpose
    + V9 T/ x  y7 f- O8 w! e
  10.              timer for example or other time source), keeping in mind that Time base 3 J- a$ g* N. u" V
  11.              duration should be kept 1ms since PPP_TIMEOUT_VALUEs are defined and . p2 t: Z6 S' g2 P+ {& q+ Q+ h
  12.              handled in milliseconds basis.7 I& V; W0 `, |3 u( o! ?
  13.        - Low Level Initialization
    + n" n4 h( m! \& ^
  14.      */) g! `" d; b0 J# ]( F( C
  15.   HAL_Init();/ x  g! T7 X) l

  16. ' o% y4 {& B) f& z
  17.   /* Configure the system clock to 48 MHz */. v8 U+ e" g  Y
  18.   SystemClock_Config();
      u. w7 Y4 l8 Q2 F' V
  19.   ) c8 {5 Y" q7 B( \
  20.   /* -1- Enable GPIO Clock (to be able to program the configuration registers) */
    , b5 y# j: s1 j* _1 J' G2 J
  21.   LED3_GPIO_CLK_ENABLE();
    6 \  D6 L+ w- d# D# a

  22. ) Q' E, {9 P8 S$ S: v' _
  23.   /* -2- Configure IO in output push-pull mode to drive external LEDs */& b/ J: W9 n, X" T: V
  24.   GPIO_InitStruct.Mode  = GPIO_MODE_OUTPUT_PP;% m+ n' d) b, h! `! A5 E
  25.   GPIO_InitStruct.Pull  = GPIO_PULLUP;! T- \7 Z/ r% o( x* |0 o, U/ ^
  26.   GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;' |) [: q' X6 U! h
  27. * f- O8 C7 Y! F5 c5 h; T, w2 Y
  28.   GPIO_InitStruct.Pin = LED3_PIN;2 L. j4 a  E9 h' o9 x) ^
  29.   HAL_GPIO_Init(LED3_GPIO_PORT, &GPIO_InitStruct);/ K6 U$ b, B- W; ^1 K, h; S# C

  30. & N* {' ]/ Y  ]9 p- y
  31.   /* -3- Toggle IO in an infinite loop */
    ( }, b# }2 i: j, M5 F" A' _" X9 Z
  32.   while (1)
    , v: O) B0 D! }
  33.   {
    * `$ X! ^: w0 `
  34.     HAL_GPIO_TogglePin(LED3_GPIO_PORT, LED3_PIN);1 u, L  Y" ~2 Q
  35.     /* Insert delay 100 ms */
    4 K; R% o- r  q( C/ b) B' \
  36.     HAL_Delay(100);
    4 q; w  ]7 C' B( X
  37.   }
    " d# S. Y, A" T( ?& T1 g
  38. }
复制代码
好吧,暂时就这样吧。
' J" ^1 s5 d; d8 U, S& T) @9 i$ u. v+ R% F0 K2 n

& x5 x) G8 `- p& |
6 n. F7 I, N# Y
板载初始展示.jpg
下载错误.PNG
Flash Download设置.PNG

GPIO_IOToggle.rar

下载

1.27 MB, 下载次数: 3

使用的官方例程

nucleo_32pins_sch.zip

下载

2.92 MB, 下载次数: 1

Nucleo042K6原理图

收藏 评论1 发布时间:2018-6-17 21:13

举报

1个回答
zero99 回答时间:2018-7-2 15:01:21
学习下

所属标签

相似分享

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版