




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、以AT89S52單片機為核心日勺智能充電器設計與實現項目可行性研究報告目錄摘要(.4).關鍵詞(.4).Abstract(.錯誤!未定義書簽。) TOC o 1-5 h z Key words.4)前言.5.).緒論.5.).1.1課題研究日勺背景.6.)1.1.1課題研究日勺意義 .1.2課題研究日勺主要工作 (.7.)2充電技術(.7.).2種電池日勺充電特性.式)2.1.1銳氫/銳鎘電池充電模式 皿.)2.1.2鋰離子電池日勺特點及充電方式 .8 )2.2智能充電器.10)2.3設計日勺功能模塊 .1.0)2.3.1單片機模塊.10)2.3.2充電過程控制模塊 .10)2.3.3充電電壓
2、提供模塊 .11 )2.3.4光耦模塊.11)2.3.5電壓測試模塊(.1.3)3設計方案充電過程.1.3)預充(.13.)快充(.14.)滿充.14.)斷電.14.)報警.15.)4 鋰離子電池充電器硬件設計 .1.5)4.1單片機電路.15 )4.1.1 AT89S52 .16 )4.2充電部分(.1.9.) TOC o 1-5 h z 4.4光耦控制部分(22)5鋰離子電池充電器軟件設計 .23)5.1程序功能(23.)5.2程序流程圖.23 )5.3程序代碼及說明 .25)附錄.59)致謝.61.)參考文獻.62.)摘 要:隨著移動電話用戶數量日勺不斷增長,相應日勺電池和電池充電器需求
3、也將會有較大日勺增加。電子技術。日勺快速發展使得人們對高性能、小尺寸、重量輕。日勺智能電池充電器日勺需求也越來越大。目前,使用較多E勺是、銳鎘電池(Nicd )、銳氫電池(NiMH )和鋰離子電池。由于不同類型電池日勺充電特性不同,通常對不同類型,其至不同容量等級和電壓日勺電池使用不同充電器,實際使用中會帶來諸多不便。于是 設計一種以AT89S52單片機為核心日勺智能充電器,較好地解決了上述電池日勺充電 問題。在設計上,選擇了簡潔、高效日勺系統硬件,包括單片機電路、充電控制電路、 電壓轉換及光耦隔離電路。實踐證明,設計。)日勺充電器功耗低、成本低、系統工作穩定 可靠,智能化程度高,具有推廣價值
4、。關鍵詞:智能充電器;AT89S52單片機;硬件構成前言現在社會信息化E勺不斷加快,人們對自己使用E勺各種家電設備、儀表以及工業生產 中日勺數據采集與控制設備要求很高。尤其隨著手機在世界范圍內O0W及,手機電池 充電器日勺使用越來越廣泛日勺時候人們對高性能、小尺寸、重量輕日勺智能電池充電 器日勺需求也越來越大,所以智能充電器有它日勺巨大發展空間。所謂智能充電器是、單片機參與處理和控制H勺充電器,能根據用戶日勺需要自主選擇 充電方式,并且在充電過程中能對被充電電池進行保護從而防止過電壓、電流和溫度過 高CDH勺一種智能化充電器。該智能充電器具有檢測鋰離子電池日勺狀態;自動切換充電 模式以滿足充電
5、電池日勺充電需要;充電器短路保護功能;充電狀態顯示日勺功能。在 生活中更好日勺維護了充電電池,延長了它日勺使用壽命。因此,研究智能充電器日勺 設計及推廣其應用,有著非常現實日勺意義。單片機模塊:實現充電器日勺智能化控制,比如自動斷電、充電完成報警提示等。-充電過程控制模塊:采用專用日勺電池充電芯片實現對充電過程日勺控制。充電電壓提供模塊:采用電壓轉換芯片將外部+12V電壓轉換為需要日勺+5V電 壓。該電壓在送給充電控制模塊之前還需經過一個光耦模塊。C52程序:單片機控制電池充電芯片實現充電過程日勺自動化,并根據充電日勺狀態 給出有關日勺輸出指示。本論文從鋰離子電池技術特性、充電技術、充電器電路
6、結構、充電器典型電路和電池保 護等方面,多角度地闡述了充電技術發展和應用日勺智能化。緒論1.11.1課題研究CDH勺背景社會信息化進程。日勺加快對電力、信息系統。)日勺安全穩定運行提出了更高。日勺要求。而 各種用電設備都離不開可靠日勺電源,如果在工作中間電源中斷,人們日勺生產和生活 都將受到不可估量日勺經濟損失。對于由交流供電日勺用電設備,為了避免出現上述不 利情況,所以要設計一種電源系統,它能不問斷地為人們日勺生產和生活提供以安全和 操作為目。日勺可靠。日勺備用電源。為此,以安全和操作為目。)日勺。)日勺備用電源設備上都 使用可充電池。電池是、一種化學電源,是、通過能量轉換而獲得電能日勺器件
7、。二次電池是、可多次反復 使用。日勺電池,它乂稱為可充電池或蓄電池。二次電池。日勺工作原理:當對二次電池充 電時,電能轉變為化學能,實現向負荷供電,伴隨吸熱過程。普通充電器多采用大電流 日勺快速充電法、在電池充滿后如果不及時結束會使電池發燙,過度日勺充電也會嚴重 損害電池。)日勺壽命。一些低成本。)日勺充電器采用電壓比較法,為了防止過充,一般充電 到90%就停止大電流快充,接著采用小電流涓流補充充電,這樣就使充電時間加長了。 好日勺充電器不但能在短時間內將電量充足,而且對鋰電池起到一定維護作用,修復由 于記憶造成日勺記憶效應。于是、設計出日勺智能充電器是、采用單片機控制00,可以 檢測出電池充
8、電飽和時發出日勺電壓變化信號,比較精確日勺停止充電工作,通過單片 機對充電芯片日勺控制實現充電過程。)日勺智能化,以縮短充電時間,延長電池使用壽命。智能充電器還增加了充電電壓日勺顯示,讓我們能看到電池。日勺預充、快充、滿充充電 階段,從而加強對電池日勺維護。1.1.1課題研究CDH勺意義此課題研究日勺對象主要是、鋰離子電池日勺充電原理和充電控制。鋰離子電池日勺充電設備需要解決日勺問題有:通過單片機日勺控制,簡化外圍電路日勺復雜性,增加自動化管理設置,減輕充電過程。日勺勞動強度和勞動時間,從而使充電器具有更大日勺靈活性、更高日勺可靠性和成本 低。-改善充電控制不合理而造成過充、欠充等問題,提高電
9、池。日勺使用性能和使用壽命。-可以進行充電前處理,包括電池充電狀態日勺鑒定和預處理。-需解決充電時間長、效率低等問題。研究課題日勺意義:-掌握鋰離子電池日勺充放電方式和特點,從中找到最佳充電方式及電池管理途徑。-完善充電設備日 勺適時處理功能和自診斷功能。-實現充電器具備強大日勺功能擴展性,為智能充電器日勺功能升級提供平臺。1.2課題研究CDH勺主要工作本課題主要研究鋰離子電池日勺充放電方法,在此基礎上進行硬件設計和軟件設計,并通過調試結果對充電控制方法測試驗證。為了完成智能充電器日勺設計,我需做如下工作:-了解鋰離子電池日勺特點和在應用中存在日勺主要問題從而分析實現電池日勺充放電方法和智能充
10、電器H勺實現方法,從而選擇合適H勺充電電池芯片。進行硬件電路日勺設計,繪制充電電路原理圖。進行軟件設計,以C語言為開發工具,進行詳細設計和編寫程序代碼。-調試硬件和軟件電路,驗證整個設計。2充電技術2.1 2種電池CDH勺充電特性2.1.1銳氫/銳鎘電池充電模式這2種銳類電池具有相似。日勺充電特性曲線,因而可以用一樣。日勺充電算法。 這2種電池日勺主要充電控制參數為-世 和溫度9.對銳氫/銳鎘電池由預充電到標準充電轉換H勺判據為:單節電池電壓水平0.61V;電池溫度-50oC. 電池飽和充電日勺判據為:電池電壓跌落或接近零增長-N= 615 mV /節;電池最高溫度0max 50 C;電池溫度
11、上升率 d 0/dt 1.0 C / min。由于溫度。)日勺變化 容易受環境影響、因而實際用于判別充電各階段。日勺變量主要為-世、Omax,其中對-V檢測需要有足夠00 A/D分辨率和較高日勺電流穩定度.-少日勺測量與A/D分辨率、充電電流日勺穩定性與電池內阻之間有以下關系:當電池內阻等于50 Q(接近飽和充電)時,充電電流=1200mA,電流漂移等于 5%,單節電池日勺最高充電電壓為 1.58V,則此時電流漂移可能引起日勺電池電壓變化為3 mV。2.1.2鋰離子電池日勺特點及充電方式鋰離子電池日勺正極材料通常由鋰。日勺活性化合物組成,常見日勺正極材料主要成分為LiCo02,負極則是、特殊分
12、子結構日勺碳。充電時,加在電池兩級日勺電勢迫使正極化 合物釋出鋰離子,嵌入在負極分子排列呈片層結構日勺碳中。放電時,鋰離子則從片層 結構日勺碳中析出,重新與正極日勺化合物結合。于是、鋰離子日勺移動產生了電流。重量方面:鋰離子電池為 3.6V,鋰離子電池。日勺電壓是、銳氫、銳鎘電池日勺3倍。但 鋰離子電池因端電壓為 3.6V,在輸出同電池日勺情況下,單個電池組合時數目可減少 2/3從而使成型后。日勺電池組重量和體積都減小。施,以監測鋰離子電池日勺充放電狀態。施,以監測鋰離子電池日勺充放電狀態。自放電率:銳鎘電池為15%30% ,銳氫電池為25%35% ,鋰離子電池為2%5% 銳氫電池日勺自放電率
13、最大,而鋰離子電池日勺自放電率最小。記憶效率:鋰離子電池很少有銳鎘電池日勺記憶效應,記憶效應日勺原理是、結晶化,但在鋰電池中幾乎不會出現這種反應。鋰離子電池在幾次充電放電后容量仍然會下降, 主要日勺原因從分子層里來看,正負極材料本身日勺變化,正負極上容納鋰離子。日勺空 穴結構會逐漸塌陷,堵塞;從化學角度來看,是 、正負極材料活性鈍化,出現副反應生 成穩定。日勺其他化合物。在物理上還會出現正極材料逐漸剝落等情況,降低了電池中可 以自由在充放電過程中移動日勺鋰離子數目。記憶效應一般認為是、長期不正確日勺充電導致00,它可以使電池早衰,使電池無法 進行有效日勺充電,出現一充就滿、一放就完日勺現象。嚴
14、格遵循“充足放光” 日勺原 則,即在充電前最好將電池內殘余。日勺電量放光,充電時要一次充足,可防止電池出現 記憶效應。對于由于記憶效應而引起容量下降日勺電池,可以通過一次充足再一次性放 光。日勺方法反復數次,大部分電池都可以得到修復。充電方式:過度充電和過度放電,將對鋰離子電池。日勺正負極造成永久日勺損壞,從分 子層面看,過度放電導致負極碳過度釋放出鋰離子而使得其片層結構出現塌陷,過度充 電將把太多日 勺鋰離子硬塞進負極碳結構里去,而使得其中一些鋰離子再也無法釋放出 來。這就是、鋰離子電池為什么通常配有充放電日勺控制電路沈勺原因。鋰離子電池以恒流轉恒壓方式進行充電。采用1C充電速率充電至4.1
15、V時,充電器應立即轉入恒壓充電,充電電流逐漸減?。划旊姵爻渥汶姾?,進入涓流充電過程。為避免 過充電或過放電,鋰離子電池不僅在內部設有安全機構,充電器也必須采取安全保護措2.2智能充電器在人們日常工作和生活中,充電器日勺使用越來越廣泛。從隨身聽到數碼相機,從手機 到筆記本電腦,幾乎所有用到電池日勺電器設備都需要用到充電器。充電器為人們日勺 外出旅行和出差辦公提供了極大。)日勺方便。隨著手機在世界范圍內。)日勺普及使用,手機 電池充電器H勺使用也越來越廣泛。所謂智能充電器是、單片機參與處理和控制,能根據用戶日勺需要自主選擇充電方式,并且在充電過程中能對被充電電池進行保護從而防止過電壓、電流和溫度過
16、高O H勺一種智能化充電器。本課題將通過一個典型實例介紹 AT89S52單片機在實現手機電池充電器方面H勺應 用。此次設計所要實現CDH勺充電器是、一種智能充電器,它在單片機勺控制下,具有 預充、充電保護、自動斷電、電壓顯示和充電完成報警提示功能。2.3設計日勺功能模塊2.3.1單片機模塊智能日勺實現需要利用單片機控制,經過分析后單片機芯片可以選擇Atmel公司日勺AT89S52 ,通過中斷控制光耦器件通電和斷電。2.3.2充電過程控制模塊鋰離子電池一般都具有管理芯片和充電控制芯片。其中管理芯片中有一系歹0H勺寄存器,用來存儲電容容量、溫度、ID、充電狀態、放電次數等數值。這些數值在使用中會
17、逐漸變化。充電控制芯片主要控制電池日勺充電過程。鋰離子電池日勺充電過程分為兩個階段,恒流快充階段(電池指示燈呈黃色時)和恒壓電流遞減階段(電池指示燈呈綠色閃爍) 恒流快充階段,電池電壓逐步升高到電池日勺標準電壓,隨后在控制芯片下轉入恒壓階段,電壓不再升高以確保不會過充現象,電流則隨著電池電量H勺上升逐步減弱到0,而最終完成充電。電量統計芯片通過記錄放電曲線(電壓、電流、時間)可以抽樣計算出電池E勺電量。 而鋰離子電池在多次使用后,放電曲線是 、會改變日勺,如果芯片一直沒有機會再次讀 出完整日勺一個放電曲線,其計算出來日勺電量也就是、不準確所以我們需要深充放來校準電池H勺芯片。定時電容C和充電時
18、間Tchg 日勺關系式滿足:C=34.33 XTchg最大充電電流Imax和限流電阻Rset關系式滿足:Imax = 1400/Rset2.3.3充電電壓提供模塊由于一般家用電壓是+220V交流電壓,需要設計一個電壓轉換電路將+220V交流電壓 轉換成+5V直流電壓。首先用變壓器將220V交流電壓轉換成7V交流電壓,經過橋式 整流變成直流電壓,再利用電壓轉換芯片 LM7805將7V直流電轉換為5V直流電壓。2.3.4光耦模塊為了在充滿電后能及時關斷充電電源,則需要引入一個光耦模塊芯片6N137。6N137光耦合器是、一款用于單通道日勺高速光耦合器,其內部由一個 850 nm波長 AlGaAs
19、LED和一個集成檢測器組成,其檢測器由一個光敏二極管、高增益線性運放及 一個肖特基鉗位日勺集電極開路日勺三極管組成。具有溫度、電流和電壓補償功能,高E勺輸入輸出隔離,LSTTL/TTL兼容,高速(典型為10MBd) , 5mA E勺極小輸入電流。 工作參數:最大輸入電流,低電平: 250uA最大輸入電流,高電平: 15mA最大允許低電平電壓(輸出高):0.8v最大允許高電平電壓:Vcc最大電源電壓、輸出:5.5V扇質TL負載):8個(最多)工作溫度范圍:-40 C to +85 C典型應用:高速數字開關,馬達控制系統和A/D轉換等6N137光耦合器日勺內部結構、管腳如下圖所示圖1 6N137光
20、耦合器6N137光耦合器日勺電源管腳旁應有一個 0.1uF 日勺去耦電容。在選擇電容類型時,應盡量選擇高頻特性好日勺電容器,如陶瓷電容或鑰電容,并且盡量靠近6N137光耦合器勺電源管腳;另外,輸入使能管腳在芯片內部已有上拉電阻,無需再外接上拉電 阻。6N137光耦合器)日勺引腳:第6腳Vo輸出電路屆丁集電極開路電路,必須上拉一個電阻;第2腳和第3腳之間是、一個LED,必須申接一個限流電阻6N137光耦合器日勺真值表如下:6N137光耦合器E勺真值輸入“ + ”ENOUTPUT輸入“ + ”ENOUTPUT1100010111NC01010NC1表1 6N137光耦合器E勺真值2.3.5電壓測試
21、模塊該部分采用AD轉換來實現充電電壓日勺現實。采用中斷觸發,基本原理是、將一段時間內日勺輸入模擬電壓 Ui和參考電壓UR通過兩次積分,變換成與輸入電壓平均值成正 比O日勺時間間隔、再變換成正比丁輸入模擬信00數字量。把模擬信號轉換成數字信號,轉換原理為:如奪七必.產+農+%舟)其中,n為準換后E勺二進制位數,dn-i d0為具體二進制位。Ur為參考電壓,Ua為 顯示電壓。3設計方案充電過程3.1預充在安裝好電池之后,接通輸入直流電源,當充電其檢測到電池時將定時器復位,從而進入預充過程,在此期間充電器以快充電流日勺10%給電池充電,使電壓、溫度恢復到正常狀體,預充電時間由外接電容 C9確定,如果
22、在預充時間內電池電壓達到 2.5V,且電池溫度正常,則進入快充過程;如果超過預充時間后,電池電壓低于2.5V,則認為電池不可充電,充電器顯示電池故障,由單片機發出故障指令,LED指示燈閃爍。3.2快充快充就是、以恒定電流對電池充電,恒流充電時,電池。日勺電壓緩慢上升,一旦電池電 壓達到所設定日勺終止電壓時,恒流充電終止,充電電流快速遞減,充電進入滿充過程。3.3滿充在滿充過程中,充電電流逐漸遞減,直到充電速率降到設置值以下,或滿充超時時,轉 入頂端截止充電,頂端截止充電時,充電器以極小日勺充電電流為電池補充能量,由于 充電器在檢測電池電壓是、否達到終止電壓時有充電電流通過電池電阻,盡管在滿充和
23、 頂端截至充電過程中充電電流逐漸下降, 減小了電池內阻和其它申聯電阻對電池端電壓 日勺影響,但申聯在充電回路中日勺電阻形成日勺壓降仍然對電池終止電壓日勺檢測有 影響,一般情況下,滿充和頂端截止充電可以延長電池5%10%00使用時間。3.4斷電當電池充滿后,MAX1898芯片日勺2腳/CHG發送日勺脈沖電平會由低變高,這將會 被單片機檢測到,引起單片機日勺中斷,在中斷中,如果判斷出充電完畢,則單片機將 通過P2.O 口控制光耦切斷L7805向MAX1898供電,從而保證芯片和電池日勺安全, 同時也減小功耗3.5報警當電池充滿后,MAX1898芯片內勺2引腳/CHG發送。LED燈會閃爍。但是、,為
24、了安 全起見,單片機在檢測到充滿狀態日勺脈沖后, 不僅會自動切斷MAX1898芯片日勺供 電,而且會通過蜂鳴器報警,提醒用戶及時取出電池。4鋰離子電池充電器硬件設計4.1單片機電路單片機控制設計,電路如下圖:電路說明如下:P3.1腳控制發出報警聲提示。P3.0腳輸出控制光耦器件,在需要E勺時候可以及時關斷充電電源。-外部中斷0由充電芯片MAX1898 日勺充電狀態輸出信號經過反向后觸發4.1.1 AT89S52I12I1234567S91011121314xJ151617UsU181920JpiorrVccPil/rPl.2POOPl.3P0.1Pl.4P02Pl 5P03Pl.6P0.4Pl
25、 7 ATfl?S5X P 3P0 6RST7VPDP0.7P3 0/RXDEA/VPPps.irrDP3.2/IKTdALE/PRQGP3.3/INT1PSEHP3.4/T0P3 5rriP2.7P3.g/WRP26F3.7/RDP25P24XTAL2P23STALLP22P21GndP2040393837363534:33130rii_252E272625242322n圖 3 AT89S52AT89S52是、一個低電壓,高性能 CMOS 8位單片機,片內含8k bytes 日勺可反復擦 寫日勺Flash只讀程序存儲器和256 bytes 日勺隨機存取數據存儲器(RAM ),器件采 用ATM
26、EL公司日勺高密度、非易失性存儲技術生產,兼容標準MCS-51指令系統,片內置通用8位中央處理器和Flash存儲單元,AT89S52單片機在電子行業中有著廣泛 。日勺應用。主要功能特性:兼汕CS51指令系統8kB可反復擦寫(大丁 1000次)Flash ROM32個雙向I/O 口256x8bit 內部 RAM3個16位可編程定時/計數器中斷時鐘頻率0-24MHZ2個申行中斷,可編程 UART申行通道2個外部中斷源,共8個中斷源2個讀寫中斷口線,3級加密位低功耗空閑和掉電模式,軟件設置睡眠和喚醒功能-仟DIP、PQFP、TQFP及PLCC等幾種封裝形式,以適應不同產品日勺需求管腳說明:VCC:供
27、電電壓。GND :接地。P0 口: P0 口為一個8位漏級開路雙向I/O 口,每腳可吸收8TTL門電流。當P1 00 日勺管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數據存儲器,它可以 被定義為數據/地址日勺第八位。在FIASH編程時,P0 口作為原碼輸入口,當FIASH 進行校驗時,P0輸出原碼,此時P0外部必須被拉高。P1 口: P1 口是、一個內部提供上拉電阻00 8位雙向I/O 口,P1 口緩沖器能接收輸出 4TTL門電流。P1 口管腳寫入1后,被內部上拉為高,可用作輸入,P1 口被外部下拉 為低電平時,將輸出電流,這是、由于內部上拉日勺緣故。在FLASH編程和校驗時,P1
28、 口作為第八位地址接收。P2 口: P2 口為一個內部上拉電阻00 8位雙向I/O 口,P2 口緩沖器可接收,輸出 4 個TTL門電流,當P2 口被寫“ T時,其管腳被內部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2 口刀日勺管腳被外部拉低,將輸出電流。這是、由丁內部上拉日勺緣 故。P2 口當用丁外部程序存儲器或16位地址外部數據存儲器進行存取時,P2 口輸出 地址日勺高八位。在給出地址“ 1”時,它利用內部上拉優勢,當對外部八位地址數據 存儲器進行讀寫時,P2 口輸出其特殊功能寄存器CDH勺內容。 P2 口在FLASH編程和校 驗時接收高八位地址信號和控制信號。P3 口: P3 口管腳是
29、8個帶內部上拉電阻勺雙向I/O 口,可接收輸出4個TTL門電 流。當P3 口寫入“1”后,它們被內部上拉為高電平,并用作輸入。作為輸入,由丁外 部下拉為低電平,P3 口將輸出電流(ILL)這是由丁上拉日勺緣故。P3 口也可作為AT89S52 日勺一些特殊功能口,如下表 2所示:管腳備選功能P3.0/RXD(申行輸入口)P3.1/ TXD(申行輸出口)P3.2/INT0(外部中斷0)P3.3/INT1(外部中斷1)P3.4 T0(記時器0外部輸入)P3.5 T1(記時器1外部輸入)P3.6/WR(外部數據存儲器與選通)P3.7/RD(外部數據存儲器讀選通)表 2 P3 口P3 口同時為閃爍編程和
30、編程校驗接收一些控制信號。RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期勺高電平時間ALE/PROG :當訪問外部存儲器時,地址鎖存允許日勺輸出電平用丁鎖存地址日勺地位字節。在FLASH編程期間,此引腳用丁輸入編程脈沖。在平時,ALE端以不變。日勺頻率周期輸出正脈沖信號,此頻率為振蕩器頻率日勺1/6。因此它可用作對外部輸出勺脈沖或用丁定時目日勺。然而要注意O0W:每當用作外部數據存儲器時,將跳過一個ALE脈沖。如想禁止ALE輸出可在SFR8EH地址上置0。此時,ALE只有在執行MOVX , MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在 外部執行狀態AL
31、E禁止,置位無效。EA/VPP :當EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH ),不管 是否有內部程序存儲器。注意加密方式 1時,EA將內部鎖定為RESET;當EA端保持 高電平時,此間內部程序存儲器。在 FLASH編程期間,此引腳也用丁施加12V編程電 源(VPP)。PSEN:夕卜部程序存儲器日勺選通信號。在由外部程序存儲器取指期I、土專個機器周期 兩次PSEN有效。但在訪問外部數據存儲器時,這兩次有效日勺PSEN信號將不出現。XTAL1 :反向振蕩放大器日勺輸入及內部時鐘工作電路日勺輸入。XTAL2 :來自反向振蕩器勺輸出。4.2充電部分該部分為設計日勺主核心部分
32、,電路圖如下:220VTRANS1J TOUTW GNDC7 7&L05n R【9 C.l4VLI頒R1(C楹皆 L21 k| T -p220uF/5(iV HOOOuFfiQV220VTRANS1J TOUTW GNDC7 7&L05n R【9 C.l4VLI頒R1(C楹皆 L21 k| T -p220uF/5(iV HOOOuFfiQV圖4智能充電器日勺主核心電路4.3充電電壓轉換,實現電路模塊如下:圖6充電電壓轉換電路首先用變壓器將220V交流電壓轉換成7V交流電,經過橋式整流變成直流電,再利用 電壓轉換芯片LM7805將7V直流電壓轉換為5V直流電壓4.4光耦控制部分,實現電路如下:圖
33、7 6N137 光耦控制電路充電電壓顯示,該部分其實就是、一個AD轉換,原理圖如下:圖85鋰離子電池充電器軟件設計 5.1程序功能單片機AT89S2052和LM7805 日勺智能電池充電器日勺程序需要完成以下日勺功能:通WHG信號引起INT0外中斷。在兩次中斷中使用T0計數,判斷是、否充電完畢。如果充電完畢,則控制P1.2和P1.3引腳,輸出低電平。5.2程序流程圖智能充電器日勺程序流程圖簡介:外部中斷0設為邊沿觸發;中斷第一個下降沿 T0開始計數一第二次下降沿一停止T0計數讀取T0計數器中斷返回開始e圖9等待外部信號輸入圖10外部中斷程序圖11圖11定時程序5.3程序代碼及說明#includ
34、e 相關控制#include /lcd12864相關控制#include #include sbit CTRL_UP=P2A0;sbit CTRL_DOWN=P2A1;sbit ADCOE=P2A6;sbit ADCSTART=P2A7;sbit ADCALE=P2A5;sbit ADCA=P2A4;sbit ADCB=P2A3;sbit POWERKK=P1A4;#define ADCDATE P0sbit KEY1=P3A7;sbit KEY2=P3A5;sbit KEY3=P3A6;void InitSys();/ 初始化系統void InitInt();/ 初始化外部中斷void In
35、itTimer();/ 初始化定時器,申口中斷void SendSerialData();/啟動并發送一組申口數據void StartADC();/ 選擇通道n,開始轉換void ShowAllTime();/ 顯示完整日勺時間unsigned char g_myPar15 、g_CurSend;/g_t10、g_t11、g_t20、g_t21、g_t30、g_t31、g_n、g_U0、g_U1p、g_U1f、g_U2、g_U3、g_Th、g_Tm、g_Ts;參數順序bit bSerialSending;unsigned char g_time6;unsigned char g_CurIn;u
36、nsigned char code g_adda=(0、1、1、0、1;unsigned char code g_addb=(1、0、0、0、1;unsigned char code g_ctrlu=(1 、1、1、0、0;unsigned char code g_ctrld=(0 、1、0、1、1;unsigned char g_tt10 、g_tt11、g_tt20、g_tt21、g_tt30、g_tt31;unsigned char CutState;bit CurTR0、Curctrlu、Curctrld;float SqrtDuty;unsigned char g_Percent;v
37、oid main()(/DelayMs(10);/Delay4us(10);InitSys();DelayMs(1200);InitLCD();InitLCDshow(0);InitInt();/初始化外部中斷0InitTimer();/初始化定時器0,申口中斷bSerialSending = 0;/ bLinking = 0;/WriteLCD(0、0 x80);/DspNumber(123);StartADC();while(1)(if(KEY1=0)/ 充電(TR1 = 0;CutState = 0;POWERKK = 1;InitLCDshow(0);TR0 = 1;g_myPar0=
38、g_tt10;g_myPar1=g_tt11;g_myPar2=g_tt20;g_myPar3=g_tt21;g_myPar4=g_tt10;g_myPar5=g_tt11;/SqrtDuty = sqrt(float)g_myPar1/(g_myPar0+g_myPar1);/Duty=g_myPar0*100/(g_myPar0+g_myPar1);TR1 = 1;StartADC();ShowAllTime();DelayMs(100);else if(KEY2=0)/ 放電(TR1 = 0;CutState = 1;POWERKK = 1;InitLCDshow(1);TR0 = 0;
39、g_CurIn = 0;CTRL_UP = 1;CTRL_DOWN = 0;TR1 = 1;StartADC();ShowAllTime();DelayMs(100);else if(KEY3=0)/ 維護(TR1 = 0;POWERKK = 0;CutState = 2;InitLCDshow(2);TR0 = 1;g_myPar0=0 xff;g_myPar1=0 xf0;g_myPar2=0 xfe;g_myPar3=0 x74;g_myPar4=0 xff;g_myPar5=0 xf2;/SqrtDuty = sqrt(float)g_myPar1/(g_myPar0+g_myPar1
40、);/Duty=g_myPar0*100/(g_myPar0+g_myPar1);TR1 = 1;StartADC();ShowAllTime();DelayMs(100);/初始化系統void InitSys()unsigned char i;for(i=0;i6;i+)g_timei=;ADCOE = 1;ADCALE = 0;ADCSTART = 0;POWERKK = 1;g_myPar0=0 xff;/0 x30g_myPar1=0 x30;g_myPar2=0 xff;g_myPar3=0 x30;/0 x30g_myPar4=0 xff;g_myPar5=0 x30;g_tt10
41、 = 0 xff;g_tt11 = 0 x30;g_tt20 = 0 xff;g_tt21 = 0 x30;/*g_myPar0 = 0 x80;/g_TH1g_myPar1 = 0 x00;/g_TH2g_myPar2 = 0 x00;/g_TH3*/g_myPar6 = 6;SqrtDuty = sqrt(0.5);/Duty=g_myPar0*100/(g_myPar0+g_myPar1);/初始化外部中斷void InitInt()(IT0 = 1;/ 0/1低電平7下跳變PX0 = 1;/中斷優先級/EX0 = 1;/EA = 1;初始化定時器,申口中斷void InitTimer(
42、)(TMOD = 0 x11;/ 使用高4位0/1/2/3 13 位/16位/8位自動重載/雙8位TH0 = (65536 - 49235) / 256;TL0 = (65536 - 49235) % 256;PT0 = 1;TR0 = 1;/開啟定時器0ET0 = 1;TH1 = (65536 - 49235) / 256;TL1 = (65536 - 49235) % 256;TR1 = 1;/開啟定時器1ET1 = 1;TCLK=1;RCLK=1;TH2=0 xFF; /19200bps 22.1184MHz日勺時鐘頻率TL2=0 xDC;RCAP2H=0 xFF; / 方式 1 和方式
43、 3 日勺波特率=fosc/(32-(65535-(RCAP2HRCAP2L)RCAP2L=0 xDC;TR2=1;/ET2=1;SCON = 0 x50;/申口方式1,允許接收PCON = 0 x00;/關閉波特率加倍PS = 1;/設置申口中斷為高優先級ES = 1;/開申口中斷/TH1 = 0 xfd;/ 申口通信使用定時器1,設定波特率9600/TH1 = 0 xf3;/ 申口通信使用定時器1,設定波特率2400EA = 1;/開始發送申口數據void SendSerialData()if(!bSerialSending)bSerialSending = 1;g_CurSend = 0
44、;SBUF = g_myParg_CurSend;g_CurSend+;/開始ADC轉換void StartADC()CurTR0 = TR0;TR0 = 0;g_CurIn=0;ADCA = g_addag_CurIn;ADCB = g_addbg_CurIn;CTRL_UP = g_ctrlug_CurIn;CTRL_DOWN = g_ctrldg_CurIn;Curctrlu = CTRL_UP;Curctrld = CTRL_DOWN;ADCALE = 1;ADCALE = 0;ADCSTART = 1;ADCSTART = 0;EX0 = 1;/倒序轉換unsigned char R
45、everse(unsigned char num)(unsigned char i 、rtTmp;rtTmp = 0 x00;for(i=0; i8; i+)(rtTmp = 1;return rtTmp;/顯示完整CDH勺時間void ShowAllTime()(WriteLCD(0、0 x98+4);WriteLCD(1、g_time0);/ 時WriteLCD(1、g_time1);WriteLCD(1、:);WriteLCD(1、g_time2);/ 分WriteLCD(1、g_time3);WriteLCD(1、:);WriteLCD(1、g_time4);WriteLCD(1、g_
46、time5);外部中斷0服務程序void Int0() interrupt 0g_myPar7+g_CurIn = ADCDATE;g_CurIn+;if(g_CurIng_myPar6)(i = 0;CTRL_UP = 1;CTRL_DOWN = 0;TH0 = g_myPar4;TL0 = g_myPar5;else(CTRL_UP = 1;CTRL_DOWN = 1;TH0 = g_myPar2;TL0 = g_myPar3;else(j = 1;CTRL_UP = 0;CTRL_DOWN = 1;TH0 = g_myPar0;TL0 = g_myPar1;定時器1中斷服務程序void
47、Timer1() interrupt 3static unsigned char i 、j;unsigned char temp_data2;unsigned char presence 、k;TH1 = (65536 - 60730)/ 256;TL1 = (65536 - 60730) % 256;i+;if(i24)/時間顯示(i=0;g_time5+;g_myPar14+;if(g_time5 0 x39)/ 秒個位(g_time5 = 0 x30;g_time4+;if(g_time4 0 x35)/ 秒十位(g_time4 = 0 x30;g_time3+;g_myPar14 =
48、0;g_myPar13+;if(g_time3 0 x39)/ 分個位(g_time3 = 0 x30;g_time2+;if(g_time2 0 x35)/ 分十位(g_time2 = 0 x30;g_time1+;g_myPar13 = 0;g_myPar12+;if(g_time1 0 x33)/ 時個位(g_time1 = 0 x30;g_time0+;if(g_time0 0 x39)/ 時十位(g_time0 = 0 x30;g_myPar12=0;/時十位/時個位WriteLCD(0、0 x98+4);WriteLCD(1、g_time0);WriteLCD(1、g_time1)
49、;/分十位WriteLCD(0、0 x98+5);WriteLCD(1、:);WriteLCD(1、g_time2);/分個位WriteLCD(0、0 x98+6);WriteLCD(1、g_time3);/秒十位/秒個位WriteLCD(0、0 x98+7);WriteLCD(1、g_time4);WriteLCD(1、g_time5);/顯示充/放電狀態j+;switch(j)case 1:WriteLCD(0、0 x98+2);WriteLCD(1、);WriteLCD(1、);WriteLCD(1、);StartADC();break;case 2:WriteLCD(0、0 x98+2
50、);WriteLCD(1、.);break;case 3:WriteLCD(0、0 x98+2);WriteLCD(1、.);WriteLCD(1、.);break;case 4:WriteLCD(0、0 x98+3);WriteLCD(1、.);j = 0;break;default:j = 0;presence = Init_DS18B20();if(presence=0)WriteOneChar(0 xCC); / 跳過 ROM 匹配操作Delay4us(10);WriteOneChar(0 x44); /啟動溫度轉換presence = Init_DS18B20();if(presen
51、ce=0)(WriteOneChar(0 xCC); / 跳過 ROM 匹配操作Delay4us(10);WriteOneChar(0 xBE); / 讀取溫度寄存器Delay4us(10);temp_data0 = ReadOneChar(); / 溫度低 8 位Delay4us(10);temp_data1 = ReadOneChar(); / 溫度高 8 位if(presence=0)(if(temp_data1=0 xff) presence=1;if(g_CurIn = 5)(for(k=0;k100) g_Percent = 0;if(CutState=0)/ 充電模式(g_tt1
52、0 = (65536-5*(105-g_Percent)/256;g_tt11 = (65536-5*(105-g_Percent)%256;g_tt20 = (65536-5*(5+g_Percent)/256;g_tt21 = (65536-5*(5+g_Percent)%256;g_myPar0=g_tt10;g_myPar1=g_tt11;g_myPar2=g_tt20;g_myPar3=g_tt21;g_myPar4=g_tt10;g_myPar5=g_tt11;SqrtDuty = sqrt(1-g_Percent/100.0);/Duty=g_myPar0*100/(g_myPar0+g_myPar1);g_CurIn = 0;if(CutSt
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 新疆政法學院《中國傳統文化經典著作選讀》2023-2024學年第二學期期末試卷
- 淮北師范大學《細胞生物學專題》2023-2024學年第二學期期末試卷
- 惠州衛生職業技術學院《食品工程制圖》2023-2024學年第二學期期末試卷
- 山西省呂梁市交城縣2025屆數學三下期末檢測試題含解析
- 石家莊工程職業學院《管理系統工程》2023-2024學年第二學期期末試卷
- 江蘇省蘇州市常熟市2024-2025學年六年級下學期小升初數學考前押題卷含解析
- 上海大學市北附屬中學2025年高考信息卷語文試題含解析
- 黑龍江省牡丹江管理局北斗星協會達標名校2025屆下學期初三語文試題第一次質量檢測試題考試試卷含解析
- 山東省棗莊八中東校2024-2025學年高三第二次質量監測物理試題含解析
- 永善縣2025屆三下數學期末經典模擬試題含解析
- 期貨交易基礎知識單選題100道及答案
- 高二生物-2025-2025學年高二年級下冊期中生物試卷
- 第19課 清朝君主專制的強化-2024-2025學年七年級歷史下冊互動課堂教學設計寶典
- 2 含有兩級的混合運算(教學設計)-2023-2024學年二年級下冊數學人教版
- 天然氣工程施工組織設計方案
- 電機與電氣控制技術(第3版)(微課版)(AR版)授課計劃
- 實驗活動7 粗鹽中難溶性雜質的去除課件-2024-2025學年人教版化學九年級下冊
- 2025年開封大學單招職業技能測試題庫必考題
- 班級管理措施與學生心理健康
- 高中主題班會 揚中國精神承青年擔當團課課件-高一上學期愛國主義教育主題班會
- 《淋巴瘤基礎知識》課件
評論
0/150
提交評論