4t第十五届蓝桥杯单片机模拟考试I满分代码

前言

近期比较紧张,努力了一段时间,反而更害怕一些偶然因素导致不能达到自己预期的奖项,但毕竟纠结这种无用,还是记录一下自己的备赛过程,继续好好努力吧。这套题,以为很简单,一顿敲很快就做完。但上4t一测,被扣了20分。。。。难崩啊,主要有2个坑点,一个是对初始输入时间的理解,我刚开始是将切到输入界面的时间定为初始时间,但最正确的应该是输入第一个数的时间,且s5清零后这个时间要重新来记。第二个坑点就是,将时间写入e2prom的时候,要写入的是十进制的,我把没处理的bcd直接传进去了。题目没要求读出来,所以错了这个也是没现象的,只能当作经验下次碰到注意一下。

代码

main文件

#include <STC15F2K60S2.H>
#include "ds1302.h"
#include "iic.h"
#define control(x,y) P0=y;P2=x;P2=0
typedef unsigned char uchar ;
typedef unsigned int uint ;

code unsigned char Seg_Code[] = 
{
0xc0, //0
0xf9, //1
0xa4, //2
0xb0, //3
0x99, //4
0x92, //5
0x82, //6
0xf8, //7
0x80, //8
0x90, //9
0xff, //Ãð
0xbf, //- 11
0xc6, //C12
0xa1, //d13
0x86, //E14
0x8e //F
};

uchar Seg_Bit[9]={10,10,10,10,10,10,10,10,10};
uchar interface;
uchar count_key;
uchar hour=0x23,sec=0x09,min=0x59;
uchar hour_save;
uchar min_save;

uchar count_time;
uint input;
uchar input_value;
uint input_save=65522;
bit flag_input;
uchar count_in
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值