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.
Diff: main.cpp
- Revision:
- 14:f632015dde70
- Parent:
- 13:b19e2f833926
- Child:
- 15:41977c40cfbe
--- a/main.cpp Fri Dec 17 17:42:00 2021 +0000 +++ b/main.cpp Sat Dec 18 08:29:22 2021 +0000 @@ -11,16 +11,15 @@ DigitalOut LED(D9); // sortie pour la LED de la carte MicroC //****variables *********************************************************** -int recpt = 0; // variable tampon : arrivée d'un octet de la liaison série +int recpt = 0 ; // tampon : arrivée d'un octet de la liaison série +float inVs = 0.5 ; // pour lire la temperature dans Vs , 0 à 1 pour 0 à 3.3V +float simVs = 0.5 ; // pour lire V potentiomètre pareil , 0 à 1 pour 0 à 3.3V +float outVk = 0.3681; // pour sortir vK, 0,3681 fait Vk = 1.244 ( 20°C +-10mv) +float P = 0.1 ; // tampon de lecture des broches P0 et P1 +int out = 0 ; // variable de sortie à serialiser en duj10 -float inVs = 0.5 ; // variable pour Vs float de 0 à 1 pour 0 à 3.3V -float simVs = 0.5 ; // variable pour V potentiomètre pareil -float outVk = 0.5 ; // varible qui fait Vk = 1.244 ( compense ambiant) -float P = 0.1 ; // tampon de lecture des broches P0 et P1 -int out = 0 ; // variable de sortie à serialiser en duj10 - -//******** sous programmes ( situés ici en bas de page ) -void interrupt(); // lié à la liaison série +//******** détail vers les sous programmes +void interrupt(); // lié à la liaison série ( en bas de page) void init(void) // initialisations hard { @@ -62,8 +61,8 @@ pc.printf("%d", out); // duj10 de la temperature ( de 0 à 333) pc.putc('T'); // fermer et utiliser - // lire le vK - out = 333*outVk ; // mettre dans une echelle 0 à 333 + // LIRE vK + out = 1000*outVk ; // mettre dans une echelle 0 à 1000 pc.putc('D'); // ouvrir transfert pc.printf("%d", out); // duj10 de vK en fait pc.putc('C'); // fermer et utiliser @@ -74,11 +73,15 @@ void interrupt()//"recepteur" à chaque carractère reçut ce programme est activé { // recpt = pc.getc(); + // action sur la LED carte microC if ( recpt == 'l') LED = 1 ; //allumer LED if ( recpt == 'k') LED = 0 ; //eteindre LED - // augmenter ou baisser Vk de 33mv - if ( recpt == 'm') {outVk = outVk - 0.01 ; if ( outVk < 0.11) outVk = 0.1;} - if ( recpt == 'p') {outVk = outVk + 0.01 ; if ( outVk > 0.85) outVk = 0.9;} + // augmenter ou baisser Vk ( compensation en température) + if ( recpt == 'm') {outVk = outVk - 0.02 ; if ( outVk < 0.05) outVk = 0.06;} // 20/1000 + if ( recpt == 'p') {outVk = outVk + 0.02 ; if ( outVk > 0.95) outVk = 0.94;} + if ( recpt == 'r') {outVk = outVk - 0.001 ; if ( outVk < 0.05) outVk = 0.06;} // 1/1000 + if ( recpt == 's') {outVk = outVk + 0.001 ; if ( outVk > 0.95) outVk = 0.94;} + if ( recpt == 't') outVk = 0.3681 ; //vK remis à 20°C (environ ) return; }