久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: SHT35系列溫濕度傳感器的單片機例程分享 [打印本頁]

作者: jipinxlm    時間: 2018-8-14 13:18
標題: SHT35系列溫濕度傳感器的單片機例程分享
最近采購了一只溫濕度傳感器SHT35,選的防水的那種,一共四根接線:VCC、GND、SDA、SCK從店家那里要的例程給大家分享一下,有需要的可以直接下載。
  1. int main(void){
  2. //==============================================================================
  3.   etError   error;       // error code
  4.   u32t      serialNumber;// serial number
  5.   regStatus status;      // sensor status
  6.   ft        temperature; // temperature [癈]
  7.   ft        humidity;    // relative humidity [%RH]
  8.         bt        heater;      // heater, false: off, true: on

  9.   SystemInit();
  10.   Led_Init();
  11.   UserButton_Init();
  12.         EvalBoardPower_Init();
  13.   
  14.   SHT3X_Init(0x45); // Address: 0x44 = Sensor on EvalBoard connector
  15.                     //          0x45 = Sensor on EvalBoard
  16.   
  17.   // wait 50ms after power on
  18.   DelayMicroSeconds(50000);   
  19.   
  20.   error = SHT3x_ReadSerialNumber(&serialNumber);
  21.   //if(error != NO_ERROR){}
  22.   
  23.   // wait 50ms after serial number read
  24.   DelayMicroSeconds(50000);  
  25.   
  26.   // demonstrate a single shot measurement with clock-stretching
  27.   error = SHT3X_GetTempAndHumi(&temperature, &humidity, REPEATAB_HIGH, MODE_CLKSTRETCH, 50);
  28.   //if(error != NO_ERROR){}
  29.   
  30.   // wait 50ms after measurment
  31.   DelayMicroSeconds(50000);   
  32.   
  33.   // demonstrate a single shot measurement with polling and 50ms timeout
  34.   error = SHT3X_GetTempAndHumi(&temperature, &humidity, REPEATAB_HIGH, MODE_POLLING, 50);
  35.   //if(error != NO_ERROR){}
  36.   
  37.   // wait 50ms after measurment
  38.   DelayMicroSeconds(50000);   
  39.         
  40.         // loop forever
  41.         while(1)
  42.         {
  43.                 error = NO_ERROR;
  44.                
  45.                 // loop while no error
  46.                 while(error == NO_ERROR)
  47.                 {
  48.       // read status register
  49.                         error |= SHT3X_ReadStatus(&status.u16);
  50.       if(error != NO_ERROR) break;
  51.       
  52.       // check if the reset bit is set after a reset or power-up
  53.       if(status.bit.ResetDetected)
  54.       {
  55.         // clear reset flag
  56.         error = SHT3X_ClearAllAlertFlags();
  57.         if(error != NO_ERROR) break;
  58.         
  59.         //start periodic measurement, with high repeatability and 1 measurements per second
  60.         error = SHT3X_StartPeriodicMeasurment(REPEATAB_HIGH, FREQUENCY_1HZ);
  61.         if(error != NO_ERROR) break;
  62.         
  63.         //switch green LED on
  64.         LedGreenOn();
  65.       }
  66.                                 
  67.                         // read measurment buffer
  68.                          error = SHT3X_ReadMeasurementBuffer(&temperature, &humidity);
  69.                   if(error == NO_ERROR)
  70.                         {
  71.         // flash blue LED to signalise new temperature and humidity values
  72.         LedBlueOn();
  73.         DelayMicroSeconds(10000);
  74.         LedBlueOff();
  75.       }
  76.       else if (error == ACK_ERROR)
  77.       {
  78.                                 // there were no new values in the buffer -> ignore this error
  79.                                 error = NO_ERROR;
  80.                         }
  81.       else break;
  82.       
  83.       // read heater status
  84.       heater = status.bit.HeaterStatus ? TRUE : FALSE;
  85.                         
  86.       // if the user button is not pressed ...
  87.                         if(ReadUserButton() == 0)
  88.                         {
  89.          // ... and the heater is on
  90.                                  if(heater)
  91.                                  {
  92.                                          // switch off the sensor internal heater
  93.                                          error |= SHT3X_DisbaleHeater();
  94.            if(error != NO_ERROR) break;
  95.                                  }
  96.                         }
  97.                         else
  98.       // if the user button is pressed ...
  99.                         {
  100.          // ... and the heater is off
  101.                                  if(!heater)
  102.                                  {
  103.                                          // switch on the sensor internal heater
  104.                                          error |= SHT3X_EnableHeater();
  105.            if(error != NO_ERROR) break;
  106.                                  }
  107.                         }
  108.                         
  109.                         // wait 100ms
  110.       DelayMicroSeconds(100000);
  111.                 }
  112.                
  113.                 // in case of an error ...
  114.                
  115.                 // ... switch green and blue LED off
  116.                 LedGreenOff();
  117.                 LedBlueOff();
  118.                
  119.                 // ... try first a soft reset ...
  120.                 error = SHT3X_SoftReset();
  121.                
  122.     // ... if the soft reset fails, do a hard reset
  123.                 if(error != NO_ERROR)
  124.                 {
  125.                         SHT3X_HardReset();
  126.     }
  127.    
  128.     // flash green LED to signalise an error
  129.     LedGreenOn();
  130.     DelayMicroSeconds(10000);
  131.     LedGreenOff();
  132.         }
  133. }
