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

正文內(nèi)容

萬年歷單片機(jī)課程設(shè)計(jì)-文庫吧資料

2024-09-09 16:10本頁面
  

【正文】 6可進(jìn)行分鐘數(shù)值的調(diào)節(jié),調(diào)節(jié)范圍為 059;按下按鍵 K8 可進(jìn)行日數(shù)值的調(diào)節(jié),實(shí)際上調(diào)節(jié)范圍可以是 031,但是調(diào)節(jié)是要根據(jù)不同的月份適當(dāng)調(diào)節(jié)。 從 DS 1302 中讀出時(shí)鐘數(shù)據(jù)開始對數(shù)據(jù)進(jìn)行相應(yīng)計(jì)算將計(jì)算過的數(shù)據(jù)輸出結(jié)束 圖 47 顯示子程序流程圖 5 系統(tǒng)調(diào)試與總結(jié) 系統(tǒng)研制完成后,在自己的單片機(jī)開發(fā)板上進(jìn)行了系統(tǒng)功能測試。 NY開始結(jié)束判斷有無鍵按下延時(shí) 10 ms判斷有無鍵按下YN取得鍵值 圖 46 鍵盤掃描子程序流程圖 顯示子程序 為了使主程序結(jié)構(gòu)上更加緊湊和清晰,故將顯示部分的程序代碼單獨(dú)拿出來定義為一個(gè)子函數(shù)來調(diào)用。 TMOD=01H開始結(jié)束EA=1ET0=1TR0=1 圖 45 定時(shí)器初始化子程序流程圖 鍵盤掃描子程序 鍵盤掃描用于向系統(tǒng)輸入數(shù)據(jù),其工作流程如圖 46 所示。子程序中定義 i 為需要顯示的位數(shù),通過對段碼和位碼的鎖存達(dá)來到數(shù)碼管動態(tài)顯示的目的。 單片機(jī)課程設(shè)計(jì) 14 清中斷標(biāo)志位開始定時(shí)器賦初值調(diào)用數(shù)碼管掃描子程序延時(shí) 100 ms讀標(biāo)志位置 1結(jié)束 圖 42 中斷服務(wù)程序流程圖 子程序設(shè)計(jì) 延時(shí)子程序 此延時(shí)子程序可用于對延時(shí)時(shí)間不是 特別精確的場合,其程序流程圖如圖43 所示,主體是一個(gè)循環(huán)結(jié)構(gòu),先對 t 賦初始值 255,通過循環(huán)執(zhí)行“ t”指令而達(dá)到延時(shí)的目的。 定義全局變量NY取得相應(yīng)的鍵值 ?開始定時(shí)器初始化DS 1302 初始化調(diào)用鍵盤掃描程序執(zhí)行相應(yīng)的鍵處理程序 圖 41 主程序流程圖 中斷服務(wù)程序設(shè)計(jì) 定時(shí)器 0 定時(shí)時(shí)間到,向 CPU 申請中斷而進(jìn)入中斷服務(wù)程序。 主程序設(shè)計(jì) 由于本系統(tǒng)程序相對來講比較簡單,主程序流程圖如圖 41 所示。 由于本 單片機(jī)課程設(shè)計(jì) 13 系統(tǒng)程序相對來講比較簡單,用輪詢法對鍵盤進(jìn)行反復(fù)掃描,用中斷法進(jìn)行數(shù)碼管顯示,每隔一段時(shí)間,定時(shí)器向 CPU 申請中斷,調(diào)用中斷服務(wù)子程序,根據(jù)當(dāng)前的鍵值,顯示日期、時(shí)間或者周秒。其線路連接圖下圖所示。相應(yīng)的,第二片 74LS573 作為數(shù)碼管的位碼驅(qū)動,輸 單片機(jī)課程設(shè)計(jì) 12 入端與單片機(jī)的 P0 口相連接,輸出端接八位共陰數(shù)碼管相應(yīng)的位碼端口相連接,CC 接主電源, GND、 OC 接地。 本系統(tǒng)所采用的顯示電路接線圖如圖 37 所示。當(dāng)鎖存使能端為高時(shí),這些器件的鎖存對于數(shù)據(jù)是透明的(也就是說輸出同步)。 SL74HC573 跟 LS/AL573 的管腳一樣,其引腳圖見圖 36。將所有數(shù)碼管的 8 個(gè)顯示筆劃 a,b,c,d,e,f,g,dp的同名端連在一起,另外為每個(gè)數(shù)碼管的公共極 COM增加位選通控制電路,位選通由各自獨(dú)立的 I/O 線控制,當(dāng)單片機(jī)輸出字形碼時(shí),所有數(shù)碼管都接收到相同的字形碼,但究竟是那個(gè)數(shù)碼管會顯示出字形,取決于單片機(jī)對位選通 COM 端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位就顯示出字形,沒有選通的數(shù)碼管就不會亮。 本系統(tǒng)采 用動態(tài)顯示驅(qū)動。 單片機(jī)課程設(shè)計(jì) 11 為了減少 I/O 接口,在使用兩個(gè) LG3641 共陰極數(shù)碼管的情況下,采用 2 片74HC573 分別作為數(shù)碼管的驅(qū)動,輸出位選和段選信號驅(qū)動數(shù)碼管顯示相應(yīng)內(nèi)容。其中 VCC2接 5V 系統(tǒng)穩(wěn)壓電源, VCC1 接備用干電池, SCLK、 I/O、 RST 端口與主控制 器相對應(yīng)的端口相連接, X X2 外界晶振。 DS1302 的晶震選用 ,電容推薦值為 33pF,因?yàn)檎鹗庮l率較低,也可以不接電容,對計(jì)時(shí)精度影響不大。在此方式下,位 5 是 AM/PM 位,此位是高電平時(shí)表示 PM低電平表示 AM。 AM- PM/12- 24[小 ]時(shí)方式: [小 ]時(shí)寄存器的位 7 定義為 12 或 24[小 ]時(shí)方式選擇位。通常在對 DS1302 進(jìn)行寫操作時(shí)(如進(jìn)入時(shí)鐘調(diào)整程序),停止震蕩。 表 33 內(nèi)部寄存器地址和內(nèi)容 積存器名 命令字節(jié) 取值范圍 積存器內(nèi)容 寫 讀 7 6 5 4 3 2 1 0 秒積存器 80H 81H 00~59 CH 10S SEC 單片機(jī)課程設(shè)計(jì) 10 分積存器 82H 83H 00~59 0 10 min MIN [小 ]時(shí)積存器 84H 85H 00~23 或 01~12 12/24 0 10A/P HR HR 日積 存器 85H 87H 01~28, 29, 30, 31 0 0 10DATE DATE 月積存器 88H 89H 01~12 0 0 0 10M MONTH 周積存器 8AH 8BH 01~07 0 0 0 0 0 DAY 年積存器 8CH D3H 00~99 10YEAR YEAR 時(shí)鐘暫停:秒寄存器的位 7 定義位時(shí)鐘暫停位。 DS1302 共有 12 個(gè)寄存器,其中有 7 個(gè)寄存器與日歷、時(shí)鐘相關(guān),存放的數(shù)據(jù)位為 BCD 碼形式。但是,當(dāng)以多字節(jié)方式寫 RAM 時(shí),為了傳送數(shù)據(jù)不必寫所有 31 字節(jié)。在多字節(jié)方式中,讀或?qū)憦牡刂?0 的位 0 開始。位 6 規(guī)定時(shí)鐘或 RAM,而位0 規(guī)定讀或?qū)憽?刂谱止?jié)總是 從最低位開始輸入 /輸出。位 5~ 1( A4~ A0)指示操作單元的地址。控制字節(jié)的最高位(位 7)必須是邏輯 1;如果它為 0,則不能把數(shù)據(jù)寫入到 DS1302 中。 DS1302 內(nèi)部結(jié)構(gòu)圖如圖 33 所示,表 32 為各引腳的功能。上電運(yùn)行時(shí),在 Vcc 大于等于 ,RST 腳必須保持低電平。時(shí)鐘脈沖的個(gè)數(shù)在單字節(jié) 方式下為 8 加 8,在多字節(jié)方式下為 8 加字節(jié)數(shù),最大可達(dá) 248 字節(jié)數(shù)。無論是讀周期還是寫周期,開始 8 位指定 40 個(gè)寄存器中哪個(gè)將被訪問到。當(dāng) Vcc2 大于 單片機(jī)課程設(shè)計(jì) 8 Vcc1+ 時(shí), Vcc2 給 DS1302 供電;當(dāng) Vcc2 小于 Vcc 時(shí), DS13026 由 Vcc1供電。 DS1302 有主電源 /后備電源雙電源引腳: Vcc1 在單電源與電池供電的系統(tǒng)中提供低電源,并提供低功率的電池備份; Vcc2 在雙電源系統(tǒng)中提供主電源,在這種運(yùn)用方式中, Vcc1 連接到備份電,以便在沒有主電源的情況下能保存時(shí)間信息以及數(shù)據(jù)。時(shí)鐘的運(yùn)行可以采用 24h 或帶 AM(上午 )/PM(下午)的 12h 格式。實(shí)時(shí)時(shí)鐘 /日歷提供 秒、分、時(shí)、日、周、月和年等信息。 DS1302 時(shí)鐘芯片包括實(shí)時(shí)時(shí)鐘 /日歷和 31 字節(jié)的靜態(tài) RAM。其中 VCC 接 5V穩(wěn)壓電源, GND 接地, RST 接復(fù)位電路, P3 端口 作為獨(dú)立按鍵的接口, XTAL1, XTAL2 接外部可換晶振, P0 端口作為數(shù)據(jù)總線接到兩片74LS573 上作為其輸入信號, 口向 DS1302 提供 CLK 時(shí)鐘信號, 向DS1302 提供 I/O 信號 , 口向 DS1302 提供 RST 復(fù)位 /片選線信號, 和 口分別向兩片 74LS573 提供段選和片選信號。 P3 口也可作為 AT89S52 的一些特殊功能,這些特殊功能見表 31。當(dāng) P3 口寫入“ 1”后,它們被內(nèi)部上拉為高電平,并用作輸入。 P2 作輸入口使用時(shí),因?yàn)橛袃?nèi)部的上拉電阻,那些被外部信號拉低的引腳會輸出一個(gè)電流。 P2的輸出緩沖器可驅(qū)動(吸收或輸出電流方式) 4個(gè) TTL輸入。作輸入口時(shí),因?yàn)橛袃?nèi)部的上拉電阻,那些被外部信號拉低的引腳會輸出一個(gè)電流。 P1的輸出緩沖器可驅(qū)動(吸收或輸出電流方式) 4個(gè) TTL輸入。作為輸出口用時(shí),每位能以吸收電流的方式驅(qū)動 8個(gè) TTL輸入,對端口寫 1時(shí) ,又可作高阻抗輸入端用。當(dāng) EA 端保持高電平(接 VSS 端)時(shí), CPU 則執(zhí)行內(nèi)部程序存儲器中的程序。 ④ EA /VPP 外部訪問允許端。當(dāng) AT89S52/LV52由外部程序存儲器取指令(或常數(shù))時(shí),每個(gè)機(jī)器周期兩次 PSEN有效(既輸出 2 個(gè)脈沖)。在對 Flash 存儲器編程期間,該引腳還用于輸入編程脈沖( PROG ) 。因此,它可用作對外輸出的時(shí)鐘,或用于定時(shí)目的。 ② ALE/PROG 當(dāng)訪問外部存儲器時(shí), ALE(地址鎖存允許)的輸出用于鎖存地址的低位字節(jié)。 (3) EA 控制或與其它電源復(fù)用引腳 RST、 ALE/PROG 、 PSEN 和 EA /VPP ① RST 復(fù)位 輸入端。在單片機(jī)內(nèi)部,它是上述振蕩器的反相放大器的輸出端。當(dāng)采用外部振蕩器時(shí),該 引腳接收振蕩器的信號,既把此信號直接接到內(nèi)部時(shí)發(fā)生器的輸入端。 AT89C52 的引腳及其功能 AT89C52 單片機(jī)的管腳說明如下: (1) 主要電源引腳 ① VCC 電源端 ② GND 接地端 (2) 外接晶體引腳 XTAL1 和 XTAL2 ① XTAL1 接外部晶體的一個(gè)引腳。 3 個(gè) 16 位定時(shí) /計(jì)數(shù)器, T0、 T1(標(biāo)準(zhǔn) 80C51)和增加的 T2(捕獲和比較)。 4 個(gè) 8 位 I/O 口。 6 個(gè)中斷源。 256 字節(jié)內(nèi)部 RAM。其引腳封裝如圖 31 所示。 主控器 AT89C52 ATMEL 公司生產(chǎn)的 AT89C52 單片機(jī)采用高性能的靜態(tài) 80C51 設(shè)計(jì),由先進(jìn)工藝制造,并帶有非易失性 Flsah 程序存儲器。顯示模塊使用 8 位八段數(shù)碼管,八段數(shù)碼管雖然操作略顯繁瑣,但可視范圍十分寬,而且經(jīng)濟(jì)實(shí)惠,也不需要復(fù)雜的驅(qū)動程序。主控芯片使用 52 系列 AT89C52 單片機(jī),時(shí)鐘芯片使用美國 DALLAS 公司推出的一種高性能、低功耗、帶 RAM 的實(shí)時(shí)時(shí)鐘芯片DS1302, DS1302 作為主要計(jì)時(shí)芯片,可以做到計(jì)時(shí)準(zhǔn)確。 單片機(jī)課程設(shè)計(jì) 3 AT 89 C 52主控制器鍵盤掃描模塊DS 1302 時(shí)鐘模塊數(shù)碼管顯示模塊 圖 21 電子萬年歷系統(tǒng)構(gòu)成框圖 3 硬件電路設(shè)計(jì) 電子萬年歷電路原理圖見附錄 B,系統(tǒng)由主控制
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1