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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 18b20測溫c51源程序

          18b20測溫c51源程序

          作者: 時間:2010-12-09 來源:網(wǎng)絡 收藏

          #include reg51.h>
          #includeintrins.h>

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

          #define BUSY1 (DQ1==0)
          sbit DQ1 = P0^4;

          unsigned char idata TMP;
          unsigned char idata TMP_d;
          unsigned char f;
          void wr_ds18_1(char dat);
          unsigned char rd_ds18_1();

          /***************延時程序,單位us,大于10us*************/
          void time_delay(unsigned char time)
          {

          time=time-10;
          time=time/6;
          while(time!=0)time--;
          }


          /*****************************************************/
          /* reset ds */
          /*****************************************************/
          void ds_reset_1(void)
          {
          unsigned char idata count=0;
          DQ1=0;
          time_delay(240);
          time_delay(240);
          DQ1=1;
          return;
          }

          void check_pre_1(void)
          {
          while(DQ1);
          while(~DQ1);

          time_delay(30);
          }


          void read_ROM(void)
          {
          int n;
          ds_reset_1();
          check_pre_1();
          wr_ds18_1(0x33);
          for(n=0;n8;n++){ROM[n]=rd_ds18_1();}
          }


          /*****************************************************/
          /* Read a bit from 1820 位讀取 */
          /*****************************************************/
          bit tmrbit_1(void)
          {
          idata char i=0;
          bit dat;

          DQ1=0;_nop_();

          DQ1=1;

          _nop_();
          _nop_();
          _nop_();
          _nop_();
          _nop_();
          _nop_();
          _nop_();
          _nop_();
          _nop_();
          _nop_();
          _nop_();
          _nop_();
          _nop_();
          _nop_();


          dat = DQ1;

          time_delay(50);

          return dat;
          }


          /*****************************************************/
          /* read a bety from ds 字節(jié)讀取 */
          /*****************************************************/
          unsigned char rd_ds18_1()
          {
          unsigned char idata i,j,dat=0;
          for(i=1;i=8;i++)
          {
          j=tmrbit_1();
          dat=(j(i-1))|dat;
          }
          return dat;
          }


          /*****************************************************/
          /* write a bety from ds 寫字節(jié) */
          /****************************************************/
          void wr_ds18_1(char dat)
          {
          signed char idata i=0;
          unsigned char idata j;
          bit testb;


          上一頁 1 2 下一頁

          關鍵詞: 源程序 c51 測溫 18b20

          評論


          相關推薦

          技術專區(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); })();