在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<abbr id="27omo"></abbr>

<menu id="27omo"><dl id="27omo"></dl></menu>
    • <label id="27omo"><tt id="27omo"></tt></label>

      關(guān) 閉

      新聞中心

      EEPW首頁(yè) > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > DSl8820 ROM編碼的一種搜索算法

      DSl8820 ROM編碼的一種搜索算法

      作者: 時(shí)間:2009-09-21 來(lái)源:網(wǎng)絡(luò) 收藏

      首先作如下幾個(gè)定義:對(duì)“兩讀”數(shù)據(jù)為00的位,之后“一寫(xiě)”操作要寫(xiě)的數(shù)據(jù)定義為“00寫(xiě)位”;所有00寫(xiě)位的集合定義為“00寫(xiě)位組”。那么所要解決的問(wèn)題就是:確立一個(gè)00寫(xiě)位組,確保命令能夠到一個(gè)唯一的,并在完成一次搜索后對(duì)00寫(xiě)位組做出更新,以確保下次的搜索命令能夠搜索到一個(gè)唯一的并且不會(huì)搜索到已經(jīng)搜索到的ROM編碼,直到完成總線上所有器件的ROM編碼搜索。
      在給出搜索規(guī)則前再作如下幾個(gè)定義:00寫(xiě)位組中最高ROM編碼位對(duì)應(yīng)的00寫(xiě)位定義為“最高00寫(xiě)位”;00寫(xiě)位組中鄰近最高00寫(xiě)位的00寫(xiě)位定義位“次高00寫(xiě)位”;如果更新后的00寫(xiě)位組不足以搜索到一個(gè)唯一的ROM編碼,則添加新的00寫(xiě)位,這個(gè)新的00寫(xiě)位定義為“新00寫(xiě)位”。
      DS18820 ROM編碼的搜索規(guī)則:
      ①第一次搜索確立一個(gè)00寫(xiě)位組,其中所有00寫(xiě)位全部為0。
      ②每次搜索后更新00寫(xiě)位組并從最高00寫(xiě)位開(kāi)始更新。
      ③00寫(xiě)位組更新規(guī)則:如果最高00寫(xiě)位為0,則改最高00寫(xiě)位為1,更新完成;如果最高00寫(xiě)位為1,則棄去最高00寫(xiě)位并把次高00寫(xiě)位作為新的最高00寫(xiě)位。
      ④如果出現(xiàn)新00寫(xiě)位,新00寫(xiě)位一律為0并作為新的最高00寫(xiě)位。
      ⑤如果0寫(xiě)位組全為1,則搜索所有器件的ROM編碼,搜索結(jié)束。

      本文引用地址:http://www.biyoush.com/article/163566.htm

      3 算法的C51實(shí)現(xiàn)
      對(duì)一條“單線總線”上多片DS18820的ROM編碼搜索與識(shí)別,具體由C51編寫(xiě)的函數(shù)uchar SearchRomID(uchar RomID[n][8])來(lái)實(shí)現(xiàn)。函數(shù)的返回值是總線上查找到的器件個(gè)數(shù),總線上所有器件的ROM編碼存入二維數(shù)組RomID[n][8]。其中n為總線上允許掛器件的最大值,這里取16。
      首先對(duì)程序中的幾個(gè)重要變量做一些說(shuō)明:
      _00wbit:一維數(shù)組,用來(lái)存儲(chǔ)00寫(xiě)位組全部?jī)?nèi)容。它的長(zhǎng)度由總線上允許掛接器件的最大值決定。每寫(xiě)一個(gè)00寫(xiě)位都可以“排除”至少一個(gè)總線上的器件,當(dāng)總線上器件數(shù)為n時(shí),_00wbit數(shù)組的長(zhǎng)度應(yīng)為n-1。當(dāng)然這是最壞情況下的取值,很多情況下_00wbit數(shù)組的長(zhǎng)度小于這個(gè)值,這時(shí)不用的 _00wbit數(shù)組位用2來(lái)填充。
      Rom:一維數(shù)組,臨時(shí)存儲(chǔ)64位ROM編碼。
      b:搜索結(jié)束標(biāo)志位。
      R1、R2:“兩讀”數(shù)據(jù)位。
      編者注:程序略。

      結(jié) 語(yǔ)
      本文提出了一種對(duì)掛接在同一條“單線總線”上的多片DS18B20 ROM編碼的搜索算法,并給出了具體的C51實(shí)現(xiàn)方法,經(jīng)驗(yàn)證完全可行。由于該算法可自動(dòng)識(shí)別總線上的器件個(gè)數(shù),因此實(shí)際運(yùn)用中,在總線上添加和刪除器件都十分靈活,這為多點(diǎn)測(cè)溫帶來(lái)了很大的方便。該算法也適用于其他“單線總線”器件。


      上一頁(yè) 1 2 3 下一頁(yè)

      關(guān)鍵詞: 算法 搜索 編碼 ROM DSl8820

      評(píng)論


      相關(guān)推薦

      技術(shù)專區(qū)

      關(guān)閉