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)
Diff: main.cpp
- Revision:
- 5:176e1bc77ec2
- Parent:
- 4:9e198fc36ab5
- Child:
- 6:3b1739d2a2c6
--- a/main.cpp Sat May 28 07:27:23 2016 +0000 +++ b/main.cpp Sat May 28 08:41:37 2016 +0000 @@ -1,37 +1,26 @@ #include "mbed.h" // this tells us to load mbed related functions -#include "DHT.h" // library for the Temp&Humidity sensor - -DHT sensor(p6, DHT11); // used as an ouput for the sensor +#include "DHT22.h" +DHT22 dht22(p6); // this code runs when the microcontroller starts up int main() { int error = 0; - float h = 0.0f, c = 0.0f, f = 0.0f, k = 0.0f, dp = 0.0f, dpf = 0.0f; + float temp, hum; // spin a main loop all the time while(1) { wait(2.0f); // read data from the sensor - error = sensor.readData(); + error = dht22.sample(); // read successfully - if (0 == error) { - // read the temperature in CELCIUS - c = sensor.ReadTemperature(CELCIUS); - - // YOUR CODE HERE: read the temperature in FARENHEIT and KELVIN - - - // read the humidity and do the calculation - h = sensor.ReadHumidity(); - dp = sensor.CalcdewPoint(c, h); - dpf = sensor.CalcdewPointFast(c, h); - - // printf the temperature and the humidity - printf("Temperature in Kelvin: %4.2f, Celcius: %4.2f, Farenheit %4.2f\n", k, c, f); - printf("Humidity is %4.2f, Dewpoint: %4.2f, Dewpoint fast: %4.2f\n", h, dp, dpf); + if (1 == error) { + // YOUR CODE GOES HERE, read temperature and humidity + temp = dht22.getTemperature()/10.0; + hum = dht22.getHumidity()/10.0; + printf("temp: %2.2f , hum:%2.2f \r\n",temp,hum); } else { // read unseccessfully printf("Error: %d\n", error);