stm32g431使用CubeMX配置按键与使用

news/2024/9/23 4:29:23/

stm32g431使用CubeMX配置按键与使用

使用cubemx新建一个工程

在这里插入图片描述

配置八个LED的GPIO口为输出(GPIO_Output),四个按键的GPIO口为输入(GPIO_Input)

在这里插入图片描述

设置晶振

在这里插入图片描述

配置时钟

在这里插入图片描述

生成工程

在这里插入图片描述

在这里插入图片描述

工程生成之后在工程目录下新建这些文件夹和文件,这样方便后期管理代码

在这里插入图片描述

之后打开工程,将新建的文件添加到工程中
在这里插入图片描述

添加路径

在这里插入图片描述

注意LED和KEY都要添加,后多时候报错都是由于没有添加路径造成的

接下来打开两个.c文件包含头文件然后编译一下,他们的.h文件会自动添加到工程中

在这里插入图片描述

分别在两个.c文件中写各自的初始化函数和调用函数

按键

在这里插入图片描述

此按键函数借鉴正点原子,其中按键扫描函数中的参数mode的值可为0或1,0不支持连按,1支持连按。相应头文件中的宏定义和函数声明如下

在这里插入图片描述

LED

在这里插入图片描述

相应头文件

在这里插入图片描述

至此,初始化函数和按键扫描函数都写好了,接下来在主函数进行调用,编写程序

包含头文件

在这里插入图片描述
调用函数

在这里插入图片描述

使用按键点亮LED的程序

在这里插入图片描述

在此之前定义一个变量接受按键扫描函数的返回值

在这里插入图片描述

其中主函数中HAL_GPIO_TogglePin()函数的作用是反转GPIO口的电平每调用一次,电平翻转一次,此函数传入两个参数,GPIOx和GPIO_PIN_x。该函数直接在HAL中写好,我们只需调用它即可。还需注意的是,每次对GPIO口写入的时候,即使用HAL_GPIO_WritePin()函数时,我们都要使能锁存器的IO口,如下:

HAL_GPIO_WritePin(GPIOx,GPIO_PIN_x,GPIO_PIN_SET);
HAL_GPIO_WritePin(GPIOD, GPIO_PIN_2,GPIO_PIN_SET);
HAL_GPIO_WritePin(GPIOD, GPIO_PIN_2,GPIO_PIN_RESET)

GPIO_PIN_2,GPIO_PIN_SET);
HAL_GPIO_WritePin(GPIOD, GPIO_PIN_2,GPIO_PIN_RESET)

最后,编译程序,下载到板子上,成功点亮


http://www.ppmy.cn/news/307031.html

相关文章

【N32G457】 基于RT-Thread和N32G457的迷你键盘

此文为参加RT-Thread与国民技术联手推出N32G457 RT-Thread设计大赛期间作品。 由于疫情影响加上其他各种原因,本应在3月25日结束的比赛在今日终于完成了一个比较完整的作品,无论是否可以参赛,还是希望对大家有所帮助。 先放个图。 应用背景 …

【ADB】设置adb输入法

1、安装输入法apk adb -s <设备id> install keyboard.apk 2、检查是否安装成功 adb -s <设备id> shell ime set com.android.adbkeyboard/.AdbIME 当未安装adbkeyboard输入法时&#xff0c;会出现如下信息&#xff1a; Error: Unknown id: com.android.adbkeyb…

并行计算及GPU简介

并行计算&#xff08;Parallel Computing&#xff09;指同时使用多种计算资源解决计算问题的过程&#xff0c;它的基本思想是将待求解问题分解成多个子问题&#xff0c;在相同的时间用不同的处理器计算各个子问题&#xff0c;从而有效地节约计算的时间。早期的并行计算只能由专…

什么是GPU计算?阿里云国际版有没有GPU计算?-Unirech

GPU计算是指使用GPU&#xff08;图形处理单元&#xff09;作为协处理器来加速CPU&#xff0c;以加速科学、分析、工程、消费者和企业应用程序的运行。GPU加速器由NVIDIA于2007年首次推出&#xff0c;现在已经支持了世界各地的政府实验室、大学、公司和中小企业的节能数据中心。…

在数据科学领域,为什么GPU计算速度比CPU快许多的一个最简单解释

为了回答这个问题&#xff0c;我们需要知道几个知识&#xff1a; 1、一个CPU通常只有 几个核 2、一个GPU通常有 几千个核 (为了容易理解&#xff0c;暂且可以把CPU的核和GPU的核看成是同一个东西) 3、通常&#xff0c;CPU的核 性能比GPU的核 性能要强得多 4、标题说到是在数…

Pytorch入门(5)—— 使用 GPU 进行计算

参考&#xff1a;动手学深度学习注意&#xff1a;由于本文是jupyter文档转换来的&#xff0c;代码不一定可以直接运行&#xff0c;有些注释是jupyter给出的交互结果&#xff0c;而非运行结果!! 文章目录 1. 计算设备2. Tensor 的 GPU 计算3. Module 的 GPU 计算 1. 计算设备 打…

腾讯云GPU云服务器产品概述和产品优势,GPU计算型应用场景

本文分享 腾讯云GPU云服务器产品概述和产品优势&#xff0c;GPU计算型应用场景 更多更多参阅腾讯云GPU云服务器产品概述和产品优势&#xff0c;GPU计算型应用场景文档 腾讯云GPU云服务器产品概述 GPU 云服务器&#xff08;GPU Cloud Computing&#xff09;是基于 GPU 的快速…

matlab gpu cpu 快,(Matlab)GPU计算简介,及其与CPU计算性能的比较

1、GPU与CPU结构上的对比 原文: Multicore machines and hyper-threading technology have enabled scientists, engineers, and financial analysts to speed up computationally intensive applications in a variety of disciplines. Today, another type of hardware prom…