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.
Fork of DigitCode by
Revision 0:163dfb02ed36, committed 2015-04-14
- Comitter:
- Ridaz
- Date:
- Tue Apr 14 08:34:05 2015 +0000
- Child:
- 1:0f2ba28c2e70
- Commit message:
- ; ;
Changed in this revision
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/fonction.cpp Tue Apr 14 08:34:05 2015 +0000
@@ -0,0 +1,44 @@
+#include "fonction.h"
+int bitToInt(int i)
+{
+ switch (i) {
+ case 1:
+ return 0;
+ // break;
+ case 2:
+ return 1;
+ // break;
+ case 4:
+ return 2;
+ // break;
+ case 8:
+ return 3;
+ // break;
+ case 16:
+ return 4;
+ // break;
+ case 32:
+ return 5;
+ // break;
+ case 64:
+ return 6;
+ // break;
+ case 128:
+ return 7;
+ // break;
+ case 256:
+ return 8;
+ // break;
+ case 512:
+ return 9;
+ // break;
+ case 1024:
+ return -1;
+ // break;
+ case 2048:
+ return -2;
+ // break;
+ default:
+ return -3;
+ }
+}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/fonction.h Tue Apr 14 08:34:05 2015 +0000 @@ -0,0 +1,8 @@ +#define ETAT0 0 +#define NB1 1 +#define NB2 2 +#define NB3 3 +#define FINAL 4 + + +int bitToInt(int );
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp Tue Apr 14 08:34:05 2015 +0000
@@ -0,0 +1,62 @@
+#include "mbed.h"
+#include "fonction.h"
+DigitalOut myled(LED1);
+DigitalOut myled2(LED4);
+BusIn bus(p19, p18,p17,p16,p15,p14,p13,p12,p11,p10,p9,p8);
+int etat = 0;
+int code[] = {1, 2, 3, 4};
+int nPrecedent = -3;
+int n = -3;
+int main()
+{
+ while(1) {
+ nPrecedent = n;
+ n = bus.read();
+ n = bitToInt(n);
+ switch (etat) {
+ case ETAT0:
+ if (n == code[0] && nPrecedent == -3 ) {
+ etat = NB1;
+ myled = 1;
+ myled2 = 0;
+ wait(0.2);
+ }
+ break;
+
+ case NB1:
+ if (n == code[1] && nPrecedent == -3) {
+ etat = NB2;
+ myled = 0;
+ wait(0.2);
+ } else if (n != -3)
+ etat = ETAT0;
+ break;
+
+ case NB2:
+ if (n == code[2] && nPrecedent == -3 ) {
+ etat = NB3;
+ wait(0.2);
+ }
+
+ else if (n != -3)
+ etat = ETAT0;
+ break;
+
+ case NB3:
+ if (n == code[3] && nPrecedent == -3) {
+ etat = FINAL;
+ wait(0.2);
+ } else if (n != -3)
+ etat = ETAT0;
+ break;
+
+ case FINAL:
+ etat = ETAT0;
+ myled2 = 1;
+ wait(5);
+ break;
+
+ }
+ printf("etat = %d | n = %d | nPrecedent = %d\n", etat, n, nPrecedent);
+ }
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed.bld Tue Apr 14 08:34:05 2015 +0000 @@ -0,0 +1,1 @@ +http://mbed.org/users/mbed_official/code/mbed/builds/487b796308b0 \ No newline at end of file
