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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 19285|回復(fù): 32
打印 上一主題 下一主題
收起左側(cè)

電池容量檢測芯片ds2780底層驅(qū)動(STM32源程序與資料)

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:454155 發(fā)表于 2018-12-25 10:44 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
網(wǎng)上看到的1-wire總線的驅(qū)動代碼  給需要幫助的人
制作出來的實(shí)物圖如下:


1991M02X22手上有兩塊華碩手機(jī)的電池,都是報(bào)廢的,已經(jīng)有點(diǎn)鼓了,電池已經(jīng)沒什么容量了,但是里面的保護(hù)板應(yīng)該還是好的
尤其是原廠電池,保護(hù)板應(yīng)該不會偷工減料,就拆了出來準(zhǔn)備留做備用,報(bào)廢電池芯留著是個(gè)隱患,還是早些扔掉的好。
拆完了發(fā)現(xiàn),這個(gè)保護(hù)板有點(diǎn)特別,上面是三個(gè)芯片,兩個(gè)SSOP-8,一個(gè)SOT23-6,而且電池是4線輸出的,
仔細(xì)觀察,一個(gè)芯片上面寫著2780,旁邊還有一個(gè)0.02Ω 電阻,這不是MAXIM的電量計(jì)芯片DS2780嘛,想不到居然在這里碰到了。
DS2780用于測量可充電鋰離子和鋰離子聚合物電池的電壓、溫度和電流,并估算剩余電量。用于計(jì)算的電池特性參數(shù)和應(yīng)用參數(shù)存儲在片上EEPROM中。根據(jù)電流溫度特性、放電速率、存儲電荷與應(yīng)用參數(shù)對可用電量進(jìn)行估算。要知道,有些電池的放電曲線非常平緩,單純靠測量電池端電壓判斷電池容量并不準(zhǔn)確,而這個(gè)芯片可以計(jì)量經(jīng)過電池的電量,充進(jìn)多少電,放出多少電,里面還有多少電,它都能記錄下來,配合設(shè)備上的MCU就可以很精確的知道電池里的剩余電量了。
有點(diǎn)像銀行存款,存入多少,取出多少,賬戶里省多少,一看賬單一清二楚。


就是這么個(gè)保護(hù)板


還剩下一個(gè)電池,先別拆了,通過已經(jīng)拆下的保護(hù)板測出了DS2780的信號線端口,
按此給電池上焊上線,紅色正極,黑色負(fù)極,藍(lán)色數(shù)據(jù)線DQ


DS2780采用1-Wire接口,一根線完成通信,好像是美信的獨(dú)家專利
為了能夠接駁電腦,專門跑去買了一顆UART轉(zhuǎn)1-Wire芯片,DS2480
現(xiàn)做了一個(gè)UART轉(zhuǎn)1-Wire模塊,DS2480目前已經(jīng)停產(chǎn)了,市場上貨源不多
這顆花了我18大洋


上位機(jī)的軟件采用美信官方的DS2780評估板測試軟件
顯示電池電壓,電流,容量等信息,還能對DS2780內(nèi)部EEPROM進(jìn)行讀寫
設(shè)置電池參數(shù)等
接上電,軟件很快就顯示出了電池信息
現(xiàn)在電池空載
電壓3.8552V,電流1.9531mA,剩余容量564.6875mAhr,溫度29.25攝氏度
容量還有大約一半,這個(gè)電池標(biāo)稱是1300mAh的

用萬用表測量了下電池電壓,3.85V,看來還是很準(zhǔn)確的

接了一個(gè)10Ω 10W電阻對電池放電

放電時(shí)軟件顯示的信息

放電半小時(shí)后

又過了大約1小時(shí),放完電了,這個(gè)電池的保護(hù)板在電池電壓降到3.3V左右時(shí)開始保護(hù)
自動切斷電路,空載的電池電壓在3.6V,電池里還剩余大約162mAhr的電量。


下面看看充電,這是USB的5V通過一個(gè)10Ω電阻給鋰電池充電
電流120mA,剩余電量也開始回升



用USB直接充電速度太慢,而且不安全,接入自制的TP4056充電板
設(shè)定的是400mA,顯示385mA,是設(shè)定電阻的誤差引起的



