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

【STM8-SO8】03-GPIO按键输入

[复制链接]
slotg 发布时间:2019-1-29 22:29
本帖最后由 slotg 于 2019-1-29 22:32 编辑
1 ?# r0 ?' S+ `
! K1 j6 h1 s1 L在 STM8-SO8-DISCO 板上的使用者 LED 对应 STM8S001J3 器件的安排是在 PA3 高电位输出点亮,而使用者按键是在 PC3 电路上有安排下拉电阻。而我在面包板上的接法 LED 也是在 PA3 高电位点亮,使用者按键也是在 PC3,不过我不接下拉电阻而是配置 PC3 有上拉电阻。
" h7 j8 Y2 W  y6 [, \
4 e/ r# w6 D1 U# ^; D+ P P03.JPG & u- N) o) p+ h) \3 V
* y5 N3 b* I1 ?  l2 L7 z# Z
在上一个 LAB 当中使用到了 SWIM 这根管脚,因此程序的开始做了一些必要的设定与延迟,不过目前所要实现的功能都不使用 pin8 这根管脚,所以程序中先移除这部份的代码。
" |* u3 [, z8 p
" [" X' r4 b) A% k( x8 x7 v(一)
6 |; K* q5 x+ C第一个程序先来实现一个最简单的 GPIO 输入输出功能,程序读取 PC3 按键状态并直接输出到 PA5 上的 LED。; Y1 c: S" x4 C1 ]) p

1 B  ^4 [/ Y8 Z8 h管脚定义:8 j# d7 d5 j0 y  }! p: j
  1. #define LED_GPIO_PORT  (GPIOA)  Q- h! x6 w7 b* Q. q
  2. #define LED_GPIO_PINS  (GPIO_PIN_3)  S' Q+ |  U( i
  3. $ N% ^; a, O+ `3 x
  4. #define KEY_GPIO_PORT  (GPIOC)
    ! W: t$ t4 S& ?* X
  5. #define KEY_GPIO_PINS  (GPIO_PIN_3)* X; _+ B& r% j6 p8 F# D
复制代码

% _7 \6 y! q' C+ `* Rmain 回圈:* K/ G% }% l& ]
  1. void main(void)
    7 T# K' p+ z) U6 ]
  2. {! I. A) r, |: n3 p
  3.   GPIO_Init(LED_GPIO_PORT, LED_GPIO_PINS, GPIO_MODE_OUT_PP_LOW_FAST);
    ! X: ~1 A3 y- k6 P( {) c( H+ i. f8 L4 |' Q
  4.   GPIO_Init(KEY_GPIO_PORT, KEY_GPIO_PINS, GPIO_MODE_IN_PU_NO_IT);" ~! S# M! K* N) v
  5.   & l* o6 l: j  V) ^
  6.   while (1)
    5 J* ?  |; u  A. @
  7.   {% x! B; d  f" d6 v5 R
  8.     if(GPIO_ReadInputPin(KEY_GPIO_PORT, KEY_GPIO_PINS))
    4 f' S' G- }2 }  b
  9.     {
    , e  P1 }" r/ C. @2 I( l. {0 r3 H% C
  10.       GPIO_WriteHigh(LED_GPIO_PORT, LED_GPIO_PINS);, K' x4 w' d9 H) D8 M* L$ E8 W
  11.     }
    ' b. T, A) v& _2 T$ A" r1 i
  12.     else
    % X. ]) X7 \% R, e! O8 I: C
  13.     {
    + [( @; }' ^' A; O1 D8 h. `1 c
  14.       GPIO_WriteLow(LED_GPIO_PORT, LED_GPIO_PINS);    * b: {# p$ C; i, `
  15.     }1 `+ D8 L  O' y
  16.   }
    6 ]- p8 [& F9 M3 k0 p9 c
  17. }4 ^* o' c$ m0 o' _* y: y# A; z
复制代码

" t4 E- V  g6 {按键放开时由于有上拉电阻所以输入状态为 1,直接输出给 LED 因此 LED 是亮起的状态,按键按下时 LED 熄灭。$ s2 v$ |; j% y, z' F3 P
% v, P6 A" v3 r, ^  G' z9 F1 \
源代码:; `% {+ K& ~' x' a9 K6 y
B03.rar (715.63 KB, 下载次数: 6)
收藏 1 评论0 发布时间:2019-1-29 22:29

举报

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