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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1841|回復: 1
收起左側

stm32溫度傳感器的使用

[復制鏈接]
ID:398578 發表于 2018-9-16 10:57 | 顯示全部樓層 |閱讀模式
#include "adc.h"
#include "delay.h"
//////////////////////////////////////////////////////////////////////////////////                           
//初始化ADC
//這里我們僅以規則通道為例
//我們默認將開啟通道0~3                                                                                                                                          
void  Adc_Init(void)
{        
          GPIO_InitTypeDef  GPIO_InitStructure;
          ADC_InitTypeDef  ADC_InitStructure;
       
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA |RCC_APB2Periph_ADC1        , ENABLE );
        RCC_ADCCLKConfig (RCC_PCLK2_Div6);// 小于14M
        ADC_DeInit (ADC1 );
       
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;                                 //LED0-->PB.5 端口配置
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;                  //推挽輸出
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;                 //IO口速度為50MHz
  GPIO_Init(GPIOA, &GPIO_InitStructure);       
       
        ADC_DeInit (ADC1 );//復位ADC1,將外設 ADC1 的全部寄存器重設為缺省值
       
        ADC_InitStructure.ADC_ContinuousConvMode= DISABLE ;
        ADC_InitStructure.ADC_DataAlign= ADC_DataAlign_Right;
        ADC_InitStructure.ADC_ExternalTrigConv=ADC_ExternalTrigConv_None;
        ADC_InitStructure.ADC_Mode=ADC_Mode_Independent;
        ADC_InitStructure.ADC_NbrOfChannel=1;
        ADC_InitStructure.ADC_ScanConvMode=DISABLE ;
        ADC_Init (ADC1 ,&ADC_InitStructure);
       
        ADC_Cmd (ADC1 ,ENABLE );
       
        ADC_TempSensorVrefintCmd (ENABLE );
       
       
        ADC_ResetCalibration(ADC1);        //使能復位校準  
         
        while(ADC_GetResetCalibrationStatus(ADC1));        //等待復位校準結束
       
        ADC_StartCalibration(ADC1);         //開啟AD校準

        while(ADC_GetCalibrationStatus(ADC1));         //等待校準結束

//        ADC_SoftwareStartConvCmd(ADC1, ENABLE);                //使能指定的ADC1的軟件轉換啟動功能
       
       
}



u16  Get_Adc(u8 ch)
{
ADC_RegularChannelConfig (ADC1 ,ch,1,ADC_SampleTime_239Cycles5);//選擇第幾個規則通道   以及規則通道的順序
ADC_SoftwareStartConvCmd (ADC1 ,ENABLE );
while(!ADC_GetFlagStatus (ADC1 ,ADC_FLAG_EOC));
return ADC_GetConversionValue (ADC1 );

}

u16 Get_Adc_Average(u8 ch,u8 times)
{
u32 temp;
        u8 t;
        for(t=0;t<times ;t++)
        {
                temp+= Get_Adc(ch);
          delay_ms (5);
}

return  temp /times ;

}

u16  T_Get_Adc(u8 ch) //獲得某個通道值  
{
  ADC_RegularChannelConfig (ADC1 ,ch,1,ADC_SampleTime_239Cycles5);
        ADC_SoftwareStartConvCmd (ADC1 ,ENABLE );
        while(!ADC_GetFlagStatus (ADC1 ,ADC_FLAG_EOC ));
        return ADC_GetConversionValue (ADC1 );
               
}

u16  T_Get_Adc_Average(u8 ch,u8 times)//局部變量
{
        u32 temp;
        u8 t;
        for(t=0;t<times ;t++)
        {
        temp +=T_Get_Adc (ch);
        delay_ms(5);
        }
        return temp/times ;
}

short Get_Temprate(void)
{
   u32 adcx;
        short result;
        double temperate;
        adcx =T_Get_Adc_Average(ADC_Channel_16 ,20) ;
        temperate=(float)adcx*(3.3/4096);
        temperate=(1.43-temperate)/0.0043+25;
        result =temperate *=10;
        return result ;


}








回復

使用道具 舉報

ID:1 發表于 2018-9-16 15:55 | 顯示全部樓層
補全原理圖或者詳細說明一下電路連接即可獲得100+黑幣
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 最新av中文字幕 | 欧美区在线 | 狠狠影院 | 国产精品色 | 有码在线 | 国产成人精品免高潮在线观看 | 超碰av免费 | 亚洲国产精品成人 | 久久综合久 | 免费国产精品久久久久久 | 99精品一区二区三区 | 精精国产xxxx视频在线播放7 | 日韩av在线一区二区三区 | 日韩手机在线视频 | 亚洲三区视频 | 99re在线视频 | 一本一道久久a久久精品蜜桃 | 一区二区日韩 | 午夜大片 | 国产精品高潮呻吟久久久久 | 精品久久精品 | 国产精品色婷婷久久58 | 午夜精品一区 | 在线观看日本高清二区 | 亚洲网在线| 国产精品久久久久久久岛一牛影视 | 青青草国产在线观看 | av大片 | 中文字幕福利视频 | 色婷婷一区二区三区四区 | 国产四虎| 黄色国产在线视频 | 91亚洲精选 | 国产成人jvid在线播放 | 在线成人av| 日本精品在线一区 | 日韩在线小视频 | 欧美黄色片在线观看 | 精品日韩一区 | 精品一区久久 | 成年视频在线观看 |