這個(gè)軟件還能記錄文本日志
可以根據(jù)需要調(diào)整采樣時(shí)間
這是記錄下來的電池充放電情況,這里全是放電記錄
充電進(jìn)行中,電池電壓接近4.1V,充電電流明顯下降
可以看出,已經(jīng)充進(jìn)去600mAhr的電量


電池電壓接近4.2V,電流持續(xù)下降中,充入大約800mAhr的電量,按這么算
這個(gè)電池容量在1000mAh左右,是標(biāo)稱容量的76%左右
看起來損耗不多,但是智能手機(jī)已經(jīng)沒法用了


最后是DS2780電路圖,這個(gè)芯片的外圍電路很簡單,而且只需要一根
信號線就可以和上位機(jī)通信了。
查了一下,這個(gè)芯片價(jià)格在15-20元左右,要是熟悉單片機(jī)編程,用這個(gè)芯片來監(jiān)測鋰電池應(yīng)該還是不錯(cuò)的
結(jié)束!謝謝賞評!


STM32單片機(jī)源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "key.h"
  4. #include "sys.h"
  5. #include "lcd.h"
  6. #include "usart.h"         
  7. #include "ds18b20.h"


  8. int main(void)
  9. {         
  10.         u8 t=0;                           
  11.         short temperature;               

  12.         delay_init();                     //延時(shí)函數(shù)初始化         
  13.         NVIC_Configuration();          //設(shè)置NVIC中斷分組2:2位搶占優(yōu)先級,2位響應(yīng)優(yōu)先級
  14.         uart_init(9600);                 //串口初始化為9600
  15.          LED_Init();                             //LED端口初始化
  16.         LCD_Init();                    //LCD初始化
  17.         KEY_Init();                                 //KEY初始化

  18. //          POINT_COLOR=RED;//設(shè)置字體為紅色
  19. //         LCD_ShowString(60,50,200,16,16,"WarShip STM32");        
  20. //         LCD_ShowString(60,70,200,16,16,"DS18B20 TEST");        
  21. //         LCD_ShowString(60,90,200,16,16,"ATOM@ALIENTEK");
  22. //         LCD_ShowString(60,110,200,16,16,"2012/9/12");                  
  23.          
  24.          
  25.          while(DS18B20_Init())        //DS18B20初始化        
  26.         {
  27. //                 LCD_ShowString(60,130,200,16,16,"DS18B20 Error");
  28. //                 delay_ms(200);
  29. //                 LCD_Fill(60,130,239,130+16,WHITE);
  30.                  delay_ms(200);
  31.                 printf("not find");
  32.         }                        
  33. //writeacr();
  34.         
  35. //         LCD_ShowString(60,130,200,16,16,"DS18B20 OK");
  36. //         POINT_COLOR=BLUE;//設(shè)置字體為藍(lán)色
  37. //          LCD_ShowString(60,150,200,16,16,"Temp:   . C");         
  38.         while(1)
  39.         {                        
  40.                  if(t%10==0)//每100ms讀取一次
  41.                 {               
  42.                         printf("\t%d", current());

  43.                         
  44. //                         temperature=DS18B20_Get_Temp();
  45. //                         printf("%d\t",temperature);
  46. //                         if(temperature<0)
  47. //                         {
  48. //                                 LCD_ShowChar(60+40,150,'-',16,0);                        //顯示負(fù)號
  49. //                                 temperature=-temperature;                                        //轉(zhuǎn)為正數(shù)
  50. //                         }else LCD_ShowChar(60+40,150,' ',16,0);                        //去掉負(fù)號
  51. //                         LCD_ShowNum(60+40+8,150,temperature/10,2,16);        //顯示正數(shù)部分            
  52. //                            LCD_ShowNum(60+40+32,150,temperature%10,1,16);        //顯示小數(shù)部分                    
  53.                 }                                   
  54.                  delay_ms(10);
  55.                 t++;
  56.                 if(t==20)
  57.                 {
  58.                         t=0;
  59.                         LED0=!LED0;
  60.                 }
  61.         }
  62. }
復(fù)制代碼


所有程序51hei提供下載(管理提醒:多人貼貼說此文件缺原理圖,請謹(jǐn)慎下載):
電池容量檢測芯片ds2780底層驅(qū)動.rar (4.57 MB, 下載次數(shù): 446)


