Temperature Control: NUCLEO-F334R8 + DS18B20 + LCD1602 shield + RELAY and see the results on the PC and on the LCD1602. For more info see here: http://www.emcu.it/NUCLEOevaBoards/mBed/QSG-Mbed-Library.pdf
Dependencies: DS1820 mbed TextLCD
Fork of F334andDS18B20 by
main.cpp@1:5c2c3c1e5093, 2015-12-25 (annotated)
- Committer:
- emcu
- Date:
- Fri Dec 25 16:18:46 2015 +0000
- Revision:
- 1:5c2c3c1e5093
- Parent:
- 0:b6b929b7764c
- Child:
- 2:54ef8b27cbaa
Change A0 to A1
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
emcu | 0:b6b929b7764c | 1 | /** |
emcu | 0:b6b929b7764c | 2 | |
emcu | 0:b6b929b7764c | 3 | By: www.emcu.it |
emcu | 0:b6b929b7764c | 4 | Date: Dec.2015 |
emcu | 0:b6b929b7764c | 5 | Version: 1.0 |
emcu | 0:b6b929b7764c | 6 | Name: F334andDS18B20 |
emcu | 0:b6b929b7764c | 7 | |
emcu | 0:b6b929b7764c | 8 | THE SOFTWARE AND HARDWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, |
emcu | 0:b6b929b7764c | 9 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
emcu | 0:b6b929b7764c | 10 | FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS |
emcu | 0:b6b929b7764c | 11 | OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, |
emcu | 0:b6b929b7764c | 12 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN |
emcu | 0:b6b929b7764c | 13 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
emcu | 0:b6b929b7764c | 14 | |
emcu | 0:b6b929b7764c | 15 | UART Configuration (It is necessary for see the results, we suggest to use TeraTerm on PC) |
emcu | 0:b6b929b7764c | 16 | Baud Rate: 9600 |
emcu | 0:b6b929b7764c | 17 | Data Bit: 8 |
emcu | 0:b6b929b7764c | 18 | Parity: NONE |
emcu | 0:b6b929b7764c | 19 | Stop Bit: 1 |
emcu | 0:b6b929b7764c | 20 | Flow Control: NONE |
emcu | 0:b6b929b7764c | 21 | |
emcu | 0:b6b929b7764c | 22 | This SW is ready to use on the NUCLEO-F334R8. |
emcu | 0:b6b929b7764c | 23 | Connect to the NUCLEO-F334R8, the DS18B20 sensor, see the schematic below. |
emcu | 0:b6b929b7764c | 24 | |
emcu | 0:b6b929b7764c | 25 | DS18B20 front view |
emcu | 0:b6b929b7764c | 26 | __________ |
emcu | 0:b6b929b7764c | 27 | | | |
emcu | 0:b6b929b7764c | 28 | | DS | |
emcu | 0:b6b929b7764c | 29 | | 18B20 | |
emcu | 0:b6b929b7764c | 30 | | | |
emcu | 0:b6b929b7764c | 31 | |__________| |
emcu | 0:b6b929b7764c | 32 | | | | |
emcu | 0:b6b929b7764c | 33 | 1 2 3 |
emcu | 0:b6b929b7764c | 34 | GND DQ VCC (3,3V) |
emcu | 0:b6b929b7764c | 35 | | | |______________ to VCC (3,3V on the NUCLEO-F334R8) |
emcu | 0:b6b929b7764c | 36 | | | _|_ |
emcu | 0:b6b929b7764c | 37 | | | | | |
emcu | 0:b6b929b7764c | 38 | | | | | 4K7 |
emcu | 0:b6b929b7764c | 39 | | | | | |
emcu | 0:b6b929b7764c | 40 | | | -|- |
emcu | 0:b6b929b7764c | 41 | | |___|______________ to A1 (on the NUCLEO-F334R8) |
emcu | 0:b6b929b7764c | 42 | | |
emcu | 0:b6b929b7764c | 43 | | |
emcu | 0:b6b929b7764c | 44 | |______________________ to GND (on the NUCLEO-F334R8) |
emcu | 0:b6b929b7764c | 45 | |
emcu | 0:b6b929b7764c | 46 | This SW is just for only one DS18B20 |
emcu | 0:b6b929b7764c | 47 | This SW is a derivative of:: https://developer.mbed.org/users/Sissors/code/DS1820_HelloWorld/ |
emcu | 0:b6b929b7764c | 48 | On the: https://developer.mbed.org/users/Sissors/code/DS1820_HelloWorld/ there is a multi sensor (DS18B20) example. |
emcu | 0:b6b929b7764c | 49 | |
emcu | 0:b6b929b7764c | 50 | */ |
emcu | 0:b6b929b7764c | 51 | |
emcu | 0:b6b929b7764c | 52 | |
emcu | 0:b6b929b7764c | 53 | // Below there is the Data Pin where is connected the: |
emcu | 0:b6b929b7764c | 54 | // pin.2 (DQ) of the DS18B20 |
emcu | 1:5c2c3c1e5093 | 55 | #define DATA_PIN A1 |
emcu | 0:b6b929b7764c | 56 | |
emcu | 0:b6b929b7764c | 57 | #include "mbed.h" |
emcu | 0:b6b929b7764c | 58 | #include "DS1820.h" |
emcu | 0:b6b929b7764c | 59 | |
emcu | 0:b6b929b7764c | 60 | // Define the PC serial Port |
emcu | 0:b6b929b7764c | 61 | Serial pc(SERIAL_TX, SERIAL_RX); |
emcu | 0:b6b929b7764c | 62 | |
emcu | 0:b6b929b7764c | 63 | // Specify the pin of the NUCLEO-F334R8 where is connected |
emcu | 0:b6b929b7764c | 64 | // the pin.2 (DQ) of the DS18B20. |
emcu | 0:b6b929b7764c | 65 | DS1820 probe(DATA_PIN); |
emcu | 0:b6b929b7764c | 66 | |
emcu | 0:b6b929b7764c | 67 | int main() |
emcu | 0:b6b929b7764c | 68 | { |
emcu | 1:5c2c3c1e5093 | 69 | pc.printf("\r\n\nTemperature measurement made using an NUCLEO-F334R8 and DS18B20 (input on A1). \n\rby: www.emcu.it\n\r\n\r"); |
emcu | 0:b6b929b7764c | 70 | while(1) |
emcu | 0:b6b929b7764c | 71 | { |
emcu | 0:b6b929b7764c | 72 | probe.convertTemperature(true, DS1820::all_devices); //Start temperature conversion, wait until ready |
emcu | 0:b6b929b7764c | 73 | pc.printf("The Temperature is %3.3f Celsius/Centigradi\r\n", probe.temperature()); |
emcu | 0:b6b929b7764c | 74 | wait(1); |
emcu | 0:b6b929b7764c | 75 | } |
emcu | 0:b6b929b7764c | 76 | } |
emcu | 0:b6b929b7764c | 77 | |
emcu | 0:b6b929b7764c | 78 |