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.
Dependencies: mbed mbed-rtos TextLCD DHT11
main.cpp@0:2988d5981310, 2019-10-23 (annotated)
- Committer:
- marvas
- Date:
- Wed Oct 23 08:18:47 2019 +0000
- Revision:
- 0:2988d5981310
- Child:
- 1:9ae75feba103
sicaklik_mesafe okuma
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| marvas | 0:2988d5981310 | 1 | |
| marvas | 0:2988d5981310 | 2 | #include "mbed.h" |
| marvas | 0:2988d5981310 | 3 | #include "hcsr04.h" |
| marvas | 0:2988d5981310 | 4 | #include "TextLCD.h" |
| marvas | 0:2988d5981310 | 5 | #include "rtos.h" |
| marvas | 0:2988d5981310 | 6 | #include "DHT11.h" |
| marvas | 0:2988d5981310 | 7 | |
| marvas | 0:2988d5981310 | 8 | Thread msf,dht_11; |
| marvas | 0:2988d5981310 | 9 | DHT11 t(D3); |
| marvas | 0:2988d5981310 | 10 | volatile long distance;//bu değişken bütün threadlerde çalışır |
| marvas | 0:2988d5981310 | 11 | volatile char sicaklik,nem; |
| marvas | 0:2988d5981310 | 12 | void sicaklikmetodu() |
| marvas | 0:2988d5981310 | 13 | { |
| marvas | 0:2988d5981310 | 14 | while(1) |
| marvas | 0:2988d5981310 | 15 | { |
| marvas | 0:2988d5981310 | 16 | t.readData(); |
| marvas | 0:2988d5981310 | 17 | sicaklik= t.readTemperature(); |
| marvas | 0:2988d5981310 | 18 | nem=t.readHumidity(); |
| marvas | 0:2988d5981310 | 19 | cout<<"Sicaklik:"<<t.readTemperature()<<" Nem:%"<<t.readHumidity()<<endl; |
| marvas | 0:2988d5981310 | 20 | lcd.locate(0,1); |
| marvas | 0:2988d5981310 | 21 | lcd.printf("S:%c N:%c", sicaklik,nem); |
| marvas | 0:2988d5981310 | 22 | wait(2); |
| marvas | 0:2988d5981310 | 23 | |
| marvas | 0:2988d5981310 | 24 | } |
| marvas | 0:2988d5981310 | 25 | } |
| marvas | 0:2988d5981310 | 26 | void mesafemetodu() |
| marvas | 0:2988d5981310 | 27 | { |
| marvas | 0:2988d5981310 | 28 | while(1) |
| marvas | 0:2988d5981310 | 29 | { |
| marvas | 0:2988d5981310 | 30 | if(distance<50) |
| marvas | 0:2988d5981310 | 31 | { |
| marvas | 0:2988d5981310 | 32 | buzzer=1; |
| marvas | 0:2988d5981310 | 33 | wait(300); |
| marvas | 0:2988d5981310 | 34 | buzzer=0; |
| marvas | 0:2988d5981310 | 35 | wait(300); |
| marvas | 0:2988d5981310 | 36 | } |
| marvas | 0:2988d5981310 | 37 | else |
| marvas | 0:2988d5981310 | 38 | { |
| marvas | 0:2988d5981310 | 39 | buzzer=0; |
| marvas | 0:2988d5981310 | 40 | } |
| marvas | 0:2988d5981310 | 41 | |
| marvas | 0:2988d5981310 | 42 | } |
| marvas | 0:2988d5981310 | 43 | } |
| marvas | 0:2988d5981310 | 44 | TextLCD lcd(D11, D12, D7, D8, D9, D10); // rs, e, d4-d7 |
| marvas | 0:2988d5981310 | 45 | DigitalOut buzzer(A0); |
| marvas | 0:2988d5981310 | 46 | HCSR04 sensor(D5, D6); |
| marvas | 0:2988d5981310 | 47 | int main() { |
| marvas | 0:2988d5981310 | 48 | msf.start(mesafemetodu); |
| marvas | 0:2988d5981310 | 49 | dht_11.start(sicaklikmetodu); |
| marvas | 0:2988d5981310 | 50 | while(1) { |
| marvas | 0:2988d5981310 | 51 | |
| marvas | 0:2988d5981310 | 52 | distance = sensor.distance(); |
| marvas | 0:2988d5981310 | 53 | if( distance<200) |
| marvas | 0:2988d5981310 | 54 | { |
| marvas | 0:2988d5981310 | 55 | printf("Mesafe %d \n",distance); |
| marvas | 0:2988d5981310 | 56 | lcd.locate(0,0); |
| marvas | 0:2988d5981310 | 57 | lcd.printf("Mesafe %dcm",distance); |
| marvas | 0:2988d5981310 | 58 | lcd.printf(" "); |
| marvas | 0:2988d5981310 | 59 | } |
| marvas | 0:2988d5981310 | 60 | wait_ms(200); // 1 sec |
| marvas | 0:2988d5981310 | 61 | |
| marvas | 0:2988d5981310 | 62 | } |
| marvas | 0:2988d5981310 | 63 | } |
| marvas | 0:2988d5981310 | 64 | /* |
| marvas | 0:2988d5981310 | 65 | |
| marvas | 0:2988d5981310 | 66 | |
| marvas | 0:2988d5981310 | 67 | #include "mbed.h" |
| marvas | 0:2988d5981310 | 68 | |
| marvas | 0:2988d5981310 | 69 | DigitalOut trig(D5); |
| marvas | 0:2988d5981310 | 70 | DigitalIn echo(D6); |
| marvas | 0:2988d5981310 | 71 | Timer sure; |
| marvas | 0:2988d5981310 | 72 | float mesafe; |
| marvas | 0:2988d5981310 | 73 | |
| marvas | 0:2988d5981310 | 74 | int main() |
| marvas | 0:2988d5981310 | 75 | { |
| marvas | 0:2988d5981310 | 76 | while(1) |
| marvas | 0:2988d5981310 | 77 | { |
| marvas | 0:2988d5981310 | 78 | trig=0; |
| marvas | 0:2988d5981310 | 79 | wait_us(5); |
| marvas | 0:2988d5981310 | 80 | trig=1; |
| marvas | 0:2988d5981310 | 81 | wait_us(10); |
| marvas | 0:2988d5981310 | 82 | sure.start(); |
| marvas | 0:2988d5981310 | 83 | trig=0; |
| marvas | 0:2988d5981310 | 84 | while(1) |
| marvas | 0:2988d5981310 | 85 | { |
| marvas | 0:2988d5981310 | 86 | if(echo==1) |
| marvas | 0:2988d5981310 | 87 | { |
| marvas | 0:2988d5981310 | 88 | sure.stop(); |
| marvas | 0:2988d5981310 | 89 | break; |
| marvas | 0:2988d5981310 | 90 | } |
| marvas | 0:2988d5981310 | 91 | } |
| marvas | 0:2988d5981310 | 92 | mesafe=sure.read()/58.2; |
| marvas | 0:2988d5981310 | 93 | printf("%f cm \n",mesafe); |
| marvas | 0:2988d5981310 | 94 | sure.reset(); |
| marvas | 0:2988d5981310 | 95 | |
| marvas | 0:2988d5981310 | 96 | } |
| marvas | 0:2988d5981310 | 97 | } |
| marvas | 0:2988d5981310 | 98 | */ |