評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏8 分享淘帖 頂2 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:476111 發(fā)表于 2019-2-13 10:57 | 只看該作者
zhichi  支持
回復(fù)

使用道具 舉報(bào)

板凳
ID:160726 發(fā)表于 2019-2-13 15:37 | 只看該作者
謝謝樓主給出的資料!先學(xué)習(xí)一下
回復(fù)

使用道具 舉報(bào)

地板
ID:418770 發(fā)表于 2019-2-14 22:13 | 只看該作者
好想知道那個(gè)檢查電阻能不能選1豪歐?版主能否告知?
回復(fù)

使用道具 舉報(bào)

5#
ID:146498 發(fā)表于 2019-2-17 19:30 | 只看該作者
謝謝樓主                                 
回復(fù)

使用道具 舉報(bào)

6#
ID:500585 發(fā)表于 2019-3-29 15:09 | 只看該作者
謝謝樓主給出的資料!先學(xué)習(xí)一下
回復(fù)

使用道具 舉報(bào)

7#
ID:497758 發(fā)表于 2019-3-31 11:23 | 只看該作者
不錯(cuò),資瓷。
回復(fù)

使用道具 舉報(bào)

8#
ID:211284 發(fā)表于 2019-4-30 16:49 | 只看該作者
樓主,這程序是溫度傳感器的例程,不是電池電量監(jiān)控顯示的吧
回復(fù)

使用道具 舉報(bào)

9#
ID:525679 發(fā)表于 2019-5-1 18:51 | 只看該作者
很不錯(cuò)的diy資料
回復(fù)

使用道具 舉報(bào)

10#
ID:517235 發(fā)表于 2019-5-4 18:05 | 只看該作者
不錯(cuò),進(jìn)來學(xué)習(xí)下
回復(fù)

使用道具 舉報(bào)

11#
ID:532416 發(fā)表于 2019-5-10 18:08 | 只看該作者
有2780和stm32的連接電路圖嗎,有賞哦!
回復(fù)

使用道具 舉報(bào)

12#
ID:430751 發(fā)表于 2019-6-3 20:48 | 只看該作者
我也想學(xué)習(xí)一下這個(gè)如果接24V或者12V電池的話,怎么處理的。希望能分享一個(gè)電路圖
回復(fù)

使用道具 舉報(bào)

13#
ID:559134 發(fā)表于 2019-6-11 15:54 | 只看該作者
學(xué)習(xí)一下
回復(fù)

使用道具 舉報(bào)

14#
ID:149451 發(fā)表于 2019-6-13 10:02 | 只看該作者
不錯(cuò)不錯(cuò),學(xué)習(xí)學(xué)習(xí).................
回復(fù)

使用道具 舉報(bào)

15#
ID:572979 發(fā)表于 2019-8-23 23:00 | 只看該作者
感謝樓主提供這么寶貴的資料
回復(fù)

使用道具 舉報(bào)

16#
ID:622970 發(fā)表于 2019-10-12 17:26 | 只看該作者
怎么下載下來啥都沒有?
回復(fù)

使用道具 舉報(bào)

17#
ID:516629 發(fā)表于 2019-11-13 11:00 | 只看該作者
支持一下樓主
回復(fù)

使用道具 舉報(bào)

18#
ID:105364 發(fā)表于 2019-11-13 11:48 | 只看該作者
好東西,不過分享的代碼好像不對?
回復(fù)

使用道具 舉報(bào)

19#
ID:516629 發(fā)表于 2019-11-21 19:25 | 只看該作者
樓主有DS2780的代碼嗎,還是說DS18B20和DS2780的時(shí)序是一樣的?
回復(fù)

使用道具 舉報(bào)

20#
ID:624444 發(fā)表于 2019-11-22 15:57 | 只看該作者
第一張圖看起來不錯(cuò),不過提供的資料有限還得自己琢磨一下
回復(fù)

使用道具 舉報(bào)

21#
ID:523221 發(fā)表于 2020-1-4 17:19 | 只看該作者
謝謝樓主給出的資料!先學(xué)習(xí)一下
回復(fù)

使用道具 舉報(bào)

22#
ID:478754 發(fā)表于 2020-2-10 13:53 | 只看該作者

謝謝樓主的資料
回復(fù)

使用道具 舉報(bào)

