One Wire Example striped to find sensors only builds using MBED 2 Library

Dependencies:   mbed

Committer:
Roietronics
Date:
Mon Jun 05 21:11:32 2017 +0000
Revision:
0:486c7ab9114b
Initial commit of one wire example for MBED 2

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Roietronics 0:486c7ab9114b 1 /**
Roietronics 0:486c7ab9114b 2 * @file onewire.h
Roietronics 0:486c7ab9114b 3 * @brief library 1-Wire(www.maxim-ic.com)
Roietronics 0:486c7ab9114b 4 * @author Maciej Rajtar (Published 10 May 2010 www.mbed.org)
Roietronics 0:486c7ab9114b 5 * @author Frederic BLANC
Roietronics 0:486c7ab9114b 6 */
Roietronics 0:486c7ab9114b 7
Roietronics 0:486c7ab9114b 8 #ifndef _onewire_
Roietronics 0:486c7ab9114b 9 #define _onewire_
Roietronics 0:486c7ab9114b 10
Roietronics 0:486c7ab9114b 11 //#define DEBUG 1
Roietronics 0:486c7ab9114b 12 //#define DEBUG_L1 1
Roietronics 0:486c7ab9114b 13 #define ONEWIRE_PIN PB_0
Roietronics 0:486c7ab9114b 14
Roietronics 0:486c7ab9114b 15 #define MAXSENSORS 16
Roietronics 0:486c7ab9114b 16
Roietronics 0:486c7ab9114b 17 // rom-code size including CRC
Roietronics 0:486c7ab9114b 18 #define OW_ROMCODE_SIZE 8
Roietronics 0:486c7ab9114b 19
Roietronics 0:486c7ab9114b 20 #define OW_OK 0x00
Roietronics 0:486c7ab9114b 21 #define OW_ERROR 0x01
Roietronics 0:486c7ab9114b 22 #define OW_START_FAIL 0x02
Roietronics 0:486c7ab9114b 23 #define OW_ERROR_CRC 0x03
Roietronics 0:486c7ab9114b 24 #define OW_ERROR_BAD_ID 0x04
Roietronics 0:486c7ab9114b 25 #define OW_BUSY 0x05
Roietronics 0:486c7ab9114b 26
Roietronics 0:486c7ab9114b 27 #define OW_MATCH_ROM 0x55
Roietronics 0:486c7ab9114b 28 #define OW_SKIP_ROM 0xCC
Roietronics 0:486c7ab9114b 29 #define OW_SEARCH_ROM 0xF0
Roietronics 0:486c7ab9114b 30 #define OW_READ_ROM 0x33
Roietronics 0:486c7ab9114b 31 #define OW_CONDITIONAL_SEARCH 0xEC
Roietronics 0:486c7ab9114b 32 #define OW_OVERDRIVE_SKIP_ROM 0x3C
Roietronics 0:486c7ab9114b 33 #define OW_OVERDRIVE_MATCH_ROM 0x69
Roietronics 0:486c7ab9114b 34
Roietronics 0:486c7ab9114b 35 #define OW_SHORT_CIRCUIT 0xFF
Roietronics 0:486c7ab9114b 36 #define OW_SEARCH_FIRST 0xFF // start new search
Roietronics 0:486c7ab9114b 37 #define OW_PRESENCE_ERR 0x01
Roietronics 0:486c7ab9114b 38 #define OW_DATA_ERR 0xFE
Roietronics 0:486c7ab9114b 39 #define OW_LAST_DEVICE 0x00 // last device found
Roietronics 0:486c7ab9114b 40 // 0x01 ... 0x40: continue searching
Roietronics 0:486c7ab9114b 41 uint8_t search_sensors(uint8_t *nSensors,uint8_t *gSensorIDs );
Roietronics 0:486c7ab9114b 42 uint8_t ow_PullUp(void);
Roietronics 0:486c7ab9114b 43 uint8_t ow_show_id( uint8_t id[], size_t n ,char *text);
Roietronics 0:486c7ab9114b 44 uint8_t ow_test_pin (void);
Roietronics 0:486c7ab9114b 45 uint8_t ow_reset(void);
Roietronics 0:486c7ab9114b 46 uint8_t ow_rom_search( uint8_t diff, uint8_t id[] );
Roietronics 0:486c7ab9114b 47 uint8_t ow_command( uint8_t command, uint8_t id[] );
Roietronics 0:486c7ab9114b 48 uint8_t ow_find_sensor(uint8_t *diff, uint8_t id[]);
Roietronics 0:486c7ab9114b 49 uint8_t ow_parasite_enable(void);
Roietronics 0:486c7ab9114b 50 uint8_t ow_parasite_disable(void);
Roietronics 0:486c7ab9114b 51 uint8_t ow_bit_io( uint8_t b );
Roietronics 0:486c7ab9114b 52 uint8_t ow_byte_wr( uint8_t b );
Roietronics 0:486c7ab9114b 53 uint8_t ow_byte_rd( void );
Roietronics 0:486c7ab9114b 54
Roietronics 0:486c7ab9114b 55
Roietronics 0:486c7ab9114b 56 #endif