51单片机电子钟 通过按键调整时间 这块程序怎么写(方法)

作者&投稿:福黄 (若有异议请与网页底部的电邮联系)
51单片机简单电子时钟程序,通过按键设置时间,有图,有解析!~

#include #include#define uchar unsigned char#define uint unsigned int#define LCD1602_FLAG#define LCD1602_PORT P0sbit lcd1602_rs=P2^0;sbit lcd1602_e=P2^2;sbit lcd1602_rw=P2^1;sbit lcd1602_busy=P0^7;sbit key_ch=P3^5;sbit key_add=P3^6;sbit key_minus=P3^7;uchar i,sec,min,h,date,month,flag;uint year;uchar *chgstr[7]={" ","sec","min","hour","date","min","year"};uchar j,k,m,n,o,p;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};uchar timestr[10],datestr[10];void init();void delay(uint);void time_display();void date_display();void control();void time();/************************************* * 函数名称:lcd1602_CheckBusy() * 函数功能:状态查询*************************************/void lcd1602_CheckBusy(){ do { lcd1602_busy=1; lcd1602_rs=0; lcd1602_rw=1; lcd1602_e=0; lcd1602_e=1; }while(lcd1602_busy);}/**************************************** * 函数名称: lcd1602_WriteCmd() * 函数功能:写命令 * 入口参数:命令字 * 出口参数:无****************************************/void lcd1602_WriteCmd(const uchar cmd){ lcd1602_CheckBusy();lcd1602_rs=0;lcd1602_rw=0;lcd1602_e=1;LCD1602_PORT=cmd;lcd1602_e=0;}/******************************************** * 函数名称:lcd1602_WriteData() * 函数功能:写数据 * 入口参数:c--待写数据 * 出口参数:无**********************************************/void lcd1602_WriteData(const uchar c){ lcd1602_CheckBusy();lcd1602_rs=1;lcd1602_rw=0;lcd1602_e=1;LCD1602_PORT=c;lcd1602_e=0;}/************************************************ * 函数名称:lcd1602_Init() * 函数功能:初始化LCD * 入口参数:无 * 出口参数:无************************************************/void lcd1602_Init(){ lcd1602_WriteCmd(0x38);//显示模式为8位2行5*7点阵 lcd1602_WriteCmd(0x0c); //display enable,flag enable,flash enable, lcd1602_WriteCmd(0x06); //flag move to right,screen don't move lcd1602_WriteCmd(0x01); //clear screen}/************************************************* * 函数名称:lcd1602_Display() * 函数功能: 字符显示 * 入口参数:ptr--字符或字符串指针 * 出口参数:无 * 说 明:用户可通过以下方式来调用: * 1)lcd1602_Display("Hello,world!"); * 2) INT8U 存储类型 txt[]="要显示的字符串"; * 或者 INT8U 存储类型 txt[]={'t','x','t',..,'\0'}; * INT8U *ptr; * ptr=&txt; * lcd1602_Display(ptr); * 或 lcd1602_Display(txt); * 或 lcd1602_Display(&txt);*************************************************/void lcd1602_Display(const uchar *ptr,uchar line,uchar xaddr){ uchar data i=0;uchar *data q;q=ptr;switch(line){case 0:lcd1602_WriteCmd(0x80+xaddr);while(q!=NULL && (*q!='\0') && i0;x--)for(y=110;y>0;y--);}void time_display(){timestr[7]=0x30+sec%10;timestr[6]=0x30+sec/10;timestr[5]=':';timestr[4]=0x30+min%10;timestr[3]=0x30+min/10;timestr[2]=':';timestr[1]=0x30+h%10;timestr[0]=0x30+h/10;timestr[8]=0;lcd1602_Display(timestr,1,3);}void date_display(){datestr[9]=0x30+date%10;datestr[8]=0x30+date/10;datestr[7]=':';datestr[6]=0x30+month%10;datestr[5]=0x30+month/10;datestr[4]=':';datestr[3]=0x30+year%10;datestr[2]=0x30+year/10%10;datestr[1]=0x30+year/100%10;datestr[0]=0x30+year/1000;lcd1602_Display(datestr,0,2);}void control(){if(!key_ch){delay(5);if(!key_ch){flag++;TR0=0;if(flag==7){flag=0;TR0=1;lcd1602_Init();}lcd1602_Display(chgstr[flag],1,12);}}while(!key_ch);if(flag==1&&key_add==0){while(!key_add);sec++;if(sec==60)sec=0;}if(flag==1&&key_minus==0){while(!key_minus);sec--;if(sec==-1)sec=59;}if(flag==2&&key_add==0){while(!key_add);min++;if(min==60)min=0;}if(flag==2&&key_minus==0){while(!key_minus);min--;if(min==-1)min=59;}if(flag==3&&key_add==0){while(!key_add);h++;if(h==24)h=0;}if(flag==3&&key_minus==0){while(!key_minus);h--;if(h==-1)h=23;}if(flag==4&&key_add==0){while(!key_add);date++;if(date==29)if((year%4!=0)&&(month==2))date=1;if(date==30)if((year%4==0)&&(month==2))date=1;if(date==31)if((month==4)||(month==6)||(month==9)||(month==11))date=1;if(date==32)if((month==1)||(month==3)||(month==5)||(month==7)||(month==8)||(month==10)||(month==12))date=1;}if(flag==4&&key_minus==0){while(!key_minus);if(date>1)date--;}if(flag==5&&key_add==0){while(!key_add);month++;if(month==13)month=1;}if(flag==5&&key_minus==0){while(!key_minus);month--;if(month==0)month=12;}if(flag==6&&key_add==0){while(!key_add);year++;if(year==99)year=1;}if(flag==6&&key_minus==0){while(!key_minus);year--;if(year==0)year=99;}}void T0_rpt() interrupt 1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;i++;time();}void time(){if(i==20){i=0;sec++;if(sec==60){sec=0;min++;if(min==60){min=0;h++;if(h==24){h=0;min=0;sec=0;date++;if(date==29)if((year%4!=0)&&(month==2)){date=1;month++;if(month==13){month=1;year++;}}if(date==30)if((year%4==0)&&(month==2)){date=1;month++;if(month==13){month=1;year++;}}if(date==31)if((month==4)||(month==6)||(month==9)||(month==11)){date=1;month++;if(month==13){month=1;year++;}}if(date==32)if((month==1)||(month==3)||(month==5)||(month==7)||(month==8)||(month==10)||(month==12)){date=1;month++;if(month==13){month=1;year++;}}}}}}}

