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:af7247fcd74c, 2014-06-15 (annotated)
- Committer:
- arn_beauclair
- Date:
- Sun Jun 15 15:32:04 2014 +0000
- Revision:
- 0:af7247fcd74c
ADS_technologie
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| arn_beauclair | 0:af7247fcd74c | 1 | #include "mbed.h" |
| arn_beauclair | 0:af7247fcd74c | 2 | #include"biblio_prog.h" |
| arn_beauclair | 0:af7247fcd74c | 3 | |
| arn_beauclair | 0:af7247fcd74c | 4 | float TemporisationDemarreur,commandeLimite,comptDem,vitesseMin; |
| arn_beauclair | 0:af7247fcd74c | 5 | int courantLim; |
| arn_beauclair | 0:af7247fcd74c | 6 | int tensionMin, tensionMax; |
| arn_beauclair | 0:af7247fcd74c | 7 | char Etat_Precedant, Etat; |
| arn_beauclair | 0:af7247fcd74c | 8 | int compteur_Demarreur,compteur_Tempo; |
| arn_beauclair | 0:af7247fcd74c | 9 | int tour,tour_par_minute; |
| arn_beauclair | 0:af7247fcd74c | 10 | char Demarreur, moteur, accelerateur; |
| arn_beauclair | 0:af7247fcd74c | 11 | char demInfini, infini,Erreur; |
| arn_beauclair | 0:af7247fcd74c | 12 | Ticker timer; |
| arn_beauclair | 0:af7247fcd74c | 13 | InterruptIn event (p8); |
| arn_beauclair | 0:af7247fcd74c | 14 | Serial pc(USBTX, USBRX); |
| arn_beauclair | 0:af7247fcd74c | 15 | |
| arn_beauclair | 0:af7247fcd74c | 16 | int main() { |
| arn_beauclair | 0:af7247fcd74c | 17 | event.rise(&compteur_vitesse); //creation d'une interruption lors d'un front montant du port 8 |
| arn_beauclair | 0:af7247fcd74c | 18 | Initialisation(); //Initialisation des capteur |
| arn_beauclair | 0:af7247fcd74c | 19 | printf("\n\t\tbonjour\n\n"); // creation d'un message en dirrection d'un ordinateur |
| arn_beauclair | 0:af7247fcd74c | 20 | timer.attach(&boucle,0.1); //creation d'une interruption en fonction d'un timer 0,1ms |
| arn_beauclair | 0:af7247fcd74c | 21 | while(1) { |
| arn_beauclair | 0:af7247fcd74c | 22 | //calibrage tension |
| arn_beauclair | 0:af7247fcd74c | 23 | do{ |
| arn_beauclair | 0:af7247fcd74c | 24 | do |
| arn_beauclair | 0:af7247fcd74c | 25 | { |
| arn_beauclair | 0:af7247fcd74c | 26 | printf("\nLa tension minimum de la batterie:\n\n"); |
| arn_beauclair | 0:af7247fcd74c | 27 | scanf("%d",&tensionMin); |
| arn_beauclair | 0:af7247fcd74c | 28 | printf("\t\t%d",tensionMin); |
| arn_beauclair | 0:af7247fcd74c | 29 | if((tensionMin < 0)||(tensionMin>=100)) |
| arn_beauclair | 0:af7247fcd74c | 30 | printf("\n***Erreur: valeur tension minimum erronner***\n"); |
| arn_beauclair | 0:af7247fcd74c | 31 | }while((tensionMin < 0)||(tensionMin>=100)); |
| arn_beauclair | 0:af7247fcd74c | 32 | printf("\nLa tension maximum de la batterie:\n\n"); |
| arn_beauclair | 0:af7247fcd74c | 33 | scanf("%d",&tensionMax); |
| arn_beauclair | 0:af7247fcd74c | 34 | printf("\t\t%d",tensionMax); |
| arn_beauclair | 0:af7247fcd74c | 35 | if((tensionMax <= tensionMin)||(tensionMax>100)) |
| arn_beauclair | 0:af7247fcd74c | 36 | printf("\n***Erreur: valeurs tensions erronners***\n"); |
| arn_beauclair | 0:af7247fcd74c | 37 | }while((tensionMax <= tensionMin)||(tensionMax>100)); |
| arn_beauclair | 0:af7247fcd74c | 38 | //calibrage courant |
| arn_beauclair | 0:af7247fcd74c | 39 | do{ |
| arn_beauclair | 0:af7247fcd74c | 40 | printf("\nLa limite de courant:\n\n"); |
| arn_beauclair | 0:af7247fcd74c | 41 | scanf("%d",&courantLim); |
| arn_beauclair | 0:af7247fcd74c | 42 | printf("\t\t%d",courantLim); |
| arn_beauclair | 0:af7247fcd74c | 43 | if((courantLim < 0)||(courantLim>=100)) |
| arn_beauclair | 0:af7247fcd74c | 44 | printf("\n***Erreur: valeur courrant erronner***\n"); |
| arn_beauclair | 0:af7247fcd74c | 45 | }while((courantLim < 0)||(courantLim>=100)); |
| arn_beauclair | 0:af7247fcd74c | 46 | //calibrage demarreur |
| arn_beauclair | 0:af7247fcd74c | 47 | |
| arn_beauclair | 0:af7247fcd74c | 48 | do{ |
| arn_beauclair | 0:af7247fcd74c | 49 | printf("\nLa duree du demarreur est elle infini :\n Y si oui, N si non\n\n"); |
| arn_beauclair | 0:af7247fcd74c | 50 | Erreur=getchar(); |
| arn_beauclair | 0:af7247fcd74c | 51 | demInfini= getchar(); |
| arn_beauclair | 0:af7247fcd74c | 52 | printf("\t\t%c",demInfini); |
| arn_beauclair | 0:af7247fcd74c | 53 | if((demInfini==0x59)||(demInfini==1111001)) |
| arn_beauclair | 0:af7247fcd74c | 54 | infini=1; |
| arn_beauclair | 0:af7247fcd74c | 55 | else |
| arn_beauclair | 0:af7247fcd74c | 56 | { |
| arn_beauclair | 0:af7247fcd74c | 57 | if((demInfini==0x6E)||(demInfini==0x4E)) |
| arn_beauclair | 0:af7247fcd74c | 58 | { |
| arn_beauclair | 0:af7247fcd74c | 59 | infini=0; |
| arn_beauclair | 0:af7247fcd74c | 60 | do{ |
| arn_beauclair | 0:af7247fcd74c | 61 | printf("\nLa duree du demarreur :\n\n"); |
| arn_beauclair | 0:af7247fcd74c | 62 | scanf("%f",&TemporisationDemarreur); |
| arn_beauclair | 0:af7247fcd74c | 63 | printf("\t\t%f",TemporisationDemarreur); |
| arn_beauclair | 0:af7247fcd74c | 64 | if((TemporisationDemarreur<0)||(TemporisationDemarreur>30)) |
| arn_beauclair | 0:af7247fcd74c | 65 | printf("\n***Erreur: valeur du demarreur Erronner***\n"); |
| arn_beauclair | 0:af7247fcd74c | 66 | }while((TemporisationDemarreur<0)||(TemporisationDemarreur>30)); |
| arn_beauclair | 0:af7247fcd74c | 67 | } |
| arn_beauclair | 0:af7247fcd74c | 68 | } |
| arn_beauclair | 0:af7247fcd74c | 69 | }while(((demInfini!=0x59)&&(demInfini!=0x79))&&((demInfini!=0x6E)&&(demInfini!=0x4E))); |
| arn_beauclair | 0:af7247fcd74c | 70 | |
| arn_beauclair | 0:af7247fcd74c | 71 | //calibrage limiteur de commande |
| arn_beauclair | 0:af7247fcd74c | 72 | do{ |
| arn_beauclair | 0:af7247fcd74c | 73 | printf("\nLa limite de la commande poignee lors de la recharge:\n\n\tCommande en pourcentage\n\n"); |
| arn_beauclair | 0:af7247fcd74c | 74 | scanf("%f",&commandeLimite); |
| arn_beauclair | 0:af7247fcd74c | 75 | printf("\t\t%f",commandeLimite); |
| arn_beauclair | 0:af7247fcd74c | 76 | if(commandeLimite < 0||commandeLimite>=100) |
| arn_beauclair | 0:af7247fcd74c | 77 | printf("\n***Erreur: valeur commande erronner***\n"); |
| arn_beauclair | 0:af7247fcd74c | 78 | }while((commandeLimite < 0)||(commandeLimite>=100)); |
| arn_beauclair | 0:af7247fcd74c | 79 | //calibrage temporisation |
| arn_beauclair | 0:af7247fcd74c | 80 | do{ |
| arn_beauclair | 0:af7247fcd74c | 81 | printf("\nLa temprorisation entre la detection d'un fort courant et le lancemant du moteur essence:\n---Par defaut elle est a zero---\n\n"); |
| arn_beauclair | 0:af7247fcd74c | 82 | scanf("%f",&comptDem); |
| arn_beauclair | 0:af7247fcd74c | 83 | printf("\t\t%f",comptDem); |
| arn_beauclair | 0:af7247fcd74c | 84 | if((comptDem < 0)||(comptDem>=100)) |
| arn_beauclair | 0:af7247fcd74c | 85 | printf("\n***Erreur: valeur est erronner***\n"); |
| arn_beauclair | 0:af7247fcd74c | 86 | }while((comptDem < 0)||(comptDem>=100)); |
| arn_beauclair | 0:af7247fcd74c | 87 | //calibrage vitesse minimum |
| arn_beauclair | 0:af7247fcd74c | 88 | do{ |
| arn_beauclair | 0:af7247fcd74c | 89 | |
| arn_beauclair | 0:af7247fcd74c | 90 | printf("\nLa vitesse minimum devant etre atteint avant de lancee le moteur essence pour un fort courant:\nPar defaut elle sera de zeros\n\n"); |
| arn_beauclair | 0:af7247fcd74c | 91 | scanf("%f",&vitesseMin); |
| arn_beauclair | 0:af7247fcd74c | 92 | printf("\t\t%f",vitesseMin); |
| arn_beauclair | 0:af7247fcd74c | 93 | if((vitesseMin < 0)||(vitesseMin>=100)) |
| arn_beauclair | 0:af7247fcd74c | 94 | printf("\n***Erreur: valeur est erronner***\n"); |
| arn_beauclair | 0:af7247fcd74c | 95 | }while((vitesseMin < 0)||(vitesseMin>=100)); |
| arn_beauclair | 0:af7247fcd74c | 96 | printf("\n\n\t\tFin des reglage\n\n"); |
| arn_beauclair | 0:af7247fcd74c | 97 | } |
| arn_beauclair | 0:af7247fcd74c | 98 | } |