| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> 蓝桥杯嵌入式第十三届省赛真题1 -> 正文阅读 |
|
[嵌入式]蓝桥杯嵌入式第十三届省赛真题1 |
目录1 题目2 分析总的来说是一道逻辑非常简单的题目,整体的难度都比较低。看到后马上就能想到思路的那种。只有一部分的小细节需要注意 源码在这各位可以随意下载,最好帮我点个star嘛 我的思路是
3 项目结构大致就是利用这些变量完全总体的逻辑
3.1 LCD显示部分两个不同的界面展示,其中PSD界面的展示我使用了一个init_flag来控制展示的字符。 因为我用的b1那些的是整形,所以不想做转换什么的了。 直接用一个标志位控制显示,输入密码的时候只要 init_flag=0,就会切换到正常的显示数字
3.2 按键控制部分这里要注意这个&&lcd_mode==1,因为题目告诉我们只有处于pwd界面的时候,key1,2,3才有效。 所以我们&&上一个lcd_mode(该标志位==1)的时候显示的是界面1。 意味着如果是界面2,这个if不会成立
3.3 密码部分Input_Password() 输入密码部分没什么好说的,判断flag进行对应的++以及bug处理就好了。 Commit_Password() 的提交部分,因为如果密码正确的话要切换界面。 那么切换完我们先进行一次清屏,并且按照题目要求的
3.4 LED部分刚刚我们提到了,界面SDA的时候是密码正确,要开灯,那么与之对应的,在界面PWD的时。自然就要关灯 我们可以利用显示界面的那个标志位 也就是 lcd_mode进行控制,将其关闭 这里的 led2_flag 其实就是为了完成密码错误三次以及以上时的间隔100ms闪烁 他的数值会在systick的中断函数里进行控制,3.7部分会讲到。别着急
3.5 数据处理部分这个其实就没什么好说的,进行一点点简单的密码对比,然后将新密码覆盖上去就可以了
3.6 PWM控制部分这里是因为,PWM波的这个TIM2_Init函数,不要反复一直在while(1)里执行,那样波形会有问题,所以我的想法就是,设置一次后,马上清零标志,这样下次就不会执行到了PWM_Mode也是在中断里赋值的,后续马上来。
3.7 Systick中断部分我就直接理由按照注释打到里面吧,不然不好描述
3.8 主函数While(1)
|
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 2:46:48- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |