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

正文內(nèi)容

基于89c51的數(shù)字電子鐘設(shè)計(jì)-文庫(kù)吧

2025-06-13 00:19 本頁(yè)面


【正文】 是邏輯1;如果它為邏輯0,則不能把數(shù)據(jù)寫入到DS1302中。位6如果為0,則表示存取日歷時(shí)鐘數(shù)據(jù);為1表示存取RAM數(shù)據(jù)。位5~1(A4~A0)指示操作單元的地址。最低有效位(位0)如為0,表示要進(jìn)行寫操作;為1表示進(jìn)行讀操作??刂谱止?jié)總是從最低位開始輸入/輸出。 圖343 控制字節(jié)的含義 為了提高對(duì)32個(gè)地址的尋址能力(地址/命令位1~5=邏輯1),可以把時(shí)鐘/日歷或RAM寄存器規(guī)定為多字節(jié)(burst)方式。位6規(guī)定時(shí)鐘或RAM,而位0規(guī)定讀或?qū)憽T跁r(shí)鐘/日歷寄存器中的地址9~31或RAM寄存器中的地址31不能存儲(chǔ)數(shù)據(jù)。在多字節(jié)方式中,讀或?qū)憦牡刂?的位0開始。必須按數(shù)據(jù)傳送的次序?qū)懽钕鹊?個(gè)寄存器。但是,當(dāng)以多字節(jié)方式寫RAM時(shí),為了傳送數(shù)據(jù)不必寫所有31字節(jié)。不管是否寫了全部31字節(jié),所寫的每一字節(jié)都將傳送至RAM。數(shù)據(jù)讀寫程序如圖344所示。≈SCLKK≈RSTI/O5713572102460≈46R/CA2A3A0A1R/WA41≈DATAI/OBYTEDATAI/OBYTE圖344數(shù)據(jù)讀寫程序DS1302共有12個(gè)寄存器,其中有7個(gè)寄存器與日歷、時(shí)鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式,其日歷、時(shí)間寄存器及其控制字見表345,其中奇數(shù)為讀操作,偶數(shù)為寫操作。寄存器命令碼數(shù)據(jù)范圍寄存器中各位的內(nèi)容名稱地址寫讀76543210秒00H80H81H00~59CH秒數(shù)據(jù)分01H82H83H00~590分?jǐn)?shù)據(jù)時(shí)02H84H85H01~12或00~2312/24010/AP時(shí)數(shù)據(jù)日03H86H87H01~28,2930,3100日數(shù)據(jù)月04H88H89H01~12000月數(shù)據(jù)星期05H9AH8BH01~0700000星期數(shù)據(jù)年06H8CH8DH00~99年數(shù)據(jù)多字節(jié)讀寫B(tài)EHBFH——表345 片內(nèi)時(shí)鐘數(shù)據(jù)寄存器 DS1302 在本設(shè)計(jì)中的應(yīng)用 實(shí)時(shí)時(shí)鐘芯片DS1302采用串行數(shù)據(jù)傳輸,可為掉電保護(hù)電源提供可編程的充電功能,也可以關(guān)閉充電功能,芯片采用32768Hz晶振。要特別說明的是,備用電源BT1可以用電池或超級(jí)電容(10萬(wàn)μF以上)。雖然DS1302在主電源掉電后耗電很小,但如果要長(zhǎng)時(shí)間保證時(shí)鐘正常,最好選用小型充電電池。如果斷電時(shí)間較短(幾小時(shí)或幾天),可以用漏電較小的普通電解電容代替(100μF就可以保證1小時(shí)的正常走時(shí)),本設(shè)計(jì)采用3V的鋰電子電池。DS1302在第一次加電后,需進(jìn)行初始化操作。初始化后就可以按正常方法調(diào)整時(shí)間。DS1302的時(shí)鐘電路如圖346所示。圖346 DS1302時(shí)鐘電路 鍵盤電路 本設(shè)計(jì)用到四個(gè)獨(dú)立式鍵盤分別接到P1口的低4位,為保證P1口低4位在按鍵無按下時(shí)為高電平,特在P1口的低四位外接上拉電阻。鍵盤電路如圖35所示。按鍵的開關(guān)狀態(tài)通過一定的電路轉(zhuǎn)換為高、低電平狀態(tài)。按鍵閉合過程在相應(yīng)的I/O端口形成一個(gè)負(fù)脈沖。閉合和釋放過程都要經(jīng)過一定的過程才能達(dá)到穩(wěn)定,這一過程是處于高、低電平之間的一種不穩(wěn)定狀態(tài),稱為抖動(dòng)。抖動(dòng)持續(xù)時(shí)間的常長(zhǎng)短與開關(guān)的機(jī)械特性有關(guān),一般在510ms之間。為了避免CPU多次處理按鍵的一次閉合,應(yīng)采用措施消除抖動(dòng)。因此本設(shè)計(jì)采用獨(dú)立式按鍵,直接用I/O口線構(gòu)成單個(gè)按鍵電路,每個(gè)按鍵占用一條I/O口線,每個(gè)按鍵的工作狀態(tài)不會(huì)產(chǎn)生互相影響。 圖35 鍵盤電路各按鍵對(duì)應(yīng)的功能如下: (1)K1鍵為功能移位鍵,依據(jù)按下的次數(shù)對(duì)應(yīng)選中調(diào)節(jié)年、月、日、時(shí)、分、秒或者星期,具體在鍵盤子程序中詳細(xì)介紹。 (2)K2鍵為數(shù)字“+“鍵,按一下則對(duì)應(yīng)的數(shù)字加1。 (3)K3鍵為數(shù)字“”鍵,按一下則對(duì)應(yīng)的數(shù)字減1。 (4)K4鍵為總返回鍵。 顯示電路 顯示電路中用到的元器件介紹:(1)數(shù)碼管LED LED顯示器由若干個(gè)發(fā)光二極管組成,當(dāng)發(fā)光二極管導(dǎo)通時(shí),相應(yīng)的一個(gè)筆畫或一個(gè)點(diǎn)就發(fā)光??刂葡鄳?yīng)的管導(dǎo)通,就能顯示出對(duì)應(yīng)字符。各段LED顯示器需要由驅(qū)動(dòng)電路驅(qū)動(dòng)。在七段LED顯示器中,通常將各段發(fā)光二極管的陰極或陽(yáng)極連在一起作為公共端。將各段發(fā)光二極管連在一起的叫共陽(yáng)極顯示器,用低電平驅(qū)動(dòng);將陰極連在一起的叫共陰極顯示器,用高電平驅(qū)動(dòng)。靜態(tài)顯示有并行輸出和串行輸出兩種方式。靜態(tài)顯示就是每一個(gè)顯示器各筆畫段都要獨(dú)占具有一個(gè)鎖存功能的輸出口線,CPU把要顯示的字形代碼送到輸出口上,就可以使顯示器上顯示所需的數(shù)字或符號(hào),此后,即使CPU不在去訪問它,因?yàn)楦鞴P畫段借口具有鎖存功能,顯示的內(nèi)容也不會(huì)消失。數(shù)碼管動(dòng)態(tài)顯示是單片機(jī)中應(yīng)用最為廣泛的一種顯示方式之一,動(dòng)態(tài)驅(qū)動(dòng)是將所有數(shù)碼管的8個(gè)顯示筆劃a、b、c、d、e、f、g、dp 的同名端連在一起,另外為每個(gè)數(shù)碼管的公共極COM增加位元選通控制電路,位元選通由各自獨(dú)立的I/O線控制,當(dāng)單片機(jī)輸出字形碼時(shí),所有數(shù)碼管都接收到相同的字形碼,但究竟是那個(gè)數(shù)碼管會(huì)顯示出字形,取決于單片機(jī)對(duì)位元選通COM端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位元就顯示出字形,沒有選通的數(shù)碼管就不會(huì)亮。透過分時(shí)輪流控制各個(gè)LED數(shù)碼管的COM端,就使各個(gè)數(shù)碼管輪流受控顯示,這就是動(dòng)態(tài)驅(qū)動(dòng)。在輪流顯示過程中,每位元數(shù)碼管的點(diǎn)亮?xí)r間為1~2ms,由于人的視覺暫留現(xiàn)象及發(fā)光二極體的余輝效應(yīng),盡管實(shí)際上各位數(shù)碼管并非同時(shí)點(diǎn)亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示資料,不會(huì)有閃爍感,動(dòng)態(tài)顯示的效果和靜態(tài)顯示是一樣的,能夠節(jié)省大量的I/O口,而且功耗更低。(2)譯碼器74LS13874HC138譯碼器是通過3條線來達(dá)到控制8條線的狀態(tài),就是通過3條控制線A0、AA2不同的高低電平組合來控制Y0~Y7的輸出狀態(tài),其中4和5為使能地端,與8引腳共同接地,當(dāng)接高電平時(shí)Y0到Y(jié)7輸出高電平。6號(hào)腳為使能端,為高電平時(shí)有效。74HC138封裝如圖361所示。當(dāng)需要級(jí)聯(lián)時(shí)只需要改變使能端信號(hào)引腳即可,連接方法簡(jiǎn)單。 圖361 74LS138封裝圖(3)8D鎖存器7457374573與74373功能相似,都是8D鎖存器,可驅(qū)動(dòng)數(shù)碼管。其功能如下:三態(tài)總線驅(qū)動(dòng)輸出置數(shù)全并行存取緩沖控制輸入使能輸入有改善抗擾度的滯后作用 原理:74LS573 的八個(gè)鎖存器都是透明的D 型鎖存器,當(dāng)使能(G)為高時(shí),Q 輸出將隨數(shù)據(jù)(D)輸入而變。當(dāng)使能為低時(shí),輸出將鎖存在已建立的數(shù)據(jù)電平上。輸出控制不影響鎖存器的內(nèi)部工作,即老數(shù)據(jù)可以保持,甚至當(dāng)輸出被關(guān)閉時(shí),新的數(shù)據(jù)也可以置入。 這種電路可以驅(qū)動(dòng)大電容或低阻抗負(fù)載,可以直接與系統(tǒng)總線接口并驅(qū)動(dòng)總線,而不需要外接口。特別適用于緩沖寄存器,I/O 通道,雙向總線驅(qū)動(dòng)器和工作寄存器。74573的引腳圖如下: 圖362 74573引腳圖顯示電路設(shè)計(jì):本設(shè)計(jì)采用16個(gè)共陰極數(shù)碼管,其中DS1DS4顯示年,DS5DS6顯示月,DS7DS8顯示日,DS9DS10顯示時(shí),DS11DS12顯示分,DS13DS14顯示秒,DS15顯示星期,DS16用于整點(diǎn)報(bào)時(shí)時(shí)的閃爍位。在顯示部分硬件電路設(shè)計(jì)中用兩個(gè)74573分別驅(qū)動(dòng)前8個(gè)數(shù)碼管和后8個(gè)數(shù)碼管,采用總線的連接方式,并在74573與LED之間加上限流電阻,阻值為100歐姆。兩個(gè)74573的輸入端均與P0口相連,即P0口為L(zhǎng)ED的段選端,用于向LED輸入數(shù)型碼,并接上拉電阻,阻值均為10K歐姆。P3口的低3位分別接兩個(gè)74LS138譯碼器的A、B、C端,、。兩個(gè)譯碼器的16個(gè)輸出端分別接16個(gè)數(shù)碼管,用于LED的位選端。 圖363 顯示電路 整點(diǎn)報(bào)時(shí)電路 整點(diǎn)報(bào)時(shí)電路由PNP型三極管8550、電阻與蜂鳴器構(gòu)成,蜂鳴器就會(huì)發(fā)聲,其設(shè)計(jì)電路如下圖所示。 圖37 整點(diǎn)報(bào)時(shí)電路4 系統(tǒng)軟件設(shè)計(jì) 軟件的設(shè)計(jì)是設(shè)計(jì)控制系統(tǒng)的應(yīng)用程序。其任務(wù)是在整體設(shè)計(jì)和硬件設(shè)計(jì)的基礎(chǔ)上,確定程序結(jié)構(gòu),分配片內(nèi)RAM資源,劃分功能模塊,然后進(jìn)行主程序和各模塊程序的設(shè)計(jì),最后連接起來成為一個(gè)完整的應(yīng)用程序,再與硬件相結(jié)合完成相應(yīng)功能。 主程序軟件設(shè)計(jì)流程圖如圖41所示,可以看到主程序采用模塊化設(shè)計(jì)。從主程序流程圖看出,主程序的組成是通過分別調(diào)用各子程序組成總體系統(tǒng)功能,能很直觀的看出主程序所要完成的功能,首先是初始化各模塊,之后調(diào)用鍵盤完成時(shí)間的調(diào)整,調(diào)用日歷子程序完成日歷時(shí)鐘的初始化和時(shí)間數(shù)據(jù)的讀寫,調(diào)用顯示子程序顯示數(shù)據(jù),最后又轉(zhuǎn)到鍵盤程序來回循環(huán)。初始化部分主要有初始化定時(shí)器部分和和一些寄存器、標(biāo)志位、初始化時(shí)間等。(1)對(duì)定時(shí)器T0初始化時(shí),首先置初值,CPU開中斷,定時(shí)器T0開中斷,并且開始計(jì)數(shù),而對(duì)定時(shí)器T1初始化時(shí),首先置初值,定時(shí)器T1關(guān)中斷,并且停止計(jì)數(shù),只有收到命令時(shí)才能產(chǎn)生中斷。(2)寄存器的初始化主要是初始化執(zhí)行程序時(shí)用到的部分RAM空間,防止程序執(zhí)行時(shí)帶來混亂。(3)標(biāo)志位初始化是對(duì)時(shí)間調(diào)整時(shí)判斷是調(diào)分還是調(diào)時(shí),以及整點(diǎn)報(bào)時(shí)等而專設(shè)的位標(biāo)志,初始化過程中標(biāo)志位全部置0,即開始時(shí)是處于顯示狀態(tài),而不是調(diào)整狀態(tài)或者整點(diǎn)報(bào)時(shí)狀態(tài),這一點(diǎn)在程序中相當(dāng)明了。(4)初始化時(shí)間是開機(jī)時(shí)顯示的時(shí)間,并通過調(diào)用日歷時(shí)鐘的寫程序來完成時(shí)間的置初值。 圖41 主程序流程圖 鍵盤子程序設(shè)計(jì)多功能鍵盤程序的設(shè)計(jì)是本設(shè)計(jì)的難點(diǎn),也是完成本設(shè)計(jì)的重點(diǎn),由于本設(shè)計(jì)為15位顯示,所以對(duì)于日期與時(shí)間的調(diào)整,相應(yīng)的程序會(huì)非常的冗長(zhǎng),但是鍵盤對(duì)年月日時(shí)分秒星期的調(diào)整思路、流程大體一樣,所以在程序設(shè)計(jì)上并不是那么難。當(dāng)有鍵按下時(shí),調(diào)用10ms延時(shí)程序,再判斷是否有鍵按下無則返回,若有先調(diào)用顯示程序再判斷是否松開,否則再轉(zhuǎn)到顯示程序,這樣避免了在按鍵松開之前能正常顯示。其中K1鍵功能最多,通過判斷K1鍵按下的次數(shù)來判斷是調(diào)時(shí)間還是定時(shí),并對(duì)對(duì)應(yīng)的位置閃爍。本鍵盤深度為7級(jí),即連續(xù)按下K1鍵8次時(shí)則返回到原來界面。當(dāng)判斷鍵值為1時(shí)則為調(diào)秒狀態(tài),對(duì)應(yīng)的秒低位閃爍,為2時(shí)為調(diào)分狀態(tài)并分閃爍,為3時(shí)為調(diào)時(shí)狀態(tài)并時(shí)閃爍,為4時(shí)為調(diào)日狀態(tài)并日閃爍,為5時(shí)為調(diào)月狀態(tài)并月閃爍,為6時(shí)為調(diào)年?duì)顟B(tài)并年閃爍,為7時(shí)為調(diào)星期狀態(tài)并星期閃爍。 K2為加1鍵,K3為減1鍵,K4為總返回鍵,即在調(diào)時(shí)見時(shí)不用只有按下K1鍵值為8才返回,而通過按下K4鍵即可返回。由于鍵盤流程圖非常復(fù)雜,在此只表示秒,如圖42所示,其余相仿省略。 圖 42 鍵盤子程序流程圖 日歷時(shí)鐘子程序設(shè)計(jì)DS1302與CPU的連接,是通過SCLK、I/O、RST,即三線連接方式。日歷時(shí)鐘DS1302的讀寫需要初始化時(shí)序、讀時(shí)序、寫時(shí)序等。所有時(shí)序都是將主機(jī)作為主設(shè)備,單總線器件作為從設(shè)備。而每一次命令和數(shù)據(jù)的傳輸都是從主機(jī)啟動(dòng)寫時(shí)序開始,如果要求單總線器件回送是低位在先。讀寫都是16位數(shù)據(jù),高8位是地址,低8位是數(shù)據(jù),在讀寫時(shí)要嚴(yán)格遵從讀寫時(shí)序,否則讀寫將會(huì)失效。當(dāng)RST為高電平時(shí),所有的數(shù)據(jù)傳送被初
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1