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

正文內(nèi)容

基于單片機(jī)的時(shí)鐘設(shè)計(jì)畢業(yè)論文-文庫(kù)吧

2025-07-12 04:59 本頁(yè)面


【正文】 成新一代的智能傳感器。它將傳感器變換后的物理量作進(jìn)一步的變化和處理,使其成為數(shù)字信號(hào),可以遠(yuǎn)距離傳輸并與計(jì)算機(jī)接口。(6)現(xiàn)代交通與航空航天領(lǐng)域通常應(yīng)用于電子綜合顯示系統(tǒng)、動(dòng)力監(jiān)控系統(tǒng)、自動(dòng)駕駛系統(tǒng)、通信系統(tǒng)以及運(yùn)行監(jiān)視系統(tǒng)等。這些領(lǐng)域?qū)w積、功耗、穩(wěn)定性和實(shí)時(shí)性的要求往往比商用系統(tǒng)還要高,因此采用單片機(jī)系統(tǒng)更加重要。3 系統(tǒng)功能及操作 系統(tǒng)功能的確定 基本功能系統(tǒng)具有時(shí)間、日期、三路定時(shí)功能,并可以對(duì)時(shí)間、日期、定時(shí)進(jìn)行設(shè)定,有定時(shí)提示音。要求計(jì)時(shí)精度盡量提高。顯示格式為:時(shí)間:“時(shí)”(第2位)、“分”(第4位)、“秒”(第6位);日期:“年”(第2位,如2007年顯示為07)、“月”(第4位)、“日” (第6位);定時(shí):“時(shí)”(第2位)、“分”(第4位)、“狀態(tài)標(biāo)志”(第6位)。鍵盤及數(shù)碼管排列如圖21所示。 擴(kuò)展功能該系統(tǒng)可以增加溫度傳感器,實(shí)現(xiàn)溫度測(cè)量,以實(shí)時(shí)顯示溫度,用2位數(shù)碼管顯示;還可以增加濕度傳感器,實(shí)現(xiàn)濕度測(cè)量,以實(shí)時(shí)顯示濕度,用6位數(shù)碼管顯示。多路定時(shí)器功能也可擴(kuò)展為對(duì)多種家電等電氣產(chǎn)品的自動(dòng)控制,比如電飯煲等;也可利用溫度對(duì)某些電氣產(chǎn)品進(jìn)行自動(dòng)控制,比如空調(diào)等;還可利用濕度傳感器對(duì)濕度進(jìn)行調(diào)節(jié)。如圖31所示。圖31 系統(tǒng)功能圖 系統(tǒng)操作說明(1)按K1鍵顯示日期,3秒后自動(dòng)返回時(shí)間顯示,3秒內(nèi)按K2鍵進(jìn)入日期設(shè)置,此時(shí)年位閃爍,按K1鍵進(jìn)行年位加1或連續(xù)加1調(diào)整。按K2鍵依次切換到月位、日位,分別按K1鍵進(jìn)行月位、日位調(diào)整,日位設(shè)置好后,再按K2鍵保存日期設(shè)定值,并返回顯示時(shí)間。(2)按K2鍵大于1秒進(jìn)入時(shí)間設(shè)置,此時(shí)小時(shí)位閃爍,秒位自動(dòng)清零,按K1鍵進(jìn)行小時(shí)調(diào)整,按K2鍵切換到分鐘位,按K1鍵進(jìn)行分鐘調(diào)整,分位設(shè)置好后,再按K2鍵保存時(shí)間設(shè)定值,并返回顯示時(shí)間,按所設(shè)定的時(shí)間值進(jìn)行計(jì)時(shí)。(3)連續(xù)按K3鍵顯示3路定時(shí)及其開關(guān)狀態(tài),當(dāng)顯示某一路定時(shí)時(shí),3秒后自動(dòng)返回時(shí)間顯示,3秒內(nèi)按K2鍵進(jìn)入定時(shí)設(shè)置,設(shè)置同日期(6位顯示00為當(dāng)路定時(shí)關(guān),顯示01為當(dāng)路定時(shí)開)。當(dāng)路定時(shí)設(shè)置完后按K2鍵保存定時(shí)設(shè)定值并返回時(shí)間顯示。(4)按K4鍵顯示實(shí)時(shí)溫度和濕度,5秒后自動(dòng)返回時(shí)間顯示。4 系統(tǒng)硬件設(shè)計(jì) 芯片的選擇本設(shè)計(jì)選用AT89S52芯片,它是一種低功耗、高性能CMOS 8位微控制器,具有8K(0000H~1FFFH)在線系統(tǒng)可編程Flash存儲(chǔ)器。片上Flash允許程序存儲(chǔ)器在線編程,也適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在線系統(tǒng)可編程Flash,使得AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提供靈活、高效的解決方案。AT89S52具有以下標(biāo)準(zhǔn)功能:8K(0000H~1FFFH)Flash,256字節(jié)(00H~FFH)數(shù)據(jù)存儲(chǔ)器(RAM),64K(0000H~FFFFH)程序存儲(chǔ)器(ROM),32位I/O口線,看門狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口內(nèi)晶振及時(shí)鐘電路。其中,數(shù)據(jù)存儲(chǔ)器(RAM)用于存放各種運(yùn)算的中間結(jié)果,作緩存和數(shù)據(jù)暫存,以及設(shè)置特征標(biāo)志等。AT89S52的片內(nèi)數(shù)據(jù)存儲(chǔ)器用位尋址方式,最大尋址范圍為256字節(jié)(00H~FFH)。按使用情況不同可分成低128字節(jié)(00H~7FH)和高128字節(jié)(80H~FFH)。其中低128字節(jié)為真正的RAM存儲(chǔ)器,高128字節(jié)為特殊功能寄存器(SFR)區(qū),如累加器ACC、程序狀態(tài)字PSW、數(shù)據(jù)指針DPTR、程序計(jì)數(shù)器PC等。整個(gè)片內(nèi)RAM區(qū)分布如圖41所示。圖41 片內(nèi)RAM區(qū) 實(shí)驗(yàn)板電路原理圖實(shí)驗(yàn)板電路結(jié)構(gòu)框圖如圖42所示,原理電路圖如圖43所示。圖42 實(shí)驗(yàn)板結(jié)構(gòu)框圖圖43 實(shí)驗(yàn)板原理圖 功能電路分析 時(shí)鐘電路實(shí)驗(yàn)板的時(shí)鐘振蕩源電路如圖44所示。其中JT 的晶振,改變兩電容CB的值即可對(duì)此晶振頻率進(jìn)行調(diào)節(jié)。該電路提供單片機(jī)工作所需的振蕩頻率,計(jì)算定時(shí)器初值即需此晶振頻率,在通信時(shí)也需知道晶振頻率,以對(duì)波特率進(jìn)行計(jì)算。圖 44 時(shí)鐘電路 復(fù)位電路如圖45所示為實(shí)驗(yàn)板的復(fù)位電路,當(dāng)RESET 信號(hào)為低電平時(shí),實(shí)驗(yàn)板為工作狀態(tài),當(dāng)RESET信號(hào)為高電平時(shí),實(shí)驗(yàn)板為復(fù)位或下載程序狀態(tài)。由于AT89S52具有ISP 的功能,即可以通過并口線直接將程序下載到單片機(jī)內(nèi),因此, AT89S52 具有兩種狀態(tài),下載程序狀態(tài)和運(yùn)行狀態(tài)。該復(fù)位電路能實(shí)現(xiàn)上電自動(dòng)復(fù)位,也能手動(dòng)復(fù)位,一般復(fù)位時(shí)RESET應(yīng)保持20毫秒以上高電平,此復(fù)位時(shí)間由接地電容控制。圖 45 復(fù)位電路 鍵盤電路如圖46所示為陣列按鍵電路,各設(shè)置及轉(zhuǎn)換信號(hào)由此電路輸入,實(shí)驗(yàn)板提供了16個(gè)按鍵,由P1口經(jīng)SN74F244(驅(qū)動(dòng)芯片)輸出擴(kuò)展成44的陣列按鍵,~,~。SN74F244有一片選信號(hào)線,當(dāng)此口線為低電平時(shí),A1~A4與Y1~Y4接通,反之,A1~A4與Y1~Y4斷開。此鍵盤用掃描工作方式,若有鍵按下,則相應(yīng)位端口被拉低為低電平,由于本系統(tǒng)只用了4個(gè)按鍵,所以只需對(duì)4個(gè)按鍵進(jìn)行掃描。掃描時(shí),向P1口送0EFH(MOV P1,0EFH),讀P1口(MOV A,P1),最后判斷P1口低4位哪位是低電平,若某位為低電平,則相應(yīng)按鍵被按下,(=0),則K1鍵被按下。圖 46 陣列按鍵 數(shù)碼顯示電路如圖47所示為數(shù)碼顯示電路,實(shí)驗(yàn)板使用了6個(gè)共陽數(shù)碼管,P0口為段碼信號(hào)線,B1~B6為位控線,是P1口經(jīng)SN74F573(反向驅(qū)動(dòng)芯片,即輸入為高電平,則輸出為低電平,反之則輸出為高電平,該芯片也有一片選信號(hào)C,當(dāng)此信號(hào)為高電平時(shí)有效)反向得到,再由B1~B6控制晶體管Q1~Q6,以達(dá)到控制每位數(shù)碼管的目的。系統(tǒng)采用動(dòng)態(tài)顯示,先向P0口送第一位數(shù)碼管需要顯示的段碼值,再給P1口送0FEH,延時(shí)1毫秒使第一位數(shù)碼管顯示,又向P0口送第二位數(shù)碼管需要顯示的段碼值,P1口送0FDH,延時(shí)1毫秒,使第二位數(shù)碼管顯示。依次遞推,直到最后一位數(shù)碼管,然后再循環(huán)。改變延時(shí)時(shí)長(zhǎng)可以調(diào)節(jié)數(shù)碼管顯示的亮度,由于單片機(jī)執(zhí)行速度很快(微秒級(jí)),所以看上去數(shù)碼管一直亮著。圖 47 數(shù)碼顯示電路 蜂鳴器電路其硬件原理圖如圖48所示。此電路用于定時(shí)時(shí)發(fā)出提示音。,當(dāng)SPEAKER輸出高電平時(shí)蜂鳴器不響,而SPEAKER輸出低電平時(shí)蜂鳴器發(fā)出響聲。只需控制SPEAKER輸出高低電平的時(shí)間和變化頻率,就可以讓蜂鳴器發(fā)出不同的聲音。此電路用于產(chǎn)生定時(shí)器提示音。圖 48 蜂鳴器電路5 系統(tǒng)軟件設(shè)計(jì)系統(tǒng)的軟件設(shè)計(jì)也是工具系統(tǒng)功能的設(shè)計(jì)。單片機(jī)軟件的設(shè)計(jì)主要包括執(zhí)行軟件(完成各種實(shí)質(zhì)性功能)的設(shè)計(jì)和監(jiān)控軟件的設(shè)計(jì)。單片機(jī)的軟件設(shè)計(jì)通常要考慮以下幾個(gè)方面的問題:(1)根據(jù)軟件功能要求,將系統(tǒng)軟件劃分為若干個(gè)相對(duì)獨(dú)立的部分,設(shè)計(jì)出合理的總體結(jié)構(gòu),使軟件開發(fā)清晰、簡(jiǎn)潔和流程合理;(2)培養(yǎng)良好的編程風(fēng)格,如考慮結(jié)構(gòu)化程序設(shè)計(jì)、實(shí)行模塊化、子程序化。既便于調(diào)試、鏈接,又便于移植和修改;(3)建立正確的數(shù)學(xué)模型,通過仿真提高系統(tǒng)的性能,并選取合適的參數(shù);(4)繪制程序流程圖;(5)合理分配系統(tǒng)資源;(6)為程序加入注釋,提高可讀性,實(shí)施軟件工程;(7)注意軟件的抗干擾設(shè)計(jì),提高系統(tǒng)的可靠性。 數(shù)據(jù)單元分配 數(shù)據(jù)存儲(chǔ)單元分配數(shù)據(jù)存儲(chǔ)單元分配如下表所示:項(xiàng)目秒分時(shí)日月年存儲(chǔ)單元30H31H32H33H34H35H項(xiàng)目定時(shí)1:開關(guān)定時(shí)1:分定時(shí)1:時(shí)定時(shí)2:開關(guān)定時(shí)2:分定時(shí)2:時(shí)存儲(chǔ)單元36H37H38H39H3AH3BH項(xiàng)目定時(shí)3:開關(guān)定時(shí)3:分定時(shí)3:時(shí)存顯示首地址堆棧起始單元存儲(chǔ)單元3CH3DH3EH3FH50H 標(biāo)志位單元分配 標(biāo)志位單元(20H)分配如下表所示:位單元項(xiàng)目位單元項(xiàng)目01H2位數(shù)碼管閃爍標(biāo)志位08H定時(shí)1顯示標(biāo)志位02H09H定時(shí)2顯示標(biāo)志位03H4位數(shù)碼管閃爍標(biāo)志位0AH定時(shí)3顯示標(biāo)志位04H0BH定時(shí)1響鈴標(biāo)志位05H6位數(shù)碼管顯示標(biāo)志位0CH定時(shí)2響鈴標(biāo)志位06H0DH定時(shí)3響鈴標(biāo)志位07H日期顯示標(biāo)志位0EH總響鈴標(biāo)志位 計(jì)時(shí)時(shí)鐘實(shí)現(xiàn)的基本方法時(shí)鐘的最小計(jì)時(shí)單位是秒,使用定時(shí)器的方式1,最大的定時(shí)時(shí)間也只能達(dá)到131毫秒??砂讯〞r(shí)器的定時(shí)時(shí)間定為50毫秒,這樣,計(jì)數(shù)溢出20次即可得到時(shí)鐘的最小計(jì)時(shí)單位─秒。計(jì)數(shù)20次可以用軟件實(shí)現(xiàn),對(duì)定時(shí)器溢出次數(shù)進(jìn)行計(jì)數(shù),計(jì)滿20次即為1秒。從秒到分,從分到時(shí),以及日、月、年都是通過軟件累加并進(jìn)行比較的方法實(shí)現(xiàn)的。 實(shí)現(xiàn)時(shí)鐘程序設(shè)計(jì)步驟系統(tǒng)采用模塊化結(jié)構(gòu),主程序只需調(diào)用各個(gè)子程序模塊即可實(shí)現(xiàn)相應(yīng)功能。其模塊結(jié)構(gòu)圖如圖51所示。 圖51 程序各模塊方框圖 主程序模塊設(shè)計(jì)整個(gè)程序進(jìn)行模塊化設(shè)計(jì),主程序只需調(diào)用相應(yīng)的程序即可。主程序流程如圖52所示。 圖52 主程序流程圖 計(jì)時(shí)子程序模塊的實(shí)現(xiàn)當(dāng)T0中斷時(shí),執(zhí)行本程序,因T0設(shè)為50毫秒中斷,故中斷20次為1秒。中斷程序分別有20次計(jì)數(shù)(1秒),60次計(jì)數(shù)(1分),60次計(jì)數(shù)(1小時(shí)),24次計(jì)數(shù)(1天),2231次計(jì)數(shù)(1個(gè)月),12次計(jì)數(shù)(1年)。當(dāng)前位到設(shè)定數(shù)值時(shí)寫0或1,下一位加1。由于本世紀(jì)是21世紀(jì),年位前兩位是4的倍數(shù),故判斷閏年時(shí)只需對(duì)年的后兩位進(jìn)行計(jì)算,能被4整除為閏年,否則為平年,年位只進(jìn)行加1,大于99時(shí)又重新開始。計(jì)時(shí)中斷流程圖如圖53所示。圖53 計(jì)時(shí)子程序流程圖 圖54 顯示子程序流程圖 顯示子程序模塊的實(shí)現(xiàn)顯示原理在前面已給予了說明,流程圖如圖54所示。 時(shí)鐘設(shè)定子程序模塊的實(shí)現(xiàn)當(dāng)設(shè)定時(shí)間時(shí),斷開T0中斷,秒單元清0,進(jìn)入時(shí)、分單元設(shè)定。設(shè)定好后重裝T0初值,開T0中斷。流程圖如圖55所示。 圖55 時(shí)鐘設(shè)定子程流程圖 日期、定時(shí)設(shè)定子程序模塊的實(shí)現(xiàn)日期、定時(shí)的設(shè)定同時(shí)鐘設(shè)定。定時(shí)設(shè)定時(shí),把時(shí)鐘的秒位換成定時(shí)標(biāo)志位,“00”為當(dāng)路定時(shí)關(guān),“01”為當(dāng)路定時(shí)開,流程圖與時(shí)鐘設(shè)定程序相似。 程序說明 定時(shí)器初值計(jì)算因定時(shí)器工作于方式1,需要50ms的中斷,所以計(jì)數(shù)初值:χ=216 tfosc/12=65536 50103106/12=19456表示成十六進(jìn)制為χ=4C00H,故(TH0)=4CH,(TL0)=00H。 程序初始化程序初始化時(shí),清相應(yīng)內(nèi)存單元(20H~4FH共48個(gè)單元),送時(shí)間(00時(shí)00分00秒)、日期(07年10月01日)初值,送定時(shí)器T0、T1初值,TH0= TH1=4CH,TL0= TL1=00H,特殊寄存器(SP=50H、TMOD=11H)值等。 誤差分析及校正當(dāng)T0中斷時(shí),需重裝定時(shí)初值,且要加上從斷開T0中斷到允許T0中斷共有13個(gè)周期,以減小誤差,故理論重裝定時(shí)初值為(TH0)=4CH,(TL0)=13H。但該外接晶振電路的晶振頻率可調(diào),可能出現(xiàn)誤差,所以實(shí)際不是這個(gè)值。經(jīng)調(diào)試,當(dāng)定時(shí)初值為(TH0)=4CH,(TL0)=06H時(shí),24小時(shí)約慢2秒,所以每當(dāng)計(jì)時(shí)24小時(shí)之后,給秒單元(30H)送02H,使秒累加時(shí)從2加起,24小時(shí)就少加2秒,即可使時(shí)間得到校正。 實(shí)現(xiàn)閃動(dòng)設(shè)定閃動(dòng)可選用段碼送00H實(shí)現(xiàn),也可禁止當(dāng)前位顯示,選通位送0實(shí)現(xiàn)。本設(shè)計(jì)選用后者實(shí)現(xiàn)閃動(dòng),用定時(shí)器T1進(jìn)行控制。 實(shí)現(xiàn)連續(xù)加1先判斷鍵是否松開,若松開,則只執(zhí)行一次加1程序段,進(jìn)行單次加1;若未松開則連續(xù)執(zhí)行加1程序段,實(shí)現(xiàn)連續(xù)加1。每執(zhí)行一次加1程序段就調(diào)用顯示子程序進(jìn)行延時(shí),以對(duì)調(diào)節(jié)速度進(jìn)行控制。本系統(tǒng)以5Hz的速度連續(xù)加1,這樣能快速對(duì)時(shí)間、日期、定時(shí)進(jìn)行設(shè)定。 定時(shí)音與顯示相沖突問題及解決方案,頻率1K~2K,~1毫秒,小于6 毫秒,因顯示時(shí)每個(gè)數(shù)碼管顯示1毫秒,至少需要6毫秒,故蜂鳴器響時(shí)無法進(jìn)行顯示。為解決此問題,可增加鎖存器,采用靜態(tài)顯示;也可增加一語音芯片,既可解決此問題,也可把定時(shí)音換成音樂或語音提示,或增加其它功能,使系統(tǒng)功能更強(qiáng)。6 設(shè)計(jì)程序 ORG 0000H LJMP START ORG 000BH LJMP INTT0 ORG 001BH LJMP INTT1 。。主程序。。ORG 0020H START: MOV R0,20H 。清20H4FH共48個(gè)單元 MOV R7,30H 。20H,21H標(biāo)志用 CLEARA: MOV @R0,00H INC R0 DJNZ R7,CLEARA CLR CLR CLR MOV SP
點(diǎn)擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1