Real-time Embedded System final report code

Dependencies:   C12832 mbed

Fork of app-shield-LCD by Chris Styles

Committer:
liusiyu
Date:
Tue Jan 10 18:18:48 2017 +0000
Revision:
6:5e9bc6b0d221
Parent:
4:39c7c31b8fb0
Real-time Embedded Systems Final Laboratory Report Code

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dreschpe 0:f6a57b843f79 1 #include "mbed.h"
chris 3:2db94ee076ee 2 #include "C12832.h"
dreschpe 0:f6a57b843f79 3
chris 4:39c7c31b8fb0 4 // Using Arduino pin notation
chris 4:39c7c31b8fb0 5 C12832 lcd(D11, D13, D12, D7, D10);
dreschpe 1:1c6a9eaf55b5 6
liusiyu 6:5e9bc6b0d221 7 int i,j,m,n,h,r,i1,j1,m1,n1,h1,r1,a,b,c,d,e,f,g;
liusiyu 6:5e9bc6b0d221 8
liusiyu 6:5e9bc6b0d221 9 void second1(void);
liusiyu 6:5e9bc6b0d221 10 void minute1(void);
liusiyu 6:5e9bc6b0d221 11 void hour1(void);
liusiyu 6:5e9bc6b0d221 12
dreschpe 0:f6a57b843f79 13 int main()
dreschpe 0:f6a57b843f79 14 {
liusiyu 6:5e9bc6b0d221 15 int second=0;
liusiyu 6:5e9bc6b0d221 16 int minute=0;
liusiyu 6:5e9bc6b0d221 17 int hour=0;
liusiyu 6:5e9bc6b0d221 18 int number=0;
liusiyu 6:5e9bc6b0d221 19
liusiyu 6:5e9bc6b0d221 20 while(1) {
liusiyu 6:5e9bc6b0d221 21 for (i=0;i<10;i=i+1)
liusiyu 6:5e9bc6b0d221 22 {
liusiyu 6:5e9bc6b0d221 23 for (j=0;j<6;j=j+1)
liusiyu 6:5e9bc6b0d221 24 {
liusiyu 6:5e9bc6b0d221 25 number =j*10+i;
liusiyu 6:5e9bc6b0d221 26 if (number == second)
liusiyu 6:5e9bc6b0d221 27 {i1=i;j1=j;}
liusiyu 6:5e9bc6b0d221 28 if (number == minute)
liusiyu 6:5e9bc6b0d221 29 {m1=i;n1=j;}
liusiyu 6:5e9bc6b0d221 30 if (number == hour)
liusiyu 6:5e9bc6b0d221 31 {h1=i;r1=j;}
liusiyu 6:5e9bc6b0d221 32 }
liusiyu 6:5e9bc6b0d221 33 }
liusiyu 6:5e9bc6b0d221 34
liusiyu 6:5e9bc6b0d221 35 second1();
liusiyu 6:5e9bc6b0d221 36
liusiyu 6:5e9bc6b0d221 37 minute1();
liusiyu 6:5e9bc6b0d221 38
liusiyu 6:5e9bc6b0d221 39 hour1();
liusiyu 6:5e9bc6b0d221 40
liusiyu 6:5e9bc6b0d221 41 second=second+1;
liusiyu 6:5e9bc6b0d221 42 wait(0.01);
liusiyu 6:5e9bc6b0d221 43
liusiyu 6:5e9bc6b0d221 44 if (second == 60)
liusiyu 6:5e9bc6b0d221 45 {second = 0;
liusiyu 6:5e9bc6b0d221 46 minute=minute+1;}
liusiyu 6:5e9bc6b0d221 47 if (minute == 60)
liusiyu 6:5e9bc6b0d221 48 {minute=0;
liusiyu 6:5e9bc6b0d221 49 hour=hour+1;}
liusiyu 6:5e9bc6b0d221 50 if (hour == 24)
liusiyu 6:5e9bc6b0d221 51 {hour=0;}
liusiyu 6:5e9bc6b0d221 52 }//while
liusiyu 6:5e9bc6b0d221 53 }//main
liusiyu 6:5e9bc6b0d221 54
liusiyu 6:5e9bc6b0d221 55
liusiyu 6:5e9bc6b0d221 56 void second1()
liusiyu 6:5e9bc6b0d221 57 {
liusiyu 6:5e9bc6b0d221 58 if (i1==0)
liusiyu 6:5e9bc6b0d221 59 {a=1;b=1;c=0;d=1;e=1;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 60 if (i1==1)
liusiyu 6:5e9bc6b0d221 61 {a=0;b=0;c=0;d=1;e=0;f=0;g=1;}
liusiyu 6:5e9bc6b0d221 62 if (i1==2)
liusiyu 6:5e9bc6b0d221 63 {a=1;b=0;c=1;d=1;e=1;f=1;g=0;}
liusiyu 6:5e9bc6b0d221 64 if (i1==3)
liusiyu 6:5e9bc6b0d221 65 {a=1;b=0;c=1;d=1;e=0;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 66 if (i1==4)
liusiyu 6:5e9bc6b0d221 67 {a=0;b=1;c=1;d=1;e=0;f=0;g=1;}
liusiyu 6:5e9bc6b0d221 68 if (i1==5)
liusiyu 6:5e9bc6b0d221 69 {a=1;b=1;c=1;d=0;e=0;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 70 if (i1==6)
liusiyu 6:5e9bc6b0d221 71 {a=1,b=1;c=1;d=0;e=1;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 72 if (i1==7)
liusiyu 6:5e9bc6b0d221 73 {a=1;b=0;c=0;d=1;e=0;f=0;g=1;}
liusiyu 6:5e9bc6b0d221 74 if (i1==8)
liusiyu 6:5e9bc6b0d221 75 {a=1;b=1;c=1;d=1;e=1;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 76 if (i1==9)
liusiyu 6:5e9bc6b0d221 77 {a=1;b=1;c=1;d=1;e=0;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 78
liusiyu 6:5e9bc6b0d221 79 lcd.line(108,0,126,0,a);
liusiyu 6:5e9bc6b0d221 80 lcd.line(108,0,108,15,b);
liusiyu 6:5e9bc6b0d221 81 lcd.line(108,15,126,15,c);
liusiyu 6:5e9bc6b0d221 82 lcd.line(126,0,126,15,d);
liusiyu 6:5e9bc6b0d221 83 lcd.line(108,15,108,30,e);
liusiyu 6:5e9bc6b0d221 84 lcd.line(108,30,126,30,f);
liusiyu 6:5e9bc6b0d221 85 lcd.line(126,15,126,30,g);
liusiyu 6:5e9bc6b0d221 86
liusiyu 6:5e9bc6b0d221 87 if (j1==0)
liusiyu 6:5e9bc6b0d221 88 {a=1;b=1;c=0;d=1;e=1;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 89 if (j1==1)
liusiyu 6:5e9bc6b0d221 90 {a=0;b=0;c=0;d=1;e=0;f=0;g=1;}
liusiyu 6:5e9bc6b0d221 91 if (j1==2)
liusiyu 6:5e9bc6b0d221 92 {a=1;b=0;c=1;d=1;e=1;f=1;g=0;}
liusiyu 6:5e9bc6b0d221 93 if (j1==3)
liusiyu 6:5e9bc6b0d221 94 {a=1;b=0;c=1;d=1;e=0;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 95 if (j1==4)
liusiyu 6:5e9bc6b0d221 96 {a=0;b=1;c=1;d=1;e=0;f=0;g=1;}
liusiyu 6:5e9bc6b0d221 97 if (j1==5)
liusiyu 6:5e9bc6b0d221 98 {a=1;b=1;c=1;d=0;e=0;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 99
liusiyu 6:5e9bc6b0d221 100 lcd.line(87,0,106,0,a);
liusiyu 6:5e9bc6b0d221 101 lcd.line(87,0,87,15,b);
liusiyu 6:5e9bc6b0d221 102 lcd.line(87,15,106,15,c);
liusiyu 6:5e9bc6b0d221 103 lcd.line(106,0,106,15,d);
liusiyu 6:5e9bc6b0d221 104 lcd.line(87,15,87,30,e);
liusiyu 6:5e9bc6b0d221 105 lcd.line(87,30,106,30,f);
liusiyu 6:5e9bc6b0d221 106 lcd.line(106,15,106,30,g);
liusiyu 6:5e9bc6b0d221 107 }
dreschpe 0:f6a57b843f79 108
liusiyu 6:5e9bc6b0d221 109 void minute1()
liusiyu 6:5e9bc6b0d221 110 {
liusiyu 6:5e9bc6b0d221 111 if (m1==0)
liusiyu 6:5e9bc6b0d221 112 {a=1;b=1;c=0;d=1;e=1;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 113 if (m1==1)
liusiyu 6:5e9bc6b0d221 114 {a=0;b=0;c=0;d=1;e=0;f=0;g=1;}
liusiyu 6:5e9bc6b0d221 115 if (m1==2)
liusiyu 6:5e9bc6b0d221 116 {a=1;b=0;c=1;d=1;e=1;f=1;g=0;}
liusiyu 6:5e9bc6b0d221 117 if (m1==3)
liusiyu 6:5e9bc6b0d221 118 {a=1;b=0;c=1;d=1;e=0;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 119 if (m1==4)
liusiyu 6:5e9bc6b0d221 120 {a=0;b=1;c=1;d=1;e=0;f=0;g=1;}
liusiyu 6:5e9bc6b0d221 121 if (m1==5)
liusiyu 6:5e9bc6b0d221 122 {a=1;b=1;c=1;d=0;e=0;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 123 if (m1==6)
liusiyu 6:5e9bc6b0d221 124 {a=1,b=1;c=1;d=0;e=1;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 125 if (m1==7)
liusiyu 6:5e9bc6b0d221 126 {a=1;b=0;c=0;d=1;e=0;f=0;g=1;}
liusiyu 6:5e9bc6b0d221 127 if (m1==8)
liusiyu 6:5e9bc6b0d221 128 {a=1;b=1;c=1;d=1;e=1;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 129 if (m1==9)
liusiyu 6:5e9bc6b0d221 130 {a=1;b=1;c=1;d=1;e=0;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 131
liusiyu 6:5e9bc6b0d221 132 lcd.line(64,0,82,0,a);
liusiyu 6:5e9bc6b0d221 133 lcd.line(64,0,64,15,b);
liusiyu 6:5e9bc6b0d221 134 lcd.line(64,15,82,15,c);
liusiyu 6:5e9bc6b0d221 135 lcd.line(82,0,82,15,d);
liusiyu 6:5e9bc6b0d221 136 lcd.line(64,15,64,30,e);
liusiyu 6:5e9bc6b0d221 137 lcd.line(64,30,82,30,f);
liusiyu 6:5e9bc6b0d221 138 lcd.line(82,15,82,30,g);
liusiyu 6:5e9bc6b0d221 139
liusiyu 6:5e9bc6b0d221 140 if (n1==0)
liusiyu 6:5e9bc6b0d221 141 {a=1;b=1;c=0;d=1;e=1;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 142 if (n1==1)
liusiyu 6:5e9bc6b0d221 143 {a=0;b=0;c=0;d=1;e=0;f=0;g=1;}
liusiyu 6:5e9bc6b0d221 144 if (n1==2)
liusiyu 6:5e9bc6b0d221 145 {a=1;b=0;c=1;d=1;e=1;f=1;g=0;}
liusiyu 6:5e9bc6b0d221 146 if (n1==3)
liusiyu 6:5e9bc6b0d221 147 {a=1;b=0;c=1;d=1;e=0;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 148 if (n1==4)
liusiyu 6:5e9bc6b0d221 149 {a=0;b=1;c=1;d=1;e=0;f=0;g=1;}
liusiyu 6:5e9bc6b0d221 150 if (n1==5)
liusiyu 6:5e9bc6b0d221 151 {a=1;b=1;c=1;d=0;e=0;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 152
liusiyu 6:5e9bc6b0d221 153 lcd.line(44,0,62,0,a);
liusiyu 6:5e9bc6b0d221 154 lcd.line(44,0,44,15,b);
liusiyu 6:5e9bc6b0d221 155 lcd.line(44,15,62,15,c);
liusiyu 6:5e9bc6b0d221 156 lcd.line(62,0,62,15,d);
liusiyu 6:5e9bc6b0d221 157 lcd.line(44,15,44,30,e);
liusiyu 6:5e9bc6b0d221 158 lcd.line(44,30,62,30,f);
liusiyu 6:5e9bc6b0d221 159 lcd.line(62,15,62,30,g);
dreschpe 0:f6a57b843f79 160 }
liusiyu 6:5e9bc6b0d221 161
liusiyu 6:5e9bc6b0d221 162 void hour1()
liusiyu 6:5e9bc6b0d221 163 {
liusiyu 6:5e9bc6b0d221 164 if (h1==0)
liusiyu 6:5e9bc6b0d221 165 {a=1;b=1;c=0;d=1;e=1;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 166 if (h1==1)
liusiyu 6:5e9bc6b0d221 167 {a=0;b=0;c=0;d=1;e=0;f=0;g=1;}
liusiyu 6:5e9bc6b0d221 168 if (h1==2)
liusiyu 6:5e9bc6b0d221 169 {a=1;b=0;c=1;d=1;e=1;f=1;g=0;}
liusiyu 6:5e9bc6b0d221 170 if (h1==3)
liusiyu 6:5e9bc6b0d221 171 {a=1;b=0;c=1;d=1;e=0;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 172 if (h1==4)
liusiyu 6:5e9bc6b0d221 173 {a=0;b=1;c=1;d=1;e=0;f=0;g=1;}
liusiyu 6:5e9bc6b0d221 174 if (h1==5)
liusiyu 6:5e9bc6b0d221 175 {a=1;b=1;c=1;d=0;e=0;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 176 if (h1==6)
liusiyu 6:5e9bc6b0d221 177 {a=1,b=1;c=1;d=0;e=1;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 178 if (h1==7)
liusiyu 6:5e9bc6b0d221 179 {a=1;b=0;c=0;d=1;e=0;f=0;g=1;}
liusiyu 6:5e9bc6b0d221 180 if (h1==8)
liusiyu 6:5e9bc6b0d221 181 {a=1;b=1;c=1;d=1;e=1;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 182 if (h1==9)
liusiyu 6:5e9bc6b0d221 183 {a=1;b=1;c=1;d=1;e=0;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 184
liusiyu 6:5e9bc6b0d221 185 lcd.line(22,0,40,0,a);
liusiyu 6:5e9bc6b0d221 186 lcd.line(22,0,22,15,b);
liusiyu 6:5e9bc6b0d221 187 lcd.line(22,15,40,15,c);
liusiyu 6:5e9bc6b0d221 188 lcd.line(40,0,40,15,d);
liusiyu 6:5e9bc6b0d221 189 lcd.line(22,15,22,30,e);
liusiyu 6:5e9bc6b0d221 190 lcd.line(22,30,40,30,f);
liusiyu 6:5e9bc6b0d221 191 lcd.line(40,15,40,30,g);
liusiyu 6:5e9bc6b0d221 192
liusiyu 6:5e9bc6b0d221 193 if (r1==0)
liusiyu 6:5e9bc6b0d221 194 {a=1;b=1;c=0;d=1;e=1;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 195 if (r1==1)
liusiyu 6:5e9bc6b0d221 196 {a=0;b=0;c=0;d=1;e=0;f=0;g=1;}
liusiyu 6:5e9bc6b0d221 197 if (r1==2)
liusiyu 6:5e9bc6b0d221 198 {a=1;b=0;c=1;d=1;e=1;f=1;g=0;}
liusiyu 6:5e9bc6b0d221 199 if (r1==3)
liusiyu 6:5e9bc6b0d221 200 {a=1;b=0;c=1;d=1;e=0;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 201 if (r1==4)
liusiyu 6:5e9bc6b0d221 202 {a=0;b=1;c=1;d=1;e=0;f=0;g=1;}
liusiyu 6:5e9bc6b0d221 203 if (r1==5)
liusiyu 6:5e9bc6b0d221 204 {a=1;b=1;c=1;d=0;e=0;f=1;g=1;}
liusiyu 6:5e9bc6b0d221 205
liusiyu 6:5e9bc6b0d221 206 lcd.line(2,0,20,0,a);
liusiyu 6:5e9bc6b0d221 207 lcd.line(2,0,2,15,b);
liusiyu 6:5e9bc6b0d221 208 lcd.line(2,15,20,15,c);
liusiyu 6:5e9bc6b0d221 209 lcd.line(20,0,20,15,d);
liusiyu 6:5e9bc6b0d221 210 lcd.line(2,15,2,30,e);
liusiyu 6:5e9bc6b0d221 211 lcd.line(2,30,20,30,f);
liusiyu 6:5e9bc6b0d221 212 lcd.line(20,15,20,30,g);
liusiyu 6:5e9bc6b0d221 213 }