<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 電源與新能源 > 設計應用 > 基于MATLAB的蓄電池充放電監(jiān)測系統(tǒng)

          基于MATLAB的蓄電池充放電監(jiān)測系統(tǒng)

          作者: 時間:2012-03-07 來源:網(wǎng)絡 收藏

          其中A/D轉換比較簡單,不再贅述。主要注意一點,啟動A/D后要等待轉換完成再讀結果,否則讀出的是將上次轉換結果。
          e.jpg
          f.jpg
          3.2 DS18B20程序
          DS18B20的操作分為3個步驟:初始化、ROM命令和DS18B20功能命令。DS18B20的操作時序如圖5所示。從時序圖中可以得出,DS18B20對操作時序要求比較嚴格,否則將導致操作失敗。

          本文引用地址:http://www.ex-cimer.com/article/177783.htm

          g.jpg


          根據(jù)時序圖所示,每讀一位數(shù)據(jù)需要60us延時,為了延時精確,采用的方法是查看匯編語言,計算需要加入的空指令(NOP)個數(shù)。
          根據(jù)時序要求編寫代碼后,有如下統(tǒng)計,啟動溫度轉換時間約為2.5ms,讀溫度時間約為10.25ms,這些時間量都遠小于一個時間片(20ms)的長度,符合要求。為達到12位精度,器件手冊要求兩次啟動溫度轉換時間問隔不得低于750ms。溫度采集1s一次可以實現(xiàn)。讀取溫度任務流程圖如圖6所示。

          h.jpg


          圖6中,SenseNo是指DS18B20的序號,SENSE CNT為器件總數(shù)。讀取不同DS18B20的方法是器件自身的ID,這個ID可以通過程序讀出,但較為繁瑣。為了減輕程序的負擔,我們事先通過其他方式讀出每個器件的ID,讀溫度時直接使用,簡化了任務。



          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();