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

正文內(nèi)容

基于單片機(jī)的同步電子時鐘設(shè)計(jì)-文庫吧

2025-06-04 12:53 本頁面


【正文】 此時可作輸入口。作輸入口使用時,因?yàn)閮?nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)?! ∨cAT89C51 不同之處是, 還可分別作為定時/計(jì)數(shù)器2 的外部計(jì)數(shù)輸入()和輸入(),參見表1。  Flash 編程和程序校驗(yàn)期間,P1 接收低8 位地址。引腳號功能特性T2,時鐘輸出T2EX(定時/計(jì)數(shù)器2) 表1P2 口 P2 是一個帶有內(nèi)部上拉電阻的8 位雙向I/O 口,P2 的輸出緩沖級可驅(qū)動(吸收或輸出電流)4 個TTL 邏輯門電路。對端口P2 寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口,作輸入口使用時,因?yàn)閮?nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。 在訪問外部程序存儲器或16 位地址的外部數(shù)據(jù)存儲器(例如執(zhí)行MOVX @DPTR 指令)時,P2 口送出高8 位地址數(shù)據(jù)。在訪問8 位地址的外部數(shù)據(jù)存儲器(如執(zhí)行MOVX @RI 指令)時,P2 口輸出P2 鎖存器的內(nèi)容?! lash 編程或校驗(yàn)時,P2亦接收高位地址和一些控制信號。P3 口 P3 口是一組帶有內(nèi)部上拉電阻的8 位雙向I/O 口。P3 口輸出緩沖級可驅(qū)動(吸收或輸出電流)4 個TTL 邏輯門電路。對P3 口寫入“1”時,它們被內(nèi)部上拉電阻拉高并可作為輸入端口。此時,被外部拉低的P3 口將用上拉電阻輸出電流(IIL)?! 3 口除了作為一般的I/O 口線外,更重要的用途是它的第二功能?! 3 口還接收一些用于Flash 閃速存儲器編程和程序校驗(yàn)的控制信號。RST復(fù)位輸入。當(dāng)振蕩器工作時,RST引腳出現(xiàn)兩個機(jī)器周期以上高電平將使單片機(jī)復(fù)位。ALE/PROG當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8 位字節(jié)。一般情況下,ALE 仍以時鐘振蕩頻率的1/6 輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲器時將跳過一個ALE 脈沖。對Flash 存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對特殊功能寄存器(SFR)區(qū)中的8EH 單元的D0 位置位,可禁止ALE 操作。該位置位后,只有一條MOVX 和MOVC指令才能將ALE 激活。此外,該引腳會被微弱拉高,單片機(jī)執(zhí)行外部程序時,應(yīng)設(shè)置ALE 禁止位無效。PSEN程序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當(dāng)AT89C52 由外部程序存儲器取指令(或數(shù)據(jù))時,每個機(jī)器周期兩次PSEN 有效,即輸出兩個脈沖。在此期間,當(dāng)訪問外部數(shù)據(jù)存儲器,將跳過兩次PSEN信號。EA/VPP外部訪問允許。欲使CPU 僅訪問外部程序存儲器(地址為0000H—FFFFH),EA 端必須保持低電平(接地)。需注意的是:如果加密位LB1 被編程,復(fù)位時內(nèi)部會鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU 則執(zhí)行內(nèi)部程序存儲器中的指令。Flash 存儲器編程時,該引腳加上+12V 的編程允許電源Vpp,當(dāng)然這必須是該器件是使用12V 編程電壓Vpp。XTAL1振蕩器反相放大器的及內(nèi)部時鐘發(fā)生器的輸入端。XTAL2振蕩器反相放大器的輸出端。定時器0和定時器1:  AT89C52的定時器0和定時器1 的工作方式與AT89C51 相同。定時器2  定時器2 是一個16 位定時/計(jì)數(shù)器。它既可當(dāng)定時器使用,也可作為外部事件計(jì)數(shù)器使用,其工作方式由特殊功能寄存器T2CON(如表3)的C/T2 位選擇。定時器2 有三種工作方式:捕獲方式,自動重裝載(向上或向下計(jì)數(shù))方式和波特率發(fā)生器方式,工作方式由T2CON 的控制位來選擇?! 《〞r器2 由兩個8 位寄存器TH2 和TL2 組成,在定時器工作方式中,每個機(jī)器周期TL2 寄存器的值加1,由于一個機(jī)器周期由12 個振蕩時鐘構(gòu)成,因此,計(jì)數(shù)速率為振蕩頻率的1/12?! ≡谟?jì)數(shù)工作方式時,當(dāng)T2 引腳上外部輸入信號產(chǎn)生由1 至0 的下降沿時,寄存器的值加1,在這種工作方式下,每個機(jī)器周期的5SP2 期間,對外部輸入進(jìn)行采樣。若在第一個機(jī)器周期中采到的值為1,而在下一個機(jī)器周期中采到的值為0,則在緊跟著的下一個周期的S3P1 期間寄存器加1。由于識別1 至0 的跳變需要2 個機(jī)器周期(24 個振蕩周期),因此,最高計(jì)數(shù)速率為振蕩頻率的1/24。為確保采樣的正確性,要求輸入的電平在變化前至少保持一個完整周期的時間,以保證輸入信號至少被采樣一次。自動重裝載(向上或向下計(jì)數(shù)器)方式  當(dāng)定時器2工作于16位自動重裝載方式時,能對其編程為向上或向下計(jì)數(shù)方式,這個功能可通過特殊功能寄存器T2CON(見表5)的DCEN 位(允許向下計(jì)數(shù))來選擇的。復(fù)位時,DCEN 位置“0”,定時器2 默認(rèn)設(shè)置為向上計(jì)數(shù)。當(dāng)DCEN置位時,定時器2 既可向上計(jì)數(shù)也可向下計(jì)數(shù),這取決于T2EX 引腳的值,參見圖5,當(dāng)DCEN=0 時,定時器2 自動設(shè)置為向上計(jì)數(shù),在這種方式下,T2CON 中的EXEN2 控制位有兩種選擇,若EXEN2=0,定時器2 為向上計(jì)數(shù)至0FFFFH 溢出,置位TF2 激活中斷,同時把16 位計(jì)數(shù)寄存器RCAP2H 和RCAP2L重裝載,RCAP2H 和RCAP2L 的值可由軟件預(yù)置?! ∪鬍XEN2=1,定時器2 的16 位重裝載由溢出或外部輸入端T2EX 從1 至0 的下降沿觸發(fā)。這個脈沖使EXF2 置位,如果中斷允許,同樣產(chǎn)生中斷?! 《〞r器2 的中斷入口地址是:002BH ——0032H ?! ‘?dāng)DCEN=1 時,允許定時器2 向上或向下計(jì)數(shù),如圖6 所示。這種方式下,T2EX 引腳控制計(jì)數(shù)器方向。T2EX 引腳為邏輯“1”時,定時器向上計(jì)數(shù),當(dāng)計(jì)數(shù)0FFFFH 向上溢出時,置位TF2,同時把16 位計(jì)數(shù)寄存器RCAP2H 和RCAP2L 重裝載到TH2 和TL2 中。 T2EX 引腳為邏輯“0”時,定時器2 向下計(jì)數(shù),當(dāng)TH2 和TL2 中的數(shù)值等于RCAP2H 和RCAP2L中的值時,計(jì)數(shù)溢出,置位TF2,同時將0FFFFH 數(shù)值重新裝入定時寄存器中。當(dāng)定時/計(jì)數(shù)器2 向上溢出或向下溢出時,置位EXF2 位。波特率發(fā)生器  當(dāng)T2CON(表3)中的TCLK 和RCLK 置位時,定時/計(jì)數(shù)器2 作為波特率發(fā)生器使用。如果定時/計(jì)數(shù)器2 作為發(fā)送器或接收器,其發(fā)送和接收的波特率可以是不同的,定時器1 用于其它功能,如圖7 所示。若RCLK 和TCLK 置位,則定時器2工作于波特率發(fā)生器方式。波特率發(fā)生器的方式與自動重裝載方式相仿,在此方式下,TH2 翻轉(zhuǎn)使定時器2 的寄存器用RCAP2H 和RCAP2L 中的16位數(shù)值重新裝載,該數(shù)值由軟件設(shè)置?! ≡诜绞? 和方式3 中,波特率由定時器2 的溢出速率根據(jù)下式確定:  方式1和3的波特率=定時器的溢出率/16  定時器既能工作于定時方式也能工作于計(jì)數(shù)方式,在大多數(shù)的應(yīng)用中,是工作在定時方式(C/T2=0)。定時器2 作為波特率發(fā)生器時,與作為定時器的操作是不同的,通常作為定時器時,在每個機(jī)器周期(1/12 振蕩頻率)寄存器的值加1,而作為波特率發(fā)生器使用時,在每個狀態(tài)時間(1/2 振蕩頻率)寄存器的值加1。波特率的計(jì)算公式如下:  方式1和3的波特率=振蕩頻率/{32*[65536(RCP2H,RCP2L)]}式中(RCAP2H,RCAP2L)是RCAP2H 和RCAP2L中的16 位無符號數(shù)。  定時器2 作為波特率發(fā)生器使用的電路如圖7 所示。T2CON 中的RCLK 或TCLK=1 時,波特率工作方式才有效。在  波特率發(fā)生器工作方式中,TH2 翻轉(zhuǎn)不能使TF2 置位,故而不產(chǎn)生中斷。但若EXEN2 置位,且T2EX 端產(chǎn)生由1 至0 的負(fù)跳變,則會使EXF2 置位,此時并不能將(RCAP2H,RCAP2L)的內(nèi)容重新裝入TH2 和TL2 中。所以,當(dāng)定時器2 作為波特率發(fā)生器使用時,T2EX 可作為附加的外部中斷源來使用。需要注意的是,當(dāng)定時器2 工作于波特率器時,作為定時器運(yùn)行(TR2=1)時,并不能訪問TH2 和TL2。因?yàn)榇藭r每個狀態(tài)時間定時器都會加1,對其讀寫將得到一個不確定的數(shù)值?! ∪欢?,對RCAP2 則可讀而不可寫,因?yàn)閷懭氩僮鲗⑹侵匦卵b載,寫入操作可能令寫和/或重裝載出錯。在訪問定時器2或RCAP2 寄存器之前,應(yīng)將定時器關(guān)閉(清除TR2)??删幊虝r鐘輸出  定時器2 輸出一個占空比為50%的時鐘信號,如圖8 所示。 引腳除了是一個標(biāo)準(zhǔn)的I/O 口外,還可以通過編程使其作為定時/計(jì)數(shù)器2 的外部時鐘輸入和輸出占空比50%的時鐘脈沖。當(dāng)時鐘振蕩頻率為16MHz 時,輸出時鐘頻率范圍為61Hz—4MHz。當(dāng)設(shè)置定時/計(jì)數(shù)器2 為時鐘發(fā)生器時,C/T2(T2CON .1)=0,T2OE () =1,必須由TR2()啟動或停止定時器。時鐘輸出頻率取決于振蕩頻率和定時器2 捕獲寄存器(RCAP2H,RCAP2L)的重新裝載值,公式如下:輸出時鐘頻率=振蕩器頻率/{4*[65536(RCP2H,RCP2L)]}  在時鐘輸出方式下,定時器2 的翻轉(zhuǎn)不會產(chǎn)生中斷,這個特性與作為波特率發(fā)生器使用時相仿。定時器2 作為波特率發(fā)生器使用時,還可作為時鐘發(fā)生器使用,但需要注意的是波特率和時鐘輸出頻率不能分開確定,這是因?yàn)樗鼈兺褂肦CAP2L和RCAP2L。UART AT89C52的UART 工作方式與AT89C51 工作方式相同。中斷  AT89C52 共有6 個中斷向量:兩個外中斷(INT0 和INT1),3 個定時器中斷(定時器0、2)和串行口中斷。所有這些中斷源如圖9 所示?! ∵@些中斷源可通過分別設(shè)置專用寄存器IE 的置位或清0 來控制每一個中斷的允許或禁止。IE 也有一個總禁止位EA,它能控制所有中斷的允許或禁止?! ∽⒁獗? 為保留位,在AT89C51 也是保留位。程序員不應(yīng)將“1”寫入這些位,它們是將來AT89 系列產(chǎn)品作為擴(kuò)展用的。  定時器2 的中斷是由T2CON 中的TF2 和EXF2 邏輯或產(chǎn)生的,當(dāng)轉(zhuǎn)向中斷服務(wù)程序時,這些標(biāo)志位不能被硬件清除,事實(shí)上,服務(wù)程序需確定是TF2 或EXF2 產(chǎn)生中斷,而由軟件清除中斷標(biāo)志位。  定時器0 和定時器1 的標(biāo)志位TF0 和TF1 在定時器溢出那個機(jī)器周期的S5P2 狀態(tài)置位,而會在下一個機(jī)器周期才查  詢到該中斷標(biāo)志。然而,定時器2 的標(biāo)志位TF2 在定時器溢出的那個機(jī)器周期的S2P2 狀態(tài)置位,并在同一個機(jī)器周期內(nèi)查詢到該標(biāo)志。時鐘振蕩器  AT89C52 中有一個用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL1 和XTAL2 分別是該放大器的輸入端和輸出端?! ∵@個放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器,振蕩電路參見圖10。外接石英晶體(或陶瓷諧振器)及電容CC2 接在放大器的反饋回路中構(gòu)成并聯(lián)振蕩電路。對外接電容CC2 雖然沒有十分嚴(yán)格的要求,但電容容量的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程序及溫度穩(wěn)定性,如果使用石英晶體,我們推薦電容使用30pF177。10pF,而如使用陶瓷諧振器建議選擇40pF177。10F。用戶也可以采用外部時鐘。采用外部時鐘的電路如圖10 右圖所示。這種情況下,外部時鐘脈沖接到XTAL1 端,即內(nèi)部時鐘發(fā)生器的輸入端,XTAL2 則懸空。由于外部時鐘信號是通過一個2 分頻觸發(fā)器后作為內(nèi)部時鐘信號的,所以對外部時鐘信號的占空比沒有特殊要求,但最小高電平持續(xù)時間和最大的低電平持續(xù)時間應(yīng)符合產(chǎn)品技術(shù)條件的要求。Flash存儲器的編程  AT89C52單片機(jī)內(nèi)部有8k字節(jié)的Flash PEROM,這個Flash 存儲陣列出廠時已處于擦除狀態(tài)(即所有存儲單元的內(nèi)容均為FFH),用戶隨時可對其進(jìn)行編程。編程接口可接收高電壓(+12V)或低電壓(Vcc)的允許編程信號。低電壓編程模式適合于用戶在線編程系統(tǒng),而高電壓編程模式可與通用EPROM 編程器兼容?! T89C52 單片機(jī)中,有些屬于低電壓編程方式,而有些則是高電壓編程方式,用戶可從芯片上的型號和讀取芯片內(nèi)的簽名字節(jié)獲得該信息。  AT89C52 的程序存儲器陣列是采用字節(jié)寫入方式編程的,每次寫入一個字節(jié),要對整個芯片內(nèi)的PEROM 程序存儲器寫入一個非空字節(jié),必須使用片擦除的方式將整個存儲器的內(nèi)容清除。編程方法  編程前,須按表9 和圖11 所示設(shè)置好地址、數(shù)據(jù)及控制信號, AT89C52 編程方法如下:  1. 在地址線上加上要編程單元的地址信號?! ?. 在數(shù)據(jù)線上加上要寫入的數(shù)據(jù)字節(jié)?! ?. 激活相應(yīng)的控制信號?! ?. 在高電壓編程方式時,將EA/Vpp 端加上+12V 編程電壓。  5. 每對Flash 存儲陣列寫入一個字節(jié)或每寫入一個程序加密位,加上一個ALE/PROG 編程脈沖。每個字節(jié)寫入周期是自身定時的。重復(fù)1—5 步驟,改變編程單元的地址和寫入的數(shù)據(jù),直到全部文件編程結(jié)束。167。 DS1302簡介DS1302的結(jié)構(gòu)及工作原理DS1302 是美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實(shí)時時鐘電路,它可以對年、月、日、周日、時、分、秒進(jìn)行計(jì)時,具有閏年補(bǔ)償功能,~。采用三線接口與CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM數(shù)據(jù)。DS1302內(nèi)部有一個318的用于臨時性存放數(shù)據(jù)的RAM寄存器。DS1302是DS1202的升級產(chǎn)品,與DS1202兼容,但增加了主電源/后備電源雙電源引腳,同時提供了對后備電源進(jìn)行涓細(xì)電流充電的能力。 引腳功能及結(jié)構(gòu)  DS1302的引腳排列,其中Vcc1為后備電源,VCC2為主電源。在主電源關(guān)閉的情況下,也能保持時鐘的連續(xù)運(yùn)行。DS1302由Vcc1或Vcc2兩者中的較大者供電。當(dāng)Vcc2大于Vcc1+,Vcc2給DS1302供電。當(dāng)Vcc2小于Vcc1時,DS1302由Vcc1供電。X1和X2是振蕩源。RST是復(fù)位/片選線,通過把RST輸入驅(qū)動置高電平來啟動所有
點(diǎn)擊復(fù)制文檔內(nèi)容
語文相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1