23#
ID:210978 發(fā)表于 2020-2-11 17:13 | 只看該作者
謝謝樓主給出的資料!先學(xué)習(xí)一下
回復(fù)

使用道具 舉報(bào)

24#
ID:406442 發(fā)表于 2020-3-13 10:32 | 只看該作者
感謝樓主分享
回復(fù)

使用道具 舉報(bào)

25#
ID:360864 發(fā)表于 2020-3-27 13:23 | 只看該作者
這個(gè)資料應(yīng)該不錯(cuò)下載下來看看
回復(fù)

使用道具 舉報(bào)

26#
ID:454155 發(fā)表于 2020-5-20 15:05 | 只看該作者
這是在網(wǎng)上看到的  后面我用STC15+0.96OLED 液晶屏+DS2788有做了一款  其實(shí)基本框架不變的
有人問說怎么是DS18B20的 這是我網(wǎng)上找到 使用我只是轉(zhuǎn)發(fā)的
但是1-WIRE通訊的原理差不多 只是時(shí)序不對而已
回復(fù)

使用道具 舉報(bào)

27#
ID:818067 發(fā)表于 2020-9-15 14:30 | 只看該作者
這個(gè)是充放電檢測嗎
回復(fù)

使用道具 舉報(bào)

28#
ID:889234 發(fā)表于 2021-3-7 16:04 | 只看該作者
CBDcbd 發(fā)表于 2019-10-12 17:26
怎么下載下來啥都沒有?

有的,程序在ds18b20.c文件里面,里面有測溫度,電壓和電量的函數(shù)
回復(fù)

使用道具 舉報(bào)

29#
ID:889234 發(fā)表于 2021-3-7 16:05 | 只看該作者
剛下載下來,還沒有試,試了之后再來問問
回復(fù)

使用道具 舉報(bào)

30#
ID:889234 發(fā)表于 2021-3-8 15:54 | 只看該作者
樓主,我試了一下你發(fā)的電量測量DS2780的程序,是沒有問題的,也能正確顯示電量,溫度。但是遇到了一個(gè)新的問題,在初始化的時(shí)候我設(shè)置的ACR電量為2600mAh, 但是如果我后面換了一塊另外的電池,同樣一個(gè)程序的情況下,怎么去測量新的電池的電量?
回復(fù)

使用道具 舉報(bào)

31#
ID:213113 發(fā)表于 2021-3-8 16:30 | 只看該作者
看起來好厲害的感覺,頂一個(gè),51黑有你更精彩!!!
回復(fù)

使用道具 舉報(bào)

32#
ID:909456 發(fā)表于 2021-4-21 09:06 | 只看該作者
請問這個(gè)代碼ds2788通用嗎
回復(fù)

使用道具 舉報(bào)

33#
ID:430492 發(fā)表于 2021-4-24 20:21 | 只看該作者
電池電量顯示,有沒有不記錄充放電電流與電壓和時(shí)間數(shù)值,通過計(jì)算電壓就可大致計(jì)算出剩余容量的算法?
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 毛片a区 | 浴室洗澡偷拍一区二区 | 精品国产乱码久久久久久图片 | 亚洲欧洲精品一区 | 中文字幕1区| 国产亚洲一区精品 | 亚洲成人三区 | 国产精品永久 | 91精品一区二区三区久久久久 | 久久久久免费精品国产小说色大师 | 黄色免费在线观看网址 | 91中文视频 | 色性av| 国内精品久久久久久久影视简单 | 青青草网站在线观看 | 日批av| 一区二区久久 | 国产成人一区二区 | 成人蜜桃av | 另类一区| 久久久久久久一区 | 国产一区不卡 | 夜夜爽99久久国产综合精品女不卡 | 精品综合视频 | 国产精品区二区三区日本 | 91青娱乐在线 | 日韩成人在线观看 | 拍真实国产伦偷精品 | 午夜理伦三级理论三级在线观看 | 91精品国产91久久久久久吃药 | 精品久久久久久久久久久久 | 欧美一区二区三区大片 | 久热久热| 国产成人一区二区三区 | 久久国产福利 | 影音先锋中文字幕在线观看 | 欧美国产亚洲一区二区 | 成人国产在线视频 | 国产精品视频999 | 国产粉嫩尤物极品99综合精品 | 毛片一级片 |