SPMA057D January   2018  – June 2022 TM4C1290NCPDT , TM4C1290NCPDT , TM4C1290NCZAD , TM4C1290NCZAD , TM4C1292NCPDT , TM4C1292NCPDT , TM4C1292NCZAD , TM4C1292NCZAD , TM4C1294KCPDT , TM4C1294KCPDT , TM4C1294NCPDT , TM4C1294NCPDT , TM4C1294NCZAD , TM4C1294NCZAD , TM4C1297NCZAD , TM4C1297NCZAD , TM4C1299KCZAD , TM4C1299KCZAD , TM4C1299NCZAD , TM4C1299NCZAD , TM4C129CNCPDT , TM4C129CNCPDT , TM4C129CNCZAD , TM4C129CNCZAD , TM4C129DNCPDT , TM4C129DNCPDT , TM4C129DNCZAD , TM4C129DNCZAD , TM4C129EKCPDT , TM4C129EKCPDT , TM4C129ENCPDT , TM4C129ENCPDT , TM4C129ENCZAD , TM4C129ENCZAD , TM4C129LNCZAD , TM4C129LNCZAD , TM4C129XKCZAD , TM4C129XKCZAD , TM4C129XNCZAD , TM4C129XNCZAD , TMP1826 , TMP1826 , TMP1827 , TMP1827

 

  1.   Abstract
  2.   Trademarks
  3. 1Introduction to 1-Wire
    1. 1.1 Bus Requirements
    2. 1.2 Powering
  4. 2Functional Description
    1. 2.1 Signaling on 1-Wire
    2. 2.2 Address Format of the 1-Wire Device
    3. 2.3 Typical Communication Flow on the 1-Wire Bus
  5. 3Functions Available in TivaWare for C Series for 1-Wire Module
  6. 4Enumeration
    1. 4.1 Legacy Search Algorithm
      1. 4.1.1 Steps of the 3-Bit Search Algorithm
    2. 4.2 Fast Search Algorithm
  7. 5Summary
  8. 6References
  9. 7Revision History

Steps of the 3-Bit Search Algorithm

  1. Reset the bus and look for ATR responses. End the process if there are no devices on the bus.
  2. Send the Search ROM command if an ATR response is received.
  3. Read a bit from the devices on the bus.
  4. Read the complement of the bit in step 3 from the devices.
  5. Check if both the bits are 1. If ‘yes,’ end the process. If ‘no’, continue.
  6. Check if the first read bit is a 0 and the second read bit is a ‘1.’ If ‘yes,’ write 0 onto the bus and go to step 14. If ‘no’, continue.
  7. Check if the first read bit is a 1 and the second read bit is a zero. If ‘yes’, go to step 9. If ‘no’, continue.
  8. Check whether or not ui32BitNumber is equal to i32ConflictBitNumber. If ‘yes’, continue. If ‘no’, go to step 10
  9. Write 1 onto the bus. Go to step 14.
  10. Check whether or not ui32BitNumber is less than i32ConflictBitNumber. If ‘yes’, continue. If ‘no’, go to step 12.
  11. Check whether or not the bit in the ui32BitNumber of the last ROM number is equal to 1. If ‘yes’, go to step 9. If ‘no’, continue.
  12. Write 0 onto the bus.
  13. Update the value of i32LastConflictZeroBitNumber with the ui32BitNumber.
  14. Check whether or not ui32BitNumber is equal to 63. If ‘yes’, go to step 1. If ‘no’, go to step 3.