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

正文內(nèi)容

基于單片機的多功能電子鐘課程設(shè)計說明書(更新版)

2025-09-03 19:48上一頁面

下一頁面
  

【正文】 _nop_()。 //拉高時鐘脈沖 temp=1。//延時一指令周期 RST=1。 //寫入顯示起始地址 //Enable()。 } /************************************************************/ //LCD1602 寫入字符串函數(shù) //入口函數(shù) //uchar data *address : 寫入數(shù)據(jù)首地址 //ucharm:寫入字節(jié)數(shù) LCD1602_WriteStr(uchar *address,uchar m) { uchar i,j。 delay1ms(3)。 for(i=0。//日期 uchar TimeBuf[16] = {}。 sbit E=P1^7。 通過這次課程設(shè)計使我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務(wù),從而提高自己的實際動手能力和獨立思考的能力。要顯示字符時要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符。 ③ VL: 液晶顯示 偏壓信號。當 CE 仍為高時。其 次, CE 提供了一個終止單字節(jié)或多字節(jié)數(shù)據(jù)傳輸方法。引腳功能如表 32 所示: 表 32 DS1302 引腳功能說明 引腳號 名稱 功能 1 VCC1 備份電源輸入 2 X1 晶振輸入 3 X2 晶振輸出 4 GND 地 5 RST 控制移位寄存器 /復位 6 I/O 數(shù)據(jù)輸入 /輸出 7 SCLK 串行時鐘 8 VCC2 主電源輸入 (3) DS1302的控制字 DS1302 的控制字如表 33 所示: 表 33 控制字(即地址及命令字節(jié)) 7 6 5 4 3 2 1 0 1 RAM A4 A3 A2 A1 A0 RD CK WR 控制字的最高有效位(位 7)必須是邏輯 1,如果它為 0,則不能把數(shù)山東建筑大學信息與電氣工程學院課程設(shè)計說明書 11 據(jù)寫入到 DS1302 中。在開始 8 個時鐘周期,把命令字節(jié)裝入移位寄存器之后,另外的時鐘周期在讀操作時輸出數(shù)據(jù),在寫操作時寫入數(shù)據(jù)。實時時鐘可提供秒、分、時、日、星期、月和年,一個月小于 31 天時可以自動調(diào)整,且具有閏年補償功能。 山東建筑大學信息與電氣工程學院課程設(shè)計說明書 7 P1 口是帶內(nèi)部上拉電阻的雙向 I/O 口,向 P1 口寫入 1 時 P1 口被內(nèi)部上拉為高電平,可用作輸入口。當 EA 保持低電平時,則只訪問外 ROM,不管芯片內(nèi)有否內(nèi) ROM。在讀內(nèi) ROM 或讀外 RAM 時, PSEN 無效。當 ALE 信號有效時, P0 口傳送的是低 8 位地址信號; ALE 信號無效時, P0 口傳送的是低 8 位地址信號。 AT89C51 包含以下一些功能部件: ( 1)一個 8 位 CPU ; ( 2)一個片內(nèi)振蕩器和時鐘電路; ( 3) 4KB Flash ROM ; ( 4) 128B 內(nèi) RAM; ( 5)可尋址 64KB 的外 ROM 和外 RAM 控制電路; ( 6)兩個 16 位定時 /計數(shù)器; ( 7) 21 個特殊功能寄存器; ( 8) 4 個 8 位并行 I/O 口; ( 9)一個可編程全雙工串行口; ( 10) 5 個中斷源,可設(shè)置成 2 個優(yōu)先級。 此設(shè)計原理圖框圖如圖 所示,此電路包括以下五個部分:單片機、時鐘電路、看門狗、液 晶屏、電源模塊、時鐘振蕩電路。該系統(tǒng)走時精確, 具有鬧鐘設(shè)置,時間模式切換,秒表以及可同時顯示時間、日 期等多種功能。 本系統(tǒng)為基于 DS1302 的多功能電子鐘 ,以 AT89C51 單片機 作為主控芯, 采用實時時鐘芯片 DS1302,使用 1602 液晶作為顯示輸出。 4.能夠提供生日提醒指示;能夠每天提供 3 個時間點的鬧鐘報時功能; 5.非易失定時鬧鈴 6.整點報時 山東建筑大學信息與電氣工程學院課程設(shè)計說明書 3 3 設(shè)計內(nèi)容 電子時鐘的工作原理 本次設(shè)計時鐘電路,使用了 AT89C51 單片機芯片控制電路,單片機控制電路簡單且省去了很多復雜的線路,使得電路簡明易懂,用 C 語言程序來控制整個時鐘的顯示,使得編程變得更容易,這樣通過五個模塊:芯片、顯示屏、看門狗、電源、時鐘即可滿足設(shè)計要求。因此可靈活應(yīng)用于各種控制領(lǐng)域。 AT89C51 在并行擴展外存儲器時, P0 口用于分時傳送低 8 位地址和數(shù)據(jù)信號,且均為二進制數(shù)。 PSEN 可作為外 ROM 芯片輸出允許 OE 的選通信號。當 EA 保持高電平時,先訪問內(nèi) ROM,但當 PC 值超過 4KB 時,將自動轉(zhuǎn)向執(zhí)行外 ROM 中的程序。驗證時,要求外接上拉電阻。 P3 口除了作為一般的 I/O 口線外,更重要的是它的第二功能,如表 31 所示: 表 31 P3 端口的特殊功能 端口引腳 兼 用 功 能 —— RXD 串行輸入口 —— TXD 串行輸出口 —— /INT0 外部中斷 0 —— /INT1 外部中斷 1 —— T0 定時器 0 的外部輸入 —— T1 定時器 1 的外部輸入 —— /WR 外部數(shù)據(jù)存儲器寫選通 —— /RD 外部數(shù)據(jù)存儲器讀選通 山東建筑大學信息與電氣工程學院課程設(shè)計說明書 8 DS1302 芯片 DS1302 是美國 DALLAS 公司推出的一種高性能、低功耗的實時時鐘日歷芯片,附加 31 字節(jié)靜態(tài) RAM,采用 SPI 三線接口與 CPU 進行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號和 RAM 數(shù)據(jù)。無論是讀周期還是寫周期,開始 8 位指定 40 個寄存器中哪個被訪問到。該引腳有兩個功能:第一, CE 開始控制字訪問移位寄存器的控制邏輯;其次 CE 提供結(jié)束單字節(jié)或多字節(jié)數(shù)據(jù)傳輸?shù)姆椒āJ紫龋?CE打開控制邏輯,允許訪問的移位寄存器的地址 /命令序列。注意,第一個數(shù)據(jù)字節(jié)的第一個下降沿發(fā)生后,命令字的 最后一位被寫入,命令字節(jié)的最后一位被寫入。 ② VDD: 接電源 正極 。 圖 LCD1602 引腳圖 LCD1602 引腳功能表如下表 34 所示: 表 34 LCD1602 引腳功能表 編號 符號 引腳說明 編號 符號 引腳說明 1 VSS 電源地 9 D2 數(shù)據(jù) 2 VDD 電源正極 10 D3 數(shù)據(jù) 3 VL 液晶顯示偏壓 11 D4 數(shù)據(jù) 4 RS 數(shù)據(jù) /命令選擇 12 D5 數(shù)據(jù) 5 R/W 讀 /寫選擇 13 D6 數(shù)據(jù) 6 E 使能信號 14 D7 數(shù)據(jù) 7 D0 數(shù)據(jù) 15 BLA 背光源正極 8 D1 數(shù)據(jù) 16 BLK 背光源負極 液晶顯示模塊是一個 慢顯示器件,所以在執(zhí)行每條指令之前一定要確認模塊的忙標志位是不是為低電平,是低電平則表示不忙,否則此指令失效。 14 15 16 第一行 80H 81H 82H 在設(shè)計過程中讓我進一步深刻的學習各種軟件的利用以及各種軟件給我們帶來的便利。 sbit RW=P1^6。 uchar DataBuf[16] = {}。 /************************************************************/ //延時 1ms 函數(shù) delay1ms(uchar time) { uchar i,j。 E=0。 E=1。 //P0=0x80。 //將 DS1320 時鐘脈沖拉低 _nop_()。 //延時一指令周期 CLK=1。 //延時一指令周期 CLK=0。:39。 DataBuf[0]=DS1302_Read()。 //將 RST 電平拉低,停止傳輸 TimeBuf[i]=time[m]/16+0x30。 } /************************************************************/ //鬧鐘顯示 void AlarmShow(void) { uchar i,j,a,b,n。0xf。 for(n=0。 P32 = 1。 DataBuf[14]=DataBuf[15]=0x20。 //延時 去抖動 if((KEY1 == 1)||(KEY2 == 1)||(KEY3 == 1)||(KEY4 == 1)) { j=7。0xf)*10+(DataBuf[8]amp。amp。 } } else if(i==0x8b) //設(shè)置日期 { day++。 n++。 if(n59) 山東建筑大學信息與電氣工程學院課程設(shè)計說明書 29 n=0。 DataBuf[11]=day%10+0x30。 DS1302_Write(SetWeek())。 RST=0。 } TR0=0。i16。 TimeBuf[6]=TimeBuf[7]=0x30。 if((KEY1 == 1)||(KEY2 == 1)||(KEY3 == 1)||(KEY4 == 1)) { delay1ms(100)。 if(n23) n=0。 TimeBuf[3]=n/10+0x30。 DS1302_Write(0xc2)。 RST=0。 TimeStart()。 DS1302_Write(0x8a)。0xf))。 RST=0。 P0=0x38。 //顯示時間 if(DataBuf[0]!=0x20) if(time[0]==alarm[0]) if(time[1]==alarm[1]) if(time[2]==0) AlarmShow()。 } else if(KEY3 == 1) { TR0=0
點擊復制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1