![](https://img-blog.csdnimg.cn/3a1b07c81baf47b8b01777b9af864441.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
蓝桥杯单片机学习
蓝桥杯历年省赛真题以及一些笔记
Sol-itude
24级电子信息研究生
展开
-
第十三届蓝桥杯单片机三等奖选手的复盘
出成绩已经是上个月的事情了,因为最近的事情太多,所以就没有时间写复盘,现在有时间了,可以写一个总结,也算是对自己接下来的发展给一个建议。拿了省三,感觉还是有点可惜的,我在做的时候我记得是错了4个选择,然后程序题就差了电位器和LED的闪烁有点问题,剩下的所有都是实现了,可能是我之前的bug太多了,扣分项就比较多,做的时候一下子写五个小时还是很累的,我大概是提前交卷了一个小时,因为实在做不下去了,就赶紧交卷走人了,总结出的经验大概有以下几个:做的时候不能着急把功能做出来,要先把整个板子的基础逻辑写好,先把原创 2022-05-11 18:38:52 · 1751 阅读 · 0 评论 -
蓝桥杯单片机第八届省赛——源码及设计思路
距离蓝桥杯省赛还有10天,要抓紧练习了,不知道是这一届简单还是自己厉害了的原因,用了一天就做出来了,还是叫大佬帮了一个小忙,时间也不少,还能再做几届。废话不多说,先看原题MAIN.C#include<reg51.h>#include<onewire.h>#include<intrins.h>#define uchar unsigned char#define uint unsigned int sfr AUXR = 0x8e; sfr T2H =原创 2022-03-30 08:46:42 · 1109 阅读 · 0 评论 -
蓝桥杯单片机第十届省赛——源码以及设计思路
过完年了,也不能老玩了,寒假一堆事,开学还得考试,真是都要emo了,先选一个开始做吧,十一届做完了的话,就去该做第十届了,废话不多说,先看原题原题目设计思路:这第一眼看上去有4页,可是把我吓了一跳,我以为这个挺难的,后来仔细读了读,按键的切换模式并不多,四个按键,就是用来切换模式的,功能比较简单就是led闪烁的数值范围需要看仔细,因为之前图方便,自己写了一个ledlight(x),随意控制某个灯,但是写的时候,忘了led灯是8位,不能叠加,所以这个函数只适合在需要一个led灯亮的时候原创 2022-02-11 12:07:05 · 878 阅读 · 0 评论 -
蓝桥杯单片机第十一届省赛模拟题——智能门锁的程序以及设计思路(带注释)
最近在练习蓝桥杯的单片机,因为之前沉迷游戏太久了,于是就想做出来一个涨涨面子,这一做就是一周。。。。。。。但总算做出来了,在这里复盘一下,顺便放出代码,大家也能看看,检查一下bug之类的。主要是分四个显示:第二部分是清楚输入,就是直接将所有数据置为0,这个好写。第三部分就是修改了,因为修改按键是S12,所以在按下S12的时候,直接跳进另一个修改循环,直到再次按下S12的时候再跳出循环。第四部分是正确显示,在正确显示的条件下,按下S12才能进入密码修改界面。基本思路就是这样,实际上做起来,也是遇到了各种各原创 2022-01-21 14:39:06 · 8607 阅读 · 24 评论 -
蓝桥杯单片机第十二届省赛第二批——源码及设计思路
距离比赛还有15天,昨天发愤图强,想做一个练练手,又想到了第十二届的第二批没有写,然后在同专业大佬的帮助下,在一天做完了一届,速度最快的一次了,废话不多说,先看原题设计思路第一眼看真是没什么特别难的感觉,就是一个长按键还没有想到解决方法,先从四个按键入手,S4按键切换三个模式,一开始我用的是递归,在四个while循环,直接把整个程序写死在一个函数里面了,也是迫不得已,当时也没想出什么好方法,S5是电压模式切换,这个就是两个模式切换,简单,S6是读取电压值,一看到保存数据,我直接写了个eeprom,原创 2022-03-25 10:52:07 · 2103 阅读 · 5 评论 -
蓝桥杯单片机第十二届第一批省赛题——源码及设计思路
今天距离比赛还有9天,想到了之前第十二届第一批做的乱七八糟,现在重新写一遍,果然是当初太笨了,现在再看感觉简单的不行,差不多两个小时就写完了,真的没什么特别难的地方,就是矩阵键盘那里需要注意。先看原题MAIN.C#include<reg51.h>#include<iic.h>#include<onewire.h>#define uchar unsigned char#define uint unsigned int sbit DQ = P1^4;原创 2022-03-31 15:10:57 · 1839 阅读 · 0 评论 -
蓝桥杯第十三届模拟题03——源代码
还有几小时比赛了,做个模拟练练手感先看原题#include "reg51.h"#include "absacc.h"#include "intrins.h"#define uchar unsigned char#define uint unsigned int sbit TX = P1^0;sbit RX = P1^1;//矩阵按键配置sbit R1=P3^0;//第一排初始化(如果跳线帽模式是BTN,则只有最左侧一列能用)sbit R2=P3^1;//第二排初始化sbit R原创 2022-04-08 23:00:22 · 535 阅读 · 0 评论 -
蓝桥杯单片机第十三届省赛模拟冲刺02——源码及设计思路
最近几天闲着没事干,刷动态的时候,看到了十三届的模拟题,然后就去搜了搜,题目来源@电子设计工坊,我是从博主@slow_walker看到的题目,原blog的链接:https://blog.csdn.net/boybs/article/details/123829667先看题目吧:刚看的时候,感觉还是很简单的,没有乱七八糟的显示模式切换,也就用到了eeprom和PCF8591,后来往下仔细看,发现了长按键,我心态直接崩了,虽然之前十二届第二批的时候,做过长按键,但是是在大佬的帮助下,才做出来的,现在要原创 2022-04-05 11:35:03 · 791 阅读 · 0 评论 -
蓝桥杯单片机第十三届模拟题01——源代码
还有一天比赛了,先看原题很简单,感觉就是前几届不常考的考点,注意那个L10操作MAIN.C#include<reg51.h>#include<ds1302.h>#include<onewire.h>#define uchar unsigned char#define uint unsigned intunsigned char TIME_buffer2[7];unsigned char TIME_buffer1[7];unsigned cha原创 2022-04-08 09:30:13 · 876 阅读 · 0 评论 -
蓝桥杯单片机练习——可调节时钟源代码
可调节时钟,通过外部中断0进行小时、分钟、秒的调节S5:进入调节模式S6:向左切换调节对象S5:向右切换调节对象S7:加1S4:减1#include<reg51.h>#include<intrins.h>sbit R1=P3^0;sbit R2=P3^1;sbit R3=P3^2;sbit R4=P3^3;unsigned char code num[]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90,0x原创 2022-01-26 10:33:39 · 973 阅读 · 0 评论 -
蓝桥杯单片机练习——可调节亮度的LED灯
因为之前看到了第九届的省赛,LED彩灯控住,看到了一个给LED灯分等级亮度,直接望而生畏,遂放弃。在和大佬沟通交流与过后,我发现实现LED的亮度控制一点也不难,先看代码,大部分人应该都能看懂#include <reg51.h>sbit k4=P3^3;sbit k5=P3^2;sbit k6=P3^1;sbit k7=P3^0;void stop(){ P2=(P2&0x1f)|0x80; P0=0xff; P2&=0x1f; P2=(P2&原创 2022-03-29 11:17:21 · 2067 阅读 · 0 评论 -
蓝桥杯单片机模式转换思路
因为在蓝桥杯的单片机省赛中经常需要用到模式转换。例:这样的模式转换,我的想法是。每按下一次按键,就给temp+1,在循环里判定temp%2是否等于1,但是这个方法只适用于两种模式,三种模式的我还没想好,先放源代码这里以S7为例,要放到主函数里面void Scan_S7(){ uchar temp=4; C4=1; if(R1==0) { delay_ms(50); if(R1==0) { temp++; while(R1==0); } } if(temp原创 2022-02-09 17:11:35 · 2027 阅读 · 5 评论 -
蓝桥杯单片机常用模块(自己整理的)
单片机笔记,自用原创 2022-01-06 13:25:49 · 3254 阅读 · 1 评论