STMCU小助手
发布时间:2022-5-15 15:29
|
一、实验说明 实验平台:STM32F103RCT6 (正点原子mini板) 实验内容:使用GPIO 点亮LED ,使用按键控制LED灯。' }1 J# U9 P' K" H4 R 使用IO口:led1 PD2,LED2 PA8 .(低电平点亮) 。按键 PC5 按下输入低电平。9 L1 s9 e* z/ J% B4 H3 p 3 T3 k, H, S) d( ]! K 二、实验操作' p5 [# }. _) r8 k4 F 1、基础配置: P+ ]6 c& H u. v, @ 1)sys中,选好调试方式,例如jtag-4pin。 6 y L; T$ S/ Q* B2 ~ 2)RCC时钟,晶振选择。* V; [4 J/ ?7 D% h4 R. w, l+ G 9 D1 s7 c. ?4 o; D3 ? 3)时钟树配置。 4)中断分组配置。4 f# T' n+ u9 F( K& N6 ?4 f9 X6 e * y( A b6 D# [ 以上步骤可以参考串口中断实验。 + L6 Q5 P2 ?3 W W- _! l% T 2、外设配置—IO口配置0 |/ l& P( W, J. u7 V 1)IO口基本配置。 : \2 O2 Y, X. L# J$ x
! H" |- |& w. r/ I& c2 r& o 如图配置PD2、PA8 为输出模式。. s$ ?$ k! y: f$ }0 t 2 h; n+ i0 l: X/ h
PC5 接的是按键所以配置为输入模式。4 y+ s4 {" ~( V# w* R " q9 b) C+ M2 f: s* E, K
$ q! Q' L, [8 u5 g" \% }7 a' J. C9 y
3 ]* E1 f5 n( L" I/ S' v# k- l 两个IO口接LED,配置为上图的参数。 ( I# f" l& v( A' x( _7 @. R
PC5配置为输入模式,上拉。(因为PC5一端接GND,一端接IO口) T+ R9 t6 p6 j 2)、生成代码 : a; L* ^: A; Y' L 注意工程配置,和.c/.h 的添加。(串口中断实验有说明) * Q f' i5 ?1 q3 O" }7 U' |+ U5 M$ Y 3)、编写代码 0 s6 [7 M, c' }' x. L3 I 在gpio.c中可以看到如下代码,就是GPIO的配置。 , o1 h& i+ y5 V- C3 W+ k
然后我们在主函数中编写控制代码。 6 M! k% L- t% R ^. @ 使用HAL_GPIO_WritePin(GPIOA, GPIO_PIN_8, GPIO_PIN_RESET); 这个函数就可以操作IO口,让IO口输出高电平和低电平。 8 J/ M" W' Z: k3 Y) o: V2 Y 该函数有三个参数, % k. g# x# n6 W6 n' E3 M4 ? 第一个是那组IO。 7 ]& U" i' G) Q& `0 d0 `% q 第二个是那个IO口。 第三个是输出电平状态,GPIO_PIN_RESET为低,GPIO_PIN_SET为高。) x9 v& N7 n/ M/ ]0 V* B3 }" @0 [, W) a * F& b5 D3 H, z* v
下一步读取按键,控制LED(PA8),按下灯亮,抬起灯灭。5 ?3 ?( |9 _- K6 j, b , X' R9 s+ y8 c: ]- @ 使用,HAL_GPIO_ReadPin(GPIOC,GPIO_PIN_5) 函数判断io口的输入状态。. u* X5 C% g1 a- {/ \ & I N; V$ l% N# X+ q 两个参数,一个是那组IO,另一个是那个IO口。2 x) R3 l& `) R U) n- m 5 G# }$ U3 C H: s0 W3 {0 |, k, r 该函数会返回读取到输入的电平状态。" N5 e% i* I( @ HAL_Delay(),是HAL 库提供的ms级延时函数。这里起消抖作用。
7 [# x9 f$ j* G4 w" G1 o3 b 3 L7 l$ z$ C; c( E; X# `3 g0 B |
【经验分享】STM32语音识别的智能蓝牙音箱(源程序+原理图+PCB+设计说明书+PPT)
想找个ST芯片
[GPIO] 使用新型抽象开始C++嵌入式编程,从GPIO开始
技术手册stm32f1xx中的一个小问题
【经验分享】STM32 HAL库移植FreeModbus详细步骤
【逢7发帖赢大礼】STM32开发之IC门禁卡UID读取方法!
实战经验 | Keil工程使用NEAI库的异常问题
经验分享 | FDCAN数据段波特率增加后发送失败的问题分析
STM32几种流行开发环境的优缺点
好用软件推荐-TouchGFX Designer
微信公众号
手机版