Individální projekty MPOA

Mikroprocesory s architekturou ARM

Uživatelské nástroje

Nástroje pro tento web


2017:meteostation

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
2017:meteostation [2018/01/14 17:00]
Václav Kadlček
2017:meteostation [2018/01/14 17:53] (aktuální)
Václav Kadlček
Řádek 103: Řádek 103:
 void o2_meas(void) void o2_meas(void)
 { {
-    char concentration[5];//array for concentration +    char concentration[6];//array for concentration 
-    char message[50]; //array for data form sensor+    char message[40]; //array for data form sensor 
 +    char c;
     uint8_t m=0;//​counter     uint8_t m=0;//​counter
     uint8_t i=0;//​counter     uint8_t i=0;//​counter
 +    uint8_t n=0;//​counter
  
-    while (i<50) {+    ​while (c!='​\n'​) { 
 +        if(o2_flux.readable()) { 
 +            c=o2_flux.getc();//​load characters from sensor to be shure to start from beggining of array 
 +        } 
 +    } 
 +    ​while (i<38) { 
         if(o2_flux.readable()) {         if(o2_flux.readable()) {
             message[i]=o2_flux.getc();//​load 50 characters from sensor to array             message[i]=o2_flux.getc();//​load 50 characters from sensor to array
Řádek 114: Řádek 121:
         }         }
     }     }
 +    message[i+1]='​\0';//​insert end char
     while (message[m]!='​%'​) m++; //find % separator for 02 concentration     while (message[m]!='​%'​) m++; //find % separator for 02 concentration
-    if (m<41) { 
         m=m+3; //skip % and space         m=m+3; //skip % and space
-        for(uint8_t ​n=0; n<4; n++) concentration[n]=message[m+n];​ //load data to another array +        for(n=0; n<4; n++) concentration[n]=message[m+n];​ //load data to another array 
-        pc.printf("​Koncentrace O2: %s %%\n\r",​concentration);​ //display array+        concentration[n+1]='​\0';//​insert end char 
 +        pc.printf("​Koncentrace O2: %s %%\r\n", concentration);​ //display array 
 +        pc.printf("​------------------------------------\r\n"​); ​
         wait(1.0);         wait(1.0);
-    ​}+}
 </​code>​ </​code>​
  
Řádek 127: Řádek 135:
  
 ===== Závěr ===== ===== Závěr =====
-Byl vytvořen obslužný program v online prostředí Mbed OS 5 pro desku FRDM-KL25Z. Během vývoje se ovšem vyskytlo několik problémů, asi největší byl ten, že i přes aktualizaci Bootloaderu i FW desky nebylo možné spolehlivě fungovat na Windows 10 a vývojová deska se samovolně odpojovala od PC. Ani aktualizaci Bootloaderu nelze provést bez pc s Win 7 nebo nižším. To bylo vyřešeno až instalací Win 7, pak již vše fungovalo korektně. Další překážka byla displej na 5V logice, toto bylo vyřešeno komunikací s deskou přes virtuální sériový port. Výsledkem je program který vyčte data teploty, vlhkosti, tlaku a koncentrace O2 a zobrazí je v aplikaci ​Putty.+Byl vytvořen obslužný program v online prostředí Mbed OS 5 pro desku FRDM-KL25Z. Během vývoje se ovšem vyskytlo několik problémů, asi největší byl ten, že i přes aktualizaci Bootloaderu i FW desky nebylo možné spolehlivě fungovat na Windows 10 a vývojová deska se samovolně odpojovala od PC. Ani aktualizaci Bootloaderu nelze provést bez pc s Win 7 nebo nižším. To bylo vyřešeno až instalací Win 7, pak již vše fungovalo korektně. Další překážka byla displej na 5V logice, toto bylo vyřešeno komunikací s deskou přes virtuální sériový port. Výsledkem je program který vyčte data teploty, vlhkosti, tlaku a koncentrace O2 a zobrazí je v aplikaci ​PuTTY.
  
 ---- ----
 ===== Video ===== ===== Video =====
  
 +{{youtube>​iSz-r6yf0k0?​medium}}
 ---- ----
 === Zdrojové soubory === === Zdrojové soubory ===
 +{{ :​2017:​meteostanice_uart_kl25z.zip |}}
 === Zdroje === === Zdroje ===
- +[[http://​www.mouser.com/​ds/​2/​682/​Sensirion_Humidity_SHT7x_Datasheet_V5-469726.pdf|SHT-75 Datasheet]]. ​ 
- +[[http://​www.te.com/​commerce/​DocumentDelivery/​DDEController?​Action=srchrtrv&​DocNm=MS5611-01BA03&​DocType=Data+Sheet&​DocLang=English|MS5611 Datasheet]] 
 +[[http://​co2meters.com/​Documentation/​Manuals/​Manual-CM-0201-UV-Flux-Oxygen.pdf|O2 FLUX 25 Datasheet]] 
 +[[https://​os.mbed.com/​users/​nimbusgb/​code/​SHT75/​docs/​db6b417dfa74/​classSHT75.html|Mbed SHT75]] 
 +[[http://​os.mbed.com|Mbed OS home page]]
  
  
2017/meteostation.1515945606.txt.gz · Poslední úprava: 2018/01/14 17:00 autor: Václav Kadlček