復制代碼



HT_AN_SHT3x_Sample_Code_V1_D1.zip

355.76 KB, 下載次數: 114, 下載積分: 黑幣 -5


作者: suzongyao1120    時間: 2018-11-20 16:33
這份代碼原模原樣的我在網上看了到好幾份了,就沒人提出來質疑么?.別一個個廠家拿一份代碼過來不測試就各種發...連I2C_SDA數據線切換讀和寫的時候都沒進行IO口輸入,輸出模式切換的,你們是怎么讀出來的?告訴我,這樣的芯片我想要一堆~~
作者: hpdell    時間: 2019-4-8 16:37
目前正需要這個東東啊,多謝多謝了喲
作者: seeker9738    時間: 2020-7-2 10:34
如果都是官網例程的話,傳個完整的供大家學習,多好,手邊有一個傳上來供大家參考吧,這個是v1.1的啊

Sensirion_Humidity_Sensors_SHT3x_Sample_Code.zip

410.11 KB, 下載次數: 46, 下載積分: 黑幣 -5

官網sht3x例程,stm32f1x mcu,I2c方式讀數


作者: seeker9738    時間: 2020-7-2 10:35
傳了一個官網例程,怎么看不到?
作者: ahu5    時間: 2020-10-30 16:17
代碼不全,官網更詳細
作者: zhxzhx    時間: 2020-11-1 16:34
suzongyao1120 發表于 2018-11-20 16:33
這份代碼原模原樣的我在網上看了到好幾份了,就沒人提出來質疑么?.別一個個廠家拿一份代碼過來不測試就各 ...

51單片機就不需要切換輸入輸出




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 日本在线免费视频 | 在线看中文字幕 | 日韩国产中文字幕 | 北条麻妃一区二区三区在线视频 | 91免费看片| 91亚洲国产成人精品一区二三 | 日韩免费一区 | 成人午夜影院 | 欧美一级α片 | 亚洲一区不卡在线 | 中文字幕在线观看精品 | 亚洲国产一区二区视频 | 97精品国产 | 日本a∨视频 | 精品国产乱码久久久久久丨区2区 | 99福利视频导航 | 成人精品国产一区二区4080 | 久久最新网址 | 国产精品自在线 | 精品九九 | 91麻豆产精品久久久久久夏晴子 | 精品国产乱码久久久 | 国产精品区二区三区日本 | 色婷婷综合久久久中文字幕 | 中文字幕av亚洲精品一部二部 | 人人爽人人草 | 91久久精品日日躁夜夜躁欧美 | 亚洲成人一区 | 久久久看| 中文字幕一区在线 | 国产精品中文字幕在线 | 日本一区二区三区视频在线 | 午夜激情小视频 | 亚洲高清在线观看 | 99视频网站 | 精品视频亚洲 | 九九热最新视频 | 久久久久久成人网 | 亚洲日本欧美 | 成人免费观看男女羞羞视频 | 欧美综合国产精品久久丁香 |