赞
踩
系统运行后,数码管默认不显示,当按下K1按下后,启动计时;
可按下K2键记录时间,可记录3次。也可再按下K1键停止,再次按下K1键继续运行;当记录3次完毕后,可按下K3键查询3次记录时间,数码管第2位下面显示.代表第一组成绩,第5位数码管下面显示.代表第二组成绩,最后一位数码管下面显示.代表第三组成绩;在查询程序界面按下K1键可清除数据。
/* 作者:嗨小易(QQ:3443792007) */ //系统数据显示 void sys_data_show(void) { u8 buf[8]; //未查询 if(sys_ctrl.find==0) { //显示时间 buf[0]=gsmg_code[sys_ctrl.min/10]; buf[1]=gsmg_code[sys_ctrl.min%10]; buf[2]=0x40; buf[3]=gsmg_code[sys_ctrl.sec/10]; buf[4]=gsmg_code[sys_ctrl.sec%10]; buf[5]=0x40; buf[6]=gsmg_code[sys_ctrl.msec/10]; buf[7]=gsmg_code[sys_ctrl.msec%10]; } //查询 else { buf[0]=gsmg_code[sys_ctrl.time[sys_ctrl.cnt][0]/10]; buf[1]=gsmg_code[sys_ctrl.time[sys_ctrl.cnt][0]%10]; buf[2]=0x40; buf[3]=gsmg_code[sys_ctrl.time[sys_ctrl.cnt][1]/10]; buf[4]=gsmg_code[sys_ctrl.time[sys_ctrl.cnt][1]%10]; buf[5]=0x40; buf[6]=gsmg_code[sys_ctrl.time[sys_ctrl.cnt][2]/10]; buf[7]=gsmg_code[sys_ctrl.time[sys_ctrl.cnt][2]%10]; switch(sys_ctrl.cnt) { case 0: buf[0]|=0x80;buf[4]&=0x7f;buf[7]&=0x7f;break; case 1: buf[1]&=0x7f;buf[4]|=0x80;buf[7]&=0x7f;break; case 2: buf[2]&=0x7f;buf[4]&=0x7f;buf[7]|=0x80;break; } } smg_display(buf,1); } //应用控制系统 void appdemo_show(void) { sys_parm_init();//系统参数初始化 KEY_Init(); smg_init(); SMG_DATAPORT(0x00);//消影 BEEP_Init(); TIM2_Init(400-1,70);//定时10ms //等待开始键按下 while(1) { if(KEY_Scan(0)==KEY1_PRESS) { sys_ctrl.start=1; TIM_Cmd(TIM2,ENABLE); //打开定时器 break; } } while(1) { sys_data_set();//系统数据设置 sys_data_get();//系统数据获取 sys_data_show();//系统数据显示 sys_fun_ctrl();//系统功能控制 } } /******************************************************************************* * 函 数 名 : TIM2_IRQHandler * 函数功能 : TIM2中断函数 * 输 入 : 无 * 输 出 : 无 *******************************************************************************/ void TIM2_IRQHandler(void) { if(TIM_GetITStatus(TIM2,TIM_IT_Update)) { sys_ctrl.msec++; if(sys_ctrl.msec>=100) { sys_ctrl.msec=0; sys_ctrl.sec++; if(sys_ctrl.sec>=60) { sys_ctrl.sec=0; sys_ctrl.min++; if(sys_ctrl.min>=60)sys_ctrl.min=0; } } } TIM_ClearITPendingBit(TIM2,TIM_IT_Update); }
B站演示视频:https://space.bilibili.com/444388619
专注于51单片机、STM32、国产32、DSP、Proteus、ardunio、ESP32、物联网软件开发,PCB设计,视频分享,技术交流。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。