📄 sub_program.lst
字号:
158 3 ResetTime.Day=0;
159 3 break;
160 3 case 4:
161 3 ResetTime.Hour++;
162 3 if(ResetTime.Hour>=24)
163 3 ResetTime.Hour=0;
164 3 break;
165 3 case 5:
166 3 ResetTime.Minute++;
167 3 if(ResetTime.Minute>=60)
168 3 ResetTime.Minute=0;
169 3 break;
170 3
171 3 default:break;
172 3 }
173 2
174 2 GotoXY(0,0);
175 2 Print("Date: ");
176 2 Print(ResetTime.DateString);
177 2 GotoXY(0,1);
178 2 Print("Time: ");
179 2 Print(ResetTime.TimeString);
C51 COMPILER V8.02 SUB_PROGRAM 03/21/2008 14:20:29 PAGE 4
180 2
181 2 DS1302_SetTime(DS1302_YEAR,ResetTime.Year);
182 2 DS1302_SetTime(DS1302_MONTH,ResetTime.Month);
183 2 DS1302_SetTime(DS1302_DAY,ResetTime.Day );
184 2 DS1302_SetTime(DS1302_HOUR,ResetTime.Hour );
185 2 DS1302_SetTime(DS1302_MINUTE,ResetTime.Minute );
186 2 }
187 1 }
188
189 void alarm_set(void) //闹钟设置
190 {
191 1 //SYSTEMTIME Alarm_time;
192 1
193 1 TR1=0;
194 1 Alarm_time=CurrentTime;
195 1 GotoXY(0,0);
196 1 Print("Date: ");
197 1 Print(Alarm_time.DateString);
198 1 GotoXY(0,1);
199 1 Print("Time: ");
200 1 Print(Alarm_time.TimeString);
201 1 if(keyflag==1) //updown键 1
202 1 {
203 2 switch(resetflag) //choose健 2
204 2 { case 1:
205 3 Alarm_time.Year++;
206 3 if(Alarm_time.Year>=100)
207 3 Alarm_time.Year=0;
208 3 break;
209 3 case 2:
210 3 Alarm_time.Month++;
211 3 if(Alarm_time.Month>=13)
212 3 Alarm_time.Month=0;
213 3 break;
214 3 case 3:
215 3 Alarm_time.Day++;
216 3 if(Alarm_time.Day>=31)
217 3 Alarm_time.Day=0;
218 3 break;
219 3 case 4:
220 3 Alarm_time.Hour++;
221 3 if(Alarm_time.Hour>=24)
222 3 Alarm_time.Hour=0;
223 3 break;
224 3 case 5:
225 3 Alarm_time.Minute++;
226 3 if(Alarm_time.Minute>=60)
227 3 Alarm_time.Minute=0;
228 3 break;
229 3
230 3 default:break;
231 3 }
232 2
233 2 GotoXY(0,0);
234 2 Print("Date: ");
235 2 Print(Alarm_time.DateString);
236 2 GotoXY(0,1);
237 2 Print("Time: ");
238 2 Print(Alarm_time.TimeString);
239 2
240 2 }
241 1
C51 COMPILER V8.02 SUB_PROGRAM 03/21/2008 14:20:29 PAGE 5
242 1 }
243
244 void lcd_menu(void) //显示菜单
245 { static unsigned char jj;
246 1 jj++;
247 1
248 1 TR1=0;
249 1 GotoXY(0,0);
250 1 Print(" MENU:");
251 1 //delay(10);
252 1 Print(" Alarm");
253 1 //delay(10);
254 1 GotoXY(0,1);
255 1 Print(" Time ");
256 1 //delay(10);
257 1 Print(" Reset");
258 1
259 1 switch(lcdmenu)
260 1 {
261 2 case 1:
262 2 GotoXY(9,1);
263 2 Print(" ");
264 2 GotoXY(0,1);
265 2 Print("=>");
266 2 break;
267 2
268 2 case 2:
269 2 GotoXY(0,1);
270 2 Print(" ");
271 2 GotoXY(9,0);
272 2 Print("=>");
273 2 break;
274 2
275 2 case 3:
276 2 GotoXY(9,0);
277 2 Print(" ");
278 2 GotoXY(9,1);
279 2 Print("=>");
280 2 break;
281 2
282 2 default:
283 2 break;
284 2 }
285 1
286 1
287 1
288 1 }
289
290
291 void currenttime() //显示当前时间
292 {
293 1 //time_on=1;
294 1 TR1=1;
295 1
296 1 DS1302_GetTime(&CurrentTime);
297 1 DateToStr(&CurrentTime);
298 1 TimeToStr(&CurrentTime);
299 1 GotoXY(0,0);
300 1 Print("Date: ");
301 1 Print(CurrentTime.DateString);
302 1 GotoXY(0,1);
303 1 Print("Time: ");
C51 COMPILER V8.02 SUB_PROGRAM 03/21/2008 14:20:29 PAGE 6
304 1 Print(CurrentTime.TimeString);
305 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 1707 ----
CONSTANT SIZE = 56 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 60 26
IDATA SIZE = ---- ----
BIT SIZE = 3 2
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -