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

正文內(nèi)容

基于8952單片機(jī)實(shí)時(shí)時(shí)鐘設(shè)計(jì)(編輯修改稿)

2025-07-20 06:29 本頁面
 

【文章內(nèi)容簡介】 位數(shù)據(jù) (RB8) 為 1 時(shí),才把接收的前 8 位數(shù)據(jù)送入 SBUF,且置位 RI 發(fā)出中斷申請(qǐng),否則會(huì)將 收到的數(shù)據(jù)放棄。當(dāng) SM2=0 時(shí),只有在接收到有效停止位時(shí)才啟動(dòng) RI,若沒接 收到有效停止位,則 RI 清“0”。在方式 0 中 SM2 應(yīng)該為“0”。 REN:允許接收控制位。由軟件置“1”時(shí),允許接收;軟件置“0”時(shí),不許接 收。 TB8:在方式 3 和方式 3 中要發(fā)送的第 9 位數(shù)據(jù),需要時(shí)用軟件置位和清零。 TB8: 在方式 2 和方式 3 中是接收到的第 9 位數(shù)據(jù)。 在方式 1 時(shí), SM2=0, 如 RB8 接收到的停止位。在方式 0 中,不使用 RB8。 TI:發(fā)送中斷標(biāo)志。由硬件在方式 0 發(fā)送完第 8 位時(shí)置“1”,或在其它方式中 串行發(fā)送停止位的開始時(shí)置“1”。必須由軟件清“0”。 RI:接收中斷標(biāo)志。由硬件在方式 0 串行發(fā)射第 8 位結(jié)束時(shí)置“1” B:特殊功能寄存器 PCON 14 基于 89C52 的單片機(jī)實(shí)時(shí)時(shí)鐘設(shè)計(jì) PCON:主要是是 CHMOS 型單片機(jī)的電源控制而設(shè)置的專用寄存器,單元 地址為 87H 其機(jī)構(gòu)格式如下表: 表 PCON 位符號(hào) D7 SMOD D6 特殊功能寄存器 PCON D5 D4 D3 GF1 D2 GF0 D1 PD D0 IDL 在 CHMOS 型單片機(jī)中,除 SMOD 位外其它位均為虛設(shè)的,SMOD 是串行 波特率倍增位,當(dāng) SMOD=1 時(shí)串行口波特率加倍,系統(tǒng)復(fù)位默認(rèn)為 SMOD=0。 C:中斷允許寄存器 IE 中斷允許寄存器這里重述一下對(duì)串行口有影響的位 ES。ES 為串行中斷允許 控制位,ES=1 允許串行中斷,ES=0,禁止串行中斷。 串行口工作方式 串行口具有 4 種工作方式,我從應(yīng)用和畢業(yè)設(shè)計(jì)的角度,重點(diǎn)討論方式 1 發(fā) 送。 串行口定義為方式 1 時(shí)傳送 1 幀數(shù)據(jù)為 10 位,其中 1 位起始地址、8 位數(shù)據(jù) 位(先低位后高位) 位停止位方式 1 的波特率可變,波特率= 2 SMOD / 32 (T1 、1 的溢出率) 表 符號(hào) EA AEH ADH 中斷允許寄存器 ES ACH ET1 ABH EX1 AAH ETO A8H EX0 A8H 位地址 AFH 顯示模塊 顯示模塊分為數(shù)碼管顯示和液晶顯示, 設(shè)計(jì)中所用的是 1602 液晶。 具體硬件連接 圖如下: 15 基于 89C52 的單片機(jī)實(shí)時(shí)時(shí)鐘設(shè)計(jì) LCD1602 介紹: 1602 型 LCD 顯示模塊具有體積小,功耗低,顯容豐富等特點(diǎn)。 1602 型 LCD 可以顯示 2 行 16 個(gè)字符, 8 位數(shù)據(jù)總線 D0~D7 和 RS, 有 R/W, EN 三個(gè)控制端口,工作電壓為 5V,并且具有字符對(duì)比度調(diào)節(jié)和背光功能。 1. 外型尺寸:80X36X13(LXWXH) 1602 型 LCD 的接口信號(hào)說明如表 111 所示. 編號(hào) 1 2 3 4 5 6 7 8 符號(hào) VSS VDD VL RS R/W E D0 D1 電源地 電源正極 液晶顯示偏壓信號(hào) 數(shù)據(jù)/命令選擇端(H/L) 讀寫選擇端(H/L) 使能信號(hào) Data I/O Data I/O 引腳說明 編號(hào) 9 10 11 12 13 14 15 16 符號(hào) D2 D3 D4 D5 D6 D7 BLA BLK 引腳說明 Data I/O Data I/O Data I/O Data I/O Data I/O Data I/O 背光源正極 背光源負(fù)極 1602 型 LCD 的主要技術(shù)參數(shù)如下: 顯示容量 芯片工作電壓 工作電流 模塊最佳工作電壓 字符尺寸 4.基本操作程序 讀狀態(tài):輸入:RS=L,RW=H,E=H 讀數(shù)據(jù):輸入:RS=H,RW=H,E=H 輸出:D0~D7=數(shù)據(jù) 寫數(shù)據(jù):輸入:RS=H,RW=L,D0~D7=數(shù)據(jù),E=高脈沖 5.RAM 地址映射圖 控制器內(nèi)部帶有 80 字節(jié)的 RAM 緩沖區(qū),對(duì)應(yīng)關(guān)系如圖 113 所示 輸出:無 輸出:D0~D7=狀態(tài)字 輸出:無 16X2 個(gè)字符 ~ () (WXH)mm 寫指令:輸入:RS=L,RW=L,D0~D7=指令碼,E=高脈沖 16 基于 89C52 的單片機(jī)實(shí)時(shí)時(shí)鐘設(shè)計(jì) LCD 16 字 X2 行 。 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 。 2 7 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 。 6 。 7 圖 113 6.狀態(tài)字說明 STA7 D7 STA6 D6 STA5 D5 STA4 D4 STA3 D3 STA2 D2 STA1 D1 STA0 D0 對(duì)應(yīng)關(guān)系 STA0~STA6 STA7 當(dāng)前地址指針的數(shù)值 讀寫操作使能 1:禁止;0:允許 都必須進(jìn)行讀寫檢測(cè), 確保 STA7 為 0。 ☆注意 每次對(duì)控制器進(jìn)行讀寫操作之前, 7.?dāng)?shù)據(jù)指針設(shè)置 控制器內(nèi)部設(shè)有一個(gè)數(shù)據(jù)地址指針,用戶可以通過它們?cè)L問內(nèi)部的全部 80 字的 RAM。 指令碼 功能 80H+地址碼(0~27H,40~67H) 設(shè)置數(shù)據(jù)地址指針 8.其它設(shè)置 指令碼 01H 02H (1) 顯示模式設(shè)置 指令碼 0 0 1 1 1 0 0 0 功能 設(shè)置 16X2 顯示,5X7 點(diǎn)陣,8 位數(shù)據(jù)接口 功能 顯示清屏: 0 0 顯示回車:數(shù)據(jù)指針清 0 顯示開/關(guān)及光標(biāo)設(shè)置 17 基于 89C52 的單片機(jī)實(shí)時(shí)時(shí)鐘設(shè)計(jì) 指令碼 功能 D=1 開顯示;D=0 關(guān)顯示 0 0 0 0 1 D C B C=1 顯示光標(biāo);C=0 不顯示光標(biāo) B=1 光標(biāo)閃爍;B=0 光標(biāo)不顯示 N=1 當(dāng)讀或?qū)懸粋€(gè)字符后地址指針加 1,且光標(biāo)加 1 0 0 0 0 0 1 N S N=0 當(dāng)讀或?qū)懸粋€(gè)字符后的地址指針 減 1,且光標(biāo)減 1 S=1 當(dāng)寫一個(gè)字符,整屏顯示左移 (N=1)或右移(N=0) ,以得到光標(biāo) 不移動(dòng)而屏幕移動(dòng)的效果 S=0 當(dāng)寫一個(gè)字符, 整屏顯示不移動(dòng) DS1302 的結(jié)構(gòu)及工作原理 DS1302 是美國 DALLAS 公司推出的一種高性能、低功耗、帶 RAM 的實(shí)時(shí) 時(shí)鐘電路,它可以對(duì)年、月、日、周日、時(shí)、分、秒進(jìn)行計(jì)時(shí),具有閏年補(bǔ)償功 能,工作電壓為 ~。采用三線接口與 CPU 進(jìn)行同步通信,并可采用突 發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號(hào)或 RAM 數(shù)據(jù)。DS1302 內(nèi)部有一個(gè) 318 的用于臨時(shí)性存放數(shù)據(jù)的 RAM 寄存器。DS1302 是 DS1202 的升級(jí)產(chǎn)品,與 DS1202 兼容,但增加了主電源/后背電源雙電源引腳,同時(shí)提供了對(duì)后背電源進(jìn) 行涓細(xì)電流充電的能力。 DS1302 的引腳圖 1. 引腳功能及結(jié)構(gòu) X1,X2——32768Hz 晶振引腳端; RST——復(fù)位端; I/O——數(shù)據(jù)輸入/輸出端; SCLK——串行時(shí)鐘端; GND——地; VCC2,VCC1——主電源與后備電源引腳端。 DS1302 的引腳排列,其中 Vcc1 為后備電源,VCC2 為主電源。在主電源關(guān) 18 基于 89C52 的單片機(jī)實(shí)時(shí)時(shí)鐘設(shè)計(jì) 閉的情況下, 也能保持時(shí)鐘的連續(xù)運(yùn)行。 DS1302 由 Vcc1 或 Vcc2 兩者中的較大 者供電。當(dāng) Vcc2 大于 Vcc1+ 時(shí),Vcc2 給 DS1302 供電。當(dāng) Vcc2 小于 Vcc1 時(shí),DS1302 由 Vcc1 供電。X1 和 X2 是振蕩源,外接 晶振。 RST 是復(fù)位/片選線, 通過把 RST 輸入驅(qū)動(dòng)置高電平來啟動(dòng)所有的數(shù)據(jù)傳送。 RST 輸入有兩種功能: 首先, RST 接通控制邏輯, 允許地址/命令序列送入移位寄存器; 其次,RST 提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng) RST 為高電平時(shí),所有 的數(shù)據(jù)傳送被初始化,允許對(duì) 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 始終是輸入端。 2. DS1302 的控制字節(jié) 控制字節(jié)的最高有效位(位 7)必須是邏輯 1,如果它為 0,則不能把數(shù)據(jù)寫入 DS1302 中, 6 如果為 0, 位 則表示存取日歷時(shí)鐘數(shù)據(jù), 1 表示存取 RAM 數(shù)據(jù)。 為 位 5 至位 1 指示操作單元的地址。最低有效位(位 0)如為 0 表示要進(jìn)行寫操作,為 1 表示進(jìn)行讀操作,控制字節(jié)總是從最低位開始輸出。 3. 數(shù)據(jù)輸入輸出(I/O) 在控制指令字輸入后的下一個(gè) SCLK 時(shí)鐘的上升沿時(shí), 數(shù)據(jù)被寫入 DS1302, 數(shù)據(jù)輸入從低位即位 0 開始。同樣,在緊跟 8 位的控制指令字后的下一個(gè) SCLK 脈沖的下降沿讀出 DS1302 的數(shù)據(jù),讀出數(shù)據(jù)時(shí)從低位 0 位到高位 7。 4 .DS1302 的寄存器 DS1302 有 12 個(gè)寄存器,其中有 7 個(gè)寄存器與日歷、時(shí)鐘相關(guān),存放的數(shù)據(jù) 位為 BCD 碼形式,其日歷、時(shí)間寄存器及其控制字。 此外,DS1302 還有年份寄存器、控制寄存器、充電寄存器、時(shí)鐘突發(fā)寄存 器及與 RAM 相關(guān)的寄存器等。 時(shí)鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外 的所有寄存器內(nèi)容。 DS1302 與 RAM 相關(guān)的寄存器分為兩類: 一類是單個(gè) RAM 單元,共 31 個(gè),每個(gè)單元組態(tài)為一個(gè) 8 位的字節(jié),其命令控制字為 C0H~FDH, 其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā)方式下的 RAM 寄存器,此方式 下可一次性讀寫所有的 RAM 的 31 個(gè)字節(jié),命令控制字為 FEH(寫)、FFH(讀)。 19 基于 89C52 的單片機(jī)實(shí)時(shí)時(shí)鐘設(shè)計(jì) 三、軟件設(shè)計(jì) 設(shè)計(jì)方法 本設(shè)計(jì)主要是從硬件方面出發(fā),擴(kuò)展單片機(jī)的各種外圍電路開發(fā)而成的,軟件 則一般是用戶根據(jù)自己的需求來編寫,本設(shè)計(jì)板上所用的芯片基本上都是數(shù)字芯 片,所以只需要根據(jù)相應(yīng)芯片 datasheet 中的操作時(shí)序來編寫程序就可以了。 第一步:明確所設(shè)計(jì)的項(xiàng)目,以及所要實(shí)現(xiàn)的功能。 第二步:熟悉所要操作硬件的 datasheet, 看懂其時(shí)序操作圖。 第三步:選擇自己編寫語言的種類和適當(dāng)?shù)能浖?第四步:整理編寫程序的思路并畫出程序流程圖。 第五步:根據(jù)程序流程圖具體的編寫程序,編譯。 第六步:調(diào)試,結(jié)束。 設(shè)計(jì)實(shí)例 這里以本開發(fā)板中的實(shí)時(shí)時(shí)鐘為例,讓用戶熟悉下軟件設(shè)計(jì)的步驟。 第一步:明確這里要設(shè)計(jì)一個(gè)實(shí)時(shí)時(shí)鐘的程序。 第二步:熟悉單片機(jī)的硬件結(jié)構(gòu),搞懂芯片 datasheet 的操作時(shí)序。 主要掌握以下幾個(gè)方面: 1. 2. 3. 4. 5. 主要技術(shù)參數(shù) 接口信號(hào)說明 控制器接口說明 典型電路連接 讀寫操作時(shí)序圖以及時(shí)序參數(shù)(如 1602 的讀寫操作時(shí)序圖:) 讀寫操作時(shí)序圖 第三步:這里用 C 語言編寫程序,用 keil 作為設(shè)計(jì)程序的軟件平臺(tái)。 20 基于 89C52 的單片機(jī)實(shí)時(shí)時(shí)鐘設(shè)計(jì) 1. 先打開 keil 軟件 2. 新建項(xiàng)目并保存 21 基于 89C52 的單片機(jī)實(shí)時(shí)時(shí)鐘設(shè)計(jì) 5 打開文件可以直接編寫程序。 第四步:畫出本程序的流程圖。 第五步:編寫程序。 第六步:調(diào)試好程序,結(jié)束。 如圖,編譯無錯(cuò),則可以將程序燒制到單片機(jī)中執(zhí)行了。 22 基于 89C52 的單片機(jī)實(shí)時(shí)時(shí)鐘設(shè)計(jì) 原理圖和程序 本設(shè)計(jì)將用相關(guān)的應(yīng)用軟件(protel、keil 和 protues)把圖繪制并仿真出來, 具體圖和程序如下: 原理圖 protel 軟件繪制圖: 原理圖 PCB 板圖 23 基于 89C52 的單片機(jī)實(shí)時(shí)時(shí)鐘設(shè)計(jì) : 程序 include include include void Delay1ms(unsigned int count) { unsigned int i,j。 for(i=0。icount。i++) for(j=0。j120。j++)。 } main() { SYSTEMTIME CurrentTime。 LCD_Initial()。 Initial_DS1302()。 24 基于 89C52 的單片機(jī)實(shí)時(shí)時(shí)鐘設(shè)計(jì) GotoXY(0,0)。 Print(Date: )。 GotoXY(0,1)。 Print(Time: )。 while(1) { DS1302_GetTime(amp。CurrentTime)。 DateT
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1