你这不是已经有仿真图了吗,也显示时间了,那是谁的仿真图,不是你自己的吗。
那DS1302不是寄存时间,就是一片时钟芯片,它就完成时钟计时的,有时间和日期的。但都需要写程序读出时间和日期。

ORG 0000H ;主程序入口
LJMP MAIN ;跳转到标号MAIN执行
ORG 000BH ;定时器T0中断入口
AJMP PTF0 ;跳转到标号PTF0执行
HOUR EQU 4AH ;赋值伪指令
MIN EQU 4BH
SEC EQU 4CH
BUFF EQU 4DH
;*************************************************************************************
;主程序
MAIN: MOV HOUR,#00H ;时,分,秒,标记清零
MOV MIN,#00H
MOV SEC,#00H
MOV BUFF,#00H
MOV SP,#60H ;设堆栈指针
MOV TH0,#3CH ;定时器赋初值
MOV TL0,#0B0H
MOV 40H,#14H ;设循环次数20次
MOV TMOD,#1 ;写TMOD
MOV IP,#2 ;写IP
MOV IE,#82H ;开中断
SETB TR0 ;启动定时器
LOOP: ACALL DISPLAY ;调用显示程序
JNB P3.0,FEN ;校时键按否?否,跳转到FEN
ZX: ACALL DISPLAY
JB P3.0,ZX
MOV A,HOUR ;时加1
ADD A,#1
DA A
CJNE A,#24H,BI ;时加到24时否?是,清零
CLR A
BI: MOV HOUR,A
MOV SEC,#00H ;秒清零
FEN: JNB P3.1,YY ;校分键按下否?否,跳转到YY
ZC: ACALL DISPLAY
JB P3.1,ZC
MOV A,MIN ;分加1
ADD A,#1
DA A
CJNE A,#60H,CI ;分加到60否?是,清零
CLR A
CI: MOV MIN,A
MOV SEC,#00H ;秒清零
YY: AJMP LOOP
;***************************************************************************************
;中断服务程序
PTF0: MOV TH0,#3CH ;初值重装
MOV TL0,#0B0H
CLR TR0 ;关定时器
CLR A ;清A
DJNZ 40H,XX ;1秒到否?否,跳转到XX
MOV 40H,#14H ;重写循环次数
MOV A,SEC ;秒单元加1
ADD A,#1
DA A
MOV SEC,A
CJNE A,#60H,PTF0R ;60秒到否?否,跳转到PTF0R
JMIN: MOV SEC,#00H ;秒清零
MOV A,MIN ;分单元加1
ADD A,#1
DA A
MOV MIN,A
CJNE A,#60H, PTF0R ;60分到否?否,跳转到PTF0R
MOV MIN,#00H ;分清零
JHOUR: MOV SEC,#00H ;秒清零
MOV A,HOUR ;时单元加1
ADD A,#1
DA A
MOV HOUR,A
CJNE A,#24H, PTF0R ;24时到否?否,跳转到PTF0R
MOV HOUR,#00H ;时清零
AJMP PTF0R ;跳转到PTF0R
XX: MOV R7,40H ;给小数点做标记,1和0
CJNE R7,#0AH,NEQ
EQ: NOP
AJMP PTF0R
NEQ: JC YEQ
MOV BUFF,#00H
AJMP PTF0R
YEQ: MOV BUFF,#0FFH
AJMP PTF0R
PTF0R: SETB TR0
RETI
;***************************************************************************************
;显示子程序
DISPLAY: MOV R5,BUFF ;根据标记输出带点和不带点的数字
CJNE R5,#00H,CVB ;根据标记查不同的表
MOV DPTR,#TAB1
LJMP TYU
CVB: MOV DPTR,#TAB
TYU: MOV A,MIN ;显示分钟的个位
ANL A,#0FH
MOVC A,@A+DPTR
MOV P0,A
MOV P2,#0F0h
CLR P2.4
ACALL DELAY
MOV A,MIN ;显示分钟的十位
SWAP A
ANL A,#0FH
MOVC A,@A+DPTR
MOV P0,A
MOV P2,#0F0H
CLR P2.5
ACALL DELAY
MOV A,HOUR ;显示时钟的个位
ANL A,#0FH
MOVC A,@A+DPTR
MOV P0,A
MOV P2,#0F0H
CLR P2.6
ACALL DELAY
MOV A,HOUR ;显示时钟的十位
SWAP A
ANL A,#0FH
MOVC A,@A+DPTR
MOV P0,A
MOV P2,#0F0H
CLR P2.7
ACALL DELAY
RET
TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH ;不带小数点的字型码
TAB1: DB 0BFH,86H,0DBH,0CFH,0E6H,0EDH,0FDH,87H,0FFH,0EFH ;带小数点的字型码
;****************************************************************************************
;延时子程序
DELAY: MOV R4,#20
YAN: MOV R5,#10
SHI: DJNZ R5,SHI
DJNZ R4,YAN
RET
END

