This is an example program to fetch data of DHT11 Sensors
Fork of DHT11_with_Nucleo by
main.cpp@4:62b680fac6ed, 2015-01-06 (annotated)
- Committer:
- kaliczp
- Date:
- Tue Jan 06 00:48:44 2015 +0000
- Revision:
- 4:62b680fac6ed
- Parent:
- 3:6228ab73d420
- Child:
- 5:76a9332af64c
Let's use UART!
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 | 4:62b680fac6ed | 6 | Serial pc(SERIAL_TX, SERIAL_RX); // Initialize UART connection |
kaliczp | 4:62b680fac6ed | 7 | // Use a terminal program (eg. TeraTerm). |
kaliczp | 0:e8a1a503d390 | 8 | |
kaliczp | 3:6228ab73d420 | 9 | // Function to initialize DHT11 |
kaliczp | 3:6228ab73d420 | 10 | void dht_read(void) { |
kaliczp | 3:6228ab73d420 | 11 | data_pin.output(); // Set A0 as output |
kaliczp | 3:6228ab73d420 | 12 | // Initialize measurement > 18 ms low |
kaliczp | 3:6228ab73d420 | 13 | data_pin = 0; |
kaliczp | 3:6228ab73d420 | 14 | wait_ms(20); |
kaliczp | 3:6228ab73d420 | 15 | // After high and release the pin switch input mode |
kaliczp | 3:6228ab73d420 | 16 | data_pin = 1; |
kaliczp | 4:62b680fac6ed | 17 | data_pin.input(); |
kaliczp | 3:6228ab73d420 | 18 | } |
kaliczp | 3:6228ab73d420 | 19 | |
kaliczp | 0:e8a1a503d390 | 20 | int main() { |
kaliczp | 4:62b680fac6ed | 21 | pc.printf("Read the DHT11 temperature and humidity sensor!\n"); //Welcome message |
kaliczp | 0:e8a1a503d390 | 22 | while(1) { |
kaliczp | 1:c0c5b5860aa8 | 23 | if (mybutton == 0) { // Button is pressed |
kaliczp | 1:c0c5b5860aa8 | 24 | myled = 1; // LED is ON |
kaliczp | 3:6228ab73d420 | 25 | dht_read(); // Call the function |
kaliczp | 2:4469aa7f4995 | 26 | wait_ms(200); // Wait 0.2 sec till continue. |
kaliczp | 1:c0c5b5860aa8 | 27 | } else { |
kaliczp | 1:c0c5b5860aa8 | 28 | myled = 0; // LED is OFF |
kaliczp | 1:c0c5b5860aa8 | 29 | } |
kaliczp | 0:e8a1a503d390 | 30 | } |
kaliczp | 0:e8a1a503d390 | 31 | } |