|
本帖最后由 迷你强 于 2013-8-15 09:29 编辑
源程序 - #include <LiquidCrystal.h>
- #include <stdio.h>
- #include <string.h>
- #include <DS1302.h>
- LiquidCrystal lcd(8, 13, 9, 4, 5, 6, 7);
- uint8_t CE_PIN = 2;
- uint8_t IO_PIN = 3;
- uint8_t SCLK_PIN = 11;
- char buf[50];
- char day[10];
- DS1302 rtc(CE_PIN, IO_PIN, SCLK_PIN);
- Time t;
- void setup()
- {
- Serial.begin(9600);
- rtc.write_protect(false);
- rtc.halt(false);
- Time t(2013,8,15,1,9,20,5);
- rtc.time(t);
- }
-
- void loop()
- {
- Time t = rtc.time();
- memset(day, 0, sizeof(day));
- switch (t.day)
- {
- case 1: strcpy(day, "Sun"); break;
- case 2: strcpy(day, "Mon"); break;
- case 3: strcpy(day, "Tue"); break;
- case 4: strcpy(day, "Wed"); break;
- case 5: strcpy(day, "Thu"); break;
- case 6: strcpy(day, "Fri"); break;
- case 7: strcpy(day, "Sat"); break;
- }
- snprintf(buf, sizeof(buf), "%s %04d-%02d-%02d ", day, t.yr, t.mon, t.date);
- lcd.clear();
- lcd.begin(16, 2);
- lcd.setCursor(0,0);
- lcd.print(buf);
- lcd.setCursor(11, 1);
- lcd.print("BISTU");
- snprintf(buf, sizeof(buf), "%02d:%02d:%02d", t.hr, t.min, t.sec);
- lcd.setCursor(1, 1);
- lcd.print(buf);
- delay(1000);
- }
复制代码 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|