version for testing OneWire library

Dependencies:   OneWire mbed

#include "mbed.h"
#include "OneWire.h"
 
OneWire owBus(p21);
 
int main()
{
    char _id[16];
    DeviceAddresses* devAddresses = owBus.getFoundDevAddresses();
    uint8_t foundNum = owBus.getFoundDevNum();
    printf("OneWire: found %d devices\r\n", foundNum);
 
    while(1) {
        OneWireDeviceTemperature::startConversationForAll(&owBus, OWTEMP_11_BIT);
        for (uint8_t i = 0; i < foundNum; i++) {
            OneWireDevice* owDevice = OneWireDeviceFactory::init(&owBus, (*devAddresses)[i]);
            
            if (owDevice->getFamily() != ONEWIRE_DS18B20_FAMILY)    // currently only DS18B20 supports
                continue;
 
            owDevice->generateId(_id);
            printf("OneWire: device #%s = %.4f*C\r\n", _id, (float) owDevice->sendGetCommand(GET_TEMPERATURE));
            delete owDevice;            
        }
        
        wait(5);
    }
 }
Committer:
ivank
Date:
Tue Dec 18 12:03:48 2012 +0000
Revision:
0:8446fa47e6dd
version for testing OneWire library

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ivank 0:8446fa47e6dd 1 #include "mbed.h"
ivank 0:8446fa47e6dd 2 #include "OneWire.h"
ivank 0:8446fa47e6dd 3
ivank 0:8446fa47e6dd 4 OneWire owBus(p21);
ivank 0:8446fa47e6dd 5
ivank 0:8446fa47e6dd 6 int main()
ivank 0:8446fa47e6dd 7 {
ivank 0:8446fa47e6dd 8 char _id[16];
ivank 0:8446fa47e6dd 9 DeviceAddresses* devAddresses = owBus.getFoundDevAddresses();
ivank 0:8446fa47e6dd 10 uint8_t foundNum = owBus.getFoundDevNum();
ivank 0:8446fa47e6dd 11 printf("OneWire: found %d devices\r\n", foundNum);
ivank 0:8446fa47e6dd 12
ivank 0:8446fa47e6dd 13 while(1) {
ivank 0:8446fa47e6dd 14 OneWireDeviceTemperature::startConversationForAll(&owBus, OWTEMP_11_BIT);
ivank 0:8446fa47e6dd 15 for (uint8_t i = 0; i < foundNum; i++) {
ivank 0:8446fa47e6dd 16 OneWireDevice* owDevice = OneWireDeviceFactory::init(&owBus, (*devAddresses)[i]);
ivank 0:8446fa47e6dd 17
ivank 0:8446fa47e6dd 18 if (owDevice->getFamily() != ONEWIRE_DS18B20_FAMILY) // currently only DS18B20 supports
ivank 0:8446fa47e6dd 19 continue;
ivank 0:8446fa47e6dd 20
ivank 0:8446fa47e6dd 21 owDevice->generateId(_id);
ivank 0:8446fa47e6dd 22 printf("OneWire: device #%s = %.4f*C\r\n", _id, (float) owDevice->sendGetCommand(GET_TEMPERATURE));
ivank 0:8446fa47e6dd 23 delete owDevice;
ivank 0:8446fa47e6dd 24 }
ivank 0:8446fa47e6dd 25
ivank 0:8446fa47e6dd 26 wait(5);
ivank 0:8446fa47e6dd 27 }
ivank 0:8446fa47e6dd 28 }