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@0:40a613e7ba83, 2012-05-01 (annotated)
- Committer:
- jeremycevrero
- Date:
- Tue May 01 21:29:55 2012 +0000
- Revision:
- 0:40a613e7ba83
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
jeremycevrero | 0:40a613e7ba83 | 1 | /***********************************************************************************************/ |
jeremycevrero | 0:40a613e7ba83 | 2 | /***********************************************************************************************/ |
jeremycevrero | 0:40a613e7ba83 | 3 | /***************************** Panneau clignotant **********************************************/ |
jeremycevrero | 0:40a613e7ba83 | 4 | /***********************************************************************************************/ |
jeremycevrero | 0:40a613e7ba83 | 5 | /*** CEVRERO AITOUARES GOY *********************************************************************/ |
jeremycevrero | 0:40a613e7ba83 | 6 | /***************************************************************** 2TSSE ***********************/ |
jeremycevrero | 0:40a613e7ba83 | 7 | |
jeremycevrero | 0:40a613e7ba83 | 8 | |
jeremycevrero | 0:40a613e7ba83 | 9 | /** Directives preprocesseur *******************************************************************/ |
jeremycevrero | 0:40a613e7ba83 | 10 | #include "mbed.h" |
jeremycevrero | 0:40a613e7ba83 | 11 | #include "DS18S20.h" |
jeremycevrero | 0:40a613e7ba83 | 12 | #include "APDS_9300.h" |
jeremycevrero | 0:40a613e7ba83 | 13 | |
jeremycevrero | 0:40a613e7ba83 | 14 | /** Definition des entrees/sorties **************************************************************/ |
jeremycevrero | 0:40a613e7ba83 | 15 | DigitalIn switch1(p29);//selection de la sequence |
jeremycevrero | 0:40a613e7ba83 | 16 | DigitalIn switch2(p30);//selection de la sequence |
jeremycevrero | 0:40a613e7ba83 | 17 | PwmOut vert(p25);//sortie pwm |
jeremycevrero | 0:40a613e7ba83 | 18 | PwmOut orange(p26);//sortie pwm |
jeremycevrero | 0:40a613e7ba83 | 19 | PwmOut rouge(p34);//sortie pwm |
jeremycevrero | 0:40a613e7ba83 | 20 | PwmOut contour(p36);//sortie pwm |
jeremycevrero | 0:40a613e7ba83 | 21 | |
jeremycevrero | 0:40a613e7ba83 | 22 | /** Declaration des fonctions *******************************************************************/ |
jeremycevrero | 0:40a613e7ba83 | 23 | void start_9300();// Declaration de la fonction start_9300 |
jeremycevrero | 0:40a613e7ba83 | 24 | void stop_9300();// Declaration de la fonction stop_9300 |
jeremycevrero | 0:40a613e7ba83 | 25 | void read_9300();// Declaration de la fonction read_9300 |
jeremycevrero | 0:40a613e7ba83 | 26 | void init();//initialisation des led |
jeremycevrero | 0:40a613e7ba83 | 27 | void sequence1();//Declaration de la fonction sequence1 |
jeremycevrero | 0:40a613e7ba83 | 28 | void sequence2();//Declaration de la fonction sequence2 |
jeremycevrero | 0:40a613e7ba83 | 29 | void sequence3();//Declaration de la fonction sequence3 |
jeremycevrero | 0:40a613e7ba83 | 30 | void sequence4();//Declaration de la fonction sequence4 |
jeremycevrero | 0:40a613e7ba83 | 31 | void read_temp();//Declaration de la fonction de lecture de la temperature |
jeremycevrero | 0:40a613e7ba83 | 32 | void scrut_sw();// Declaration de la fonction de scrutation des switchs de sequence |
jeremycevrero | 0:40a613e7ba83 | 33 | |
jeremycevrero | 0:40a613e7ba83 | 34 | /** Programme principal *************************************************************************/ |
jeremycevrero | 0:40a613e7ba83 | 35 | /************************************************************************************************/ |
jeremycevrero | 0:40a613e7ba83 | 36 | int main() |
jeremycevrero | 0:40a613e7ba83 | 37 | { |
jeremycevrero | 0:40a613e7ba83 | 38 | init();// initialisation des variables et des signaux pwm |
jeremycevrero | 0:40a613e7ba83 | 39 | while(true) |
jeremycevrero | 0:40a613e7ba83 | 40 | { |
jeremycevrero | 0:40a613e7ba83 | 41 | read_temp();//lecture de la temperature |
jeremycevrero | 0:40a613e7ba83 | 42 | read_9300();//lecture de la luminosite exterieure |
jeremycevrero | 0:40a613e7ba83 | 43 | scrut_sw();//scrutation des switchs de sequence |
jeremycevrero | 0:40a613e7ba83 | 44 | } |
jeremycevrero | 0:40a613e7ba83 | 45 | } |
jeremycevrero | 0:40a613e7ba83 | 46 | |
jeremycevrero | 0:40a613e7ba83 | 47 | /** Fonctions ***********************************************************************************/ |
jeremycevrero | 0:40a613e7ba83 | 48 | /************************************************************************************************/ |
jeremycevrero | 0:40a613e7ba83 | 49 | |
jeremycevrero | 0:40a613e7ba83 | 50 | void sequence1() |
jeremycevrero | 0:40a613e7ba83 | 51 | { |
jeremycevrero | 0:40a613e7ba83 | 52 | contour.write(a); |
jeremycevrero | 0:40a613e7ba83 | 53 | wait(0.5); |
jeremycevrero | 0:40a613e7ba83 | 54 | contour.write(0); |
jeremycevrero | 0:40a613e7ba83 | 55 | wait(0.5); |
jeremycevrero | 0:40a613e7ba83 | 56 | } |
jeremycevrero | 0:40a613e7ba83 | 57 | |
jeremycevrero | 0:40a613e7ba83 | 58 | void sequence2 () |
jeremycevrero | 0:40a613e7ba83 | 59 | { |
jeremycevrero | 0:40a613e7ba83 | 60 | vert.write(a); |
jeremycevrero | 0:40a613e7ba83 | 61 | orange.write(a); |
jeremycevrero | 0:40a613e7ba83 | 62 | rouge.write(a); |
jeremycevrero | 0:40a613e7ba83 | 63 | wait(0.5); |
jeremycevrero | 0:40a613e7ba83 | 64 | vert.write(0); |
jeremycevrero | 0:40a613e7ba83 | 65 | orange.write(0); |
jeremycevrero | 0:40a613e7ba83 | 66 | rouge.write(0); |
jeremycevrero | 0:40a613e7ba83 | 67 | wait(0.5); |
jeremycevrero | 0:40a613e7ba83 | 68 | } |
jeremycevrero | 0:40a613e7ba83 | 69 | |
jeremycevrero | 0:40a613e7ba83 | 70 | void sequence3 () |
jeremycevrero | 0:40a613e7ba83 | 71 | { |
jeremycevrero | 0:40a613e7ba83 | 72 | contour.write(a); |
jeremycevrero | 0:40a613e7ba83 | 73 | wait(0.5); |
jeremycevrero | 0:40a613e7ba83 | 74 | contour.write(0); |
jeremycevrero | 0:40a613e7ba83 | 75 | wait(0.5); |
jeremycevrero | 0:40a613e7ba83 | 76 | vert.write(a); |
jeremycevrero | 0:40a613e7ba83 | 77 | orange.write(a); |
jeremycevrero | 0:40a613e7ba83 | 78 | rouge.write(a); |
jeremycevrero | 0:40a613e7ba83 | 79 | wait(0.5); |
jeremycevrero | 0:40a613e7ba83 | 80 | vert.write(0); |
jeremycevrero | 0:40a613e7ba83 | 81 | orange.write(0); |
jeremycevrero | 0:40a613e7ba83 | 82 | rouge.write(0); |
jeremycevrero | 0:40a613e7ba83 | 83 | wait(0.5); |
jeremycevrero | 0:40a613e7ba83 | 84 | } |
jeremycevrero | 0:40a613e7ba83 | 85 | |
jeremycevrero | 0:40a613e7ba83 | 86 | void sequence4 () |
jeremycevrero | 0:40a613e7ba83 | 87 | { |
jeremycevrero | 0:40a613e7ba83 | 88 | contour.write(a); |
jeremycevrero | 0:40a613e7ba83 | 89 | wait(0.5); |
jeremycevrero | 0:40a613e7ba83 | 90 | contour.write(0); |
jeremycevrero | 0:40a613e7ba83 | 91 | wait(0.5); |
jeremycevrero | 0:40a613e7ba83 | 92 | vert.write(a); |
jeremycevrero | 0:40a613e7ba83 | 93 | wait(0.5); |
jeremycevrero | 0:40a613e7ba83 | 94 | orange.write(a); |
jeremycevrero | 0:40a613e7ba83 | 95 | wait(0.5); |
jeremycevrero | 0:40a613e7ba83 | 96 | rouge.write(a); |
jeremycevrero | 0:40a613e7ba83 | 97 | wait(0.5); |
jeremycevrero | 0:40a613e7ba83 | 98 | vert.write(0); |
jeremycevrero | 0:40a613e7ba83 | 99 | orange.write(0); |
jeremycevrero | 0:40a613e7ba83 | 100 | rouge.write(0); |
jeremycevrero | 0:40a613e7ba83 | 101 | wait(0.5); |
jeremycevrero | 0:40a613e7ba83 | 102 | |
jeremycevrero | 0:40a613e7ba83 | 103 | } |
jeremycevrero | 0:40a613e7ba83 | 104 | void init() |
jeremycevrero | 0:40a613e7ba83 | 105 | { |
jeremycevrero | 0:40a613e7ba83 | 106 | contour.write(0);//initialisation des pwm |
jeremycevrero | 0:40a613e7ba83 | 107 | vert.write(0);//initialisation des pwm |
jeremycevrero | 0:40a613e7ba83 | 108 | orange.write(0);//initialisation des pwm |
jeremycevrero | 0:40a613e7ba83 | 109 | rouge.write(0);//initialisation des pwm |
jeremycevrero | 0:40a613e7ba83 | 110 | a = 0.5;//luminosite de base |
jeremycevrero | 0:40a613e7ba83 | 111 | } |
jeremycevrero | 0:40a613e7ba83 | 112 | |
jeremycevrero | 0:40a613e7ba83 | 113 | void scrut_sw() |
jeremycevrero | 0:40a613e7ba83 | 114 | { |
jeremycevrero | 0:40a613e7ba83 | 115 | if(switch1==0 & switch2==0) |
jeremycevrero | 0:40a613e7ba83 | 116 | { |
jeremycevrero | 0:40a613e7ba83 | 117 | sequence1(); |
jeremycevrero | 0:40a613e7ba83 | 118 | } |
jeremycevrero | 0:40a613e7ba83 | 119 | else |
jeremycevrero | 0:40a613e7ba83 | 120 | { |
jeremycevrero | 0:40a613e7ba83 | 121 | if(switch1==0 & switch2==1) |
jeremycevrero | 0:40a613e7ba83 | 122 | { |
jeremycevrero | 0:40a613e7ba83 | 123 | sequence2(); |
jeremycevrero | 0:40a613e7ba83 | 124 | } |
jeremycevrero | 0:40a613e7ba83 | 125 | else |
jeremycevrero | 0:40a613e7ba83 | 126 | { |
jeremycevrero | 0:40a613e7ba83 | 127 | if(switch1==1 & switch2==0) |
jeremycevrero | 0:40a613e7ba83 | 128 | { |
jeremycevrero | 0:40a613e7ba83 | 129 | sequence3(); |
jeremycevrero | 0:40a613e7ba83 | 130 | } |
jeremycevrero | 0:40a613e7ba83 | 131 | else |
jeremycevrero | 0:40a613e7ba83 | 132 | { |
jeremycevrero | 0:40a613e7ba83 | 133 | if (switch1==1 & switch2==1) |
jeremycevrero | 0:40a613e7ba83 | 134 | { |
jeremycevrero | 0:40a613e7ba83 | 135 | sequence4(); |
jeremycevrero | 0:40a613e7ba83 | 136 | } |
jeremycevrero | 0:40a613e7ba83 | 137 | } |
jeremycevrero | 0:40a613e7ba83 | 138 | } |
jeremycevrero | 0:40a613e7ba83 | 139 | } |
jeremycevrero | 0:40a613e7ba83 | 140 | |
jeremycevrero | 0:40a613e7ba83 | 141 | } |