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

正文內(nèi)容

基于at89c51單片機的lcd電子時鐘設計畢業(yè)論文-免費閱讀

2025-07-21 17:51 上一頁面

下一頁面
  

【正文】 通過設計后能夠熟練的掌握時鐘芯片DS130LCD16AT89C51的的各個引腳及功能,并能夠掌握和運用這幾個芯片。 //顯示年 }}/*****************************************************函數(shù)功能:主函數(shù)***************************************************/ void main(void){ LcdInitiate()。0x70)4)*10 + (ReadValueamp。 //將讀出數(shù)據(jù)轉(zhuǎn)化 DisplayHour(hour)。 //從分寄存器讀 minute =((ReadValueamp。:39。39。:39。)。 //延時1ms給硬件一點反應時間 }/*****************************************************函數(shù)功能:液晶顯示年月日以及時間***************************************************/ void displaytime(){ uchar second,minute,hour,day,month,year。 //將十位數(shù)字的字符常量寫入LCD delaynms(50)。 //將百位數(shù)字的字符常量寫入LCD WriteData(digit[j])。 //寫顯示地址,將在第2行第7列開始顯示 WriteData(digit[i])。 //取個位 WriteAddress(0x46)。 //取十位 j=x%10。 //延時5ms ,給硬件一點反應時間 WriteInstruction(0x0c)。 //空操作四個機器周期,給硬件反應時間 E=0。 _nop_()。 //空操作四個機器周期,給硬件反應時間 E=0。 _nop_()。 }/*****************************************************函數(shù)功能:將模式設置指令或顯示地址寫入液晶模塊入口參數(shù):dictate***************************************************/void WriteInstruction (uchar dictate){ while(BusyTest()==1)。 E=1。 for(i=0。 //使能信號位,sbit BF=P0^7。取模運算,取余 //數(shù)據(jù)前四位為十位,后四位為個位,詳見寄存器表 WriteSet1302(0x82,((0/10)4|(0%10)))。 //將時鐘電平置于已知狀態(tài) RST=0。 //稍微等待 } return dat。 //稍微等待,使硬件做好準備 for(i=0。 //確保寫數(shù)居前SCLK被拉低 RST=1。0x01。in。 LCD1602 流程圖 程序主要實現(xiàn)對信息的顯示,包括年、月、日、時、分、秒等信息,在這里要注意它的讀寫控制指令。 指令9:讀出忙信號和光標地址。C:控制光標的開與關,高電平表示有光標,低電平表示無光標。LCD1602液晶模塊內(nèi)部的控制器共有11條控制指令,如表28所示:表28 LCD1602控制命令表指令RSR/WD8D7D6D5D4D3D2D1清顯示0000000001光標返回000000001*置輸入模式00000001I/DS顯示開/關控制0000001DCB光標或字符移位000001S/CR/L**置功能00001DLNF**置字符發(fā)生存貯器地址0001字符發(fā)生存貯器地址置數(shù)據(jù)存貯器地址001顯示數(shù)據(jù)存貯器地址(ADD)讀忙標志或地址01BF計數(shù)器地址(AC)寫數(shù)到CGRAMD或DRAM10要寫的數(shù)從CGRAMD或DRAM讀數(shù)11讀出的數(shù)據(jù) 它的讀寫操作、屏幕和光標的操作都是通過指令編程來實現(xiàn)的(說明:1為高電平,0為低電平)。高電平時進行讀操作,低電平時進行寫操作。由于其具有體積小、重量輕、顯示質(zhì)量高、功耗低等諸多優(yōu)點而被廣泛用于智能化儀器儀表的顯示器件。 按鍵復位 在單片機產(chǎn)品中,最簡單的按鍵復位電路是由電阻和電容構成的,如果系統(tǒng)擴展存在需要和微處理器同時復位的其他接口芯片,這種簡單的阻容復位電路往往不能滿足整體復位的要求。如果連接到地,輸入給看門狗的脈沖間隔不得大于150毫秒;如果不連接,脈沖間隔不得大于600毫秒;如果連接到電源,;  TOL :選擇5%或10%的電源監(jiān)測精度。數(shù)據(jù)輸入位0 開始?! ?DS1302時序  CE 輸入驅(qū)動高啟動所有的數(shù)據(jù)傳輸。當WP位為1時,寫保護位防止對任一寄存器的寫操作。引腳功能如表22所示:表22 DS1302引腳功能說明引腳號名稱功能1VCC1備份電源輸入2X13X24GND地5RST控制移位寄存器/復位6I/O數(shù)據(jù)輸入/輸出7SCLK串行時鐘8VCC2主電源輸入 DS1302的寄存器 DS1302有關日歷、時間的寄存器共有12個,其中有7個寄存器(讀時81h~8Dh,寫時80h~8Ch),存放的數(shù)據(jù)格式為BCD碼形式,如表23所示:表23 DS1302的日歷、時鐘寄存器及其控制字寄存器名命令字取值范圍各位內(nèi)容寫操作讀操作76543210秒寄存器 80H81H0059CH10SECSEC分寄存器82H83H0059010MINMIN時寄存器84H85H0112或002312/24010HRHR日寄存器86H87H0128,29,30,310010DATEDATE月寄存器88H89H011200010MMONTH周寄存器8AH8BH010700000DAY年寄存器8CH8DH009910YEARYEAR控制8EH8FHWP0000000  秒寄存器(81h、80h)的位7定義為時鐘暫停標志(CH)。在開始8個時鐘周期,把命令字節(jié)裝入移位寄存器之后,另外的時鐘周期在讀操作時輸出數(shù)據(jù),在寫操作時寫入數(shù)據(jù)。實時時鐘可提供秒、分、時、日、星期、月和年,一個月小于31天時可以自動調(diào)整,且具有閏年補償功能?! 1 口是帶內(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 位地址信號。40 個引腳大致可分為4 類:電源、時鐘、控制各I/O 引腳。時、分、秒的計數(shù)結果經(jīng)過數(shù)據(jù)處理可直接送顯示器顯示。當計時發(fā)生誤差的時候可以用校時電路進行校正。圖21 AT89C51引腳圖   電源  Vcc——芯片電源,接+5V;GND——接地端。在ALE 信號的下降沿,鎖定P0 口傳送的內(nèi)容,即低8 位地址信號。  RST/VPD——復位/備用電源。 ?。?)VPP 功能:片內(nèi)有EPROM 的芯片,在EPROM 編程期間,此引腳用于施加編程電源。當作為輸入腳時被外部信號拉低的P1口會因為內(nèi)部上拉而輸出一個電流?!r鐘脈沖的個數(shù)在單字節(jié)方式下為8加8,在多字節(jié)方式下為8加字節(jié)數(shù),最大可達248字節(jié)數(shù)。當該位置為1時,時鐘振蕩器停止,DS1302處于低功耗狀態(tài);當該位置為0時,時鐘開始運行?! S1302的工作模式寄存器所謂突發(fā)模式是指一次傳送多個字節(jié)的時鐘信號和RAM數(shù)據(jù)。CE 輸入有兩個功能。  對于數(shù)據(jù)輸出:開始的8 個SCLK 周期,輸入一個讀命令字節(jié),數(shù)據(jù)字節(jié)在后8 個SCLK 周期的下降沿輸出。如果這個引腳連接到地,;如果這個引腳連接到5V,;  GND :地線;  RST:復位高脈沖輸出引腳;  RST:復位低脈沖輸出引腳;  ST:看門狗脈沖輸入,低脈沖有效;  VCC:5V電源。DS1232提供了可直接連接復位按鍵的輸入端/PBSEN(第1腳),在該引腳上輸入低電平信號,將在/RST和RST端輸出至少250ms的復位信號。   LCD1602引腳及功能 LCD1602的引腳如圖27所示: ?。?)GND:地電源。當RS和共同為低電平時可以寫入指令或者顯示地址,當RS為低電平為高電平時可以讀出忙信號,當RS為高電平為低電平時可以寫入數(shù)據(jù)。 指令1:清顯示,指令碼01H,光標復位到地址00H位置。 B:控制光標是否閃爍,高電平閃爍,低電平不閃爍。BF為忙標志位,高電平表示忙,此時模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙,模塊就能接收相應的命令或者數(shù)據(jù)。8DH8EH8FH第二行0C0H0C1H0C2H其流程圖如圖33所示。i++) 。 //取出dat的第0位數(shù)據(jù)寫入1302 delaynus(2)。 //啟動數(shù)據(jù)傳輸 delaynus(2)。i8。 //將讀出的數(shù)據(jù)返回} /*****************************************************函數(shù)功能:根據(jù)命令字,從1302讀取一個字節(jié)數(shù)據(jù)入口參數(shù):Cmd***************************************************/ uchar ReadSet1302(uchar Cmd) { uchar dat。 //禁止數(shù)據(jù)傳遞 return dat。 //根據(jù)寫分寄存器命令字,寫入分的初始值 WriteSet1302(0x84,((12/10)4|(12%10)))。 //忙碌標志位,/*****************************************************函數(shù)功能:延時1ms(3j+2)*i=(333+2)10=1010(微秒),可以認為是1毫秒*****
點擊復制文檔內(nèi)容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1