




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第第1313章章 mcs-51mcs-51的串行通訊技術(shù)及其它擴(kuò)展的串行通訊技術(shù)及其它擴(kuò)展 接口接口 13.1 13.1 mcs-51mcs-51單片機(jī)的串行通訊接口技術(shù)單片機(jī)的串行通訊接口技術(shù) mcs-51mcs-51串行口的輸入、輸出均為串行口的輸入、輸出均為ttlttl電平電平, ,抗干擾性抗干擾性 差,傳輸距離短。差,傳輸距離短。 為提高串行通訊的可靠性,增大串行通訊的距離,為提高串行通訊的可靠性,增大串行通訊的距離, 采用采用標(biāo)準(zhǔn)串行接口標(biāo)準(zhǔn)串行接口:rs-232rs-232、rs-422ars-422a、rs-485rs-485等等 標(biāo)準(zhǔn)。標(biāo)準(zhǔn)。 rs-232rs-232是由美國電
2、子工業(yè)協(xié)會(是由美國電子工業(yè)協(xié)會(eiaeia)于于19621962年制定年制定 的標(biāo)準(zhǔn)。的標(biāo)準(zhǔn)。 13.1.1 13.1.1 各種標(biāo)準(zhǔn)串行通訊接口各種標(biāo)準(zhǔn)串行通訊接口 一、一、rs-232crs-232c接口接口 定義定義數(shù)據(jù)終端設(shè)備(數(shù)據(jù)終端設(shè)備(dtedte)和和數(shù)據(jù)通訊設(shè)備(數(shù)據(jù)通訊設(shè)備(dcedce)之之 間的串行接口標(biāo)準(zhǔn)。間的串行接口標(biāo)準(zhǔn)。 圖圖13-113-1是兩臺計算機(jī)利用是兩臺計算機(jī)利用modemmodem、電話線進(jìn)行遠(yuǎn)距離串電話線進(jìn)行遠(yuǎn)距離串 行通訊的示意圖,行通訊的示意圖,dtedte為計算機(jī)為計算機(jī),dcedce的典型代表是的典型代表是 modemmodem。 圖圖13
3、-213-2為為rs-232crs-232c的的“d”d”型型9 9針插頭針插頭的引腳定義。的引腳定義。 表表13-113-1 pc pc機(jī)的機(jī)的rs-232crs-232c接口信號接口信號( (略略) ) 1. 1. 電氣特性電氣特性 rs-232crs-232c上傳送的上傳送的數(shù)字量采用數(shù)字量采用負(fù)邏輯負(fù)邏輯,且,且與地對稱與地對稱。 邏輯邏輯“1”1”:3 315v15v; 邏輯邏輯“0”0”:3 315v15v。 rs-232crs-232c標(biāo)準(zhǔn)的信號傳輸?shù)臉?biāo)準(zhǔn)的信號傳輸?shù)淖畲箅娎|長度為最大電纜長度為3030米米,最,最 高數(shù)傳速率為高數(shù)傳速率為20kbit/s20kbit/s。 2.
4、 2. 電平轉(zhuǎn)換電平轉(zhuǎn)換 由于由于ttlttl電平和電平和rs-232crs-232c電平互不兼容,所以兩者對接電平互不兼容,所以兩者對接 時,必須進(jìn)行電平轉(zhuǎn)換。時,必須進(jìn)行電平轉(zhuǎn)換。 rs-232crs-232c與與ttlttl電平轉(zhuǎn)換最常用的芯片是電平轉(zhuǎn)換最常用的芯片是mc1488mc1488、 mc1489mc1489和和max232max232等,各廠商生產(chǎn)的此類芯片雖然等,各廠商生產(chǎn)的此類芯片雖然 不同,但原理相似。不同,但原理相似。 以美國以美國maximmaxim公司公司的產(chǎn)品的產(chǎn)品max232max232為例為例 , ,它是它是rs-232crs-232c 雙工發(fā)送器雙工發(fā)送器
5、/ /接收器接口電路芯片,其外部引腳如接收器接口電路芯片,其外部引腳如 圖圖13-313-3,內(nèi)部結(jié)構(gòu)及外部元件如,內(nèi)部結(jié)構(gòu)及外部元件如圖圖13-413-4所示。所示。 由于芯片內(nèi)部有自升壓的電平倍增電路,由于芯片內(nèi)部有自升壓的電平倍增電路,將將+5v+5v轉(zhuǎn)換轉(zhuǎn)換 成成-10v-+10v-10v-+10v,滿足滿足rs-232crs-232c的邏輯的邏輯“1”1”和邏輯和邏輯“0”0” 的電平要求。的電平要求。 工作時僅需工作時僅需單一的單一的+5v+5v電源電源。其片內(nèi)有。其片內(nèi)有2 2個發(fā)送器,個發(fā)送器,2 2 個接收器,有個接收器,有ttlttl信號輸入信號輸入/rs-232c/rs-
6、232c輸出的功能,輸出的功能, 也有也有rs-232crs-232c輸入輸入/ttl/ttl輸出的功能。該芯片與輸出的功能。該芯片與 ttl/cmosttl/cmos電平兼容,使用比較方便。電平兼容,使用比較方便。 使用使用max232max232實現(xiàn)實現(xiàn)ttl/rs-232cttl/rs-232c之間的電平轉(zhuǎn)換電路如之間的電平轉(zhuǎn)換電路如 圖圖13-513-5所示所示。 二、二、 rs-422ars-422a接口接口 rs-232crs-232c雖然應(yīng)用很廣泛,但其推出較早,在現(xiàn)代網(wǎng)雖然應(yīng)用很廣泛,但其推出較早,在現(xiàn)代網(wǎng) 絡(luò)通訊中已暴出絡(luò)通訊中已暴出明顯的缺點明顯的缺點:傳輸速率低、通訊距傳
7、輸速率低、通訊距 離短、接口處信號容易產(chǎn)生串?dāng)_離短、接口處信號容易產(chǎn)生串?dāng)_等。等。 因此,因此,eiaeia又制定了又制定了rs-422ars-422a標(biāo)準(zhǔn)。標(biāo)準(zhǔn)。rs-232crs-232c即是一種即是一種 電氣標(biāo)準(zhǔn),又是一種物理接口功能標(biāo)準(zhǔn),而電氣標(biāo)準(zhǔn),又是一種物理接口功能標(biāo)準(zhǔn),而rs-rs- 422a422a僅僅是一種電氣標(biāo)準(zhǔn)。僅僅是一種電氣標(biāo)準(zhǔn)。pcpc機(jī)不帶機(jī)不帶rs-422ars-422a接口接口, 因此要使用因此要使用rs-232/rs-422ars-232/rs-422a轉(zhuǎn)換器轉(zhuǎn)換器,把,把rs-232crs-232c接接 口轉(zhuǎn)換成口轉(zhuǎn)換成rs-422ars-422a接口。接口
8、。 1. 1. 電氣特性電氣特性 rs-422ars-422a與與rs-232crs-232c的的主要區(qū)別主要區(qū)別是,收發(fā)雙方的信是,收發(fā)雙方的信 號地號地不再共地不再共地,rs-422ars-422a標(biāo)準(zhǔn)規(guī)定標(biāo)準(zhǔn)規(guī)定平衡驅(qū)動平衡驅(qū)動和和 差分接收差分接收的方法。的方法。 輸入同一個信號時,其中一個驅(qū)動器的輸出永遠(yuǎn)輸入同一個信號時,其中一個驅(qū)動器的輸出永遠(yuǎn) 是另一個驅(qū)動器的是另一個驅(qū)動器的反相信號反相信號。當(dāng)一個表示邏輯當(dāng)一個表示邏輯 “1”1”時,另一條一定為邏輯時,另一條一定為邏輯“0”0”。 若若傳輸過程傳輸過程中,中,信號中混入了干擾和噪聲信號中混入了干擾和噪聲(以(以共共 模形式模形
9、式出現(xiàn)),由于差分接收器的作用,就能出現(xiàn)),由于差分接收器的作用,就能 識別有用信號并正確接收傳輸?shù)男畔?,并使干識別有用信號并正確接收傳輸?shù)男畔ⅲ⑹垢?擾和噪聲相互抵消。擾和噪聲相互抵消。 因此,因此,rs-422ars-422a能在長距離、高速率下傳輸數(shù)據(jù)。它的能在長距離、高速率下傳輸數(shù)據(jù)。它的 最大傳輸率為最大傳輸率為10mbit/s10mbit/s,在此速率下,電纜允許長,在此速率下,電纜允許長 度為度為12m12m,如果采用,如果采用較低傳輸速率較低傳輸速率時,時,最大傳輸距離最大傳輸距離 可達(dá)可達(dá)1200m1200m。 rs-422ars-422a電路由發(fā)送器、平衡連接電纜、電纜終
10、端負(fù)載、電路由發(fā)送器、平衡連接電纜、電纜終端負(fù)載、 接收器接收器四部分組成四部分組成。在電路中。在電路中規(guī)定只許有一個發(fā)送規(guī)定只許有一個發(fā)送 器,可以有多個接收器器,可以有多個接收器。 該標(biāo)準(zhǔn)允許驅(qū)動器輸出為該標(biāo)準(zhǔn)允許驅(qū)動器輸出為2 26v6v,差分接收器,差分接收器可以可以 檢測的輸入信號電平可低到檢測的輸入信號電平可低到200mv200mv。 2. 2. 電平轉(zhuǎn)換電平轉(zhuǎn)換 ttlttl電平轉(zhuǎn)換成電平轉(zhuǎn)換成rs-422ars-422a電平的電平的常用芯片常用芯片有為有為sn75174sn75174、 mc3487mc3487等。等。 rs-422ars-422a電平轉(zhuǎn)換成電平轉(zhuǎn)換成ttltt
11、l電平的電平的常用芯片常用芯片為為:sn75175:sn75175、 mc3486mc3486等。等。 sn75174sn75174、sn75175sn75175是分別是具有三態(tài)輸出的單片四差是分別是具有三態(tài)輸出的單片四差 分驅(qū)動器和接收器,采用分驅(qū)動器和接收器,采用+5v+5v電源供電。電源供電。圖圖13-613-6, 圖圖13-713-7給出給出電平轉(zhuǎn)換芯片電平轉(zhuǎn)換芯片sn75174sn75174、sn75175sn75175內(nèi)部內(nèi)部 結(jié)構(gòu)結(jié)構(gòu)及及引腳圖引腳圖。 ttlttl電平電平與與rs-422ars-422a電平電平轉(zhuǎn)換電路轉(zhuǎn)換電路如圖如圖13-813-8所示。所示。 三、三、rs-
12、485rs-485接口接口 rs-485rs-485是是rs-422ars-422a的變型的變型,它,它與與rs-422ars-422a的區(qū)別在于的區(qū)別在于: rs-422ars-422a為全雙工,采用兩對平衡差分信號線;而為全雙工,采用兩對平衡差分信號線;而 rs-485rs-485為半雙工為半雙工,采用,采用一對平衡差分信號線一對平衡差分信號線。rs-rs- 485485對于對于多站互連多站互連是十分方便是十分方便的。的。rs-485rs-485標(biāo)準(zhǔn)允許標(biāo)準(zhǔn)允許 最多并聯(lián)最多并聯(lián)3232臺臺驅(qū)動器和驅(qū)動器和3232臺接收器。臺接收器。 1. 1. 電氣特性電氣特性 rs-485rs-485
13、的信號傳輸?shù)男盘杺鬏敳捎貌捎脙删€間的電壓兩線間的電壓來表示邏輯來表示邏輯“1”1” 和邏輯和邏輯“0”0”,由于收發(fā)方需要兩根傳輸線。數(shù)據(jù)由于收發(fā)方需要兩根傳輸線。數(shù)據(jù) 采用差分傳輸,所以干擾抑制性好。又因無接地問采用差分傳輸,所以干擾抑制性好。又因無接地問 題,所以傳題,所以傳輸距離可達(dá)輸距離可達(dá)12001200米米,傳輸速率可達(dá),傳輸速率可達(dá) 10mbit/s10mbit/s。 總線兩端接匹配電阻總線兩端接匹配電阻(1000(1000左右左右) ),驅(qū)動器負(fù)載為,驅(qū)動器負(fù)載為 5454。驅(qū)動器輸出電平在。驅(qū)動器輸出電平在1.5v1.5v以下時為邏輯以下時為邏輯 “1”1”,在,在1.5v1
14、.5v以上時為邏輯以上時為邏輯“0”0”。接收器輸。接收器輸 入電平在入電平在0.2v0.2v以下時為邏輯以下時為邏輯“1”1”,在,在0.2v0.2v以以 上為邏輯上為邏輯“0”0”。 普通的普通的pcpc機(jī)一般不帶機(jī)一般不帶rs-485rs-485接口,接口,因此因此要使用要使用rs-rs- 232/rs-485232/rs-485轉(zhuǎn)換器轉(zhuǎn)換器。對于單片機(jī)可以通過芯片。對于單片機(jī)可以通過芯片 max485max485來完成來完成ttl/rs-485ttl/rs-485的電平轉(zhuǎn)換。的電平轉(zhuǎn)換。 2. 2. 電平轉(zhuǎn)換電平轉(zhuǎn)換 在在rs-422ars-422a標(biāo)準(zhǔn)中所用的驅(qū)動器和接收器芯片,在標(biāo)
15、準(zhǔn)中所用的驅(qū)動器和接收器芯片,在 rs-485rs-485中均可以使用。中均可以使用。 除了除了rs-422ars-422a電平轉(zhuǎn)換中所列舉的驅(qū)動器和接收器外,電平轉(zhuǎn)換中所列舉的驅(qū)動器和接收器外, 還有還有收發(fā)器收發(fā)器sn75176sn75176芯片芯片,該芯片集成了一差分驅(qū),該芯片集成了一差分驅(qū) 動器和一差分接收器動器和一差分接收器 ,如,如圖圖13-913-9所示。所示。sn75176sn75176 的功能見的功能見表表13-413-4。 rs-485rs-485點對點點對點遠(yuǎn)程通訊電路遠(yuǎn)程通訊電路如如圖圖13-1013-10所示。所示。 四、四、 20ma20ma電流環(huán)串行接口電流環(huán)串行
16、接口 目前串行通訊中目前串行通訊中廣泛使用廣泛使用的一種接口電路,但的一種接口電路,但未形成未形成 正式標(biāo)準(zhǔn)正式標(biāo)準(zhǔn)。 該接口要比該接口要比rs-232crs-232c接口簡單的多,它接口簡單的多,它只有只有4 4根線根線:發(fā):發(fā) 送正、發(fā)送負(fù)、接收正和接收負(fù)四根線組成一個輸送正、發(fā)送負(fù)、接收正和接收負(fù)四根線組成一個輸 入電流回路、一個輸出電流回路。入電流回路、一個輸出電流回路。 當(dāng)當(dāng)發(fā)送數(shù)據(jù)發(fā)送數(shù)據(jù)時,根據(jù)數(shù)據(jù)的邏輯時,根據(jù)數(shù)據(jù)的邏輯1 1、0 0,有規(guī)律的使回,有規(guī)律的使回 路形成通、斷狀態(tài),即環(huán)路中無電流表示邏輯路形成通、斷狀態(tài),即環(huán)路中無電流表示邏輯 “0”0”,有,有20ma20ma
17、電流表示邏輯電流表示邏輯“1”1”。 工作原理如工作原理如圖圖13-1113-11所示。所示。 20ma20ma電流環(huán)串行通訊接口的最大優(yōu)點電流環(huán)串行通訊接口的最大優(yōu)點是是低阻傳輸線低阻傳輸線對對 電氣噪聲不敏感,且電氣噪聲不敏感,且易實現(xiàn)光電隔離易實現(xiàn)光電隔離。因此,在長。因此,在長 距離傳送時,要比距離傳送時,要比rs-232crs-232c優(yōu)越的多。電流環(huán)在優(yōu)越的多。電流環(huán)在低低 速數(shù)傳率傳輸速數(shù)傳率傳輸時,傳輸距離可達(dá)時,傳輸距離可達(dá)10001000米米。 由于由于20ma20ma電流環(huán)是一種異步串行接口標(biāo)準(zhǔn),所以在每電流環(huán)是一種異步串行接口標(biāo)準(zhǔn),所以在每 次發(fā)送數(shù)據(jù)時必須以無電流的起
18、始作為每一個字符次發(fā)送數(shù)據(jù)時必須以無電流的起始作為每一個字符 的起始位,接收端檢測到起始位時便開始接收字符的起始位,接收端檢測到起始位時便開始接收字符 數(shù)據(jù)。數(shù)據(jù)。 圖圖13-1213-12是一個由是一個由集成芯片構(gòu)成的集成芯片構(gòu)成的20ma20ma電流環(huán)接口電流環(huán)接口線線 路圖。路圖。 五、五、 各種串行接口性能比較各種串行接口性能比較 現(xiàn)將現(xiàn)將rs-232crs-232c、rs-422ars-422a、rs-485rs-485、20ma20ma電流環(huán)各串電流環(huán)各串 行接口性能列在表行接口性能列在表13-513-5中,以便比較。中,以便比較。 表表13-513-5(略)(略) 13.1.2
19、mcs-5113.1.2 mcs-51單片機(jī)雙機(jī)串行通訊接口單片機(jī)雙機(jī)串行通訊接口 一、一、 雙機(jī)通訊硬件接口設(shè)計雙機(jī)通訊硬件接口設(shè)計 根據(jù)根據(jù)mcs-51mcs-51的雙機(jī)的雙機(jī)通訊距離通訊距離,抗干擾性抗干擾性的要求,可選的要求,可選 擇擇ttlttl電平傳輸,或選擇電平傳輸,或選擇rs-232crs-232c、rs-422ars-422a、rs485rs485 串行接口進(jìn)行串行數(shù)據(jù)傳輸。串行接口進(jìn)行串行數(shù)據(jù)傳輸。 1 1ttlttl電平通訊接口電平通訊接口 如果兩個如果兩個mcs-51mcs-51單片機(jī)相距在單片機(jī)相距在幾米之內(nèi)幾米之內(nèi),它們的串行,它們的串行 口可直接相連,從而直接用口
20、可直接相連,從而直接用ttlttl電平傳輸方法來實電平傳輸方法來實 現(xiàn)雙機(jī)通訊。如現(xiàn)雙機(jī)通訊。如圖圖13-1313-13所示。所示。 2 2rs-232crs-232c雙機(jī)通訊接口雙機(jī)通訊接口 如果雙機(jī)通訊距離在如果雙機(jī)通訊距離在3030米之內(nèi),可利用米之內(nèi),可利用rs-232crs-232c標(biāo)準(zhǔn)標(biāo)準(zhǔn) 接口實現(xiàn)點對點的雙機(jī)通訊,接口電路如圖接口實現(xiàn)點對點的雙機(jī)通訊,接口電路如圖13-1413-14 所示。所示。 3 3rs-422ars-422a雙機(jī)通訊接口雙機(jī)通訊接口 為了增加通訊距離,減小通道及電源干擾,可以在為了增加通訊距離,減小通道及電源干擾,可以在 通訊線路上采用通訊線路上采用光電隔
21、離光電隔離的方法,利用的方法,利用rs-422ars-422a標(biāo)標(biāo) 準(zhǔn)進(jìn)行雙機(jī)通訊,接口電路如準(zhǔn)進(jìn)行雙機(jī)通訊,接口電路如圖圖13-1513-15所示。所示。 在在圖圖13-1513-15中,每個通道的接收端都接有三個電阻中,每個通道的接收端都接有三個電阻 r1 r1、r2r2、r3r3。 其中其中r1r1為傳輸線的匹配電阻,取值范圍在為傳輸線的匹配電阻,取值范圍在5050 1k 1k之間,其他兩個電阻是之間,其他兩個電阻是為了解決第一個數(shù)為了解決第一個數(shù) 據(jù)的誤碼據(jù)的誤碼而設(shè)置的匹配電阻。而設(shè)置的匹配電阻。 為了起到為了起到隔離、抗干擾隔離、抗干擾的作用,的作用,圖圖13-1513-15中必須
22、使用中必須使用 兩組獨立的電源兩組獨立的電源。 4 4rs-485rs-485雙機(jī)通訊接口雙機(jī)通訊接口 rs-422ars-422a雙機(jī)通訊需雙機(jī)通訊需四芯傳輸線四芯傳輸線,這對長距離通訊是,這對長距離通訊是 很不經(jīng)濟(jì)很不經(jīng)濟(jì)的,故在工業(yè)現(xiàn)場,通常采用雙絞線傳的,故在工業(yè)現(xiàn)場,通常采用雙絞線傳 輸?shù)妮數(shù)膔s-485rs-485串行通訊接口。串行通訊接口。 這種接口很容易實現(xiàn)多機(jī)通訊。這種接口很容易實現(xiàn)多機(jī)通訊。圖圖13-1613-16給出了其給出了其rs- rs- 485 485雙機(jī)通訊接口電路。雙機(jī)通訊接口電路。 由由圖圖13-1613-16可知:可知:rs-485rs-485以以雙向、半雙
23、工的方式雙向、半雙工的方式實現(xiàn)實現(xiàn) 了雙機(jī)通訊。在了雙機(jī)通訊。在80318031系統(tǒng)發(fā)送或接收數(shù)據(jù)前,應(yīng)系統(tǒng)發(fā)送或接收數(shù)據(jù)前,應(yīng) 先將先將7517675176的發(fā)送門或接收門打開,當(dāng)?shù)陌l(fā)送門或接收門打開,當(dāng)p1.0=1p1.0=1時,時, 發(fā)送門打開,接收門關(guān)閉;當(dāng)發(fā)送門打開,接收門關(guān)閉;當(dāng)p1.0=0p1.0=0,接收門打,接收門打 開,發(fā)送門關(guān)閉。開,發(fā)送門關(guān)閉。 13.1.3 mcs-5113.1.3 mcs-51單片機(jī)多機(jī)串行通訊接口單片機(jī)多機(jī)串行通訊接口 利用串行口實現(xiàn)多機(jī)通訊的工作原理,已在第利用串行口實現(xiàn)多機(jī)通訊的工作原理,已在第7 7章中章中 作過介紹。下面首先介紹多機(jī)通訊的接
24、口設(shè)計。作過介紹。下面首先介紹多機(jī)通訊的接口設(shè)計。 一、一、ttlttl電平多機(jī)串行通訊電平多機(jī)串行通訊 當(dāng)當(dāng)一臺主機(jī)一臺主機(jī)與與多臺從機(jī)多臺從機(jī)之間之間距離較近距離較近時時, ,可直接采用可直接采用 ttlttl電平進(jìn)行多機(jī)通訊,電平進(jìn)行多機(jī)通訊,多機(jī)通訊的連接方式如多機(jī)通訊的連接方式如圖圖 13-1713-17所示。所示。 由于由于80318031單片機(jī)單片機(jī)p3p3口可帶口可帶4 4個個lsttllsttl,故在圖,故在圖13-1713-17中,中, n n的取值范圍應(yīng)為的取值范圍應(yīng)為n n 4 4。如果。如果n4n4,則,則p3p3口應(yīng)加驅(qū)動口應(yīng)加驅(qū)動 電路。電路。 二、二、20ma2
25、0ma電流環(huán)多機(jī)串行通訊接口電流環(huán)多機(jī)串行通訊接口 用用ttlttl電平進(jìn)行多機(jī)通訊時,有效通訊距離約幾米左電平進(jìn)行多機(jī)通訊時,有效通訊距離約幾米左 右,這在實際中往往不能滿足要求。右,這在實際中往往不能滿足要求。 可采用可采用20ma20ma電流環(huán)電流環(huán)進(jìn)行多機(jī)通訊,不僅進(jìn)行多機(jī)通訊,不僅提高了抗干擾提高了抗干擾 能力能力,而且可實現(xiàn),而且可實現(xiàn)遠(yuǎn)距離通訊遠(yuǎn)距離通訊。 20ma20ma電流環(huán)串行多機(jī)通訊電流環(huán)串行多機(jī)通訊原理電路如原理電路如圖圖13-1813-18所示。所示。 13.1.4 pc13.1.4 pc機(jī)與機(jī)與mcs-51mcs-51的點對點的串行通訊接口的點對點的串行通訊接口 一
26、、硬件接口設(shè)計一、硬件接口設(shè)計 如前所述如前所述, , 通常通常pcpc機(jī)都配有機(jī)都配有rs-232crs-232c串行標(biāo)準(zhǔn)接口,串行標(biāo)準(zhǔn)接口, 有效通訊距離較短。有效通訊距離較短。 為實現(xiàn)長距離通訊應(yīng)將為實現(xiàn)長距離通訊應(yīng)將rs-232crs-232c接口轉(zhuǎn)換成接口轉(zhuǎn)換成rs-rs- 422a/rs-485422a/rs-485接口。接口。圖圖13-1913-19給出了這種轉(zhuǎn)換的電給出了這種轉(zhuǎn)換的電 路原理圖。路原理圖。 圖圖13-1913-19可完成可完成rs-232crs-232c至至rs-422ars-422a的轉(zhuǎn)換,也可完成的轉(zhuǎn)換,也可完成 rs-232crs-232c至至rs-485
27、rs-485的轉(zhuǎn)換。的轉(zhuǎn)換。當(dāng)選擇當(dāng)選擇rs-422ars-422a輸出方式輸出方式 時,時,3 3、4 4短接;當(dāng)選擇短接;當(dāng)選擇rs-485rs-485輸出方式時,輸出方式時,1 1、2 2短短 接,接,5 5、6 6短接,短接,7 7、8 8短接。短接。 圖圖13-1913-19中,中,r1r1、r2r2是為排除第一個數(shù)據(jù)傳輸誤碼而是為排除第一個數(shù)據(jù)傳輸誤碼而 設(shè)置的匹配電阻。設(shè)置的匹配電阻。設(shè)計者可根據(jù)實際情況選擇該電設(shè)計者可根據(jù)實際情況選擇該電 阻的大小。阻的大小。 電源電源vccvcc和和veevee均為均為+5v+5v,但不是一個電源,但不是一個電源,vccvcc和和vee ve
28、e 應(yīng)為隔離電源,只有這樣才能實現(xiàn)電隔離。應(yīng)為隔離電源,只有這樣才能實現(xiàn)電隔離。 13.1.5 pc13.1.5 pc機(jī)與多個機(jī)與多個mcs-51mcs-51單片機(jī)的串行通訊接口單片機(jī)的串行通訊接口 一、硬件接口電路一、硬件接口電路 將將1 1臺臺ibm-pcibm-pc機(jī)機(jī)和和若干臺若干臺mcs-51mcs-51單片機(jī)單片機(jī)構(gòu)成的小型分構(gòu)成的小型分 布式測控系統(tǒng),如布式測控系統(tǒng),如圖圖13-2013-20所示。所示。 1 1臺臺pcpc機(jī)機(jī)與與數(shù)臺數(shù)臺80318031單片機(jī)單片機(jī)進(jìn)行進(jìn)行多機(jī)通訊多機(jī)通訊的的rs-485rs-485串串 行通訊接口電路如行通訊接口電路如圖圖13-2113-21
29、所示。所示。 13.2 mcs-5113.2 mcs-51單片機(jī)與日歷時鐘芯片的接口單片機(jī)與日歷時鐘芯片的接口 單片機(jī)應(yīng)用系統(tǒng),有時需一個實時時鐘供定時、測控單片機(jī)應(yīng)用系統(tǒng),有時需一個實時時鐘供定時、測控 用。設(shè)計者只需選擇合適的集成電路芯片即可。本用。設(shè)計者只需選擇合適的集成電路芯片即可。本 節(jié)介紹日歷時鐘芯片節(jié)介紹日歷時鐘芯片ds12887ds12887的功能以及與的功能以及與mcs-51mcs-51 單片機(jī)的接口設(shè)計。單片機(jī)的接口設(shè)計。 ds12887sds12887s是是跨越跨越20002000年年的日歷時鐘芯片,用的日歷時鐘芯片,用4 4位數(shù)位數(shù)來來 表示年度,采用表示年度,采用24
30、24引腳雙列直插式封裝。引腳雙列直插式封裝。 該芯片的晶體振蕩器、振蕩電路、充電電路和可充電該芯片的晶體振蕩器、振蕩電路、充電電路和可充電 鋰電池等一起封裝在芯片的上方,組成一個加厚的鋰電池等一起封裝在芯片的上方,組成一個加厚的 集成電路模塊。集成電路模塊。 電路通電時,充電電路自動對電池充電。充足一次電路通電時,充電電路自動對電池充電。充足一次 電可供芯片時鐘運(yùn)行半年之久,電可供芯片時鐘運(yùn)行半年之久,正常工作時正常工作時可可保保 證時鐘數(shù)據(jù)證時鐘數(shù)據(jù)1010年內(nèi)不會丟失年內(nèi)不會丟失。此外,片內(nèi)帶有。此外,片內(nèi)帶有114114 個字節(jié)的個字節(jié)的ramram。 13.2.1 ds1288713.
31、2.1 ds12887的性能及引腳說明的性能及引腳說明 一、性能一、性能 主要性能如下:主要性能如下: (1 1)具有時鐘、鬧鐘功能及)具有時鐘、鬧鐘功能及到到21002100年年的日歷功能,的日歷功能, 可選擇可選擇1212小時小時制或制或2424小時小時制計時,有制計時,有amam和和pmpm、星星 期期、夏時制夏時制時間操作及時間操作及閏年自動補(bǔ)償閏年自動補(bǔ)償?shù)裙δ?。等功能?(2 2)ds12887ds12887內(nèi)部有內(nèi)部有1414個寄存器個寄存器:10:10個時標(biāo)寄存器、個時標(biāo)寄存器、 4 4個狀態(tài)寄存器。還有掉電保護(hù)用個狀態(tài)寄存器。還有掉電保護(hù)用114114字節(jié)的低功字節(jié)的低功 耗
32、耗ramram。 (3 3)具有用軟件編程選擇的周期性中斷方式和多頻)具有用軟件編程選擇的周期性中斷方式和多頻 率輸出的方波發(fā)生器功能。率輸出的方波發(fā)生器功能。 (4 4)該芯片可以滿足各種不同的待機(jī)要求,最長可)該芯片可以滿足各種不同的待機(jī)要求,最長可 達(dá)達(dá)2424小時。小時。 (5 5)可選擇二進(jìn)制或)可選擇二進(jìn)制或bcdbcd碼來表示時間。碼來表示時間。 (6 6)工作電壓:)工作電壓:+4.5+4.5+5.5v+5.5v。 (7 7)工作電流:)工作電流:7 715ma15ma。 (8 8)工作溫度范圍:)工作溫度范圍:0 0+70+70c c 二、引腳說明二、引腳說明 ds12887
33、/12c887ds12887/12c887的引腳如的引腳如圖圖13-2213-22所示。所示。 各引腳功能如下:各引腳功能如下: (1) mot(1) mot: :計算機(jī)總線選擇端(接低電平為總線方式);計算機(jī)總線選擇端(接低電平為總線方式); (2) sqwf(2) sqwf:方波輸出,是否輸出以及速率由專用寄存:方波輸出,是否輸出以及速率由專用寄存 器器a a、b b的預(yù)置參數(shù)決定;的預(yù)置參數(shù)決定; (3) ad7(3) ad7ad0ad0:地址:地址/ /數(shù)據(jù)(雙向)總線,由數(shù)據(jù)(雙向)總線,由aleale的下的下 降沿鎖存降沿鎖存8 8位地址;位地址; (4) wr(4) wr* *:
34、寫數(shù)據(jù)控制信號,低電平有效;:寫數(shù)據(jù)控制信號,低電平有效; (5) ale(5) ale:地址鎖存信號端;:地址鎖存信號端; (6) rd(6) rd* *:數(shù)據(jù)讀控制信號端,低電平有效;:數(shù)據(jù)讀控制信號端,低電平有效; (7) (7) cscs* *:片選信號端,低電平有效;:片選信號端,低電平有效; (8) (8) irqirq* * :中斷申請端:中斷申請端, ,低電平有效,由專用寄存器低電平有效,由專用寄存器 決定;決定; (9) (9) resetreset* * :復(fù)位端,低電平復(fù)位;:復(fù)位端,低電平復(fù)位; (10) nc:(10) nc:空閑端。空閑端。 13.2.2 ds128
35、8713.2.2 ds12887的內(nèi)部的內(nèi)部ramram和寄存器和寄存器 cpucpu通過通過讀讀ds12887ds12887的的內(nèi)部時標(biāo)寄存器內(nèi)部時標(biāo)寄存器得到當(dāng)前的時間得到當(dāng)前的時間 和日歷。也可通過選擇二進(jìn)制碼或和日歷。也可通過選擇二進(jìn)制碼或bcdbcd碼初始化芯碼初始化芯 片的片的1010個時標(biāo)寄存器。個時標(biāo)寄存器。 114114字節(jié)字節(jié)ramram可在系統(tǒng)掉電時來保存一些重要的數(shù)據(jù)??稍谙到y(tǒng)掉電時來保存一些重要的數(shù)據(jù)。 ds12887ds12887的的4 4個個控制與狀態(tài)寄存器用來控制或反映控制與狀態(tài)寄存器用來控制或反映 ds12887ds12887模塊當(dāng)前的工作狀態(tài),除數(shù)據(jù)更新周期
36、外,模塊當(dāng)前的工作狀態(tài),除數(shù)據(jù)更新周期外, 軟件可隨時讀寫這軟件可隨時讀寫這4 4個寄存器。個寄存器。 下面介紹各寄存器的功能和作用。下面介紹各寄存器的功能和作用。 一、內(nèi)部一、內(nèi)部ramram與各專用寄存器簡介與各專用寄存器簡介 引腳引腳ad7ad7ad0ad0的的8 8位編碼決定了對各專用寄存器與內(nèi)位編碼決定了對各專用寄存器與內(nèi) 部部ramram的尋址。其中:的尋址。其中: 00h00h09h09h:1010個時標(biāo)寄存器;個時標(biāo)寄存器; 0ah0ah0dh0dh:4 4個控制與狀態(tài)寄存器;個控制與狀態(tài)寄存器; 0eh0ehffhffh:114114字節(jié)的靜態(tài)字節(jié)的靜態(tài)ramram; 表表1
37、3-613-6是是ds12887ds12887內(nèi)部內(nèi)部1010個時標(biāo)寄存器和個時標(biāo)寄存器和4 4個控制個控制/ /狀狀 態(tài)寄存器的地址分配。態(tài)寄存器的地址分配。 1 1時標(biāo)寄存器(時標(biāo)寄存器(1010個)個) 00h00h03h03h單元為單元為“秒秒”、“分分”單元,取值范圍是單元,取值范圍是 00h00h3bh(3bh(十進(jìn)制十進(jìn)制0 059)59) 04h04h05h05h單元是單元是“時時”單元,按單元,按1212小時制的取值范小時制的取值范 圍是上午(圍是上午(amam)01h01h0ch0ch(1 11212),下午(),下午(pmpm) 51h51h5ch5ch(81819292
38、);按);按2424小時制的取值范圍是小時制的取值范圍是 00h00h17h17h(1 12323) 06h06h單元是單元是“星期星期”單元,取值范圍是單元,取值范圍是00h00h07h07h (0 07 7) 07h07h單元是單元是“日日”單元,取值范圍是單元,取值范圍是01h01h1fh1fh(1 1 3131);); 08h08h單元是單元是“月月”單元,取值范圍是單元,取值范圍是01h01h0ch0ch(1 1 1212);); 09h09h單元是單元是“年的低年的低2 2位位”單元,取值范圍是單元,取值范圍是00h00h 63h63h(0 09999)。)。 mcs-51mcs-
39、51對對ds12887ds12887內(nèi)部內(nèi)部ramram和各專用寄存器的地址分和各專用寄存器的地址分 配可采用譯碼器法。假設(shè)配可采用譯碼器法。假設(shè)ds12887ds12887的片選地址從的片選地址從 =#d000h=#d000h開始有效,則開始有效,則芯片內(nèi)部芯片內(nèi)部ramram和寄存器的地和寄存器的地 址為址為#d000h#d000h#d07fh#d07fh。 注意:注意:盡管專用時標(biāo)年寄存器只有一個,只能顯示盡管專用時標(biāo)年寄存器只有一個,只能顯示 年的低兩位,但通過軟件編程利用其內(nèi)部的不掉年的低兩位,但通過軟件編程利用其內(nèi)部的不掉 電電ramram區(qū)的一個字節(jié)實現(xiàn)區(qū)的一個字節(jié)實現(xiàn)年度的高兩
40、位年度的高兩位顯示。顯示。 2 2控制與狀態(tài)寄存器(控制與狀態(tài)寄存器(4 4個)個) (1 1)寄存器)寄存器a a 各位不受復(fù)位的影響,格式見各位不受復(fù)位的影響,格式見表表13-713-7。 其中:其中: 位位uipuip:更新周期標(biāo)志位,是更新周期標(biāo)志位,是只讀位只讀位。uip=1uip=1時,時, 表示芯片正處于或即將開始更新周期,此時不表示芯片正處于或即將開始更新周期,此時不 準(zhǔn)讀準(zhǔn)讀/ /寫時標(biāo)寄存器;寫時標(biāo)寄存器;uip=0uip=0時,表示至少在時,表示至少在 4444后才開始更新周期,此時程序可以讀片后才開始更新周期,此時程序可以讀片 內(nèi)時標(biāo)寄存器。內(nèi)時標(biāo)寄存器。 位位dv0d
41、v0、dv1dv1、dv2dv2:芯片內(nèi)部振蕩器芯片內(nèi)部振蕩器rtcrtc控制位控制位 當(dāng)芯片解除復(fù)位狀態(tài),并將當(dāng)芯片解除復(fù)位狀態(tài),并將010010寫入寫入dv0-dv2dv0-dv2后,后, 另一個更新周期將在另一個更新周期將在500ms500ms后開始。因此,在后開始。因此,在初始化初始化 時時可用可用這這3 3位位精確地使芯片在設(shè)定的時間開始工作精確地使芯片在設(shè)定的時間開始工作。 ds12887ds12887固定使用固定使用32768hz32768hz的內(nèi)部晶體。所以,只有的內(nèi)部晶體。所以,只有 dv0dv0、dv1dv1、dv2=010dv2=010一種組合選擇才可啟動一種組合選擇才可
42、啟動rtcrtc。 位位rs3rs3、rs2rs2、rs1rs1、rs0rs0:周期中斷可編程方波輸出速:周期中斷可編程方波輸出速 率選擇位。率選擇位。 不同的組合可以產(chǎn)生不同的方波輸出??赏ㄟ^設(shè)置寄不同的組合可以產(chǎn)生不同的方波輸出??赏ㄟ^設(shè)置寄 存器存器b b的的sqwfsqwf和和piepie位位來控制是否允許周期中斷和方來控制是否允許周期中斷和方 波輸出。波輸出。 寄存器寄存器a a輸出方波的速率選擇位見輸出方波的速率選擇位見表表13-213-2。 (2 2)寄存器)寄存器b b 允許讀允許讀/ /寫,用于控制芯片的工作狀態(tài)。其控制字的寫,用于控制芯片的工作狀態(tài)。其控制字的 格式見表格式
43、見表13-813-8。 位位setset:set=0set=0時,芯片處于正常工作狀態(tài),每秒產(chǎn)生時,芯片處于正常工作狀態(tài),每秒產(chǎn)生 一個更新周期來更新時標(biāo)寄存器;一個更新周期來更新時標(biāo)寄存器; set=1set=1時,芯片時,芯片 停止工作,程序在此期間可初始化芯片的各個時標(biāo)停止工作,程序在此期間可初始化芯片的各個時標(biāo) 寄存器。寄存器。 位位piepie、aifaif、uieuie: :分別為周期中斷分別為周期中斷報警中斷報警中斷更新更新 周期結(jié)束中斷允許位。周期結(jié)束中斷允許位。各位為各位為1 1時,允許芯片發(fā)相時,允許芯片發(fā)相 應(yīng)的中斷。應(yīng)的中斷。 位位sqwfsqwf: :方波輸出允許位。
44、方波輸出允許位。sqwf=1sqwf=1,按寄存器按寄存器a a輸出速輸出速 率選擇位所確定的頻率方波;率選擇位所確定的頻率方波;sqwf=0sqwf=0,腳腳sqwfsqwf保持保持 低電平。低電平。 位位dmdm:時標(biāo)寄存器用十進(jìn)制時標(biāo)寄存器用十進(jìn)制bcdbcd碼表示或用二進(jìn)制表碼表示或用二進(jìn)制表 示示格式選擇格式選擇位。位。dm=0dm=0時,為十進(jìn)制時,為十進(jìn)制bcdbcd碼;碼;dm=1dm=1時,時, 為二進(jìn)制碼。為二進(jìn)制碼。 位位24/1224/12:24/1224/12小時小時模式設(shè)置位。模式設(shè)置位。24/12=124/12=1時,為時,為2424 小時工作模式;小時工作模式;
45、24/1224/12=0=0時,為時,為1212小時工作模式。小時工作模式。 位位dse:dse:夏時制夏時制設(shè)置。設(shè)置。dse=1dse=1,夏時制設(shè)置有效,夏時,夏時制設(shè)置有效,夏時 制結(jié)束可自動刷新恢復(fù)時間;制結(jié)束可自動刷新恢復(fù)時間;dse=0dse=0,無效。,無效。 (3 3)寄存器)寄存器c c 特點:特點:程序訪問該寄存器后,該寄存器的內(nèi)容將自動程序訪問該寄存器后,該寄存器的內(nèi)容將自動 清清0 0,從而使,從而使irqfirqf標(biāo)志位變?yōu)楦唠娖?,否則,芯片標(biāo)志位變?yōu)楦唠娖?,否則,芯片 將無法向?qū)o法向cpucpu申請下一次中斷。寄存器申請下一次中斷。寄存器c c的控制字的的控制字
46、的 格式見格式見表表13-813-8。 其中:其中: 位位irqf:irqf:中斷申請標(biāo)志位。該位有關(guān)的邏輯變量的邏中斷申請標(biāo)志位。該位有關(guān)的邏輯變量的邏 輯關(guān)系表達(dá)式如下輯關(guān)系表達(dá)式如下: : irqf=pfirqf=pfpie+afpie+afaie+ufaie+ufuieuie 當(dāng)當(dāng)irqfirqf位變?yōu)槲蛔優(yōu)? 1時,引腳變?yōu)榈碗娖揭鹬袛嗌暾?。時,引腳變?yōu)榈碗娖揭鹬袛嗌暾垺?位位pfpf、afaf、ufuf:3 3位位分別為分別為周期中斷、報警中斷、更新周期中斷、報警中斷、更新 周期結(jié)束中斷周期結(jié)束中斷標(biāo)志位。只要滿足各中斷的條件,相標(biāo)志位。只要滿足各中斷的條件,相 應(yīng)的中斷標(biāo)志位
47、將置應(yīng)的中斷標(biāo)志位將置1 1。 位位3 3位位0 0:保留位,讀出值始終為保留位,讀出值始終為0 0。 (4(4)寄存器)寄存器d d 為只讀的狀態(tài)寄存器,狀態(tài)字的格式見為只讀的狀態(tài)寄存器,狀態(tài)字的格式見表表13-813-8。其中:。其中: 位位vrt:vrt:芯片內(nèi)部芯片內(nèi)部ramram與寄存器內(nèi)容有效標(biāo)志位。該位為與寄存器內(nèi)容有效標(biāo)志位。該位為 1 1時,指芯片內(nèi)部時,指芯片內(nèi)部ramram和寄存器內(nèi)容有效。讀該寄存和寄存器內(nèi)容有效。讀該寄存 器后,該位將自動置器后,該位將自動置1 1。 位位bit6bit6bit0bit0:保留位,讀出值始終為保留位,讀出值始終為0 0。 三、三、ds1
48、2887ds12887的中斷和更新周期的中斷和更新周期 ds12887ds12887處于正常工作狀態(tài)時,每秒鐘將產(chǎn)生一個處于正常工作狀態(tài)時,每秒鐘將產(chǎn)生一個 更新周期。更新周期。 芯片處于更新周期的芯片處于更新周期的標(biāo)志標(biāo)志:寄存器:寄存器a a中的中的uipuip位為位為1 1。 在更新周期內(nèi),在更新周期內(nèi),芯片內(nèi)部時標(biāo)寄存器中的數(shù)據(jù)處于芯片內(nèi)部時標(biāo)寄存器中的數(shù)據(jù)處于 更新階段更新階段,故微處理器不能讀時標(biāo)寄存器的內(nèi)容,故微處理器不能讀時標(biāo)寄存器的內(nèi)容, 否則將得到不確定數(shù)據(jù)。否則將得到不確定數(shù)據(jù)。 更新周期的基本功能更新周期的基本功能主要是刷新各個時標(biāo)寄存器中主要是刷新各個時標(biāo)寄存器中 的
49、內(nèi)容,同時秒時標(biāo)寄存器內(nèi)容加的內(nèi)容,同時秒時標(biāo)寄存器內(nèi)容加1 1,并檢查其,并檢查其 他時標(biāo)寄存器內(nèi)容是否有溢出,他時標(biāo)寄存器內(nèi)容是否有溢出,如有溢出如有溢出則相應(yīng)則相應(yīng) 進(jìn)位日、月、年。進(jìn)位日、月、年。 更新周期的另外一個功能更新周期的另外一個功能是:檢查是:檢查3 3個時、分、秒報個時、分、秒報 警時標(biāo)寄存器的內(nèi)容是否與對應(yīng)時標(biāo)寄存器的內(nèi)警時標(biāo)寄存器的內(nèi)容是否與對應(yīng)時標(biāo)寄存器的內(nèi) 容相符。容相符。如相符如相符,則,則寄存器寄存器c c中的中的afaf位置位置1 1;如果;如果 報警時標(biāo)寄存器的內(nèi)容為報警時標(biāo)寄存器的內(nèi)容為c0hc0hffhffh之間的數(shù)據(jù),之間的數(shù)據(jù), 則為不關(guān)心狀態(tài)。則為
50、不關(guān)心狀態(tài)。 為了采樣時標(biāo)寄存器中的數(shù)據(jù),器件提供了兩種避為了采樣時標(biāo)寄存器中的數(shù)據(jù),器件提供了兩種避 開在更新周期內(nèi)訪問時標(biāo)寄存器的方法。第一種開在更新周期內(nèi)訪問時標(biāo)寄存器的方法。第一種 方法是利用更新周期結(jié)束發(fā)出的中斷。方法是利用更新周期結(jié)束發(fā)出的中斷。 可以編程且允許在每次更新周期結(jié)束后發(fā)生中斷申可以編程且允許在每次更新周期結(jié)束后發(fā)生中斷申 請,請,提醒提醒cpucpu將有將有998ms998ms左右的時間去獲取有效的左右的時間去獲取有效的 數(shù)據(jù)。在中斷之后的數(shù)據(jù)。在中斷之后的998ms998ms時間內(nèi),程序可先將時時間內(nèi),程序可先將時 標(biāo)數(shù)據(jù)讀到芯片內(nèi)部的不掉電靜態(tài)標(biāo)數(shù)據(jù)讀到芯片內(nèi)部的
51、不掉電靜態(tài)ramram中。中。 因為芯片內(nèi)部的靜態(tài)因為芯片內(nèi)部的靜態(tài)ramram和狀態(tài)寄存器是可隨時和狀態(tài)寄存器是可隨時 讀寫的,在離開中斷服務(wù)子程序前應(yīng)清除寄存讀寫的,在離開中斷服務(wù)子程序前應(yīng)清除寄存 器器c c中的中的irqfirqf位。位。 另一種方法另一種方法是,利用寄存器是,利用寄存器a a中的中的uipuip位來指示芯位來指示芯 片是否處于更新周期。片是否處于更新周期。在在uipuip位由低變高位由低變高244244 后,芯片將開始其更新周期。后,芯片將開始其更新周期。 所以,若檢測到所以,若檢測到uipuip位為低電平時,則利用位為低電平時,則利用244244 的間隔時間去讀取時
52、標(biāo)信息;的間隔時間去讀取時標(biāo)信息;如檢測到如檢測到uipuip 位為位為1 1,則可暫緩讀數(shù)據(jù),等到,則可暫緩讀數(shù)據(jù),等到uipuip位變成低電位變成低電 平后再去讀數(shù)據(jù)。平后再去讀數(shù)據(jù)。 13.2.3 mcs-5113.2.3 mcs-51與與ds12887ds12887的接口設(shè)計的接口設(shè)計 一、一、ds12887ds12887的初始化的初始化 ds12887ds12887采用連續(xù)工作制,一般無需每次都初始化,采用連續(xù)工作制,一般無需每次都初始化, 即使是系統(tǒng)復(fù)位時也如此。即使是系統(tǒng)復(fù)位時也如此。 但在但在初始化時初始化時,首先首先應(yīng)禁止芯片內(nèi)部的更新周期操應(yīng)禁止芯片內(nèi)部的更新周期操 作。所
53、以,應(yīng)先將作。所以,應(yīng)先將ds12887ds12887狀態(tài)寄存器狀態(tài)寄存器b b中的中的setset位位 置置1 1,然后然后初始化初始化00h00h09h09h時標(biāo)參數(shù)寄存器和狀態(tài)時標(biāo)參數(shù)寄存器和狀態(tài) 寄存器寄存器a a。此后,此后,再通過讀狀態(tài)寄存器再通過讀狀態(tài)寄存器c c,清除寄,清除寄 存器存器c c中的周期中斷標(biāo)志位中的周期中斷標(biāo)志位pfpf、報警中斷標(biāo)志位、報警中斷標(biāo)志位afaf、 更新周期結(jié)束中斷標(biāo)志位更新周期結(jié)束中斷標(biāo)志位ufuf。通過讀寄存器。通過讀寄存器d d中的中的 vrtvrt位后將自動置位后將自動置1 1。 最后,最后,將狀態(tài)寄存器將狀態(tài)寄存器b b中的中的setse
54、t位置位置0 0,芯片開始計時,芯片開始計時 工作。工作。 二、鬧鐘單元的使用二、鬧鐘單元的使用 ds12887ds12887共有共有3 3個個鬧鐘單元,分別為鬧鐘單元,分別為時、分、秒時、分、秒鬧鐘單鬧鐘單 元。元。 在其中寫入鬧鐘時間值并且在時鐘中斷允許的情況下,在其中寫入鬧鐘時間值并且在時鐘中斷允許的情況下, 每天到該時刻每天到該時刻就會產(chǎn)生中斷申請信號。就會產(chǎn)生中斷申請信號。 但這種方式但這種方式每天只提供一次中斷信號每天只提供一次中斷信號。 另一種方式另一種方式是在鬧鐘單元中寫入是在鬧鐘單元中寫入“不關(guān)心碼不關(guān)心碼”:在時:在時 鬧鐘單元寫入鬧鐘單元寫入c0hc0hffhffh之間的
55、數(shù)據(jù),可每小時產(chǎn)生之間的數(shù)據(jù),可每小時產(chǎn)生 一次中斷;一次中斷; 在時、分鬧鐘單元寫入在時、分鬧鐘單元寫入c0hc0hffhffh之間的數(shù)據(jù),可之間的數(shù)據(jù),可 每分鐘產(chǎn)生一次中斷每分鐘產(chǎn)生一次中斷;而時、分、秒鬧鐘單元;而時、分、秒鬧鐘單元 全部寫入全部寫入ffhffh,則每秒鐘產(chǎn)生一次中斷。,則每秒鐘產(chǎn)生一次中斷。 但這種方式也只是在整點、整分、或每秒產(chǎn)生一但這種方式也只是在整點、整分、或每秒產(chǎn)生一 次中斷次中斷。若控制系統(tǒng)要求的定時間隔不是整數(shù)。若控制系統(tǒng)要求的定時間隔不是整數(shù) 時,應(yīng)該通過軟件來調(diào)整實現(xiàn)。時,應(yīng)該通過軟件來調(diào)整實現(xiàn)。 三、接口電路及軟件編程三、接口電路及軟件編程 圖圖13
56、-2313-23是是at89c51at89c51單片機(jī)與單片機(jī)與ds12887ds12887的接口電路(其的接口電路(其 中片選地址中片選地址cs=#0d00hcs=#0d00h)。)。 ds12887ds12887狀態(tài)寄存器的參數(shù)設(shè)置如下狀態(tài)寄存器的參數(shù)設(shè)置如下: : (1 1)狀態(tài)寄存器狀態(tài)寄存器a a置為置為20h20h,表示采用的時鐘頻率為,表示采用的時鐘頻率為 32678hz32678hz,禁止腳,禁止腳sqwfsqwf輸出輸出 (2 2)狀態(tài)寄存器狀態(tài)寄存器b b置為置為22h22h,表示允許報警中斷,禁,表示允許報警中斷,禁 止其他中斷,為止其他中斷,為2424小時模式,時標(biāo)寄存
57、器內(nèi)容用小時模式,時標(biāo)寄存器內(nèi)容用 bcdbcd碼表示,禁止方波輸出和夏時制服務(wù)。如果要碼表示,禁止方波輸出和夏時制服務(wù)。如果要 求定時間隔為求定時間隔為1 1秒至秒至5959秒的中斷申請,那么時報警秒的中斷申請,那么時報警 寄存器置寄存器置ffhffh,就表示該報警時標(biāo)處于不關(guān)心狀態(tài),就表示該報警時標(biāo)處于不關(guān)心狀態(tài) 下面為下面為ds12887ds12887的有關(guān)程序。的有關(guān)程序。 (1 1)初始化程序)初始化程序(見教材)(見教材) (2 2)查詢法判別芯片是否處于更新周期子程序查詢法判別芯片是否處于更新周期子程序 (見(見 教材)教材) 13.3 mcs-5113.3 mcs-51單片機(jī)的
58、報警接口單片機(jī)的報警接口 在單片機(jī)測控系統(tǒng)發(fā)生故障或處于某種緊急狀態(tài)時,在單片機(jī)測控系統(tǒng)發(fā)生故障或處于某種緊急狀態(tài)時, 單片機(jī)系統(tǒng)應(yīng)能發(fā)出提醒人們警覺的報警信號或提單片機(jī)系統(tǒng)應(yīng)能發(fā)出提醒人們警覺的報警信號或提 示信號,常見的報警信號可分為示信號,常見的報警信號可分為閃光報警、鳴音報閃光報警、鳴音報 警警和和音樂報警音樂報警。下面對這三種報警接口作以介紹。下面對這三種報警接口作以介紹。 13.3.1 13.3.1 閃光報警接口閃光報警接口 閃光報警可用閃光報警可用mcs-51mcs-51的的某一某一i/oi/o口線驅(qū)動口線驅(qū)動ledled閃爍閃爍,只,只 要該要該i/oi/o口線口線發(fā)出具有一定
59、頻率的高低電平信號發(fā)出具有一定頻率的高低電平信號, 即可使即可使ledled閃爍。接口電路如閃爍。接口電路如圖圖13-2413-24所示。所示。 閃光報警的的程序編寫:閃光報警的的程序編寫:只需向只需向p1.0p1.0先寫入先寫入“1”1”, 然后延遲一段時間,再向向然后延遲一段時間,再向向p1.0p1.0寫入寫入“0”0”,延遲延遲 的時間可根據(jù)要求的的時間可根據(jù)要求的ledled的閃爍頻率而定??刹捎玫拈W爍頻率而定??刹捎?軟件延時,也可使用定時器定時中斷,在中斷服務(wù)軟件延時,也可使用定時器定時中斷,在中斷服務(wù) 程序中,改變程序中,改變p1.0p1.0的電平。的電平。 采用采用軟件延時軟件
60、延時的程序:的程序: flash1: setb p1.0 flash1: setb p1.0 lcall delaylcall delay; ;調(diào)用軟件延時子程序調(diào)用軟件延時子程序delaydelay clr p1.0clr p1.0 lcall delaylcall delay; ;調(diào)用軟件延時子程序調(diào)用軟件延時子程序delaydelay ljmp flash1ljmp flash1 如果如果mcs-51mcs-51本身的本身的i/oi/o口線資源緊張,要控制閃光報口線資源緊張,要控制閃光報 警的警的ledled數(shù)目較多數(shù)目較多,也可采用,也可采用擴(kuò)展一片擴(kuò)展一片74ls377 8d74ls
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 木工班班組勞務(wù)分包合同
- 仔豬購銷合同協(xié)議書
- 深圳住房租賃合同書
- 辦公用品采購買賣合同
- 衢州職業(yè)技術(shù)學(xué)院《搜索引擎營銷》2023-2024學(xué)年第二學(xué)期期末試卷
- 山東化工職業(yè)學(xué)院《英語學(xué)科教學(xué)設(shè)計與技能訓(xùn)練》2023-2024學(xué)年第二學(xué)期期末試卷
- 三江學(xué)院《世界古代史(下)》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東食品藥品職業(yè)學(xué)院《醫(yī)務(wù)社會工作》2023-2024學(xué)年第二學(xué)期期末試卷
- 西安交通大學(xué)城市學(xué)院《環(huán)境化學(xué)Ⅱ》2023-2024學(xué)年第二學(xué)期期末試卷
- 貴州財經(jīng)大學(xué)《中學(xué)政治課教師技能訓(xùn)練》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025年人教版數(shù)學(xué)五年級下冊教學(xué)計劃(含進(jìn)度表)
- 華師大版初中數(shù)學(xué)中考總復(fù)習(xí)全套課件
- 口腔診所藥品管理制度
- 動物外科與產(chǎn)科
- 中醫(yī)子午流注十二時辰養(yǎng)生法
- 養(yǎng)老院風(fēng)險管控手冊
- 99S203 消防水泵接合器安裝圖集
- 寶石學(xué)基礎(chǔ)全套課件
- 手術(shù)風(fēng)險及醫(yī)療意外險告知流程
- 綜合實踐活動六年級下冊 飲料與健康課件 (共16張PPT)
- 數(shù)量金融的概況和歷史課件
評論
0/150
提交評論