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

正文內(nèi)容

單片機(jī)作息時(shí)間控制器課程設(shè)計(jì)-在線瀏覽

2024-08-06 12:57本頁面
  

【正文】 :講課及課題介紹;下午:分組進(jìn)行總體方案討論,初步確定設(shè)計(jì)方案;星期三 上午:方案論證與檢查;下午:分組進(jìn)行總體設(shè)計(jì),硬、軟件功能分配;星期四 硬、軟件流程設(shè)計(jì)與計(jì)算; 星期五 小系統(tǒng)焊接與調(diào)試;第二周:星期一 分單元調(diào)試調(diào)試;星期二 寫說明書初稿;星期三 檢查設(shè)計(jì)情況,修改說明書;星期四 整理資料,準(zhǔn)備答辯;星期五 交設(shè)計(jì)資料,答辯。對于類似匯編的單片機(jī)編程過程,也是一個十分有趣的過程。校園作息時(shí)間控制系統(tǒng)主要用于學(xué)校,對一些以24小時(shí)為周期的開關(guān)量進(jìn)行自動控制。技術(shù)要求如下:(1) 定時(shí)準(zhǔn)確,月誤差《=10%。(3) 具備到時(shí)響鈴功能。該方案節(jié)省硬件成本,且能夠使讀者在定時(shí)/計(jì)數(shù)器的使用、中數(shù)年及程序設(shè)計(jì)方面得到鍛煉與提高,因此本系統(tǒng)將采用軟件方法實(shí)現(xiàn)計(jì)時(shí)。如前所述,通常有兩種顯示方式:動態(tài)顯示和靜態(tài)顯示。 該方案硬件連接簡單,但動態(tài)掃描的顯示方式需占用CPU較多的時(shí)間,在單片機(jī)沒有太多實(shí)時(shí)測控任務(wù)的情況下可以采用。選用典型的并口掃描顯示輸出。利用 P1口的低六位作為6個功能鍵的鍵盤線,P3口部分口作為冬季或夏季作息時(shí)間的選擇線、臨時(shí)報(bào)時(shí)處理設(shè)置線和打鈴輸出控制(輸出部分加光電隔離)。電腦時(shí)鐘沒有大量的運(yùn)算和暫存數(shù)據(jù),現(xiàn)有的128B片內(nèi)RAM已能滿足要求,也不必外擴(kuò)片RAM。采用共陰極LED數(shù)碼管,P0口、P2口和數(shù)碼管之間串接了反相驅(qū)動芯片ULN2003,因此P2口輸出高電平選中相應(yīng)的位,而P0口輸出低電平點(diǎn)亮相應(yīng)的段。2接用戶自設(shè)定報(bào)時(shí)/作息時(shí)間報(bào)時(shí)的選擇開關(guān),開關(guān)閉合(P3。 P3。3=1時(shí)選擇擇冬令作息時(shí)間表。4端口外接光電隔離器,驅(qū)動擴(kuò)音機(jī)電源的控制開關(guān),低電平有效。5位LED從左到右依次顯示時(shí)、分,采用24H計(jì)時(shí)。采用4個獨(dú)立按鍵,包括:移位鍵、加1鍵、減1鍵、校時(shí)置入鍵。0=0)每按動移位鍵一次,小數(shù)點(diǎn)從左向右移動1位。1=0)對小數(shù)點(diǎn)所在位的數(shù)什進(jìn)行十進(jìn)制加1。2=0)對小數(shù)點(diǎn)所在位的數(shù)值進(jìn)行十進(jìn)制減1。3=0)將顯示的時(shí)間值置入實(shí)時(shí)時(shí)鐘的計(jì)時(shí)緩沖區(qū)。通電后,系統(tǒng)自動進(jìn)入時(shí)鐘顯示,從00:00:00:開始計(jì)時(shí),此時(shí)可以設(shè)定當(dāng)前時(shí)間。按下“移位”鍵,小數(shù)點(diǎn)從左向右移動,每按動1次,小數(shù)點(diǎn)便移動1位;要修改設(shè)置哪一位,只需將小數(shù)點(diǎn)移到該位,便可用“加1鍵”或“減1鍵”對該位進(jìn)行數(shù)字設(shè)定;時(shí)間的校對設(shè)定一共有5位,從左到右依次為星期、小時(shí)十位、小時(shí)個位、他的十位、分的個位。(3) 用戶報(bào)時(shí)時(shí)間設(shè)置/顯示。如需修改,可用“移位鍵”、“加1鍵”,“減1 鍵”來重新設(shè)定,然后用“報(bào)時(shí)設(shè)定鍵”來轉(zhuǎn)入并結(jié)束顯示。在報(bào)時(shí)處理程序上中,一旦當(dāng)前時(shí)間與作息時(shí)間表中的某一時(shí)間點(diǎn)(時(shí)、分值)相同時(shí),則建立F0報(bào)時(shí)標(biāo)志,建立F1放音標(biāo)志,擴(kuò)音機(jī)播放報(bào)時(shí)音樂,并在26H中設(shè)置放音時(shí)間,放音時(shí)間到,則關(guān)閉驅(qū)動及清除F1標(biāo)志位,完成1次報(bào)時(shí)驅(qū)動.第3章 軟件設(shè)計(jì) (1)為方便閱讀程序,先對系統(tǒng)的資源分配加以說明。定時(shí)器0用作時(shí)鐘定時(shí),按方式1工作,每隔100MS溢出中斷1次。根據(jù)上述工作流程,軟件設(shè)計(jì)可分為以下幾個功能模塊:1) 主程序:初始化與鍵盤監(jiān)控。3) 時(shí)間設(shè)置與報(bào)時(shí)設(shè)置:由鍵盤輸入設(shè)置當(dāng)前時(shí)間與定時(shí)啟閉時(shí)間。5) 鍵盤掃描:判斷是否有鍵按下,并求取鍵號。7) 其他輔助功能程序,如鍵盤設(shè)置、拆字、合字、冬季或夏季時(shí)間表選擇及假日停止報(bào)時(shí)等。鍵掃描子程序檢測P1口,判斷是否有鍵按下,如有鍵按下,進(jìn)進(jìn)行延時(shí)去抖動并讀取鍵值,存入A中鍵值處理子程序判斷A中的值,根據(jù)A來選擇調(diào)用哪個子程序 主程序模塊(MAIN)在主程序模塊中,先對各端口進(jìn)行初始化,對內(nèi)部RAM區(qū)清零,設(shè)置堆棧和定時(shí)器初值,關(guān)閉顯示器,啟動定時(shí)及其中斷。 ORG 0000H START: AJMP MAIN 。跳轉(zhuǎn)到定時(shí)器T0的中斷服務(wù)程序入口 ORG 0030HMAIN: NOP 。關(guān)閉各輸出口MOV P0,A 。P1口作為6個鍵輸入口MOV P2,A 。P3口報(bào)時(shí)方式控制和驅(qū)動輸出口SETB T0 。關(guān)閉報(bào)時(shí)擴(kuò)音機(jī)電源(T1=1)CJNE SP,07H,NOT1 MOV R0,7FHMOV R1,7DH 。從內(nèi)部RAM區(qū)03H到7FH均清零NOT1: MOV SP,60H 。設(shè)置定時(shí)器T0為最高中斷優(yōu)先級MOV IE,82H。設(shè)置定時(shí)器T0為方式1MOV TL0,0B0H。啟動定時(shí)NOPNEXTT: NOP MOV SP,60H 。檢測標(biāo)志是否出現(xiàn),F3為定時(shí)分鐘值變化的標(biāo)志位JNB 0F3H,NEXT1 。F3=1,調(diào)用報(bào)時(shí)處理子程序SETB INT0JNB INT0 , USERS。INTO=1,調(diào)用TIMERA,按作息時(shí)間表報(bào)時(shí)USERS: NOPLCALL TIMERB。調(diào)用按鍵掃描子程序,判斷有無鍵按下JZ NEXTT。有鍵按下,調(diào)用按鍵處理子程序NOPSJMP NEXTTNOPNOP:①對100毫秒(20H)、秒(21H)、分(22H)、小時(shí)(23H)進(jìn)行累計(jì)計(jì)數(shù),如果分值有計(jì)數(shù)變化并且無鍵按下,則將小時(shí)和分鐘送顯示緩沖區(qū)更新顯示目錄;②如有報(bào)是處理標(biāo)志,則對報(bào)時(shí)擴(kuò)音機(jī)電源和報(bào)時(shí)音樂輸出分別進(jìn)行定時(shí)控制。T0的中斷服務(wù)子程序MOV TL0,0B4H。保護(hù)主程序現(xiàn)場數(shù)據(jù)PUSH PSWNOPSETB RS0。SELECT 1 AREAINC 20H。(F4H)為鍵處理標(biāo)志位,在鍵處理過程中不顯示秒點(diǎn)CJNE A,05H,CTNUCCTNUC: JC LC2。未計(jì)滿1S則退出中斷MOV 20H,00H。F0H=1為報(bào)時(shí)擴(kuò)音機(jī)預(yù)熱延時(shí)標(biāo)志位MOV A,25H。(26H)中存放報(bào)時(shí)放音的延時(shí)時(shí)間值CLR TONEXTE: JNB OF1H,NEXTF 。判斷報(bào)時(shí)放音延時(shí)是否結(jié)束CLR OF1H 。對秒計(jì)數(shù)單元(21H)進(jìn)行累計(jì)計(jì)數(shù)ADD A,01HDA AMOV 21H,ACJNE A,06H,RTNH 。(F3H)為分值有變更標(biāo)志位NEXT: MOV A,22H 。時(shí)單元加1DA AMOV 23H,A 。星期計(jì)數(shù)單元(24H)加1DA AMOV 24H,ACJNE A,07H,RTDNMOV 24H,00HRTDN: NOPJNB OF3H,RTDH 。確認(rèn)(F4=0)正在鍵處理,則返回LDDA: NOP 。(24H、23H、22H、)送(2FH~2BH)MOV R1,2FHMOV R2,02H MOV A,@R0 ANL A,0FHMOV @R1,ADEC R0DEC R1LD1: MOV A,@R0 。中斷返回,并恢復(fù)現(xiàn)場數(shù)據(jù)NOPPOP PSWPOP ACCRETI 該模塊為5位LED掃描顯示模塊。顯示緩沖區(qū)為2FH~2BH等5個字節(jié),2FH存放顯示的星期數(shù),2EH、2DH存放顯示的小時(shí)數(shù),2CH、2BH存放顯示的分鐘數(shù),其數(shù)值范圍在00H~0FH內(nèi)時(shí)不顯示該位的小數(shù)點(diǎn),在10H~1FH時(shí)則顯示小數(shù)點(diǎn)。DISP為顯示子程序NOP MOV A,00H 。P2口為字位碼輸出口 MOV A,0FFH MOV P0,A 。顯示子程序NOP MOV R1,10H 。輸出位控制字MOV P2,AMOV DPTR,TABLEMOV A,@R0 。查表轉(zhuǎn)換成字型代碼CPL AMOV P0,A 。延時(shí)2MSDEC R0 。判斷5位掃描顯示一遍是否完成RET NOPNOPTABLE:DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H DB 0BFH,86H,0DBH,0CFH,0E6H,0EDH,0FDH,87H 。CHECKEYA:NOP 。判斷是否有鍵按下CPL AANL A,3FHJZ RETXLCALL DISP 。當(dāng)前值存放在R6中K1: LCALL DISP 。將顯示緩沖區(qū)2FH~2BH中的內(nèi)容壓縮后存入40H為首地址的片內(nèi)RAM中,其中2FH為定時(shí)時(shí)間點(diǎn)的編號,2EH、2DH為小時(shí)值,2CH、2BH為分鐘數(shù)值。本次用戶設(shè)定報(bào)時(shí)點(diǎn)首址為40HMOV A,@R0ANL A,OFHRL AADD A,R1 。定時(shí)設(shè)定時(shí)間置入子程序NOPMOV R2,02HLDD: MOV A,@R0 。在小數(shù)點(diǎn)點(diǎn)亮的對應(yīng)位上進(jìn)行十進(jìn)制減1處理。由(2FH)指定的用戶自設(shè)定報(bào)時(shí)點(diǎn)編號,計(jì)算其在RAM中存放的地址,再根據(jù)此地址找出該報(bào)時(shí)時(shí)間點(diǎn)的2個字節(jié)碼,將其4個半字節(jié)分別存入2EH~2BH單元低半字中。自設(shè)定報(bào)時(shí)點(diǎn)編號由(2FH)指定MOV R1,40H 。報(bào)時(shí)點(diǎn)編號乘2加首址,為其存放的實(shí)際地址MOV R1,ADEC R0NOP 。將小時(shí)和分鐘值解壓縮后裝入相應(yīng)顯示單元中SWAP AXCHD A,@R0DEC R0INC R1DJNZ R2,LDRNOPCLR 0F4HNOPRETNOP KEYACC: NOP 。按鍵處理子程序JB ACC.0,SHIFTP 。是加1鍵,轉(zhuǎn)ADDONEJB ACC.2,SUBONE 。是時(shí)鐘校對鍵轉(zhuǎn)TIMSETJB ACC.4,USESET 。顯示用戶定時(shí)時(shí)間點(diǎn)NOPNOPNOPRETNOPiv. 加1鍵處理程序。ADDONE:NOPNOPJ
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1