STMCU小助手
发布时间:2022-9-20 20:48
|
第 1 章 Cortex-M4 按键扫描 实验目的8 g$ c9 G7 v# z( B& s% x 熟悉STM32CubeIDE工具软件的使用。 掌握STM32CubeIDE软件的基本设计流程和设计步骤,能够使用工具进行设计、编程、仿真调试。/ a0 }* l, {' F5 i0 O9 c9 w 学习GPIO口的使用方法,掌握如何利用STM32MP157A芯片的I/O口读取按键状态。$ X7 P0 m; ~! y+ i 实验环境# C& {' F. a7 _! `( ~# R FS_MP1A开发平台4 f+ m+ e; P4 q( P ST-Link仿真器. y) V+ ~6 S' K0 e I STM32CubeIDE开发软件 PC机 XP、Window7/10 (32/64bit)% ^% }: A& c5 I, a+ X 3 L! \- h) V+ t! l 实验原理 本实验主要通过调用函数HAL_GPIO_ReadPin读取开发板上按键K2的IO口状态,控制LED灯的点亮和关闭状态。. l! C' f4 ]0 K2 x / u: O6 `2 E- M2 L, Z( ]& i 该实验需要使用到开发板上的LED灯,按键,相关硬件电路如下: % `& b1 w2 c3 V
实验步骤" r+ z/ ~! |9 ^4 z5 G7 E, d" U& z 打开STM32CubeIDE->File->New->STM32 Project ) s/ V* `" M0 G& B) c ~
可以在左侧搜索框内输入芯片型号STM32MP157A进行搜索,选择对应芯片,点击Next.
6 N `* n# t$ Q5 O4 H; X 填写工程名,点击Finsh3 Q. C$ ~# I1 {. G8 t \, |, b8 r$ N , G$ R U, i* \8 i- g$ v: h' Y3 D4 a
点击Yes打开配置页面7 E$ S2 Z8 z4 R3 y# L
搜索框内搜索K2对应GPIO引脚PA0,左键点击设置为GPIO_Input。
; }4 X" q P0 C" d 在Code Generator处选择为每个外设生成单独的C和H文件,这样设置方便阅读代码。
完成以上设置后,Ctrl+S保存,会提示是否需要生成代码,选择Yes即可自动生成代码。系统会自动生成System Clock代码。 - s! Q6 ]+ F+ p
, a A! ]- j( s& U( X 可以在左侧工程文件夹找到KEY_CM4子工程,打开main.c,添加GPIO初始化函数,初始化LED灯引脚PZ5为输出模式,初始化K2引脚PA0为输入模式。* s1 v7 }: V/ Q/ y
在main.c中调用GPIO初始化函数,在while循环中添加GPIO读函数,判断K2引脚高低电平,改变LED灯状态。
3 I# ^8 g' D2 K% v9 k0 ]' M+ ~% T: y 上述为新建工程配置过程,可参考《Cortex-M4开发篇1:STM32MP1微控制器之开发环境》章节进行导入已有工程,工程存放路径【华清远见-FS_MP1A开发资料\02-程序源码\ARM体系结构与接口技术\Cortex-M4部分\2_KEY】。5 p! t; j2 D, S: c' K" d1 A ————————————————+ [$ P2 d8 U8 x" ~ 版权声明:左月先生 |
STM32MP157双A核Linux + 自研RTOS双系统镜像免费下载
扩展STM32微处理器,实现高性价比、低功耗和灵活性能
STM32MP1 自举程序编程:USB DFU/USART 协议全解析
兔哥心中的ST中文论坛
我心中的ST中文论坛
STM32 开发者指南:ST.com 全新 MCU 产品阵容视觉布局深度解析
深度拆解 STM32MP1 Boot 链路
STM32串口自动识别波特率的原理
STM32MP135 MP157 MP257 CoreMark移植&&跑分对比&&多核心负载不均衡问题排查与解决
STM32--STM32 微控制器详解
微信公众号
手机版