Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| 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]] | ||