蓝桥杯嵌入式第13届第一场——密码锁

news/2024/7/15 20:42:46 标签: 蓝桥杯, 职场和发展

做题步骤

1.LCD显示

按要求将背景色和字体色更改

切换界面变量,当密码正确时切换界面

键盘值和密码,当键盘值 = 密码则输入密码正确

当处于密码输入界面时LCD在密码输入界面显示以下内容

当密码输入正确时LCD进入数据显示模式显示以下内容

2.按键显示

按键变量定义

当按键按下时让键盘值+1

按下B4则提交键盘值,如果键盘值与预设密码值相等则切换到数据显示界面

按要求在上电时三个键盘值要显示字符@

定义三个键盘状态位变量

B2,B3同理

来到LCD_Proc,如果键盘值状态位为0则显示@字符,为1则显示数字,B2,B3同理

3.LED显示

这里定义了很多状态位注意区分

当密码输入正确时进入数据显示界面,LD1亮起,5秒后返回密码输入界面,LD1灭

当输错三次密码LD2间隔100ms闪烁,并在闪烁5秒后灭

4.PWM显示

5.串口修改密码

在int main()中打开串口接收

需要定义的变量

编写中断回调函数,接收固定七个字节

这个函数用于保护字节不被覆盖


http://www.niftyadmin.cn/n/5451688.html

相关文章

Git基础(24):分支回退

文章目录 前言放弃已修改的内容分支回退到指定commit 前言 将分支回退到之前的某个版本 开发中,可能开发某个功能不需要了,或者想要回退到之前历史的某个commit, 放弃后来修改的内容。 放弃已修改的内容 如果未提交,直接使用 …

C语言学习--字符串和整型的转换

目录 整型→字符串 方法1:利用‘0’将单个数字转字符 方法2:利用sprintf函数 方法3:利用itoa函数 字符串→整型 方法1:利用-‘0’直接转换 方法2:利用atoi函数 整型→字符串 整形数据变成字符串,最…

Android 15兼容性框架变更

在准备支持 Android 15 和以该平台为目标平台时,请将此列表与开发者选项和 ADB 命令结合使用,以测试和调试您的应用。 以下是您可以使用兼容性框架工具进行的操作: 在不实际更改应用的 targetSdkVersion 的情况下测试针对性的变更。您可以使…

rust中字符串String常用方法和注意事项

Rust 中通常说的字符串指的是&#xff1a;String 和 &str(字符串字面值、或者叫字符串切片)这两种类型。str是rust中基础字符串类型&#xff0c;String是标准库里面的类型。Rust 中的字符串本质上是&#xff1a;Byte的集合&#xff08;Vec<u8>&#xff09; 基础类型…

ajax、fetch、axios它们之间的差异与区别是什么?为什么我们的项目中建议使用axios?

ajax 的优缺点: 属js原生&#xff0c;基于XHR进行开发&#xff0c;XHR结构不清晰 针对 mvc 编程&#xff0c;由于近来vue和React的兴起&#xff0c;不符合mvvm前端开发流程 单纯使用ajax 封装&#xff0c;核心是使用 XMLHttpRequest 对象,使用较多并有先后顺序的话&#xff0c;…

ninja | ubuntu源码编译ninja

首先安装依赖 # 首先安装好anaconda&#xff0c;用conda管理好py环境 # 这里很大的不同就是不用make来编译源码 conda create -n conda_py python3.7.5# 安装apt依赖 apt update apt install git re2c 下载ninja包 git clone https://github.com/ninja-build/ninja.git 进行…

pinpa的使用

1、安装 yarn add pinia # or with npm npm install piniahttps://pinia.vuejs.org/zh/ 2.1如果你使用的是 Vue CLI&#xff0c;你可以试试这个 非官方插件。 创建一个 pinia 实例&#xff08;根存储&#xff09;并将其作为插件传递给应用程序&#xff1a; import { createAp…

【linux】linux防火墙相关操作命令

在Linux系统中&#xff0c;可以使用iptables或firewalld&#xff08;取决于系统使用的防火墙管理工具&#xff09;来开启/关闭特定的端口。以下是两种情况的示例命令&#xff1a; iptables防火墙服务 chkconfig --list | grep iptables #查看防火墙的服务 chkconfig iptables…