以前我的单片机课程设计,提供给你参考参考,不过只有调分和调时的。。。

汇编的我不知道,C语言的倒是很多的,建议你去看下郭天祥的《十天学会单片机》视频教程的第十讲,里面讲的非常的清楚的,以下是哪段教程的程序,比你如果只是不知道方法的话,可以去看下,肯定能得到解决的思路的............
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit dula=P2^6;
sbit wela=P2^7;
sbit rs=P3^5;
sbit lcden=P3^4;
sbit s1=P3^0;
sbit s2=P3^1;
sbit s3=P3^2;
sbit rd=P3^7;
uchar count,s1num;
char miao,shi,fen;
uchar code table[]=" 2007-7-30 MON";
uchar code table1[]=" 00:00:00";
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}

void write_com(uchar com)
{
rs=0;
lcden=0;
P0=com;
delay(5);
lcden=1;
delay(5);
lcden=0;
}

void write_date(uchar date)
{
rs=1;
lcden=0;
P0=date;
delay(5);
lcden=1;
delay(5);
lcden=0;
}

void init()
{
uchar num;
dula=0;
wela=0;
lcden=0;
// fen=59;
// miao=53;
// shi=23;
write_com(0x38);
write_com(0x0c);
write_com(0x06);
write_com(0x01);
write_com(0x80);
for(num=0;num<15;num++)
{
write_date(table[num]);
delay(5);
}
write_com(0x80+0x40);
for(num=0;num<12;num++)
{
write_date(table1[num]);
delay(5);
}
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
}

