一、要求
在CT107D单片机综合训练平台上,设计程序,实现实时显示开机系统运行时间和按键控制灯光。
1.设计系统初始化函数,关闭蜂鸣器和继电器等无关设备。
2.设计设备检测函数,首先检测LED灯,从L1~L8依次逐个点亮,再依次逐个熄灭;然后检查数码管,从左到右依次点亮数码管所有段码,再依次从左到右熄灭。
3.系统从上电就开始显示系统运行时间,从00时00分00秒开始,显示格式是“02-03-08”,该代表2小时3分钟8秒。
4.LED控制:S5控制L7,S4控制L8,按键松开有效。
二、程序
#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
sbit s5 = P3^2;
sbit s4 = P3^3;
uchar code table[] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x80,0xc6,0xc0,0x86,0x8e,
0xbf,0xff};//共阳段码表
uchar state_led = 0xff; //定义LED灯当前开关状态
void delay_ms(uchar xms) //@11.0592MHz
{
uchar i,j;
while(xms)
{
_nop_();
_nop_();
_nop_();