2.4.1單片機(jī)最小系統(tǒng)
單片機(jī)最小系統(tǒng)包括外部晶體震蕩電路、復(fù)位電路和電源電路。如圖2-4-1是單片機(jī)的最小系統(tǒng)。用STC89C52RC,它需要5V的供電系統(tǒng),上圖是使用USB口輸出的5V直流直接供電的,從圖中可以看出,供電電路在38引腳,通常也稱為VCC或VDD,代表電源正極,16引腳接GND,代表電源負(fù)極。
?
圖2-4-1 單片機(jī)最小系統(tǒng)
2.4.2 DS1302典型電路
?
DS1302是一種高性能23621、低功耗、帶RAM的實時時鐘電路TDA2507T,它可以對年、月、日、周日、時、分、秒進(jìn)行計時,具有閏年補(bǔ)償功能,工作電壓為2.5V~5.5VMK005CL4.采用三線接口與CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM(RAM(隨機(jī)存取存儲器)RAM -random access memory 隨機(jī)存儲器。存儲單元的內(nèi)容可按需隨意取出或存入,且存取的速度與存儲單元的位置無關(guān)的存儲器。這種存儲器在斷電時將丟失其存儲內(nèi)容,故主要用于存儲短時間使用的程序。 按照存儲信息的不同,隨機(jī)存儲器又分為靜態(tài)隨機(jī)存儲器(StaTIc RAM,SRAM)和動態(tài)隨機(jī)存儲器(Dynamic RAM,DRAM)。)數(shù)據(jù)。DS1302內(nèi)部有一個31×8的用于臨時性存放數(shù)據(jù)的RAM寄存器。DS1302是DS1202的升級產(chǎn)品,與DS1202兼容,但增加了主電源/后背電源雙電源引腳,同時提供了對后背電源進(jìn)行涓細(xì)電流充電的能力。圖2-4-2是它的典型電路
?
圖2-4-2DS1302典型電路
2.4.3典型的LDO電路
AMS1117是一個低漏失電壓調(diào)整器,它的穩(wěn)壓調(diào)整管是由一個PNP驅(qū)動的NPN管組成的,漏 失電壓定義為:VDROP=VBE+VSAT。 AMS1117有固定和可調(diào)兩個版本可用,輸出電壓可以是:1.2V,1.5V,1.8V,2.5V,2.85V, 3.0V,3.3V,和5.0V。片內(nèi)過熱切斷電路提供了過載和過熱保護(hù),以防環(huán)境溫度造成過高的結(jié) 溫。 為了確保AMS1117的穩(wěn)定性,對可調(diào)電壓版本,輸出需要連接一個至少22μF的鉭電容。對于固 定電壓版本,可采用更小的電容,具體可以根據(jù)實際應(yīng)用確定。通常,線性調(diào)整器的穩(wěn)定性隨著輸出電流增加而降低。
?
圖2-4-3 LDO典型電路
?
2.4.4TP4057鋰電池充電電路
TP4057是一款專門為鋰離子電池設(shè)計的線性充電器,利用芯片內(nèi)部的功率MOSFET對電池進(jìn)行恒流/恒壓充電。充電電流可以由外部電阻編程決定,最大充電電流可以達(dá)到500mA。TP4057擁有兩個漏極開路輸出的狀態(tài)指示輸出端,充電狀態(tài)指示端CHRG和電池充電完成指示輸出端STDBY。芯片內(nèi)部的功率管電路在芯片的結(jié)溫超過135℃時自動降低充電電流,這個功能可以使用戶最大限度利用芯片充電,不用擔(dān)心芯片過熱而損壞芯片或者外部元器件。
?
圖2-4-4 tp4057典型電路
?
三、功能設(shè)計
?
按鍵用于控制和用戶交互模式。當(dāng)單片機(jī)檢測某個引腳電平為低電平時,觸發(fā)執(zhí)行與之相對應(yīng)的處理函數(shù),設(shè)計了開機(jī)動畫、主頁面、二級菜單頁面和退出頁面。二級菜單頁面包括改變時間和日期、設(shè)置鬧鐘觸發(fā)蜂鳴器、開機(jī)動畫的顯示。
?
?
?
?
圖3-2-1 main函數(shù)執(zhí)行流程
?
在main函數(shù)里完成了硬件的初始化包括IIC、字庫、OLED、按鍵函數(shù) 和WHILE( )循環(huán)。當(dāng)while執(zhí)行按鍵掃描時會檢測按鍵的電平,當(dāng)為低電平的時候就可以觸發(fā)case匹配條件并且進(jìn)入P_K程序鎖。此時P_K的值為true,while( )為死循環(huán),在當(dāng)前while( )執(zhí)行按鍵掃描。當(dāng)某個接口進(jìn)入函數(shù)P_K-while( )循環(huán),就執(zhí)行此函數(shù)。 圖3-2-2是P_K-while( )循環(huán)的執(zhí)行流程。
?
?
圖3-2-2 P_K執(zhí)行流程
?
3.2.1開機(jī)動畫顯示
編寫OLED操作接口函數(shù),再將圖片取模取模工具有lmage2Lcd2.9和PCtoLCD2002軟件,先將圖片轉(zhuǎn)化為像素點(diǎn)陣,然后再去取模;取模格式為C51類型,得到圖片數(shù)組。然后編寫OLED圖片接口函數(shù)。
3.2.2 DS1302設(shè)置
主要工作原理是移位寄存器,控制邏輯,晶振,時鐘和 RAM。在進(jìn)行任何數(shù)據(jù)傳輸時, 必須被制高電平(注 意雖然將它置為高電 平,內(nèi)部時鐘還是在 晶振作用下走時的, 此時,允許外部讀寫 數(shù)據(jù)),在每個 SCLK 上 升 沿 時 數(shù) 據(jù) 被 輸 入,下降沿時數(shù)據(jù)被 輸出,一次只能讀寫 一位,適度還是寫需 要通過串行輸入控制 指令來實現(xiàn)(也是一 個字節(jié)),通過 8 個脈 沖便可讀取一個字節(jié) 從而實現(xiàn)串行輸入與 輸出。最初通過 8 個 時鐘周期載入控制字 節(jié)到移位寄存器。如果控制指令選擇的是單字節(jié)模式,連續(xù)的 8 個時鐘脈沖可以進(jìn)行 8 位數(shù)據(jù)的寫和 8 位數(shù)據(jù)的讀 操作,SCLK 時鐘的上升沿時,數(shù)據(jù)被寫入 DS1302,SCLK 脈沖的下降沿讀出 DS1302 的數(shù)據(jù)。8 個脈沖便可讀寫一個字節(jié);底層邏輯了解完后就根據(jù)手冊寫出DS1302的驅(qū)動函數(shù),和操作函數(shù)
!注意:請使用瀏覽器自帶下載,迅雷等下載軟件可能無法下載到有效資源。
歡迎加入EEWorld參考設(shè)計群,也許能碰到搞同一個設(shè)計的小伙伴,群聊設(shè)計經(jīng)驗和難點(diǎn)。 入群方式:微信搜索“helloeeworld”或者掃描二維碼,備注:參考設(shè)計,即可被拉入群。 另外,如您在下載此設(shè)計遇到問題,也可以微信添加“helloeeworld”及時溝通。
EEWorld Datasheet 技術(shù)支持