武汉,武汉
2024/5/4[18:28:18]此刻,我坐在回西安的高铁上。旁边的之已经睡着了,同车厢的杰也大概在睡觉。
耳机里是汪峰的《光明》。
昨晚同萌和贤道了别,今早又同威说了再见。网络确实是拉进了大家的距离。不管天南海北,敲敲手机就能把我的文字和语音发给朋友们,这总算是科技的进步。
在辛亥革命纪念馆纪念品商店看到了有在出售辛亥革命的纪念邮票。我觉得邮票好常见,但是细细想来,我居然没有寄过信。
我望着那些邮票出了神。
我唯一一次寄信,是给一个杂志社。
那封信里表达了我对其社的热爱,不过具体是什么杂志,我又忘记了。
与其说是寄信,其实到头来也没有寄出去。最后那封信被留在了某一本杂志里,被时间冲没,不知所踪。
后来,我也写过好多明信片给同学当做生日的贺卡。虽然内容都是信的格式,不过几乎都是当面赠予,没有寄信的仪式感。
我拿起那些邮票,细细端详,一共有七八种板式,我最中意的是一张辛亥革命主要人物的一版邮票。有十二位前辈,我在历史书上大都听过他们的名字。
我总觉得既然来了武汉,要带走点什么,也要留下点什么。
我好想买下它,可是几近一百元的价格和捉襟的生活费,又让我望而却步。
最终还是还是没有狠下心。 ...
放学
放学放学真的是我记忆里不可多得的快乐时光,不管是幼儿园、小学、初中还是高中,甚至是大学上完一天的课,也包括听完自己不会的知识点的网课,管我有没有听懂,反正就是很快乐。
这快乐就像吃完饭不用洗碗,睡觉不用起床,说话不计后果的快乐。尤其集中体现在收拾书包的那一刻。不管面前摆了几本书,一本两本三本都无所谓。统统塞进书包,站起身,右手提起书包的背带从自己右肩膀跨上去,顺势把书包荡到左肩,摸索着找到左边的背带。有时候啊,总是摸不到左边的背带,还要叫同桌帮我的忙。不然就是背带翻到书包外侧了,或者被压在了我的手触碰不到的地方……总之,此刻的我只背好书包就行,其他的事情交给我的腿来处理——走出教室。
不过小时候还要面临站队点名等待出校门背诵古诗等等一系列冗杂多余的形式主义行为才能走到家长有权接送的的地方。
幼儿园时候,因为我还是年纪太小,所以放学后的唯一任务就是找到妈妈爸爸或者爷爷奶奶。然后回家看电视。
二年级,老妈允许我自己从校门口走到第一个十字路口之后再回家。这样只为了初步锻炼我的自理能力。幸运的是,这里包含了学校北边所有的小卖部。极大的丰富了我的放学生活。
我在这些小卖部里买了我人生中第一本小人 ...
七.DS1302时钟模块
DS1302时钟模块原理图
我们可控的引脚为5,6,7,P13为复位,P23输入数据,P17为时钟引脚。其余口是已经配置好的。
功能实现
如果要写入s,秒的地址为10000000(0x80),读时末位为1。
如果要写入57,用bcd码写入,把57化为16进制:0x57.
所以是先选中,再写入。
小时位如果是12小时制的,通过第三位判断上午下午。
12小时:0x12.
数据地址
画圈的就是读取和写入数据所调用的地址。
当复位拉高时才能进行数据写入
数据由上升沿开始读取,每一位是在每一个上升沿才会读。
写入函数定义12345678910void write_ds1302(unsigned char temp){ unsigned char i; for(1=0;i<8;i++) SCK=0;//打开复位,开始读取 SDA=temp&0x01;//屏蔽高七位,保留最后一位为1 temp>>=1;//左移一下,此时,产生上升沿,读取第一位 SCK=1;}
第二次循环就是第二位为1,那就会读取第二位 ...
六.倒计时程序
倒计时程序
定义变量
12uint Timer_1000ms;uchar Timer_count = 30;//计时变量,此处为30
123456/*中断程序内*/if(++Timer_1000ms == 1000){ Timer_1000ms = 0; Timer_count--;//1s减一次}
信息处理函数:
12seg_buf[4] = Timer_count / 10 % 10;//取十位seg_buf[5] = Timer_count % 10;//取个位
数码管第四位第五位便会显示倒数计时30.
五.蓝桥杯大模板
蓝桥杯大模板工程文件夹的建立
首先建立文件夹,包含两个文件夹
接着new project,命名文件为LED,选择芯片
魔术棒勾选生成HEX文件魔术棒选择头文件路径Driver
底层文件的编写1.第一个底层:init(初始化)两个文件
init.c和init.h
.h文件引用自身的头文件
双击driver,把init.c引用进文件夹。并在c引用h自身,h文件引用单片机型号头文件
初始化函数(关闭继电器蜂鸣器)
12345678910#include <init.h>void system_init() { P0 = 0xff;//开锁存器 P2 = P2 & 0x1f | 0x80; P2 &= 0x1f;//用完即关 P0 = 0x00; P2 = P2 & 0x1f | 0xa0; P2 &= 0x1f; }
接着在.h里声明该函数:
第二个底层:LED.c123456789101112131415161718#include <LED.h> void LED_d ...
四.独立按键和矩阵键盘
独立按键和矩阵键盘原理图:
由原理图可以知道,独立按键和矩阵键盘有些线是接在一起的。
我们看到板子实物,会看到可更改的跳线帽。当2,3跳线帽接在一起时,启用的是独立按键。
独立按键接下来我们简化独立按键原理图:
从上到下依次是S7、S6、S5、S4,所有按键可以同时输入与输出(区别于stm32)。
输入读取按键按下为低电平,程序选择表达为:
123if(s7 == 0){ }
当按键没有按下时,为高电平。(此处涉及到单片机IO口的结构和电路分析基础,此处不做过多研究。PS:我也研究不明白。)
另外,单片机按键会出现抖动,这是由于单片机按键的机械原因,其按键具有弹性,断开与闭合时均会因为弹性作用,不会马上稳定的接通,最大抖动时常为(5-10ms)+(5-10ms)。
此外,单片机的输入高电平为5v,输出为0v,但输出的高低电平均为一个范围。
用示波器检测,我们即可发现其抖动的状态。
如果我们要消除抖动,在判断为按键按下时候加一个10ms的延时函数即可。
程序设计定义端口;
1234sbit S7 = P3^0;sbit S6 = P3^1;sbit S5 = P ...
三.共阳数码管
共阳数码管数码管就是由LED组成的。
每个数码管的代号如图所示,按abcd顺时针走一圈即可。我们让P0=0x00就能点亮所有数码管(per)。
如果我们要让数码管成为一个2,那么就是
dp
g
f
e
d
c
b
a
1
0
1
0
0
1
0
0
换算为十六进制就是(从右向左!!!!)
1P0=0xa4;
同理,0的话就是
dp
g
f
e
d
c
b
a
1
1
0
0
0
0
0
0
即:
1P0=0xc0;
不过听说比赛的时候赛点资源包里面是有数码管数字的十六进制的…..
接下来我们看原理图。
控制数码管,我们是由com公共端控制的,
abcd口由U7控制。端口连接情况如图所示,依然存在锁存器,依然存在或非门。
com连接情况也是显而易见。由U8控制。
不过需要注意的是,我们一共有8个数码管,每个阴极a和a,b和b都是接在一起的,如果我们需要显示0,那所有数码管都会只显示0。
因此,需要的线不是72个,而是16根线。具体如何操作我们后面再说。
静态数码管下面我们开始写代码:
1234567#include <reg52.h ...
二.继电器和蜂鸣器
蜂鸣器和继电器继电器原理图:
原理:通电导线产生磁场,把K1吸下来。
可以理解为单刀双掷开关。K1控制m1和m2。
只要让N RELAY低电平即可。
这个二极管的作用大概是当断电的时候,保护电路?
蜂鸣器
让蜂鸣器工作的话只要在N BUZZ接入低电平即可。
然后我们在原理图上找这两个口。
ULN2003是双极型线性集成电路。
内部原理就是一个非门。
输入高输出低,输入低输出高。如果用它来控制电机,那么只能实现单方向的控制。
左边还是一个锁存器。
于是通路就是:
N RELAY—-P04—-Y5C
Y5C和一个或非门连在一起,由Y5控制
Y5的尽头是一个译码器,我们之前说过了。
所以,最终我们让这三个口从下到上依次取值101,Y5最终就会输出一个低电平,Y5C就是高电平。
最后,我们让P00-P07取值为00001000,换算为十六进制为10
即:
1P0 = 0x10;
同理,我们让继电器打开的话,P0-P7取值为01000000,即:
1P0 = 0x40;
都打开的话就是
1P0=0x50;
都关闭的话就是
1P0=0x00;
最后注意LED和继电器的初始化。
一.LED的点亮
蓝桥杯
一.LED以及锁存器的跟随模式,io模式vcc或非门,keil新建项目文件以及第一个程序
led有八个灯珠,右边vcc为正极供电,因此,只需要控制左边负极为低电平,即可控制led。
但是在led左边有一个M74hc573锁存器。
简单来说,就是由输入引脚D1-D8,来控制输出引脚Q1-Q8,OE和LE的取值会影响输入数据控制输出数据。
当OE为L(低电平0v)时,LE为高电平H,为跟随模式,即输出数据=输入数据。
OE为L时,LE为低电平L时,为锁存模式,即输出数据=上一个时刻的输入数据。
我们这个锁存器的OE已经接了地,也就是说已经接了低电平,那我们只需要控制LE为高电平即可。
但是,这里LE接了一个”Y4C”,我们使用全局搜素,在原理图下面找到了另一个Y4C.
这是一个或非门,蓝桥杯比赛中,WR和GND是接在一起的,也就是说,WR固定为0,如果Y4(12)为0,Y4C则输出高电平,反之则低电平。
74HC02的Y4口又和U24接在一起,这个东西叫做74HC138译码器,
左边从上到下,如果为000,换为二进制则Y0口输出为低电平,Y1-Y7为高电平。
001,Y1口0其余 ...
你好,佳佳
昨天晚上,我做了一个梦。睡眠不好的时候我才会做梦。
可是,昨天的我回到家,明明那么累,却还是做了一个梦。
说它是梦都会显得它很长了。
我梦到,我抢到佳佳子的签售票了。
梦的全部,就只是我拿出手机,看见在“我的购票”那一栏,出现了我买到的佳佳的签售票。
就只是这么简单的一个动作,我还要做个梦。听起来很好笑对吧。我也觉得好笑。
小时候也会做这样的梦:想买一个很想要的玩具,可恶的爸妈就是不买。我哭哭啼啼地离开玩具店,回家躺在床上就会梦到我拥有了这个玩具。
在梦里,我把硬纸的背板从吸塑上扯下,玩具从吸塑里掉到床上,我拿着它和老伙计汇合,看看你的胳膊能不能给他装上,你的武器能不能借我用用。
我可从不管这些梦里的玩具是什么来路,也许是爸爸进城里给我的惊喜,亦或是爷爷许久未来看他孙子时候路上买的最贵的玩具。
总之,我喜欢梦里拥有玩具的感觉。这样的梦经历了几次之后,我就明白这是梦了。
后来,我还是会在梦里拥有我想要的玩具,即便我知道那是梦,我也会竭尽所能地不去醒来。但是,我还是发现了一件令我害怕的事。如果在梦里,我极力地把玩具的细节描绘清楚,我就会不可避免的醒来。并且这种行为和具有故事属性的梦境不同, ...