Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp
00001 #include "mbed.h" 00002 #include "coffre.h" 00003 00004 00005 00006 00007 // VARIABLE ***************** 00008 00009 extern PwmOut servo; 00010 extern BusIn digicode; 00011 DigitalOut led1(p17); 00012 DigitalOut led2(p18); 00013 Timer t1; 00014 Timer t2; 00015 Timer t3; 00016 int code[4]={2,1,0,3}; 00017 int etat =0; 00018 int N_precedent; 00019 int N; 00020 Serial pc (USBTX,USBRX); 00021 00022 00023 00024 00025 // CODE ************ 00026 00027 00028 int main() 00029 { 00030 servo.period(0.02); 00031 while(1) 00032 { 00033 N_precedent=N; 00034 t3.start(); 00035 if(t3.read()>0.1) 00036 { 00037 N=lireval(); 00038 t3.reset(); 00039 t3.stop(); 00040 } 00041 00042 switch(etat) 00043 { 00044 case 0: 00045 fermer(); 00046 00047 if ( N_precedent==-3 and N == code[0] ) 00048 { 00049 etat=1; 00050 pc.printf("ok1\n\r"); 00051 } 00052 if(N_precedent == -3 and N!=code[0] and N!=-3) 00053 { 00054 etat=5; 00055 t1.reset(); 00056 t1.start(); 00057 00058 } 00059 break; 00060 case 1 : 00061 00062 00063 if ( N_precedent==-3 and N == code[1]) 00064 { 00065 etat=2; 00066 pc.printf("ok2\n\r"); 00067 } 00068 00069 if(N_precedent == -3 and N!=code[1] and N!=-3) 00070 { 00071 etat=5; 00072 t1.reset(); 00073 t1.start(); 00074 } 00075 break; 00076 case 2 : 00077 00078 if( N_precedent==-3 and N == code[2]) 00079 { 00080 etat=3; 00081 pc.printf("ok3\n\r"); 00082 } 00083 if(N_precedent == -3 and N!=code[2] and N!=-3) 00084 { 00085 etat=5; 00086 t1.reset(); 00087 t1.start(); 00088 } 00089 break; 00090 case 3 : 00091 if ( N_precedent==-3 and N == code[3]) 00092 { 00093 etat=4; 00094 pc.printf("bravo c bon msieur\n\r"); 00095 ouvrir(); 00096 wait(5); 00097 t2.reset(); 00098 t2.start(); 00099 } 00100 if(N_precedent == -3 and N!=code[3] and N!=-3) 00101 { 00102 etat=5; 00103 t1.reset(); 00104 t1.start(); 00105 } 00106 break; 00107 00108 case 4: 00109 00110 00111 00112 if(t2.read()>5) 00113 { 00114 etat=0; 00115 } 00116 break; 00117 case 5: 00118 if (t1.read()>1) 00119 { 00120 pc.printf("c faux msieur\n\r"); 00121 etat=0; 00122 } 00123 break; 00124 00125 } 00126 switch(etat) 00127 { 00128 case 0: 00129 led1.write(1); 00130 led2.write(0); 00131 break; 00132 00133 case 1: 00134 led1.write(0); 00135 led2.write(0); 00136 break; 00137 00138 case 2: 00139 led1.write(0); 00140 led2.write(0); 00141 break; 00142 case 3: 00143 break; 00144 case 4: 00145 led1.write(0); 00146 led2.write(1); 00147 break; 00148 } 00149 00150 00151 } 00152 }
Generated on Fri Aug 26 2022 13:44:18 by
1.7.2