Read the temperature and humidity from the sensor and print them.
Fork of Program2_TempAndHumidity by
Seeed_Arch_link_TempAndHumidity
Setup
- Connect the Temperature sensor as well as the Servo to the Seeeduino-Arch-Link board, and then connect the board to you PC using the micro-USB cable.
- The board mounts as a mass-storage device (like a USB drive). Verify that you can see it (drive name will be MBED).
- Go to http://developer.mbed.org
- Create an ARM mbed account if you do not have one.
- On the top right corner, click the Compiler button.
An IDE should open. Congratulations!
On Windows: To see debug messages, install the serial driver.
Debug messages: We can talk to the board via a serial port, but you might need some software. Read this doc and install required software (like PuTTY or CoolTermon Windows).
Locally: If you like things locally, you can do so by exporting to a supported toolchain.
I very much recommend to just use the online IDE, as it makes it easier for us, but if you want to continue hacking in the future, this is a nice way.
Seeed_Arch_link_TempAndHumidity
- Go back to the compiler browser window and click F5 to refresh the page.
- Click the Import button, then click "Click Here to import from URL"
- Paste the URL https://developer.mbed.org/teams/znrobotics/code/Seeed_Arch_link_TempAndHumidity/
- Double click to open main.cpp
- We are trying to get the temperature and humidity from the sensor
- Try to finish the code under ' YOUR CODE HERE: read the temperature and humidity
- Now press Compile
- A file downloads ( Seeed_Arch_link_TempAndHumidity.hex)
- Drag the file to the 'MBED' disk
- After flashing, hit the 'Reset' button to start the program.
- With the program running successfully, we can see the temperature and humidity information printed on the terminal (CoolTerm / TeraTerm/ Putty)
main.cpp@0:c12c28a0f9e7, 2014-08-15 (annotated)
- Committer:
- sam_grove
- Date:
- Fri Aug 15 20:59:57 2014 +0000
- Revision:
- 0:c12c28a0f9e7
- Child:
- 2:90b2eb3d14e6
Initial commit
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
sam_grove | 0:c12c28a0f9e7 | 1 | |
sam_grove | 0:c12c28a0f9e7 | 2 | #include "mbed.h" |
sam_grove | 0:c12c28a0f9e7 | 3 | #include "DHT.h" |
sam_grove | 0:c12c28a0f9e7 | 4 | |
sam_grove | 0:c12c28a0f9e7 | 5 | DHT sensor(D4, DHT11); |
sam_grove | 0:c12c28a0f9e7 | 6 | |
sam_grove | 0:c12c28a0f9e7 | 7 | int main() |
sam_grove | 0:c12c28a0f9e7 | 8 | { |
sam_grove | 0:c12c28a0f9e7 | 9 | int error = 0; |
sam_grove | 0:c12c28a0f9e7 | 10 | float h = 0.0f, c = 0.0f, f = 0.0f, k = 0.0f, dp = 0.0f, dpf = 0.0f; |
sam_grove | 0:c12c28a0f9e7 | 11 | |
sam_grove | 0:c12c28a0f9e7 | 12 | while(1) { |
sam_grove | 0:c12c28a0f9e7 | 13 | wait(2.0f); |
sam_grove | 0:c12c28a0f9e7 | 14 | error = sensor.readData(); |
sam_grove | 0:c12c28a0f9e7 | 15 | if (0 == error) { |
sam_grove | 0:c12c28a0f9e7 | 16 | c = sensor.ReadTemperature(CELCIUS); |
sam_grove | 0:c12c28a0f9e7 | 17 | f = sensor.ReadTemperature(FARENHEIT); |
sam_grove | 0:c12c28a0f9e7 | 18 | k = sensor.ReadTemperature(KELVIN); |
sam_grove | 0:c12c28a0f9e7 | 19 | h = sensor.ReadHumidity(); |
sam_grove | 0:c12c28a0f9e7 | 20 | dp = sensor.CalcdewPoint(c, h); |
sam_grove | 0:c12c28a0f9e7 | 21 | dpf = sensor.CalcdewPointFast(c, h); |
sam_grove | 0:c12c28a0f9e7 | 22 | printf("Temperature in Kelvin: %4.2f, Celcius: %4.2f, Farenheit %4.2f\n", k, c, f); |
sam_grove | 0:c12c28a0f9e7 | 23 | printf("Humidity is %4.2f, Dewpoint: %4.2f, Dewpoint fast: %4.2f\n", h, dp, dpf); |
sam_grove | 0:c12c28a0f9e7 | 24 | } else { |
sam_grove | 0:c12c28a0f9e7 | 25 | printf("Error: %d\n", error); |
sam_grove | 0:c12c28a0f9e7 | 26 | } |
sam_grove | 0:c12c28a0f9e7 | 27 | } |
sam_grove | 0:c12c28a0f9e7 | 28 | } |