void write_sfm(uchar add,uchar date)
{
uchar shi,ge;
shi=date/10;
ge=date%10;
write_com(0x80+0x40+add);
write_date(0x30+shi);
write_date(0x30+ge);
}

void keyscan()
{
rd=0;
if(s1==0)
{
delay(5);
if(s1==0)
{ s1num++;
while(!s1)
if(s1num==1)
{
TR0=0;
write_com(0x80+0x40+10);
write_com(0x0f);
}
}
if(s1num==2)
{
write_com(0x80+0x40+7);
}
if(s1num==3)
{
write_com(0x80+0x40+4);
}
if(s1num==4)
{
s1num=0;
write_com(0x0c);
TR0=1;
}

}
if(s1num!=0)
{
if(s2==0)
{
delay(5);
if(s2==0)
{
while(!s2);
if(s1num==1)
{
miao++;
if(miao==60)
miao=0;
write_sfm(10,miao);
write_com(0x80+0x40+10);

}
if(s1num==2)
{
fen++;
if(fen==60)
fen=0;
write_sfm(7,fen);
write_com(0x80+0x40+7);
}
if(s1num==3)
{
shi++;
if(shi==24)
shi=0;
write_sfm(4,shi);
write_com(0x80+0x40+4);
}
}
}
if(s3==0)
{
delay(5);
if(s3==0)
{
while(!s3);
if(s1num==1)
{
/* if(miao==0)
{
miao=59;
write_sfm(10,miao);
write_com(0x80+0x40+10);
}*/
miao--;
if(miao==-1)
miao=59;
write_sfm(10,miao);
write_com(0x80+0x40+10);
}
if(s1num==2)
{
fen--;
if(fen==-1)
fen=59;
write_sfm(7,fen);
write_com(0x80+0x40+7);
}
if(s1num==3)
{
shi--;
if(shi==-1)
shi=23;
write_sfm(4,shi);
write_com(0x80+0x40+4);
}
}
}
}
}
void main()
{
init();
while(1)
{
keyscan();

}
// while(1);
}

void timer0() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
count++;
if(count==18)
{
count=0;
miao++;
if(miao==60)
{
miao=0;
fen++;
if(fen==60)
{
fen=0;
shi++;
if(shi==24)
{
shi=0;
}
write_sfm(4,shi);
}
write_sfm(7,fen);
}
write_sfm(10,miao);

}
}

只给出按键调整时、分、秒程序

SEC EQU P3.5 ;调秒按键接P3.5,另一端接地
MIN EQU P3.6
HOUR EQU P3.7

...

kS: LCALL DISP
JB SEC,KM ;未按下,转判调分按键
LCALL DISP
JNB SEC,$-3 ;等待释放,若按住不放,跳上一条指令
AJMP SINC ;按下,转秒加1子程序

kM: JB MIN,KH
LCALL DISP
JNB MIN,$-3
AJMP MINC

KH: JB HOUR,K1
LCALL DISP
JNB HOUR,$-3
AJMP HINC

SINC: INC 26H ;26H存放秒数据
MOV A,26H
CJNE A,#60,SINC0
MOV 26H,#0
SINC0: AJMP KS

MINC: INC 27H
MOV A,27H
CJNE A,#60,MINC0
MOV 27H,#0
MINC0: AJMP KM

