蓝桥杯嵌入式速通(1)

embedded/2025/1/11 17:37:47/

1.工程准备

创建一文件夹存放自己的代码,并在mdk中include上文件夹地址

把所有自身代码的头文件都放在headfile头文件中,之后只需要在新的文件中引用headfile即可

headfile中先提前可加入

#include "stdio.h"
#include "string.h"
#include "stdint.h"

这三个c语言头文件的引用

2.led显示

u

LED是使用锁存器控制,使用了PC8-PC15去控制led的亮灭,PD2控制锁存器的启用和所存,当PD2为低电平时,锁存器所存当前状态,当PD2为高电平时,锁存器可以修改状态。

3.led闪烁

设置定时为1s

在中断中进行灯的操作

特别地:在使用中断的时候需要在主函数中对中断先使能    HAL_TIM_Base_Start_IT(&htim2);

4.lcd屏幕使用

将赛方提供的lcd驱动中的三个文件放进自己的code文件中

由于lcd和led的引脚复用问题,所以在使用lcd函数操作的时候需要防止led的引脚被操作

需要提前将lcd函数加入两行,如上,以做到在函数执行前后的GPIOC的状态不被改变

并且在使用lcd初始化部分将锁存器使能引脚打开,将led状态锁存

lcd的初始化部分至少初始化四个,lcd屏幕背景,文字背景,和文字颜色

lcd显示函数则使用sprintf将文字存入char变量中再转成int型使用lcd显示行字符的函数

5.按键

按键是        PB1.PB0.PA0.PB2

需要将按键设置为上拉输入,当按键没按下时,引脚是高电平,当按键按下时,引脚为低电平

判断按键是否按下

按键长按,可以通过定时器计时去实现

6.PWM波输出

1)占空比为CCR/ARR+1

2)PWM波输出需要使能        HAL_TIM_PWM_Start(&htimx,timchannelx)

7.TIM输入捕获

输入捕获就是两次上升(下降)沿,HAL_TIM_ReadCapturedValue(htim,TIM_CHANNEL_1)会对CNT进行一个保存

 8.ADC测量

配置对应引脚的adc状态

后可以用采集到的adc_value/4096*3.3得到电压,因为adc的采集到的值是0-4096

9.串口通信

对串口一选择异步通信

可以利用中断回调函数对接受到字符的时候做一些处理

  特别地要在主函数中使用  HAL_UART_Receive_IT(&huart1, &rx_data, 1);

并且在中断回调结束语句中再使用一次,可以保证每次在接受完毕后再次开启接受中断,并且接受中断只能接受一个字节,所以需要接受到的字节存起来

**关于特殊字符的接受,可以使用sscanf函数将数据分开存储


http://www.ppmy.cn/embedded/153074.html

相关文章

在离线环境中安装 `.rpm` 包的步骤

在一些环境中,可能无法直接通过网络安装软件包。特别是在没有互联网连接的情况下,我们仍然可以手动下载 .rpm 安装包并进行离线安装。本文将介绍如何在离线环境中安装多个 .rpm 包,确保软件的顺利安装和依赖关系的处理。 1. 将 .rpm 文件复制…

sql 函数

# 四则运算 - * / # 函数 distinct 、count、sum、max、min、avg、sum、round select concat(device_id 是,device_id ) device_id from device_id_apply_factor where device_id D6A42CE6A0; select concat_ws(|||,device_id ,factor_a ,module_type) from 、device_id_app…

SSL 证书格式和证书文件扩展名:完整指南

SSL 证书是什么以及它如何工作相当容易理解。但当涉及到在服务器上安装它时,有时,你可能觉得这是在处理火箭科学。 由于有如此多的SSL 证书格式与特定服务器要求相关,您更有可能感到困惑和沮丧,而不是从一开始就正确配置证书。但…

热门力反馈手套对比,机器人遥操作完美解决方案

随着机器人技术的快速发展,遥操作机器人作为代替人类在危险环境中完成高危任务或在医疗领域完成远程精密手术的完美解决方案,正在快速进步,并有望成为拥有巨大潜力的机器人行业的全新发展方向。 本文将就推动机器人遥操作领域发展的力反馈手…

python初体验: 处理excel数据

一. data.xlsx 二.python代码 import pandas as pd# 读取 Excel 文件 df pd.read_excel(./data.xlsx, sheet_nameSheet1, usecols[Name, Age, City])# 查看数据 print(df.head())# 筛选数据 df_filtered df[df[Age] > 30]# 添加新列 df_filtered[Salary] df_filtered[Ag…

AI刷题-异或编码、拼凑单词 chi

目录 一、异或编码 问题描述 测试样例 解题思路: 问题理解 解题思路 数据结构选择 算法步骤 最终代码: 运行结果: 二、拼凑单词 chi 问题描述 测试样例 解题思路: 问题理解 数据结构选择 算法步骤 最终代码&a…

如何用Python编程实现自动整理XML发票文件

传统手工整理发票耗时费力且易出错,而 XML 格式发票因其结构化、标准化的特点,为实现发票的自动化整理与保存提供了可能。本文将详细探讨用python来编程实现对 XML 格式的发票进行自动整理。 一、XML 格式发票的特点 结构化数据:XML 格式发票…

如何在 deepin文件夹中搜索包含特定内容、关键字的 Word 文档

在 deepin 系统中,搜索包含特定内容或关键字的 Word 文档是一项常见需求。以下是一个详细的步骤指南,帮助你在文件夹中高效地完成这项任务。 一、安装依赖工具 要搜索 Word 文档,首先需要安装一些必要的工具。这些工具包括 catdoc、docx2tx…