Advertisement
Guest User

Sample

a guest
Oct 24th, 2016
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.67 KB | None | 0 0
  1. // Date and time functions using a DS1307 RTC connected via I2C and Wire lib
  2. #include <Wire.h>
  3. #include "RTClib.h"
  4.  
  5. RTC_DS1307 rtc;
  6. const int LED_1 = 13; //LED row 1
  7. const int LED_2 = 12; //LED row 2
  8. const int LED_3 = 11; //LED row 3
  9. const int LED_4 = 10; //LED row 4
  10. const int LED_5 = 9; //LED row 5
  11. const int LED_6 = 8; //LED row 6
  12. const int LED_7 = 7; //LED row 7
  13. const int LED_8 = 6; //LED row 8
  14. const int LED_9 = 5; //LED row 9
  15. const int LED_10 = 4; //LED row 10
  16. const int LED_11 = 3; //LED row 11
  17. void setup ()
  18. {
  19. Serial.begin(57600);
  20. Wire.begin();
  21.  
  22. rtc.begin();
  23.  
  24. // Check to see if rtc is running
  25. if (! rtc.isrunning() ){
  26. Serial.println("RTC is NOT running!");
  27. }
  28. //Set the date and time
  29. rtc.adjust(DateTime(2016,10,23,20,37,00) );
  30.  
  31. }
  32.  
  33. void loop () {
  34.  
  35. //Get the date and time
  36. DateTime now = rtc.now();
  37.  
  38. //Print out the date and time to the serial line
  39. Serial.print(now.year(),DEC);
  40. Serial.print('/');
  41. Serial.print(now.month(), DEC);
  42. Serial.print('/');
  43. Serial.print(now.day(), DEC);
  44. Serial.print('/');
  45. Serial.print(now.hour(), DEC);
  46. Serial.print('/');
  47. Serial.print(now.minute(), DEC);
  48. Serial.print('/');
  49. Serial.print(now.second(), DEC);
  50. Serial.println();
  51.  
  52. //Check to see if it is time to light the LED or to turn it off.
  53. if (now.hour() == 00)
  54. {
  55. //turn on LED L1(MIDNIGHT)
  56. pinMode(LED_6, OUTPUT); //row 1
  57. digitalWrite(LED_6, HIGH);
  58. pinMode(LED_7, OUTPUT); //row 1
  59. digitalWrite(LED_7, LOW);
  60. pinMode(LED_8, OUTPUT); //row 2
  61. digitalWrite(LED_8, HIGH);
  62. pinMode(LED_9, INPUT); //row 3
  63. digitalWrite(LED_9, LOW);
  64. pinMode(LED_10, INPUT); //row 4
  65. digitalWrite(LED_10, LOW);
  66. }
  67. if (now.hour() == 01|13)
  68. {
  69. //turn on LED L1(ONE)
  70. pinMode(LED_6, OUTPUT); //row 1
  71. digitalWrite(LED_6, HIGH);
  72. pinMode(LED_7, OUTPUT); //row 1
  73. digitalWrite(LED_7, HIGH);
  74. pinMode(LED_8, INPUT); //row 2
  75. digitalWrite(LED_8, LOW);
  76. pinMode(LED_9, INPUT); //row 3
  77. digitalWrite(LED_9, LOW);
  78. pinMode(3, OUTPUT); //row 4
  79. digitalWrite(3, LOW);
  80. }
  81. if (now.hour() == 02||14)
  82. {
  83. //turn on LED L2(TWO)
  84. pinMode(LED_6, OUTPUT); //row 1
  85. digitalWrite(LED_6, HIGH);
  86. pinMode(LED_7, INPUT); //row 1
  87. digitalWrite(LED_7, LOW);
  88. pinMode(LED_8, OUTPUT); //row 2
  89. digitalWrite(LED_8,HIGH);
  90. pinMode(LED_9, INPUT); //row 3
  91. digitalWrite(LED_9, LOW);
  92. pinMode(LED_10, OUTPUT); //row 4
  93. digitalWrite(LED_10, LOW);
  94. }
  95. if (now.hour() == 03|15)
  96. {
  97. //turn on LED L3(THREE)
  98. pinMode(LED_6, OUTPUT); //row 1
  99. digitalWrite(LED_6, HIGH);
  100. pinMode(LED_7, INPUT); //row 1
  101. digitalWrite(LED_7, LOW);
  102. pinMode(LED_8, INPUT); //row 2
  103. digitalWrite(LED_8,LOW);
  104. pinMode(LED_9, OUTPUT); //row 3
  105. digitalWrite(LED_9, LOW);
  106. pinMode(LED_10, OUTPUT); //row 4
  107. digitalWrite(LED_10, HIGH);
  108. }
  109. if (now.hour() == 04|16)
  110. {
  111. //turn on LED L3(four)
  112. pinMode(LED_6, OUTPUT); //row 1
  113. digitalWrite(LED_6, HIGH);
  114. pinMode(LED_11, OUTPUT); //row 1
  115. digitalWrite(LED_11, HIGH);
  116.  
  117. }
  118. if (now.hour() == 05|17)
  119. {
  120. //turn on LED L3(FIVE)
  121. pinMode(LED_6, OUTPUT); //row 1
  122. digitalWrite(LED_6, HIGH);
  123. pinMode(LED_7, OUTPUT); //row 1
  124. digitalWrite(LED_7, HIGH);
  125. pinMode(LED_8, INPUT); //row 2
  126. digitalWrite(LED_8, LOW);
  127. pinMode(LED_9, OUTPUT); //row 3
  128. digitalWrite(LED_9, LOW);
  129. pinMode(LED_10, INPUT); //row 4
  130. digitalWrite(LED_10, LOW);
  131. }
  132. if (now.hour() == 06|18)
  133. {
  134. //turn on LED L3(SIX)
  135. pinMode(LED_6, OUTPUT); //row 1
  136. digitalWrite(LED_6, HIGH);
  137. pinMode(LED_7, OUTPUT); //row 1
  138. digitalWrite(LED_7, LOW);
  139. pinMode(LED_8, INPUT); //row 2
  140. digitalWrite(LED_8, LOW);
  141. pinMode(LED_9, INPUT); //row 3
  142. digitalWrite(LED_9, LOW);
  143. pinMode(LED_10, OUTPUT); //row 4
  144. digitalWrite(LED_10, HIGH);
  145. }
  146. if (now.hour() == 07|19)
  147. {
  148. //turn on LED L3(SEVEN)
  149. pinMode(LED_6, OUTPUT); //row 1
  150. digitalWrite(LED_6, HIGH);
  151. pinMode(LED_7, OUTPUT); //row 1
  152. digitalWrite(LED_7, HIGH);
  153. pinMode(LED_8, OUTPUT); //row 2
  154. digitalWrite(LED_8, LOW);
  155. pinMode(LED_9, INPUT); //row 3
  156. digitalWrite(LED_9, LOW);
  157. pinMode(LED_10, INPUT); //row 4
  158. digitalWrite(LED_10, LOW);
  159. }
  160. if (now.hour() == 8|20)
  161. {
  162. //turn on LED L3(EIGHT)
  163. pinMode(LED_6, OUTPUT); //row 1
  164. digitalWrite(LED_6, HIGH);
  165. pinMode(LED_7, INPUT); //row 1
  166. digitalWrite(LED_7, LOW);
  167. pinMode(LED_8, INPUT); //row 2
  168. digitalWrite(LED_8,LOW);
  169. pinMode(LED_9, OUTPUT); //row 3
  170. digitalWrite(LED_9, HIGH);
  171. pinMode(LED_10, OUTPUT); //row 4
  172. digitalWrite(LED_10, LOW);
  173. }
  174. if (now.hour() == 9|21)
  175. {
  176. //turn on LED L3(NINE)
  177. pinMode(LED_6, OUTPUT); //row 1
  178. digitalWrite(LED_6, HIGH);
  179. pinMode(LED_7, INPUT); //row 1
  180. digitalWrite(LED_7, LOW);
  181. pinMode(LED_8, OUTPUT); //row 2
  182. digitalWrite(LED_8,LOW);
  183. pinMode(LED_9, INPUT); //row 3
  184. digitalWrite(LED_9, LOW);
  185. pinMode(LED_10, OUTPUT); //row 4
  186. digitalWrite(LED_10, HIGH);
  187. }
  188. if (now.hour() == 10|22)
  189. {
  190. //turn on LED L3(TEN)
  191. pinMode(LED_6, OUTPUT); //row 1
  192. digitalWrite(LED_6, HIGH);
  193. pinMode(LED_7, INPUT); //row 1
  194. digitalWrite(LED_7, LOW);
  195. pinMode(LED_8, OUTPUT); //row 2
  196. digitalWrite(LED_8, LOW);
  197. pinMode(LED_9, OUTPUT); //row 3
  198. digitalWrite(LED_9, HIGH);
  199. pinMode(LED_10, INPUT); //row 4
  200. digitalWrite(LED_10, LOW);
  201. }
  202. if (now.hour() == 11|23)
  203. {
  204.  
  205. //turn on LED L3(ELEVEN)
  206. pinMode(LED_6, OUTPUT); //row 1
  207. digitalWrite(LED_6, HIGH);
  208. pinMode(LED_7, OUTPUT); //row 1
  209. digitalWrite(LED_7, LOW);
  210. pinMode(LED_8, INPUT); //row 2
  211. digitalWrite(LED_8, LOW);
  212. pinMode(LED_9, OUTPUT); //row 3
  213. digitalWrite(LED_9, HIGH);
  214. pinMode(LED_10, INPUT); //row 4
  215. digitalWrite(LED_10, LOW);
  216. }
  217. if (now.hour() == 12)
  218. {
  219. //turn on LED L3(TWELVE)
  220. pinMode(LED_6, OUTPUT); //row 1
  221. digitalWrite(LED_6, HIGH);
  222. pinMode(LED_7, INPUT); //row 1
  223. digitalWrite(LED_7, LOW);
  224. pinMode(LED_8, OUTPUT); //row 2
  225. digitalWrite(LED_8, HIGH);
  226. pinMode(LED_9, OUTPUT); //row 3
  227. digitalWrite(LED_9, LOW);
  228. pinMode(LED_10, INPUT); //row 4
  229. digitalWrite(LED_10, LOW);
  230. }
  231. if (now.minute() > 2 && now.minute() <8 |now.minute() > 52 && now.minute () < 58)
  232. {
  233. //turn on LED L1(FIVE)
  234. pinMode(LED_1,INPUT); //row 1
  235. digitalWrite(LED_1, LOW);
  236. pinMode(LED_2, OUTPUT); //row 2
  237. digitalWrite(LED_2,HIGH);
  238. pinMode(LED_3, OUTPUT); //row 3
  239. digitalWrite(LED_3, LOW);
  240. }
  241. if (now.minute() > 7 && now.minute() <13 |now.minute() > 47 && now.minute () < 53)
  242. {
  243. //turn on LED L1(TEN)
  244. pinMode(LED_1, OUTPUT); //row 1
  245. digitalWrite(LED_1, LOW);
  246. pinMode(LED_2, INPUT); //row 2
  247. digitalWrite(LED_2, LOW);
  248. pinMode(LED_3, OUTPUT); //row 3
  249. digitalWrite(LED_3, HIGH);
  250. }
  251. if (now.minute() > 12 && now.minute() <18 |now.minute() > 42 && now.minute () < 48)
  252. {
  253. //turn on LED L1(QUARTER)
  254. pinMode(LED_1,OUTPUT); //row 1
  255. digitalWrite(LED_1, LOW);
  256. pinMode(LED_2, OUTPUT); //row 2
  257. digitalWrite(LED_2,HIGH);
  258. pinMode(LED_3, INPUT); //row 3
  259. digitalWrite(LED_3, LOW);
  260. }
  261. if (now.minute() > 2 && now.minute() <8 |now.minute() > 52 && now.minute () < 58)
  262. {
  263. //turn on LED L1(FIVE)
  264. pinMode(LED_1,INPUT); //row 1
  265. digitalWrite(LED_1, LOW);
  266. pinMode(LED_2, OUTPUT); //row 2
  267. digitalWrite(LED_2,HIGH);
  268. pinMode(LED_3, OUTPUT); //row 3
  269. digitalWrite(LED_3, LOW);
  270. }
  271. if (now.minute() > 7 && now.minute() <13 |now.minute() > 47 && now.minute () < 53)
  272. {
  273. //turn on LED L1(TEN)
  274. pinMode(LED_1, OUTPUT); //row 1
  275. digitalWrite(LED_1, LOW);
  276. pinMode(LED_2, INPUT); //row 2
  277. digitalWrite(LED_2, LOW);
  278. pinMode(LED_3, OUTPUT); //row 3
  279. digitalWrite(LED_3, HIGH);
  280. }
  281. if (now.minute() > 17 && now.minute() <23 |now.minute() > 37 && now.minute () < 43)
  282. {
  283. //turn on LED L1(TWENTY)
  284. pinMode(LED_1, OUTPUT); //row 1
  285. digitalWrite(LED_1, HIGH);
  286. pinMode(LED_2, INPUT); //row 2
  287. digitalWrite(LED_2, LOW);
  288. pinMode(LED_3, OUTPUT); //row 3
  289. digitalWrite(LED_3, LOW);
  290. }
  291. if (now.minute() > 22 && now.minute() <28 |now.minute() > 32 && now.minute () < 38)
  292. {
  293. //turn on LED L1(TWENTYFIVE)
  294. pinMode(LED_1, INPUT); //row 1
  295. digitalWrite(LED_1, LOW);
  296. pinMode(LED_2, OUTPUT); //row 2
  297. digitalWrite(LED_2, LOW);
  298. pinMode(LED_3, OUTPUT); //row 3
  299. digitalWrite(LED_3, HIGH);
  300. }
  301. if (now.minute() > 27 && now.minute() <33)
  302. {
  303. //turn on LED L1(HALF)
  304. pinMode(LED_1, OUTPUT); //row 1
  305. digitalWrite(LED_1, LOW);
  306. pinMode(LED_2, OUTPUT); //row 2
  307. digitalWrite(LED_2, HIGH);
  308. pinMode(LED_3, INPUT); //row 3
  309. digitalWrite(LED_3, LOW);
  310. }
  311. if (now.minute() > 2 && now.minute () <38)
  312. {
  313.  
  314. //turn on LED L1(PAST)
  315. pinMode(LED_4, OUTPUT); //row 1
  316. digitalWrite(LED_4, HIGH);
  317. pinMode(LED_5, OUTPUT); //row 2
  318. digitalWrite(LED_5, LOW);
  319. }
  320. if (now.minute() > 32 && now.minute () <58)
  321. {
  322.  
  323. //turn on LED L1(PAST)
  324. pinMode(LED_4, OUTPUT); //row 1
  325. digitalWrite(LED_4, LOW);
  326. pinMode(LED_5, OUTPUT); //row 2
  327. digitalWrite(LED_5, HIGH);
  328. }
  329. Serial.println();
  330. delay(1000);
  331.  
  332. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement