freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機的智能充電器畢業(yè)論文(編輯修改稿)

2025-07-24 19:28 本頁面
 

【文章內(nèi)容簡介】 置為1,系統(tǒng)通過這個標(biāo)志位執(zhí)行相應(yīng)功能。 鍵盤掃描子程序void keyscan(void)。 這段程序用于模式1充電時Menu按鍵狀態(tài)的檢測,在模式1充電方式中,Menu鍵通過連續(xù)按的方式改變設(shè)置狀態(tài),分別是設(shè)置時、設(shè)置分和確定,在不同的設(shè)置狀態(tài)返回全局變量g_funtion不同的標(biāo)志位,同時程序還有一個巧妙的設(shè)計,通過標(biāo)志位g_s判斷按鍵按下的狀態(tài),防止長按Menu鍵造成的功能跳躍。 倒計時子程序void timer(void)。 這段程序用于模式1狀態(tài)下所有功能的實現(xiàn),包括時間設(shè)置、倒計時功能和倒計時結(jié)束的操作,具體操作根據(jù)全局變量g_funtion的值。g_funtion=OK時為時間設(shè)置提示界面;g_funtion=SetH和SetM分別為小時和分的設(shè)置,其中時最大值為6小時;g_funtion=Start和Finish分別為開始計時和結(jié)束計時的標(biāo)志。 顯示子程序void Wele(void)。void LCM1602_Init(void)。void LCM1602_ClrScreen(void)。void LCM1602_SendCmd(uchar cmd)。void LCM1602_SendData(uchar dat)。uchar LCM1602_ReadData(void)。void LCM1602_ChkBusy(void)。void LCM1602_PrintStr(uchar x,uchar y,char* str)。void display(int H,int M,int S)。 wele子程序定義了系統(tǒng)初始化時的歡迎界面。LCM1602系列子程序相當(dāng)于1602液晶顯示屏的底層驅(qū)動程序,通過定義驅(qū)動引腳及讀寫狀態(tài)時引腳的邏輯電平變化達到通過調(diào)用程序就能顯示任何字符的功能,并且方便任何程序調(diào)用。display顯示子程序負(fù)責(zé)除了初始化界面以外所有狀態(tài)的顯示,同倒計時子程序一樣,該子程序通過全局變量g_funtion的值來判斷該顯示什么。 A/D轉(zhuǎn)換子程序void ADCInit(void)。uint16 ADCValue(uint8 channel)。uint16 ADCMid(uint8 channel)。uint16 ADCAve(uint8 channel, uint8 n)。 ADCInit子程序負(fù)責(zé)A/D通道的初始化,包括采樣時間和頻率的設(shè)置和采樣分辨率的設(shè)置;ADCValue子程序負(fù)責(zé)獲取A/D通道轉(zhuǎn)換的結(jié)果;ADCMid子程序負(fù)責(zé)將A/D通道轉(zhuǎn)換的結(jié)果進行中值濾波;ADCAve子程序負(fù)責(zé)將中值濾波之后的數(shù)據(jù)再進行n次均值濾波,并輸出最后結(jié)果。 第五章 調(diào)試 硬件調(diào)試硬件調(diào)試時,可先檢查印制電路板及焊接的質(zhì)量情況,在檢查無誤后,可通電檢查LCD 顯示器的顯示狀態(tài)。單片機系統(tǒng)的硬件和軟件調(diào)試相互密切聯(lián)系,許多硬件錯誤是在軟件調(diào)試中發(fā)現(xiàn)的,但是一般還是盡可能地先排除硬件故障后,再進行聯(lián)機調(diào)試。 靜態(tài)測試在樣機加電之前,首先要進行靜態(tài)測試,主要內(nèi)容有:1.檢查線路。通過目測和使用萬用表,檢查樣機連線的正確性,注意各電路板之間的連線完好。 2.核對元器件。檢查所有的元器件是否有插錯或損壞現(xiàn)象。3.檢查電源系統(tǒng)。將樣機中所有芯片都從插座上拔下,給樣機加電。檢查完整流穩(wěn)壓電路后,逐一檢查各芯片插座上電源引腳的電壓是否有異常情況。一切正常時,斷電,插上一個芯片,重復(fù)檢查電壓,并試摸該芯片是否發(fā)熱。電源電壓正常,芯片沒有過熱現(xiàn)象。當(dāng)插上某個芯片后對電源系統(tǒng)沒有影響。4.外圍電路調(diào)試。將所有能進行硬件單獨調(diào)試的外圍電路如檢測信號放大 電路、輸出驅(qū)動電路等都調(diào)試好。進行局部電路調(diào)試,提供有關(guān)模擬信號或開關(guān)信號。 聯(lián)機調(diào)試聯(lián)機調(diào)試是軟硬件結(jié)合調(diào)試,即利用簡單的調(diào)試程序來調(diào)試硬件系統(tǒng)。進行聯(lián)機調(diào)試,用專用仿真插頭將樣機和仿真器連接起來,分別打開樣機和仿真器的電源,按以下步驟進行具體調(diào)試: 1.測試 I/O 口和 I/O 設(shè)備。對于單片機本身的輸出口,用仿真器內(nèi)部特殊功能寄存器修改命令將數(shù)據(jù)寫入輸出口或運行一段給輸出口賦值的程序, 然后檢查輸出口的相應(yīng)狀態(tài)及所接設(shè)備的狀態(tài),如與寫入的內(nèi)容一致,說明輸出口及輸出設(shè)備工作正常。對于單片機本身的輸入口,通過輸入設(shè)備給輸入口設(shè)置一定的狀態(tài),然后用讀特殊功能寄存器命令讀出相應(yīng)輸入接口寄存器的狀態(tài),與設(shè)定的狀態(tài)一致,輸入口工作正常。擴展I/O口大多是可編程的。檢查時先向其控制(命令)寄存器寫入控制字,設(shè)定接口的工作狀態(tài),然后再用外部數(shù)據(jù)存儲器讀寫命令來檢查 I/O 口的狀態(tài)。I/O 口狀態(tài)與讀寫數(shù)據(jù)一致,工作正常。 2.試驗預(yù)充、充電保護、自動斷電和充電完成報警提示功能,借助程序進行。 軟件調(diào)試軟件調(diào)試是在編譯器下進行的。首先要將用C語言編寫的源程序進行編輯、編譯,變成目標(biāo)程序(機器代碼程序),然后才能調(diào)試,最后可結(jié)合硬件實時調(diào)試。因此,軟件調(diào)試實際上可分為編輯、編譯和調(diào)試兩部分。本次設(shè)計使用的是飛思卡爾單片機開發(fā)軟件CodeWarrior Development Studio for S12(X) 。應(yīng)用程序應(yīng)分成若干個功能模塊來編寫和調(diào)試,單個程序模塊都調(diào)試通過后,將它們組合起來進行系統(tǒng)統(tǒng)調(diào)。模塊程序從調(diào)試方法來說分成兩類情況。一類是各種計算程序已經(jīng)代碼轉(zhuǎn)換程序、靜態(tài) I/O 程序。這類程序如果不能正常運行,程序中的錯誤是靜態(tài)的固定的錯誤,因此可以用單拍或帶斷點運行方式來調(diào)試。另一類是I/O 實時處理程序和通訊程序。調(diào)試這類程序不能用單拍或慢速斷點方式,而必須采用全速斷點或全速連續(xù)運行方式。這是因為實時事件的發(fā)生是隨機的或不能停止的。如果有問題,需要從硬件和軟件兩個方面進行檢查和解決。 系統(tǒng)調(diào)試當(dāng)硬件調(diào)試和軟件分模塊調(diào)試完成以后,就可以進行系統(tǒng)調(diào)試,在系統(tǒng)調(diào)試時,應(yīng)將全部硬件電路都接上,應(yīng)用程序也都組合好,進行全系統(tǒng)軟硬件的統(tǒng)調(diào)。系統(tǒng)調(diào)試的任務(wù)是排除軟硬件中的殘留錯誤,使整個微機系統(tǒng)能夠完成預(yù)定的工作任務(wù),達到要求的技術(shù)性能指標(biāo)。在系統(tǒng)調(diào)試中要注意以下幾點:,先試空載,空載正常后在試驗負(fù)載情況。,避免遺漏。仔細(xì)調(diào)整有關(guān)軟件或硬件,使檢測和控制達到要求的精度。,仿真器采用全速斷點或連續(xù)運行方式,在綜合調(diào)試的最后階段應(yīng)使用樣機中的晶振。,以考驗硬件部分的穩(wěn)定性。圖 系統(tǒng)調(diào)試 結(jié)束語本次設(shè)計以充電芯片MAXl898的使用為主體,利用單片機配合實現(xiàn)智能化充電的便攜設(shè)備充電器。目前,充電電池的種類繁多,因此在充電器的方案創(chuàng)建時需要針對不同的電池選擇不同的充電芯片。本次設(shè)計實現(xiàn)的是單節(jié)鋰離子電池充電器,因此選用了芯片MAXl898作為充電芯片。設(shè)計在選擇芯片后進行硬件和軟件設(shè)計,最后進行調(diào)試和檢測。在本次設(shè)計過程中,需著重把握的是:預(yù)充、快充、滿充等充電方式的工作原理;MAXl898 的充電狀態(tài)指示輸出信號 在本設(shè)計中的應(yīng)用;在整體設(shè)計中自動斷電功能的實現(xiàn);MAXl898在外圍電路的設(shè)計中,其中包括設(shè)置充電電流的電阻和充電時間的電容數(shù)值的選取以及如何在單片機程序中判斷出充電完成還是充電出錯,并做出相應(yīng)的處理。采用C語言設(shè)計單片機應(yīng)用系統(tǒng)程序時,首先是要盡可能地采用結(jié)構(gòu)化的程序設(shè)計方法,這樣就使整個應(yīng)用系統(tǒng)程序結(jié)構(gòu)清晰,易于調(diào)試和維護。雖然設(shè)計的最終結(jié)果與最初的設(shè)計目標(biāo)有一定的差距,有些功能還沒有來的及實現(xiàn),但是智能充電器在生活中有十分重要的推廣意義,就目前實現(xiàn)的功能來說,智能充電器還有很大的發(fā)展空間,未來的智能充電器功能將更加完善,充電過程將更加智能,并且在通用性上有更好的表現(xiàn)。這次設(shè)計的過程使我積累了許多寶貴的經(jīng)驗,無論是從硬件設(shè)計上還是程序編寫上的能力都有很大的提高。 致 謝 隨著畢業(yè)設(shè)計和畢業(yè)論文順利的完成,我的大學(xué)生涯也漸漸接近了尾聲。在這里我首先感謝我的導(dǎo)師給與我的幫助和指導(dǎo)。在畢設(shè)準(zhǔn)備的初期,我的畢業(yè)設(shè)計的功能還很單一,通過老師的建議和指導(dǎo)使得畢業(yè)設(shè)計功能不斷完善,最終完成了現(xiàn)在的畢設(shè)作品。沒有老師的指導(dǎo),我就不會有那么多的靈感去完成我的畢設(shè)作品。 同時還要感謝對我的作品提出的寶貴的創(chuàng)意和意見的同學(xué)們,在我遇到困難的時候給予我?guī)椭椭С郑谖胰〉眠M展的時候為我加油,如果不是你們,我的畢業(yè)設(shè)計作品不會這么完美,謝謝你們! 面對即將畢業(yè)的分離,我想到了所有陪伴我走過四年大學(xué)時光的老師和同學(xué)們給我?guī)淼拿篮没貞?。衷心的感謝大學(xué)四年里所有教過和幫助過我的老師們,你們不僅把知識傳授給我們,也在生活方面給予我們很大的幫助和支持,謝謝你們對我的教誨和關(guān)愛!也衷心的感謝所有同學(xué)們在四年的光蔭里攢下點點滴滴的友誼,你們將是我人生中最大的一筆財富! 生我者父母。感謝生我養(yǎng)我,含辛茹苦的父母。是你們,為我的學(xué)習(xí)創(chuàng)造了條件;是你們,一如既往的站在我的身后默默的支持著我,沒有你們就不會有我的今天。謝謝你們,我的父親母親! 參考文獻[1] 中國鋰電池網(wǎng)(DB/OL).:// .1ibatterv../.[2] 王鴻麟,錢建立,周曉軍.《智能快速充電器設(shè)計與制作》[M],科學(xué)出版社,2001.[3] 郭炳妮、徐徽.《鋰離子電池》[M],長沙中南大學(xué)出版社,2002.[4] 鐘國華、吳玉廣.《鋰電池充電保護電路的設(shè)計》[M].《通信電源術(shù)》..[5] 李映超.《基于USB接口的鋰離子電池充電電路設(shè)計與實現(xiàn)》[M].《廣西民族學(xué)院學(xué)報》..[6] 周志敏,周紀(jì)海,紀(jì)愛華.《線性集成穩(wěn)壓電源實用電路》[M].中國電力出版社,2006.[7] 路秋生.《常用充電器電路與應(yīng)用》[M],機械工業(yè)出版社,2005.[8] [M].北京航空航天大學(xué)出版社,2003.[9] 周志敏,周紀(jì)海,紀(jì)愛華.《充電器電路設(shè)計與應(yīng)用(第1版)》 [M].人民郵電出版社,2005. 附 錄附錄A 系統(tǒng)設(shè)計源代碼include /* mon defines and macros */include /* derivativespecific definitions */typedef unsigned char uint8。 // 8 位無符號數(shù)typedef unsigned short int uint16。 // 16 位無符號數(shù)typedef unsigned long int uint32。 // 32 位無符號數(shù)typedef char int8。 // 8 位有符號數(shù)typedef short int int16。 // 16 位有符號數(shù) typedef int int32。 // 32 位有符號數(shù) void Delay_2us(int)。void Delay_10us(int)。 void SetBusCLK_32M(void)。void LCM1602_Init(void)。void LCM1602_ClrScreen(void)。void LCM1602_SendCmd(uchar cmd)。void LCM1602_SendData(uchar dat)。uchar LCM1602_ReadData(void)。void LCM1602_ChkBusy(void)。void LCM1602_PrintStr(uchar x,uchar y,char* str)。void Pit_Init(void)。void Wele(void)。void timer(void)。void keyscan(void)。void display(int H,int M,int S)。void battery_detect(void)。define LCM1602_DATA_DIR DDRA define LCM1602_CTRL_DIR DDRBdefine LCM1602_RS_1() {PORTB_PB3=1。}define LCM1602_RS_0() {PORTB_PB3=0。} define LCM1602_RW_1() {PORTB_PB4=1。} define LCM1602_RW_0() {PORTB_PB4=0。} define LCM1602_EN_1() {PORTB_PB5=1。} define LCM1602_EN_0() {PORTB_PB5=0。} define LCM1602_DATA PORTAdefine K1 PORTK_PK0define K2 PORTK_PK1define K3 PORTK_PK2define OK 0define SetH 1define SetM 2define Start 3define Finish 1 void ADCInit(void)。uint16 ADCValue(uint8 channel)。uint16 ADCMid(uint8 channel)。uint16 ADCAve(uint8 channel, uint8 n)。void IntToStr(int a, uchar *str)。int ADtoVOL(uint16 ad)。int g_H=0。 // 時間時int g_M=0。 // 時間分int g_S=20。 // 時間秒int g_10ms=0。 // 定時器計數(shù)int g_funtion=0。 // 功能int g_s=1。 // 確定按鈕標(biāo)志int g_bi=0。 // 電池檢測標(biāo)志int
點擊復(fù)制文檔內(nèi)容
外語相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1