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 00002 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 00003 // // 00004 // Fonctionnement du programme du DS1820 // 00005 // // 00006 // // 00007 // 1) Pour commencer le MBED initial le bus 1-Wire c'est-à-dire : // 00008 // - MBED envoi une impulsion à 0 pendant 480µs minimum // 00009 // - Puis le DS1820 répond avec une impulsion à 0 de 60à 240µs. // 00010 // 2) On utilise la fonction «Search ROM [F0]» qui va permettre au MBED de récupérer tous les numéros // 00011 // de ROM des DS1820 et par la même occasion de savoir combien de DS1820 il y a sur le bus 1-Wire. // 00012 // 3) On fait un reset du bus 1-Wire on envoi le numéro de ROM « 0x10,0x65,0xF2,0x45,0x2,0x8,0x0,0xAE » // 00013 // pour communiquer avec le DS1820 désiré puis on utilise la fonction « Convert Temperature [44] », // 00014 // la valeur de la température est stocké dans le deuxième octet du scratchpad. // 00015 // 4) Puis on va lire dans le scratchpad la valeur de la température stockée dans la variable « temperature » // 00016 // prise par le DS1820. // 00017 // 5) Affichage de la variable « temperature » sur un HyperTerminal grâce à une liaison série. // 00018 // // 00019 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 00020 00021 00022 00023 00024 00025 00026 #include "mbed.h" 00027 #include "DS18S20.h" 00028 00029 00030 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 00031 // // 00032 // Affichage de la temperature // 00033 // // 00034 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 00035 00036 00037 int main() /* debut du programme principal */ 00038 { 00039 00040 float temperature; /* declaration de la variabble 00041 flotante temperature */ 00042 G__MOS_P =1 ; /* initialisation du P-MOS */ 00043 FindDevices(); /* fonction cherchant le nombre de ds1820 00044 et leur numero de serie */ 00045 00046 00047 while (true) /* boucle while infini */ 00048 { 00049 00050 if ( First() ) /* fonction if */ 00051 { 00052 temperature = DS1820_GetTemp(); /* affectation du resultat de la temperature 00053 a la variable temperature */ 00054 pc.printf("\t temp = % +.3g""\xb0""C \r",temperature); /* affichage de la temperature */ 00055 } 00056 } 00057 }
Generated on Thu Jul 14 2022 11:27:35 by
1.7.2