欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 這個C語言轉換程序看不明白。有大佬能說明一下都是干什么的,什么作用么? [打印本頁]

作者: liuze1670    時間: 2020-5-24 13:43
標題: 這個C語言轉換程序看不明白。有大佬能說明一下都是干什么的,什么作用么?
uint adc0832(unsigned char CH)
{
  uchar i,test,adval;
  adval = 0x00;
  test = 0x00;
  Clk = 0;      
  DATI = 1;
  _nop_();   _nop_();
  CS = 0;
  _nop_();
  Clk = 1;
  _nop_();  _nop_();
if(CH == 0x00)     
   {
       Clk = 0;
       DATI = 1;   
       _nop_();
       Clk = 1;
       _nop_();  _nop_();

       Clk = 0;
       DATI = 0;   
       _nop_();  _nop_();

       Clk = 1;
       _nop_();
    }
    else
    {
       Clk = 0;
       DATI = 1;  
        _nop_();  _nop_();

       Clk = 1;
        _nop_();  _nop_();

       Clk = 0;
       DATI = 1;  
      _nop_();
      Clk = 1;
      _nop_();
    }
      Clk = 0;   _nop_();

      DATI = 1;
   for( i = 0;i < 8;i++ )   
    {
       _nop_();
       adval <<= 1;
       Clk = 1;
       _nop_();  _nop_();

       Clk = 0;           _nop_();

       if (DATO)
          adval |= 0x01;
      else
          adval |= 0x00;
    }
  for (i = 0; i < 8; i++)  
      {
           test >>= 1;
           if (DATO)
              test |= 0x80;
           else
              test |= 0x00;
          _nop_();
          Clk = 1;
          _nop_();  _nop_();

          Clk = 0;   _nop_();

      }
  if (adval == test)     
     dat = test;
     _nop_();  _nop_();
     CS = 1;      
     DATO = 1;
     Clk = 1;
     return dat;

}


作者: benclee    時間: 2020-5-24 22:37
uint adc0832(unsigned char CH)
{
  uchar i,test,adval;
  adval = 0x00;
  test = 0x00;
  Clk = 0;      
  DATI = 1;
  CS = 0;
  Clk = 1;
if(CH == 0x00) //選擇通道   
   {
       Clk = 0;//這段是選通道0
       DATI = 1;   
       Clk = 1;
       Clk = 0;
       DATI = 0;   
        Clk = 1;
    }
    else
    {
       Clk = 0;//這段是選擇通道1
       DATI = 1;  
       Clk = 1;
       Clk = 0;
       DATI = 1;  
      Clk = 1;
    }
      Clk = 0;  

      DATI = 1;
   for( i = 0;i < 8;i++ )   //讀取8位數據高位在前
    {
        adval <<= 1;
       Clk = 1;
       Clk = 0;  

       if (DATO)
          adval |= 0x01;
      else
          adval |= 0x00;
    }
  for (i = 0; i < 8; i++)  //讀取8位數據低位在前,也就是上面一段反這讀取。
      {
           test >>= 1;
           if (DATO)
              test |= 0x80;
           else
              test |= 0x00;
           Clk = 1;
          Clk = 0;
      }
  if (adval == test)     //進行校驗,如果相同則數據正確,
     dat = test;
      CS = 1;      
     DATO = 1;
     Clk = 1;
     return dat;

}




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1