www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 芯聞號(hào) > 充電吧
[導(dǎo)讀]一、硬件原理電池供電通過兩個(gè)分壓電阻接地,STM32則在兩電阻中間通過ADC檢測(cè)電池電壓。(引腳BAT_DET) 二、ADC通道初始化 //初始化電池檢測(cè)ADC //開

一、硬件原理


電池供電通過兩個(gè)分壓電阻接地,STM32則在兩電阻中間通過ADC檢測(cè)電池電壓。(引腳BAT_DET)

二、ADC通道初始化
//初始化電池檢測(cè)ADC
//開啟ADC1的通道8????
//BatteryCheck---->PB0
void BatteryCheckInit()
{
??
?//先初PB0為模擬輸入
??RCC->APB2ENR|=1<<3; //使能PORTB口時(shí)鐘
??GPIOB->CRL&=0XFFFFFFF0;//PB0????anolog輸入
????//通道8????
????RCC->APB2ENR|=1<<9; //ADC1時(shí)鐘使能????
????RCC->APB2RSTR|=1<<9; //ADC1復(fù)位
????RCC->APB2RSTR&=~(1<<9);//復(fù)位結(jié)束????
????RCC->CFGR&=~(3<<14); //分頻因子清零????
????//SYSCLK/DIV2=12M ADC時(shí)鐘設(shè)置為12M,
????//
????RCC->CFGR|=2<<14; ????
????ADC1->CR1&=0XF0FFFF; //工作模式清零
????ADC1->CR1|=0<<16; //獨(dú)立工作模式
????ADC1->CR1&=~(1<<8); //非掃描模式????
????ADC1->CR2&=~(1<<1); //單次轉(zhuǎn)換模式
????ADC1->CR2&=~(7<<17);????
????ADC1->CR2|=7<<17;???? //軟件控制轉(zhuǎn)換
????ADC1->CR2|=1<<20; //使用用外部觸發(fā)(SWSTART)!!!????必須使用一個(gè)事件來觸發(fā)
????ADC1->CR2&=~(1<<11); //右對(duì)齊????
????ADC1->CR2|=1<<23; //使能溫度傳感器

????ADC1->SQR1&=~(0XF<<20);
????ADC1->SQR1&=0<<20; //1個(gè)轉(zhuǎn)換在規(guī)則序列中 也就是只轉(zhuǎn)換規(guī)則序列1 ????????????
????//設(shè)置通道1的采樣時(shí)間
????ADC1->SMPR2&=~(7<<3); //通道1采樣時(shí)間清空????
?????ADC1->SMPR2|=7<<3; //通道1 ?239.5周期,提高采樣時(shí)間可以提高精確度????

?????ADC1->SMPR1&=~(7<<18); //清除通道16原來的設(shè)置????
????ADC1->SMPR1|=7<<18; //通道16 ?239.5周期,提高采樣時(shí)間可以提高精確度????

????ADC1->CR2|=1<<0;???? //開啟AD轉(zhuǎn)換器????
????ADC1->CR2|=1<<3; //使能復(fù)位校準(zhǔn)
????while(ADC1->CR2&1<<3); //等待校準(zhǔn)結(jié)束 ????????????
??//該位由軟件設(shè)置并由硬件清除。在校準(zhǔn)寄存器被初始化后該位將被清除。 ????????
????ADC1->CR2|=1<<2; //開啟AD校準(zhǔn)????
????while(ADC1->CR2&1<<2); //等待校準(zhǔn)結(jié)束
????//該位由軟件設(shè)置以開始校準(zhǔn),并在校準(zhǔn)結(jié)束時(shí)由硬件清除
??
??Battery.BatReal = 3.95;//單位為v 電池實(shí)際電壓 ?校準(zhǔn)電壓時(shí)修改
??Battery.ADinput = 1.98;//單位為v R15和R17連接處電壓 校準(zhǔn)電壓時(shí)修改
??Battery.ADRef = 3.26;//單位為v 單片機(jī)供電電壓 ? 校準(zhǔn)電壓時(shí)修改
??Battery.Bat_K = Battery.BatReal/Battery.ADinput;//計(jì)算電壓計(jì)算系數(shù)
????Battery.overDischargeCnt = 0;
??
??printf("Batter voltage AD init ...rn");
??
} 1.配置GPIO的時(shí)鐘,模擬輸入模式
2.使能ADC時(shí)鐘,復(fù)位,寫入1結(jié)束復(fù)位。設(shè)置分頻系數(shù),為12M
3.CR1寄存器配置:設(shè)置ADC獨(dú)立模式,非掃描模式
CR2寄存器配置:A/DConverter OFF,軟件控制,使能外部事件轉(zhuǎn)換,設(shè)置右對(duì)齊,使能溫度傳感器
4.SQR1設(shè)置:配置規(guī)則通道轉(zhuǎn)換次數(shù),1次。
5.SMPR2設(shè)置通道1,SMPR1設(shè)置通道16設(shè)置取樣周期239.5
6.開啟AD轉(zhuǎn)換器,先復(fù)位校準(zhǔn),再校準(zhǔn)

三、軟件獲取ADC的值
//獲得ADC值
//ch:通道值 0~16
//返回值:轉(zhuǎn)換結(jié)果
u16 Get_Adc(u8 ch)
{
????//設(shè)置轉(zhuǎn)換序列???? ?????????
????ADC1->SQR3&=0XFFFFFFE0;//規(guī)則序列1 通道ch
????ADC1->SQR3|=ch;???????? ?????????????
????ADC1->CR2|=1<<22; //啟動(dòng)規(guī)則轉(zhuǎn)換通道
????while(!(ADC1->SR&1<<1));//等待轉(zhuǎn)換結(jié)束???? ????
????return ADC1->DR;???????? //返回adc值????
}

//獲取通道ch的轉(zhuǎn)換值,取times次,然后平均
//ch:通道編號(hào)
//times:獲取次數(shù)
//返回值:通道ch的times次轉(zhuǎn)換結(jié)果平均值
u16 Get_Adc_Average(u8 ch,u8 times)
{
????u32 temp_val=0;
????u8 t;
????for(t=0;t<times;t++)
????{
????????temp_val+=Get_Adc(ch);
????}
????return temp_val/times;
}

//得到ADC采樣內(nèi)部溫度傳感器的溫度值
//返回值3位溫度值 XXX*0.1C????
int Get_Temp(void)
{????????????????
????u16 temp_val=0;
????u8 t;
????float temperate;
????for(t=0;t<20;t++)//讀20次,取平均值
????{
????????temp_val+=Get_Adc(16);//溫度傳感器為通道16
????}
????temp_val/=20;
????temperate=(float)temp_val*(3.3/4096);//得到溫度傳感器的電壓值
????temperate=(1.43-temperate)/0.0043+25;//計(jì)算出當(dāng)前溫度值????
????temperate*=10;//擴(kuò)大十倍,使用小數(shù)點(diǎn)后一位
????return (int)temperate;????
}


//返回電池電壓AD值
int GetBatteryAD()
{
?return Get_Adc_Average(8,5);
} 感覺軟件需要封裝,獲取一次,獲取多次平均值,在獲取AD電壓。 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ?

?

? ? ? ? ? ? ?

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