任务要求
main.c
#include <stc15f2k60s2.h>
#include <juzhen.h>
#include "iic.h"
extern unsigned char cun[];
extern unsigned char cunmima[];
extern unsigned char qing,xiu,shu;
extern unsigned char key,i,k;
unsigned char display[]={
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff};
unsigned char smg[]={
0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x8c,0x86,0xc8};
unsigned char mima[]={
8,8,8,8,8,8};
unsigned char open,error;
void Delay10ms();
void xiugai();
void panduan();
void Timer0Init();
void xianshi();
void main()
{
Timer0Init();EA=1;ET0=1;
P2=0XA0;P0=0X00;P2=0X1f;
cunmima[0]=EEPROM_read(0x11);Delay10ms();
cunmima[1]=EEPROM_read(0x12);Delay10ms();
cunmima[2]=EEPROM_read(0x13);Delay10ms();
cunmima[3]=EEPROM_read(0x14);Delay10ms();
cunmima[4]=EEPROM_read(0x15);Delay10ms();
cunmima[5]=EEPROM_read(0x16);Delay10ms();
while(1)
{
anjian();
xianshi();
panduan();
xiugai();
if(k==7)
{
EEPROM_write(0x11,mima[0]);Delay10ms();
EEPROM_write(0x12,mima[1]);Delay10ms();
EEPROM_write(0x13,mima[2]);Delay10ms();
EEPROM_write(0x14,mima[3]);Delay10ms();
EEPROM_write(0x15,mima[4]);Delay10ms();
EEPROM_write(0x16,mima[5]);Delay10ms();
}
}
}
void xianshi()
{
if(shu==0)
{
display[0]=0xff;
display[1]=0xff;
display[2]=0xff;
display[3]=0xff;
display[4]=0xff;
display[5]=0xff;
display[6]=0xff;
display[7]=0xff;
}
if(shu==1)
{
if(i<=6)
{
P2=0X80;
P0=0XBF;
P2=0X1F;
}
if(i==10)
{
P2=0X80;
P0=0X7F;
P2=0X1F;
}
switch(i)
{
case 0:
display[0]=0xbf;
display[1]=0xff;
display[2]=0xff;
display[3]=0xff;
display[4]=0xff;
display[5]=0xff;
display[6]=0xff;
display[7]=0xff;
break;
case 1:
display[0]=0xbf;
display[1]=0xff;
display[2]=0xff;
display[3]=0xff;
display[4]=0xff;
display[5]=0xff;
display[6]=0xff;
display[7]=smg[cun[0]];
break;
case 2:
display[0]=0xbf;
display[1]=0xff;
display[2]=0xff;
display[3]=0xff;
display[4]=0xff;
display[5]=0xff;
display[6]=smg[cun[1