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

正文內(nèi)容

基于at89c51單片機(jī)萬年歷的設(shè)計(jì)(編輯修改稿)

2025-01-12 09:52 本頁面
 

【文章內(nèi)容簡介】 WR(外部數(shù)據(jù)存儲(chǔ)器寫選通) RD(外部數(shù)據(jù)存儲(chǔ)器讀選通) ? RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí), RST 引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位。 WDT 溢出將使引腳輸出高電平,設(shè)置SFR AUXR 的 DISRT0(地址 8EH)可打開或關(guān)閉該功能。 DISRT0 位缺省為 RESET 輸出高電平打開狀態(tài)。 ? ALE/PROG:當(dāng)訪問外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí), ALE(地址鎖存器允許)輸出脈沖用于鎖存地址的低 8 位字節(jié)。即使不訪問外部存儲(chǔ)器, ALE 仍以時(shí)鐘振蕩頻率的 1/6 輸出固定的正脈沖信號,因此它可對外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過一個(gè) ALE 脈沖。 對 Flash 存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖( PROG)。 如有必要,可通過多特殊功能寄存器( SFR)區(qū)中的 8EH 單元的D0 位置,可禁止 ALE 操作。該位置后,只有一條 MOVX 和 MOVC 指令A(yù)LE 才會(huì)被激活。另外,該引腳會(huì)被微弱拉高,單片機(jī) 執(zhí)行外部程序時(shí),應(yīng)設(shè)置 ALE 無效。 ? PSEN:程序存儲(chǔ)允許( PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號,當(dāng) AT89C51 由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次 PSEN 有效,即輸出兩個(gè)脈沖。當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器,沒四川大學(xué)畢業(yè)設(shè)計(jì) (論文 ) 22 有兩次有效的 PSEN 信號。 ? EA/VPP:外部訪問允許。欲使 CPU 僅訪問外部程序存儲(chǔ)器(地址為 0000H— FFFFH), EA 端必須保持低電平(接地)。需要注意的是:如果加密位 LB1 被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存 EA 端狀態(tài)。 如 EA 端為高電平(接 Vcc 端), CPU 則執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。 Flash 存儲(chǔ)器編程時(shí),該引腳加上 +12V 的變成電壓 Vpp. ? XTAL1:振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端。 ? XTAL2:振蕩器反相放大器的輸出端。 AT89C51 單片機(jī)內(nèi)部結(jié)構(gòu) 3. ) .AT89C51 單片機(jī)與 MCS51 完全兼容 ? 看門狗( WDT): WDT是一種需要軟件控制的復(fù)位方式。 WDT 由13位計(jì)數(shù)器和特殊功能寄存器中的看門狗定時(shí)器復(fù)位存儲(chǔ)器( WDTRST)構(gòu)成。 WDT 在默認(rèn)情況下無法工作;為了激活 WDT,用戶必須往 WDTRST 寄存器(地址: 0A6H)中依次寫入 01EH 和 0E1H。當(dāng) WDT激活后,晶振工作, WDT在每個(gè)機(jī)器周期都會(huì)增加。 WDT計(jì)時(shí)周期依賴于外部時(shí)鐘頻率。除了復(fù)位(硬件復(fù)位或 WDT溢出復(fù)位),沒有辦法停止 WDT工作。當(dāng) WDT溢出,它將驅(qū)動(dòng) RSR引腳輸出一個(gè)高電平。 ? 可編程串口( UART) 在 AT89C51中, UART 的操作與 AT89C51 和AT89C52 一樣。 AT89C51系列單片機(jī)的串行通信口可以工作于同步和異步通信方式。當(dāng)工作于異步方式時(shí),它具有全雙工的操作功能,也就是說,它可以同時(shí)進(jìn)行數(shù)據(jù)的發(fā)送和接收。串行口內(nèi)的接收器采用的是雙緩沖結(jié)構(gòu),能夠在接收到 的第一個(gè)字節(jié)從接收寄存器讀走之前就開始接收第二個(gè)字節(jié)(當(dāng)然,如果第二個(gè)字節(jié)接收完畢,而第一個(gè)字節(jié)仍然沒有被讀走,那將會(huì)丟掉一個(gè)字節(jié))。串行口的發(fā)送和接收操作都是通過特殊功能寄存器中的數(shù)據(jù)緩沖寄存器 SBUF進(jìn)行的,但在SBUF的內(nèi)部,接收寄存器和發(fā)送寄存器在物理結(jié)構(gòu)上是完全獨(dú)立的。如果將數(shù)據(jù)寫入 SBUF,數(shù)據(jù)會(huì)被送入發(fā)送寄存器準(zhǔn)備發(fā)送。如果執(zhí)行SBUF指令,則讀出的數(shù)據(jù)一定來自接收緩存器。因此, CPU對 SBUF的讀寫,實(shí)際上是分別訪問 2個(gè)不同的寄存器。這 2個(gè)寄存器的功能決不能混淆。 四川大學(xué)畢業(yè)設(shè)計(jì) (論文 ) 23 ? 振蕩電路: AT89C51系 列單片機(jī)的內(nèi)部振蕩器,由一個(gè)單極反相器組成。 XTAL1反相器的輸入, XTAL2為反相器的輸出??梢岳盟鼉?nèi)部的振蕩器產(chǎn)生時(shí)鐘,只要 XTAL1和 XTAL2引腳上一個(gè)晶體及電容組成的并聯(lián)諧振電路,便構(gòu)成一個(gè)完整的振蕩信號發(fā)生器,此方式稱為內(nèi)部方式。另一種方式由外部時(shí)鐘源提供一個(gè)時(shí)鐘信號到 XTAL1端輸入,而 XTAL2端浮空。在組成一個(gè)單片機(jī)應(yīng)用系統(tǒng)時(shí),多數(shù)采用這種方式,這種方式結(jié)構(gòu)緊湊,成本低廉,可靠性高。在電路中,對電容C1和 C2的值要求不是很嚴(yán)格,如果使用高質(zhì)的晶振,則不管頻率為多少, C C2通常都選擇 30pF。 ? 定時(shí) /計(jì)數(shù)器: AT89C51單片機(jī)內(nèi)含有 2個(gè) 16位的定時(shí)器 /計(jì)數(shù)器。當(dāng)用于定時(shí)器方式時(shí),定時(shí)器的輸入來自內(nèi)部時(shí)鐘發(fā)生電路,每過一個(gè)機(jī)器周期,定時(shí)器加 1,而一個(gè)機(jī)器周期包含有 12個(gè)振蕩周期,所以,定時(shí)器的技術(shù)頻率為晶振頻率的 1/12,而計(jì)數(shù)頻率最高為晶振頻率的 1/24。為了實(shí)現(xiàn)定時(shí)和計(jì)數(shù)功能,定時(shí)器中含有 3種基本的寄存器:控制寄存器、方式寄存器和定時(shí)器 /計(jì)數(shù)器??刂萍拇嫫魇且粋€(gè) 8位的寄存器,用于控制定時(shí)器的工作狀態(tài),方式寄存器是一個(gè) 8位的寄存器,用于確定定時(shí)器的工作方式,定時(shí)器 /計(jì)數(shù)器是 16位的計(jì)數(shù) 器,分為高字節(jié)和低字節(jié)兩部分。 ? RAM:高于 7FH內(nèi)部數(shù)據(jù)存儲(chǔ)器的地址是 8位的,也就是說其地址空間只有 256字節(jié),但內(nèi)部 RAM的尋址方式實(shí)際上可提供 384字節(jié)。的直接地址訪問同一個(gè)存儲(chǔ)空間,高于 7FH的間接地址訪問另一個(gè)存儲(chǔ)空間。這樣,雖然高 128字節(jié)區(qū)分與專用寄器 ,即特殊功能寄存器區(qū)的地址是重合的,但實(shí)際上它們是分開的。究竟訪問哪一區(qū),存是通過不同的尋址方式加以區(qū)分的。 ? SFR: SFR是具有特殊功能的所有寄存器的集合,共含有 22個(gè)不同寄存器,它們的地址分配在 80H~ FFH中。雖然如此,不是所有的單元都被 特殊功能寄存器占用,未被占用的單元,其內(nèi)容是不確定的。如對這些單元進(jìn)行讀操作,得到的是一些隨機(jī)數(shù),而寫入則無效,所以在編程時(shí)不應(yīng)該將數(shù)據(jù)寫入這些未確定的地址單元中,特殊功能寄存器主要有累加器 ACC、 B寄存器、程序狀態(tài)字寄存器 PSW、堆棧指針SP、數(shù)據(jù)指針 DPTR、 I/O端口、串行口數(shù)據(jù)緩沖器 SBUF、定時(shí)器寄存器、捕捉寄存器、控制寄存器。 ? 中斷系統(tǒng): AT89C51 單片機(jī)有 6 個(gè)中斷源,中斷系統(tǒng)主要由中斷允許寄存器 IE、中斷優(yōu)先級寄存器 IP、優(yōu)先級結(jié)構(gòu)和一些邏輯門四川大學(xué)畢業(yè)設(shè)計(jì) (論文 ) 24 組成。 IE 寄存器用于允許或禁止中斷; IP 寄存器用 于確定中斷源的優(yōu)先級別;優(yōu)先級結(jié)構(gòu)用于執(zhí)行中斷源的優(yōu)先排序;有關(guān)邏輯門用于輸入中斷請求信號。在整個(gè)中斷響應(yīng)過程中 CPU 所執(zhí)行的操作步驟如下: ( 1)完成當(dāng)前指令的操作 ( 2)將 PC 內(nèi)容壓入堆棧 ( 3)保存當(dāng)前的中斷狀態(tài) ( 4)阻止同級的中斷請求 ( 5)將中斷程序入口地址送 PC 寄存器 ( 6)執(zhí)行中斷服務(wù)程序 ( 7)返回 實(shí)時(shí)時(shí)鐘芯片 DS1302 現(xiàn)在流行的串行時(shí)鐘電路很多,如 DS130 DS130 PCF8485等。這些電路的接口簡單、價(jià)格低廉、使用方便,被廣泛地采用。本文介紹的實(shí)時(shí) 時(shí)鐘電路 DS1302是 DALLAS公司的一種具有涓細(xì)電流充電能力的電路,主要特點(diǎn)是采用串行數(shù)據(jù)傳輸,可為掉電保護(hù)電源提供可編程的充電功能,并且可以關(guān)閉充電功能。采用普通 晶振。 DS1302 是美國 DALLAS 公司推出的一種高性能、低功耗、帶 RAM的實(shí)時(shí)時(shí)鐘電路,它可以對年、月、日、周日、時(shí)、分、秒進(jìn)行計(jì)時(shí),具有閏年補(bǔ)償功能,工作電壓為 ~ 。采用三線接口與 CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號或RAM 數(shù)據(jù)。 DS1302 內(nèi)部有一個(gè) 318 的用于臨時(shí)性存 放數(shù)據(jù)的 RAM 寄存器。 DS1302 是 DS1202 的升級產(chǎn)品,與 DS1202 兼容,但增加了主電源 /后背電源雙電源引腳,同時(shí)提供了對后背電源進(jìn)行涓細(xì)電流充電的能力。 DS1302 的引腳排列 ,其中 Vcc1 為后備電源, Vcc2 為主電源。在主電源關(guān)閉的情況下,也能保持時(shí)鐘的連續(xù)運(yùn)行。 DS1302 由 Vcc1 或Vcc2 兩者中的較大者供電。當(dāng) Vcc2 大于 Vcc1+ 時(shí), Vcc2 給DS1302 供電。當(dāng) Vcc2 小于 Vcc1 時(shí), DS1302 由 Vcc1 供電。 X1 和 X2四川大學(xué)畢業(yè)設(shè)計(jì) (論文 ) 25 是振蕩源,外接 晶振。 RST 是復(fù)位 /片 選線,通過把 RST輸入驅(qū)動(dòng)置高電平來啟動(dòng)所有的數(shù)據(jù)傳送。 RST 輸入有兩種功能:首先, RST 接通控制邏輯,允許地址 /命令序列送入移位寄存器;其次,RST 提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng) RST 為高電平時(shí),所有的數(shù)據(jù)傳送被初始化,允許對 DS1302 進(jìn)行操作。如果在傳送過程中 RST 置為低電平,則會(huì)終止此次數(shù)據(jù)傳送, I/O 引腳變?yōu)楦咦钁B(tài)。上電運(yùn)行時(shí),在 Vcc≥ 之前, RST 必須保持低電平。只有在 SCLK為低電平時(shí),才能將 RST 置為高電平。 I/O 為串行數(shù)據(jù)輸入輸出端 (雙向 ),后面有詳細(xì)說明。 SCLK 始終是 輸入端。 DS1302有下列幾組寄存器: ① DS1302 有關(guān)日歷、時(shí)間的寄存器共有 12 個(gè),其中有 7個(gè)寄存器(讀時(shí) 81h~ 8Dh,寫時(shí) 80h~ 8Ch),存放的數(shù)據(jù)格式為 BCD 碼形式,如圖所示。 DS1302 有關(guān)日歷、時(shí)間的寄存器 小時(shí)寄存器( 85h、 84h)的位 7 用于定義 DS1302 是運(yùn)行于 12小時(shí)模式還是 24 小時(shí)模式。當(dāng)為高時(shí),選擇 12 小時(shí)模式。在 12 小時(shí)模式時(shí),位 5 是 ,當(dāng)為 1 時(shí),表示 PM。在 24 小時(shí)模式時(shí),位 5是第二個(gè) 10 小時(shí)位。 秒寄存器( 81h、 80h)的位 7 定義為時(shí)鐘暫停標(biāo)志( CH)。當(dāng)該四川大學(xué)畢業(yè)設(shè)計(jì) (論文 ) 26 位置為 1 時(shí),時(shí)鐘振蕩器停止, DS1302 處于低功耗狀態(tài);當(dāng)該位置為 0 時(shí),時(shí)鐘開始運(yùn)行。 控制寄存器( 8Fh、 8Eh)的位 7 是寫保護(hù)位( WP),其它 7 位均置為 0。在任何的對時(shí)鐘和 RAM 的寫操作之前, WP 位必須為 0。當(dāng)WP 位為 1 時(shí),寫保護(hù)位防止對任一寄存器的寫操作。 ② DS1302 有關(guān) RAM 的地址 DS1302 中附加 31 字節(jié)靜態(tài) RAM 的地址如圖所示。 ③ DS1302 的工作模式寄存器 所謂突發(fā)模式是指一次傳送多個(gè)字節(jié)的時(shí)鐘信號和 RAM 數(shù)據(jù)。突發(fā)模式寄存器如圖所示。 ④此外, DS1302 還有充電寄存器等。 2 讀寫時(shí)序說明 DS1302 是 SPI 總線驅(qū)動(dòng)方式。它不僅要向寄存器寫入控制字,還需要讀取相應(yīng)寄存器的數(shù)據(jù)。要想與 DS1302 通信,首先要先了解 DS1302 的控制字。 DS1302 的控制字如圖。 四川大學(xué)畢業(yè)設(shè)計(jì) (論文 ) 27 控制字(即地址及命令字節(jié)) 控制字的最高有效位(位 7)必須是邏輯 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)行讀操作。 控制字總是從最低位開始輸出。在控制字指令輸入后的下一個(gè)SCLK 時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫入 DS1302,數(shù)據(jù)輸入從最低位( 0位)開始。同樣,在緊跟 8 位的控制字指令后的下一個(gè) SCLK 脈沖的下降沿讀出 DS1302 的數(shù)據(jù),讀出的數(shù)據(jù)也是從最低位到最高位。 數(shù)據(jù)讀寫時(shí)序如圖 四川大學(xué)畢業(yè)設(shè)計(jì) (論文 ) 28 數(shù)據(jù)讀寫時(shí)序 3 電路原理圖 : 電路原理圖如圖 8, DS1302 與單片機(jī)的連接也僅需要 3 條線: CE 引腳、 SCLK 串行時(shí)鐘引腳、 I/O 串?dāng)?shù)據(jù)引腳, Vcc2 為備用電源,外接 晶振,為芯片提供計(jì)時(shí)脈沖。 四 系統(tǒng)的軟件設(shè)計(jì) 電子萬年歷的功能是在程序控制下實(shí)現(xiàn)的。該系統(tǒng)的軟件設(shè)計(jì)方法與硬件設(shè)計(jì)相對應(yīng),按整體功能分成多個(gè)不同的程序模塊,分別進(jìn)行設(shè)計(jì)、編程和調(diào)試,最后通過主程序?qū)⒏鞒绦蚰K連接起來。這樣有利于程序修改和調(diào)試,增強(qiáng)了程序的可移植性。 主程序 2)主程序流程圖如圖 41 所示: 四川大學(xué)畢業(yè)設(shè)計(jì) (論文 ) 29 2)從 1302 中取數(shù)據(jù) 12864 初始化 1302 初始化 鬧鐘 計(jì)數(shù)器 開始 從 1302 讀取數(shù)據(jù) 鍵盤掃描 四川大學(xué)畢業(yè)設(shè)計(jì) (論文 ) 30
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1