This is an example program to fetch data of DHT11 Sensors
Fork of DHT11_with_Nucleo by
main.cpp@3:6228ab73d420, 2015-01-06 (annotated)
- Committer:
- kaliczp
- Date:
- Tue Jan 06 00:10:33 2015 +0000
- Revision:
- 3:6228ab73d420
- Parent:
- 2:4469aa7f4995
- Child:
- 4:62b680fac6ed
Make a function to initialize DHT11
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kaliczp | 0:e8a1a503d390 | 1 | #include "mbed.h" |
kaliczp | 0:e8a1a503d390 | 2 | |
kaliczp | 2:4469aa7f4995 | 3 | DigitalOut myled(LED1); // Activate LED |
kaliczp | 2:4469aa7f4995 | 4 | DigitalIn mybutton(USER_BUTTON); // Activate button |
kaliczp | 2:4469aa7f4995 | 5 | DigitalInOut data_pin(A0); // Activate digital in |
kaliczp | 0:e8a1a503d390 | 6 | |
kaliczp | 3:6228ab73d420 | 7 | // Function to initialize DHT11 |
kaliczp | 3:6228ab73d420 | 8 | void dht_read(void) { |
kaliczp | 3:6228ab73d420 | 9 | data_pin.output(); // Set A0 as output |
kaliczp | 3:6228ab73d420 | 10 | // Initialize measurement > 18 ms low |
kaliczp | 3:6228ab73d420 | 11 | data_pin = 0; |
kaliczp | 3:6228ab73d420 | 12 | wait_ms(20); |
kaliczp | 3:6228ab73d420 | 13 | // After high and release the pin switch input mode |
kaliczp | 3:6228ab73d420 | 14 | data_pin = 1; |
kaliczp | 3:6228ab73d420 | 15 | data_pin.input(); |
kaliczp | 3:6228ab73d420 | 16 | } |
kaliczp | 3:6228ab73d420 | 17 | |
kaliczp | 0:e8a1a503d390 | 18 | int main() { |
kaliczp | 0:e8a1a503d390 | 19 | while(1) { |
kaliczp | 1:c0c5b5860aa8 | 20 | if (mybutton == 0) { // Button is pressed |
kaliczp | 1:c0c5b5860aa8 | 21 | myled = 1; // LED is ON |
kaliczp | 3:6228ab73d420 | 22 | dht_read(); // Call the function |
kaliczp | 2:4469aa7f4995 | 23 | wait_ms(200); // Wait 0.2 sec till continue. |
kaliczp | 1:c0c5b5860aa8 | 24 | } else { |
kaliczp | 1:c0c5b5860aa8 | 25 | myled = 0; // LED is OFF |
kaliczp | 1:c0c5b5860aa8 | 26 | } |
kaliczp | 0:e8a1a503d390 | 27 | } |
kaliczp | 0:e8a1a503d390 | 28 | } |