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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 4482|回復(fù): 1
收起左側(cè)

STM32F030c8t6單片機(jī)讀取內(nèi)部溫度傳感器值不正確?

[復(fù)制鏈接]
ID:101106 發(fā)表于 2019-3-11 13:32 | 顯示全部樓層 |閱讀模式
這個(gè)是初始化代碼

得到的溫度值都是偏大 譬如室溫是25攝氏度得到的值是65?

哪位大神有成功代碼參考參考?
  1. /* Temperature sensor calibration value address */
  2. #define TEMP30_CAL_ADDR ((uint16_t*) ((uint32_t) 0x1FFFF7B8))
  3. #define VDD_CALIB ((uint32_t) (3300))
  4. #define VDD_APPLI ((uint32_t) (3000))
  5. #define AVG_SLOPE ((uint32_t) (5336)) //AVG_SLOPE in ADC conversion step (@3.3V)/°C multiplied by 1000 for precision on the division
  6. int32_t temperature; /* will contain the temperature in degrees Celsius */
  7. temperature = ((uint32_t) *TEMP30_CAL_ADDR - ((uint32_t) ADC1->DR * VDD_APPLI / VDD_CALIB)) * 1000;
  8. temperature = (temperature / AVG_SLOPE) + 30;
復(fù)制代碼
這個(gè)是參考手冊(cè)里的源碼
  1. static void MX_ADC_Init(void)
  2. {

  3.   ADC_ChannelConfTypeDef sConfig;

  4.   /**Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of conversion) */
  5.   hadc.Instance = ADC1;
  6.   hadc.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4;
  7.   hadc.Init.Resolution = ADC_RESOLUTION_12B;
  8.   
  9.   hadc.Init.SamplingTimeCommon = ADC_SAMPLETIME_239CYCLES_5;
  10.   
  11.   hadc.Init.DataAlign = ADC_DATAALIGN_RIGHT;
  12.   hadc.Init.ScanConvMode = ADC_SCAN_DIRECTION_FORWARD;
  13.   hadc.Init.EOCSelection = ADC_EOC_SINGLE_CONV;
  14.   hadc.Init.LowPowerAutoWait = DISABLE;
  15.   hadc.Init.LowPowerAutoPowerOff = DISABLE;
  16.   hadc.Init.ContinuousConvMode = DISABLE;
  17.   hadc.Init.DiscontinuousConvMode = ENABLE;
  18.   hadc.Init.ExternalTrigConv = ADC_SOFTWARE_START;
  19.   hadc.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE;
  20.   hadc.Init.DMAContinuousRequests = DISABLE;
  21.   hadc.Init.Overrun = ADC_OVR_DATA_PRESERVED;
  22.   /* Initialize ADC peripheral according to the passed parameters */
  23.   if (HAL_ADC_Init(&hadc) != HAL_OK)
  24.   {
  25.     _Error_Handler(__FILE__, __LINE__);
  26.   }

  27.   /* 校正ADC */
  28.   if(HAL_ADCEx_Calibration_Start(&hadc) != HAL_OK)
  29.   {
  30.     _Error_Handler(__FILE__, __LINE__);
  31.   }
  32.   
  33.   /**Configure for the selected ADC regular channel 16 to be converted.*/
  34.   sConfig.Channel = ADC_CHANNEL_TEMPSENSOR;
  35.   if (HAL_ADC_ConfigChannel(&hadc, &sConfig) != HAL_OK)
  36.   {
  37.     _Error_Handler(__FILE__, __LINE__);
  38.   }
  39. }
復(fù)制代碼

回復(fù)

使用道具 舉報(bào)

ID:142059 發(fā)表于 2019-3-11 20:44 來自觸屏版 | 顯示全部樓層
1.芯片內(nèi)部溫度本來就比室溫高,2.內(nèi)部溫度傳感器是低精度的,一般此溫度是用來監(jiān)測(cè)芯片內(nèi)部溫度變化(做參考)而不是它精確的溫度
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 成人在线免费视频观看 | 亚洲一区在线免费观看 | 成人福利视频网站 | 国产精品久久久久免费 | 午夜免费视频 | 综合久久综合久久 | 日韩精品区 | 日韩手机在线看片 | 国产精品视频在线免费观看 | 亚洲日本国产 | 日韩欧美一区二区三区免费观看 | 亚洲精品一二三区 | 日日摸日日添日日躁av | 欧美成人一区二免费视频软件 | 欧美成人精品一区二区男人看 | 日日做夜夜爽毛片麻豆 | 中文字幕在线二区 | 在线观看www| 成人三级在线观看 | 久久久久国色av免费观看性色 | 狠狠操电影 | 天天爽网站| 春色av| 免费黄色成人 | 国产精品国产三级国产aⅴ原创 | 天堂va在线观看 | 国产在视频一区二区三区吞精 | 国产一区二区免费 | 天堂久久一区 | 亚洲日本欧美日韩高观看 | 国产三级电影网站 | 国产一区二区三区在线看 | 亚洲视频在线播放 | 国产综合精品 | 久久精品色视频 | 久久久久久久久99 | 国产成人精品一区 | 欧美中文一区 | 久久一区二区三区四区 | 久久九九免费 | 国产一区二区三区四区三区四 |