HINC: INC 28H
MOV A,28H
CJNE A,#24,HINC0
MOV 28H,#0
HINC0: AJMP KH

...

汇编的我不知道,C语言的倒是很多的,建议你去看下郭天祥的《十天学会单片机》视频教程的第十讲,里面讲的非常的清楚的,以下是哪段教程的程序,比你如果只是不知道方法的话,可以去看下,肯定能得到解决的思路的............
#include<reg52.h>
#define
uchar
unsigned
char
#define
uint
unsigned
int
sbit
dula=P2^6;
sbit
wela=P2^7;
sbit
rs=P3^5;
sbit
lcden=P3^4;
sbit
s1=P3^0;
sbit
s2=P3^1;
sbit
s3=P3^2;
sbit
rd=P3^7;
uchar
count,s1num;
char
miao,shi,fen;
uchar
code
table[]="
2007-7-30
MON";
uchar
code
table1[]="
00:00:00";
void
delay(uint
z)
{
uint
x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void
write_com(uchar
com)
{
rs=0;
lcden=0;
P0=com;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
void
write_date(uchar
date)
{
rs=1;
lcden=0;
P0=date;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
void
init()
{
uchar
num;
dula=0;
wela=0;
lcden=0;
//
fen=59;
//
miao=53;
//
shi=23;
write_com(0x38);
write_com(0x0c);
write_com(0x06);
write_com(0x01);
write_com(0x80);
for(num=0;num<15;num++)
{
write_date(table[num]);
delay(5);
}
write_com(0x80+0x40);
for(num=0;num<12;num++)
{
write_date(table1[num]);
delay(5);
}
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
}
void
write_sfm(uchar
add,uchar
date)
{
uchar
shi,ge;
shi=date/10;
ge=date%10;
write_com(0x80+0x40+add);
write_date(0x30+shi);
write_date(0x30+ge);
}
void
keyscan()
{
rd=0;
if(s1==0)
{
delay(5);
if(s1==0)
{
s1num++;
while(!s1)
if(s1num==1)
{
TR0=0;
write_com(0x80+0x40+10);
write_com(0x0f);
}
}
if(s1num==2)
{
write_com(0x80+0x40+7);
}
if(s1num==3)
{
write_com(0x80+0x40+4);
}
if(s1num==4)
{
s1num=0;
write_com(0x0c);
TR0=1;
}
}
if(s1num!=0)
{
if(s2==0)
{
delay(5);
if(s2==0)
{
while(!s2);
if(s1num==1)
{
miao++;
if(miao==60)
miao=0;
write_sfm(10,miao);
write_com(0x80+0x40+10);
}
if(s1num==2)
{
fen++;
if(fen==60)
fen=0;
write_sfm(7,fen);
write_com(0x80+0x40+7);
}
if(s1num==3)
{
shi++;
if(shi==24)
shi=0;
write_sfm(4,shi);
write_com(0x80+0x40+4);
}
}
}
if(s3==0)
{
delay(5);
if(s3==0)
{
while(!s3);
if(s1num==1)
{
/*
if(miao==0)
{
miao=59;
write_sfm(10,miao);
write_com(0x80+0x40+10);
}*/
miao--;
if(miao==-1)
miao=59;
write_sfm(10,miao);
write_com(0x80+0x40+10);
}
if(s1num==2)
{
fen--;
if(fen==-1)
fen=59;
write_sfm(7,fen);
write_com(0x80+0x40+7);
}
if(s1num==3)
{
shi--;
if(shi==-1)
shi=23;
write_sfm(4,shi);
write_com(0x80+0x40+4);
}
}
}
}
}
void
main()
{
init();
while(1)
{
keyscan();
}
//
while(1);
}
void
timer0()
interrupt
1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
count++;
if(count==18)
{
count=0;
miao++;
if(miao==60)
{
miao=0;
fen++;
if(fen==60)
{
fen=0;
shi++;
if(shi==24)
{
shi=0;
}
write_sfm(4,shi);
}
write_sfm(7,fen);
}
write_sfm(10,miao);
}
}


霍山县15248681812: 51单片机电子钟 通过按键调整时间 这块程序怎么写(方法) -
籍倪安素: 汇编的我不知道,C语言的倒是很多的,建议你去看下郭天祥的《十天学会单片机》视频教程的第十讲,里面讲的非常的清楚的,以下是哪段教程的程序,比你如果只是不知道方法的话,可以去看下,肯定能得到解决的思路的............ #include<...

霍山县15248681812: 51单片机 用按键设定时钟时间的原理 -
籍倪安素: 给你个思路.程序自己写 void intterupt0(void) interrupt 0 { while(k4==1){if(k1==0){delay(10);while(k1==0);p++;}else if(k2==0){delay(10);while(k2==0);*p=*p++;}else if(k3==0){delay(10);while(k3==0);*p=*p--;}DISPLAY(); //显...

霍山县15248681812: 我用51单片机做了一个时钟,我想添加一个使用键盘调时的功能,请问该怎么实现呢? -
籍倪安素: 最简单的是两个PIO引脚,直接做成键盘的按键,可先不做消抖程序.可以用外中断0和1来做键盘的输入引脚. 完成硬件的连接后,用仿真器打断点,看键盘按下后,能否进入中断地址,通常是低电平有效作为键盘按下后的标志,平时信号线是高...

霍山县15248681812: 51单片机怎样用按键设定定时时间 -
籍倪安素: 这个根据键类型不同设置方式也不同.1、独立按键,只能通过按键后加或减来实现2、矩阵键盘,比如4*4,那么可以通过键值,来输入设定定时时间.

霍山县15248681812: 51单片机电子时钟程序 只要时间调整部分 急求 谢谢 -
籍倪安素: 以下是一段按键调整时间的程序.LED6: LCALL DISPLAY JNB P1.0,CLEAR //;判断键盘输入 JNB P1.1,SET_MINUTE JNB P1.2,SET_HOUR AJMP LED6 CLEAR: LCALL DISPLAY JNB P1.0,CLEAR MOV 30H,#12H //;时钟显示复位 A键 MOV...

霍山县15248681812: 基于51单片机的数码管设计电子时钟,可以调时间的,怎么弄唉,大家帮帮忙... -
籍倪安素: 说一下步骤吧:1、数码管驱动电路设计.一般用三极管如9013或者锁存器如74HC573来驱动,使其能够正常亮灭.2、使用动态扫描的方式让数码管能够显示你想要的数字,这个可以用中断来扫描也可以不用.3、使用实时时钟芯片如DS1302...

霍山县15248681812: 51单片机简单电子时钟程序,通过按键设置时间,并且通过DS1302 寄存时间 -
籍倪安素: 你这不是已经有仿真图了吗,也显示时间了,那是谁的仿真图,不是你自己的吗. 那DS1302不是寄存时间,就是一片时钟芯片,它就完成时钟计时的,有时间和日期的.但都需要写程序读出时间和日期.

霍山县15248681812: 51单片机 用按键调整时钟程序 其中包括定时器 八位数码管 中断等程序 用C语言编写的 -
籍倪安素: 发了三个程序包给你,都是基于单片机数字钟设计的程序,可带按键调整时钟.9.7的那个程序,里面是用汇编语言编写的延迟程序,时间精度相对高.但是稍微,Frbqhd

霍山县15248681812: 求程序用AT89C51单片机......用六位数码管实现数字时钟,显示时分秒,用两个按键可分别调整时、分. -
籍倪安素: #include<reg52.h> #define uint unsigned int #define uchar unsigned char uchar temp,aa,miao,fen,shi; sbit m=P3^0; sbit n=P3^1; uchar code table[]={ //数码管编码表 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f}; void display(uchar miao,...

霍山县15248681812: 单片机电子钟添加一个键盘调整程序 -
籍倪安素: 呵呵,这位朋友,你的程序是从书上学的.但你没有学会分时复用.所以,你的程序想加按键,那就是一件很复杂的事情.这不能怪你.你应该学会去做这个程序.而不是别人帮你做.首先,把显示程序改成SWITCH程序.每次换一个内容显示...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网