版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
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是由美國(guó)電
2、子工業(yè)協(xié)會(huì)(是由美國(guó)電子工業(yè)協(xié)會(huì)(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是兩臺(tái)計(jì)算機(jī)利用是兩臺(tái)計(jì)算機(jī)利用modemmodem、電話線進(jìn)行遠(yuǎn)距離串電話線進(jìn)行遠(yuǎn)距離串 行通訊的示意圖,行通訊的示意圖,dtedte為計(jì)算機(jī)為計(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接口信號(hào)接口信號(hào)( (略略) ) 1. 1. 電氣特性電氣特性 rs-232crs-232c上傳送的上傳送的數(shù)字量采用數(shù)字量采用負(fù)邏輯負(fù)邏輯,且,且與地對(duì)稱與地對(duì)稱。 邏輯邏輯“1”1”:3 315v15v; 邏輯邏輯“0”0”:3 315v15v。 rs-232crs-232c標(biāo)準(zhǔn)的信號(hào)傳輸?shù)臉?biāo)準(zhǔn)的信號(hào)傳輸?shù)淖畲箅娎|長(zhǎng)度為最大電纜長(zhǎng)度為3030米米,最,最 高數(shù)傳速率為高數(shù)傳速率為20kbit/s20kbit/s。 2.
4、 2. 電平轉(zhuǎn)換電平轉(zhuǎn)換 由于由于ttlttl電平和電平和rs-232crs-232c電平互不兼容,所以兩者對(duì)接電平互不兼容,所以兩者對(duì)接 時(shí),必須進(jìn)行電平轉(zhuǎn)換。時(shí),必須進(jìn)行電平轉(zhuǎn)換。 rs-232crs-232c與與ttlttl電平轉(zhuǎn)換最常用的芯片是電平轉(zhuǎn)換最常用的芯片是mc1488mc1488、 mc1489mc1489和和max232max232等,各廠商生產(chǎn)的此類芯片雖然等,各廠商生產(chǎn)的此類芯片雖然 不同,但原理相似。不同,但原理相似。 以美國(guó)以美國(guó)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” 的電平要求。的電平要求。 工作時(shí)僅需工作時(shí)僅需單一的單一的+5v+5v電源電源。其片內(nèi)有。其片內(nèi)有2 2個(gè)發(fā)送器,個(gè)發(fā)送器,2 2 個(gè)接收器,有個(gè)接收器,有ttlttl信號(hào)輸入信號(hào)輸入/rs-232c/rs-
6、232c輸出的功能,輸出的功能, 也有也有rs-232crs-232c輸入輸入/ttl/ttl輸出的功能。該芯片與輸出的功能。該芯片與 ttl/cmosttl/cmos電平兼容,使用比較方便。電平兼容,使用比較方便。 使用使用max232max232實(shí)現(xiàn)實(shí)現(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ò)通訊中已暴出明顯的缺點(diǎn)明顯的缺點(diǎn):傳輸速率低、通訊距傳
7、輸速率低、通訊距 離短、接口處信號(hào)容易產(chǎn)生串?dāng)_離短、接口處信號(hào)容易產(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ā)雙方的信 號(hào)地號(hào)地不再共地不再共地,rs-422ars-422a標(biāo)準(zhǔn)規(guī)定標(biāo)準(zhǔn)規(guī)定平衡驅(qū)動(dòng)平衡驅(qū)動(dòng)和和 差分接收差分接收的方法。的方法。 輸入同一個(gè)信號(hào)時(shí),其中一個(gè)驅(qū)動(dòng)器的輸出永遠(yuǎn)輸入同一個(gè)信號(hào)時(shí),其中一個(gè)驅(qū)動(dòng)器的輸出永遠(yuǎn) 是另一個(gè)驅(qū)動(dòng)器的是另一個(gè)驅(qū)動(dòng)器的反相信號(hào)反相信號(hào)。當(dāng)一個(gè)表示邏輯當(dāng)一個(gè)表示邏輯 “1”1”時(shí),另一條一定為邏輯時(shí),另一條一定為邏輯“0”0”。 若若傳輸過(guò)程傳輸過(guò)程中,中,信號(hào)中混入了干擾和噪聲信號(hào)中混入了干擾和噪聲(以(以共共 模形式模形
9、式出現(xiàn)),由于差分接收器的作用,就能出現(xiàn)),由于差分接收器的作用,就能 識(shí)別有用信號(hào)并正確接收傳輸?shù)男畔?,并使干識(shí)別有用信號(hào)并正確接收傳輸?shù)男畔?,并使?擾和噪聲相互抵消。擾和噪聲相互抵消。 因此,因此,rs-422ars-422a能在長(zhǎng)距離、高速率下傳輸數(shù)據(jù)。它的能在長(zhǎng)距離、高速率下傳輸數(shù)據(jù)。它的 最大傳輸率為最大傳輸率為10mbit/s10mbit/s,在此速率下,電纜允許長(zhǎng),在此速率下,電纜允許長(zhǎng) 度為度為12m12m,如果采用,如果采用較低傳輸速率較低傳輸速率時(shí),時(shí),最大傳輸距離最大傳輸距離 可達(dá)可達(dá)1200m1200m。 rs-422ars-422a電路由發(fā)送器、平衡連接電纜、電纜終
10、端負(fù)載、電路由發(fā)送器、平衡連接電纜、電纜終端負(fù)載、 接收器接收器四部分組成四部分組成。在電路中。在電路中規(guī)定只許有一個(gè)發(fā)送規(guī)定只許有一個(gè)發(fā)送 器,可以有多個(gè)接收器器,可以有多個(gè)接收器。 該標(biāo)準(zhǔn)允許驅(qū)動(dòng)器輸出為該標(biāo)準(zhǔn)允許驅(qū)動(dòng)器輸出為2 26v6v,差分接收器,差分接收器可以可以 檢測(cè)的輸入信號(hào)電平可低到檢測(cè)的輸入信號(hào)電平可低到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ū)動(dòng)器和接收器,采用分驅(qū)動(dòng)器和接收器,采用+5v+5v電源供電。電源供電。圖圖13-613-6, 圖圖13-713-7給出給出電平轉(zhuǎn)換芯片電平轉(zhuǎn)換芯片sn75174sn75174、sn75175sn75175內(nèi)部?jī)?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為全雙工,采用兩對(duì)平衡差分信號(hào)線;而為全雙工,采用兩對(duì)平衡差分信號(hào)線;而 rs-485rs-485為半雙工為半雙工,采用,采用一對(duì)平衡差分信號(hào)線一對(duì)平衡差分信號(hào)線。rs-rs- 485485對(duì)于對(duì)于多站互連多站互連是十分方便是十分方便的。的。rs-485rs-485標(biāo)準(zhǔn)允許標(biāo)準(zhǔn)允許 最多并聯(lián)最多并聯(lián)3232臺(tái)臺(tái)驅(qū)動(dòng)器和驅(qū)動(dòng)器和3232臺(tái)接收器。臺(tái)接收器。 1. 1. 電氣特性電氣特性 rs-485rs-485
13、的信號(hào)傳輸?shù)男盘?hào)傳輸采用采用兩線間的電壓兩線間的電壓來(lái)表示邏輯來(lái)表示邏輯“1”1” 和邏輯和邏輯“0”0”,由于收發(fā)方需要兩根傳輸線。數(shù)據(jù)由于收發(fā)方需要兩根傳輸線。數(shù)據(jù) 采用差分傳輸,所以干擾抑制性好。又因無(wú)接地問(wèn)采用差分傳輸,所以干擾抑制性好。又因無(wú)接地問(wèn) 題,所以傳題,所以傳輸距離可達(dá)輸距離可達(dá)12001200米米,傳輸速率可達(dá),傳輸速率可達(dá) 10mbit/s10mbit/s。 總線兩端接匹配電阻總線兩端接匹配電阻(1000(1000左右左右) ),驅(qū)動(dòng)器負(fù)載為,驅(qū)動(dòng)器負(fù)載為 5454。驅(qū)動(dòng)器輸出電平在。驅(qū)動(dòng)器輸出電平在1.5v1.5v以下時(shí)為邏輯以下時(shí)為邏輯 “1”1”,在,在1.5v1
14、.5v以上時(shí)為邏輯以上時(shí)為邏輯“0”0”。接收器輸。接收器輸 入電平在入電平在0.2v0.2v以下時(shí)為邏輯以下時(shí)為邏輯“1”1”,在,在0.2v0.2v以以 上為邏輯上為邏輯“0”0”。 普通的普通的pcpc機(jī)一般不帶機(jī)一般不帶rs-485rs-485接口,接口,因此因此要使用要使用rs-rs- 232/rs-485232/rs-485轉(zhuǎn)換器轉(zhuǎn)換器。對(duì)于單片機(jī)可以通過(guò)芯片。對(duì)于單片機(jī)可以通過(guò)芯片 max485max485來(lái)完成來(lái)完成ttl/rs-485ttl/rs-485的電平轉(zhuǎn)換。的電平轉(zhuǎn)換。 2. 2. 電平轉(zhuǎn)換電平轉(zhuǎn)換 在在rs-422ars-422a標(biāo)準(zhǔn)中所用的驅(qū)動(dòng)器和接收器芯片,在標(biāo)
15、準(zhǔn)中所用的驅(qū)動(dòng)器和接收器芯片,在 rs-485rs-485中均可以使用。中均可以使用。 除了除了rs-422ars-422a電平轉(zhuǎn)換中所列舉的驅(qū)動(dòng)器和接收器外,電平轉(zhuǎn)換中所列舉的驅(qū)動(dòng)器和接收器外, 還有還有收發(fā)器收發(fā)器sn75176sn75176芯片芯片,該芯片集成了一差分驅(qū),該芯片集成了一差分驅(qū) 動(dòng)器和一差分接收器動(dòng)器和一差分接收器 ,如,如圖圖13-913-9所示。所示。sn75176sn75176 的功能見(jiàn)的功能見(jiàn)表表13-413-4。 rs-485rs-485點(diǎn)對(duì)點(diǎn)點(diǎn)對(duì)點(diǎn)遠(yuǎn)程通訊電路遠(yuǎn)程通訊電路如如圖圖13-1013-10所示。所示。 四、四、 20ma20ma電流環(huán)串行接口電流環(huán)串行
16、接口 目前串行通訊中目前串行通訊中廣泛使用廣泛使用的一種接口電路,但的一種接口電路,但未形成未形成 正式標(biāo)準(zhǔn)正式標(biāo)準(zhǔn)。 該接口要比該接口要比rs-232crs-232c接口簡(jiǎn)單的多,它接口簡(jiǎn)單的多,它只有只有4 4根線根線:發(fā):發(fā) 送正、發(fā)送負(fù)、接收正和接收負(fù)四根線組成一個(gè)輸送正、發(fā)送負(fù)、接收正和接收負(fù)四根線組成一個(gè)輸 入電流回路、一個(gè)輸出電流回路。入電流回路、一個(gè)輸出電流回路。 當(dāng)當(dāng)發(fā)送數(shù)據(jù)發(fā)送數(shù)據(jù)時(shí),根據(jù)數(shù)據(jù)的邏輯時(shí),根據(jù)數(shù)據(jù)的邏輯1 1、0 0,有規(guī)律的使回,有規(guī)律的使回 路形成通、斷狀態(tài),即環(huán)路中無(wú)電流表示邏輯路形成通、斷狀態(tài),即環(huán)路中無(wú)電流表示邏輯 “0”0”,有,有20ma20ma
17、電流表示邏輯電流表示邏輯“1”1”。 工作原理如工作原理如圖圖13-1113-11所示。所示。 20ma20ma電流環(huán)串行通訊接口的最大優(yōu)點(diǎn)電流環(huán)串行通訊接口的最大優(yōu)點(diǎn)是是低阻傳輸線低阻傳輸線對(duì)對(duì) 電氣噪聲不敏感,且電氣噪聲不敏感,且易實(shí)現(xiàn)光電隔離易實(shí)現(xiàn)光電隔離。因此,在長(zhǎng)。因此,在長(zhǎng) 距離傳送時(shí),要比距離傳送時(shí),要比rs-232crs-232c優(yōu)越的多。電流環(huán)在優(yōu)越的多。電流環(huán)在低低 速數(shù)傳率傳輸速數(shù)傳率傳輸時(shí),傳輸距離可達(dá)時(shí),傳輸距離可達(dá)10001000米米。 由于由于20ma20ma電流環(huán)是一種異步串行接口標(biāo)準(zhǔn),所以在每電流環(huán)是一種異步串行接口標(biāo)準(zhǔn),所以在每 次發(fā)送數(shù)據(jù)時(shí)必須以無(wú)電流的起
18、始作為每一個(gè)字符次發(fā)送數(shù)據(jù)時(shí)必須以無(wú)電流的起始作為每一個(gè)字符 的起始位,接收端檢測(cè)到起始位時(shí)便開(kāi)始接收字符的起始位,接收端檢測(cè)到起始位時(shí)便開(kāi)始接收字符 數(shù)據(jù)。數(shù)據(jù)。 圖圖13-1213-12是一個(gè)由是一個(gè)由集成芯片構(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ì)雙機(jī)通訊硬件接口設(shè)計(jì) 根據(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電平通訊接口電平通訊接口 如果兩個(gè)如果兩個(gè)mcs-51mcs-51單片機(jī)相距在單片機(jī)相距在幾米之內(nèi)幾米之內(nèi),它們的串行,它們的串行 口可直接相連,從而直接用口
20、可直接相連,從而直接用ttlttl電平傳輸方法來(lái)實(shí)電平傳輸方法來(lái)實(shí) 現(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) 接口實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的雙機(jī)通訊,接口電路如圖接口實(shí)現(xiàn)點(diǎn)對(duì)點(diǎ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中,每個(gè)通道的接收端都接有三個(gè)電阻中,每個(gè)通道的接收端都接有三個(gè)電阻 r1 r1、r2r2、r3r3。 其中其中r1r1為傳輸線的匹配電阻,取值范圍在為傳輸線的匹配電阻,取值范圍在5050 1k 1k之間,其他兩個(gè)電阻是之間,其他兩個(gè)電阻是為了解決第一個(gè)數(shù)為了解決第一個(gè)數(shù) 據(jù)的誤碼據(jù)的誤碼而設(shè)置的匹配電阻。而設(shè)置的匹配電阻。 為了起到為了起到隔離、抗干擾隔離、抗干擾的作用,的作用,圖圖13-1513-15中必須
22、使用中必須使用 兩組獨(dú)立的電源兩組獨(dú)立的電源。 4 4rs-485rs-485雙機(jī)通訊接口雙機(jī)通訊接口 rs-422ars-422a雙機(jī)通訊需雙機(jī)通訊需四芯傳輸線四芯傳輸線,這對(duì)長(zhǎng)距離通訊是,這對(duì)長(zhǎng)距離通訊是 很不經(jīng)濟(jì)很不經(jīng)濟(jì)的,故在工業(yè)現(xiàn)場(chǎng),通常采用雙絞線傳的,故在工業(yè)現(xiàn)場(chǎng),通常采用雙絞線傳 輸?shù)妮數(shù)膔s-485rs-485串行通訊接口。串行通訊接口。 這種接口很容易實(shí)現(xiàn)多機(jī)通訊。這種接口很容易實(shí)現(xiàn)多機(jī)通訊。圖圖13-1613-16給出了其給出了其rs- rs- 485 485雙機(jī)通訊接口電路。雙機(jī)通訊接口電路。 由由圖圖13-1613-16可知:可知:rs-485rs-485以以雙向、半雙
23、工的方式雙向、半雙工的方式實(shí)現(xiàn)實(shí)現(xiàn) 了雙機(jī)通訊。在了雙機(jī)通訊。在80318031系統(tǒng)發(fā)送或接收數(shù)據(jù)前,應(yīng)系統(tǒng)發(fā)送或接收數(shù)據(jù)前,應(yīng) 先將先將7517675176的發(fā)送門或接收門打開(kāi),當(dāng)?shù)陌l(fā)送門或接收門打開(kāi),當(dāng)p1.0=1p1.0=1時(shí),時(shí), 發(fā)送門打開(kāi),接收門關(guān)閉;當(dāng)發(fā)送門打開(kāi),接收門關(guān)閉;當(dāng)p1.0=0p1.0=0,接收門打,接收門打 開(kāi),發(fā)送門關(guān)閉。開(kāi),發(fā)送門關(guān)閉。 13.1.3 mcs-5113.1.3 mcs-51單片機(jī)多機(jī)串行通訊接口單片機(jī)多機(jī)串行通訊接口 利用串行口實(shí)現(xiàn)多機(jī)通訊的工作原理,已在第利用串行口實(shí)現(xiàn)多機(jī)通訊的工作原理,已在第7 7章中章中 作過(guò)介紹。下面首先介紹多機(jī)通訊的接
24、口設(shè)計(jì)。作過(guò)介紹。下面首先介紹多機(jī)通訊的接口設(shè)計(jì)。 一、一、ttlttl電平多機(jī)串行通訊電平多機(jī)串行通訊 當(dāng)當(dāng)一臺(tái)主機(jī)一臺(tái)主機(jī)與與多臺(tái)從機(jī)多臺(tái)從機(jī)之間之間距離較近距離較近時(shí)時(shí), ,可直接采用可直接采用 ttlttl電平進(jìn)行多機(jī)通訊,電平進(jìn)行多機(jī)通訊,多機(jī)通訊的連接方式如多機(jī)通訊的連接方式如圖圖 13-1713-17所示。所示。 由于由于80318031單片機(jī)單片機(jī)p3p3口可帶口可帶4 4個(gè)個(gè)lsttllsttl,故在圖,故在圖13-1713-17中,中, n n的取值范圍應(yīng)為的取值范圍應(yīng)為n n 4 4。如果。如果n4n4,則,則p3p3口應(yīng)加驅(qū)動(dòng)口應(yīng)加驅(qū)動(dòng) 電路。電路。 二、二、20ma2
25、0ma電流環(huán)多機(jī)串行通訊接口電流環(huán)多機(jī)串行通訊接口 用用ttlttl電平進(jìn)行多機(jī)通訊時(shí),有效通訊距離約幾米左電平進(jìn)行多機(jī)通訊時(shí),有效通訊距離約幾米左 右,這在實(shí)際中往往不能滿足要求。右,這在實(shí)際中往往不能滿足要求。 可采用可采用20ma20ma電流環(huán)電流環(huán)進(jìn)行多機(jī)通訊,不僅進(jìn)行多機(jī)通訊,不僅提高了抗干擾提高了抗干擾 能力能力,而且可實(shí)現(xiàn),而且可實(shí)現(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的點(diǎn)對(duì)點(diǎn)的串行通訊接口的點(diǎn)對(duì)點(diǎn)的串行通訊接口 一
26、、硬件接口設(shè)計(jì)一、硬件接口設(shè)計(jì) 如前所述如前所述, , 通常通常pcpc機(jī)都配有機(jī)都配有rs-232crs-232c串行標(biāo)準(zhǔn)接口,串行標(biāo)準(zhǔn)接口, 有效通訊距離較短。有效通訊距離較短。 為實(shí)現(xiàn)長(zhǎng)距離通訊應(yīng)將為實(shí)現(xiàn)長(zhǎng)距離通訊應(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輸出方式輸出方式 時(shí),時(shí),3 3、4 4短接;當(dāng)選擇短接;當(dāng)選擇rs-485rs-485輸出方式時(shí),輸出方式時(shí),1 1、2 2短短 接,接,5 5、6 6短接,短接,7 7、8 8短接。短接。 圖圖13-1913-19中,中,r1r1、r2r2是為排除第一個(gè)數(shù)據(jù)傳輸誤碼而是為排除第一個(gè)數(shù)據(jù)傳輸誤碼而 設(shè)置的匹配電阻。設(shè)置的匹配電阻。設(shè)計(jì)者可根據(jù)實(shí)際情況選擇該電設(shè)計(jì)者可根據(jù)實(shí)際情況選擇該電 阻的大小。阻的大小。 電源電源vccvcc和和veevee均為均為+5v+5v,但不是一個(gè)電源,但不是一個(gè)電源,vccvcc和和vee ve
28、e 應(yīng)為隔離電源,只有這樣才能實(shí)現(xiàn)電隔離。應(yīng)為隔離電源,只有這樣才能實(shí)現(xiàn)電隔離。 13.1.5 pc13.1.5 pc機(jī)與多個(gè)機(jī)與多個(gè)mcs-51mcs-51單片機(jī)的串行通訊接口單片機(jī)的串行通訊接口 一、硬件接口電路一、硬件接口電路 將將1 1臺(tái)臺(tái)ibm-pcibm-pc機(jī)機(jī)和和若干臺(tái)若干臺(tái)mcs-51mcs-51單片機(jī)單片機(jī)構(gòu)成的小型分構(gòu)成的小型分 布式測(cè)控系統(tǒng),如布式測(cè)控系統(tǒng),如圖圖13-2013-20所示。所示。 1 1臺(tái)臺(tái)pcpc機(jī)機(jī)與與數(shù)臺(tái)數(shù)臺(tái)80318031單片機(jī)單片機(jī)進(jìn)行進(jìn)行多機(jī)通訊多機(jī)通訊的的rs-485rs-485串串 行通訊接口電路如行通訊接口電路如圖圖13-2113-21
29、所示。所示。 13.2 mcs-5113.2 mcs-51單片機(jī)與日歷時(shí)鐘芯片的接口單片機(jī)與日歷時(shí)鐘芯片的接口 單片機(jī)應(yīng)用系統(tǒng),有時(shí)需一個(gè)實(shí)時(shí)時(shí)鐘供定時(shí)、測(cè)控單片機(jī)應(yīng)用系統(tǒng),有時(shí)需一個(gè)實(shí)時(shí)時(shí)鐘供定時(shí)、測(cè)控 用。設(shè)計(jì)者只需選擇合適的集成電路芯片即可。本用。設(shè)計(jì)者只需選擇合適的集成電路芯片即可。本 節(jié)介紹日歷時(shí)鐘芯片節(jié)介紹日歷時(shí)鐘芯片ds12887ds12887的功能以及與的功能以及與mcs-51mcs-51 單片機(jī)的接口設(shè)計(jì)。單片機(jī)的接口設(shè)計(jì)。 ds12887sds12887s是是跨越跨越20002000年年的日歷時(shí)鐘芯片,用的日歷時(shí)鐘芯片,用4 4位數(shù)位數(shù)來(lái)來(lái) 表示年度,采用表示年度,采用24
30、24引腳雙列直插式封裝。引腳雙列直插式封裝。 該芯片的晶體振蕩器、振蕩電路、充電電路和可充電該芯片的晶體振蕩器、振蕩電路、充電電路和可充電 鋰電池等一起封裝在芯片的上方,組成一個(gè)加厚的鋰電池等一起封裝在芯片的上方,組成一個(gè)加厚的 集成電路模塊。集成電路模塊。 電路通電時(shí),充電電路自動(dòng)對(duì)電池充電。充足一次電路通電時(shí),充電電路自動(dòng)對(duì)電池充電。充足一次 電可供芯片時(shí)鐘運(yùn)行半年之久,電可供芯片時(shí)鐘運(yùn)行半年之久,正常工作時(shí)正常工作時(shí)可可保保 證時(shí)鐘數(shù)據(jù)證時(shí)鐘數(shù)據(jù)1010年內(nèi)不會(huì)丟失年內(nèi)不會(huì)丟失。此外,片內(nèi)帶有。此外,片內(nèi)帶有114114 個(gè)字節(jié)的個(gè)字節(jié)的ramram。 13.2.1 ds1288713.
31、2.1 ds12887的性能及引腳說(shuō)明的性能及引腳說(shuō)明 一、性能一、性能 主要性能如下:主要性能如下: (1 1)具有時(shí)鐘、鬧鐘功能及)具有時(shí)鐘、鬧鐘功能及到到21002100年年的日歷功能,的日歷功能, 可選擇可選擇1212小時(shí)小時(shí)制或制或2424小時(shí)小時(shí)制計(jì)時(shí),有制計(jì)時(shí),有amam和和pmpm、星星 期期、夏時(shí)制夏時(shí)制時(shí)間操作及時(shí)間操作及閏年自動(dòng)補(bǔ)償閏年自動(dòng)補(bǔ)償?shù)裙δ?。等功能?(2 2)ds12887ds12887內(nèi)部有內(nèi)部有1414個(gè)寄存器個(gè)寄存器:10:10個(gè)時(shí)標(biāo)寄存器、個(gè)時(shí)標(biāo)寄存器、 4 4個(gè)狀態(tài)寄存器。還有掉電保護(hù)用個(gè)狀態(tài)寄存器。還有掉電保護(hù)用114114字節(jié)的低功字節(jié)的低功 耗
32、耗ramram。 (3 3)具有用軟件編程選擇的周期性中斷方式和多頻)具有用軟件編程選擇的周期性中斷方式和多頻 率輸出的方波發(fā)生器功能。率輸出的方波發(fā)生器功能。 (4 4)該芯片可以滿足各種不同的待機(jī)要求,最長(zhǎng)可)該芯片可以滿足各種不同的待機(jī)要求,最長(zhǎng)可 達(dá)達(dá)2424小時(shí)。小時(shí)。 (5 5)可選擇二進(jìn)制或)可選擇二進(jìn)制或bcdbcd碼來(lái)表示時(shí)間。碼來(lái)表示時(shí)間。 (6 6)工作電壓:)工作電壓:+4.5+4.5+5.5v+5.5v。 (7 7)工作電流:)工作電流:7 715ma15ma。 (8 8)工作溫度范圍:)工作溫度范圍:0 0+70+70c c 二、引腳說(shuō)明二、引腳說(shuō)明 ds12887
33、/12c887ds12887/12c887的引腳如的引腳如圖圖13-2213-22所示。所示。 各引腳功能如下:各引腳功能如下: (1) mot(1) mot: :計(jì)算機(jī)總線選擇端(接低電平為總線方式);計(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ù)控制信號(hào),低電平有效;:寫數(shù)據(jù)控制信號(hào),低電平有效; (5) ale(5) ale:地址鎖存信號(hào)端;:地址鎖存信號(hào)端; (6) rd(6) rd* *:數(shù)據(jù)讀控制信號(hào)端,低電平有效;:數(shù)據(jù)讀控制信號(hào)端,低電平有效; (7) (7) cscs* *:片選信號(hào)端,低電平有效;:片選信號(hào)端,低電平有效; (8) (8) irqirq* * :中斷申請(qǐng)端:中斷申請(qǐng)端, ,低電平有效,由專用寄存器低電平有效,由專用寄存器 決定;決定; (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通過(guò)通過(guò)讀讀ds12887ds12887的的內(nèi)部時(shí)標(biāo)寄存器內(nèi)部時(shí)標(biāo)寄存器得到當(dāng)前的時(shí)間得到當(dāng)前的時(shí)間 和日歷。也可通過(guò)選擇二進(jìn)制碼或和日歷。也可通過(guò)選擇二進(jìn)制碼或bcdbcd碼初始化芯碼初始化芯 片的片的1010個(gè)時(shí)標(biāo)寄存器。個(gè)時(shí)標(biāo)寄存器。 114114字節(jié)字節(jié)ramram可在系統(tǒng)掉電時(shí)來(lái)保存一些重要的數(shù)據(jù)??稍谙到y(tǒng)掉電時(shí)來(lái)保存一些重要的數(shù)據(jù)。 ds12887ds12887的的4 4個(gè)個(gè)控制與狀態(tài)寄存器用來(lái)控制或反映控制與狀態(tài)寄存器用來(lái)控制或反映 ds12887ds12887模塊當(dāng)前的工作狀態(tài),除數(shù)據(jù)更新周期
36、外,模塊當(dāng)前的工作狀態(tài),除數(shù)據(jù)更新周期外, 軟件可隨時(shí)讀寫這軟件可隨時(shí)讀寫這4 4個(gè)寄存器。個(gè)寄存器。 下面介紹各寄存器的功能和作用。下面介紹各寄存器的功能和作用。 一、內(nèi)部一、內(nèi)部ramram與各專用寄存器簡(jiǎn)介與各專用寄存器簡(jiǎn)介 引腳引腳ad7ad7ad0ad0的的8 8位編碼決定了對(duì)各專用寄存器與內(nèi)位編碼決定了對(duì)各專用寄存器與內(nèi) 部部ramram的尋址。其中:的尋址。其中: 00h00h09h09h:1010個(gè)時(shí)標(biāo)寄存器;個(gè)時(shí)標(biāo)寄存器; 0ah0ah0dh0dh:4 4個(gè)控制與狀態(tài)寄存器;個(gè)控制與狀態(tài)寄存器; 0eh0ehffhffh:114114字節(jié)的靜態(tài)字節(jié)的靜態(tài)ramram; 表表1
37、3-613-6是是ds12887ds12887內(nèi)部?jī)?nèi)部1010個(gè)時(shí)標(biāo)寄存器和個(gè)時(shí)標(biāo)寄存器和4 4個(gè)控制個(gè)控制/ /狀狀 態(tài)寄存器的地址分配。態(tài)寄存器的地址分配。 1 1時(shí)標(biāo)寄存器(時(shí)標(biāo)寄存器(1010個(gè))個(gè)) 00h00h03h03h單元為單元為“秒秒”、“分分”單元,取值范圍是單元,取值范圍是 00h00h3bh(3bh(十進(jìn)制十進(jìn)制0 059)59) 04h04h05h05h單元是單元是“時(shí)時(shí)”單元,按單元,按1212小時(shí)制的取值范小時(shí)制的取值范 圍是上午(圍是上午(amam)01h01h0ch0ch(1 11212),下午(),下午(pmpm) 51h51h5ch5ch(81819292
38、);按);按2424小時(shí)制的取值范圍是小時(shí)制的取值范圍是 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對(duì)對(duì)ds12887ds12887內(nèi)部?jī)?nèi)部ramram和各專用寄存器的地址分和各專用寄存器的地址分 配可采用譯碼器法。假設(shè)配可采用譯碼器法。假設(shè)ds12887ds12887的片選地址從的片選地址從 =#d000h=#d000h開(kāi)始有效,則開(kāi)始有效,則芯片內(nèi)部芯片內(nèi)部ramram和寄存器的地和寄存器的地 址為址為#d000h#d000h#d07fh#d07fh。 注意:注意:盡管專用時(shí)標(biāo)年寄存器只有一個(gè),只能顯示盡管專用時(shí)標(biāo)年寄存器只有一個(gè),只能顯示 年的低兩位,但通過(guò)軟件編程利用其內(nèi)部的不掉年的低兩位,但通過(guò)軟件編程利用其內(nèi)部的不掉 電電ramram區(qū)的一個(gè)字節(jié)實(shí)現(xiàn)區(qū)的一個(gè)字節(jié)實(shí)現(xiàn)年度的高兩
40、位年度的高兩位顯示。顯示。 2 2控制與狀態(tài)寄存器(控制與狀態(tài)寄存器(4 4個(gè))個(gè)) (1 1)寄存器)寄存器a a 各位不受復(fù)位的影響,格式見(jiàn)各位不受復(fù)位的影響,格式見(jiàn)表表13-713-7。 其中:其中: 位位uipuip:更新周期標(biāo)志位,是更新周期標(biāo)志位,是只讀位只讀位。uip=1uip=1時(shí),時(shí), 表示芯片正處于或即將開(kāi)始更新周期,此時(shí)不表示芯片正處于或即將開(kāi)始更新周期,此時(shí)不 準(zhǔn)讀準(zhǔn)讀/ /寫時(shí)標(biāo)寄存器;寫時(shí)標(biāo)寄存器;uip=0uip=0時(shí),表示至少在時(shí),表示至少在 4444后才開(kāi)始更新周期,此時(shí)程序可以讀片后才開(kāi)始更新周期,此時(shí)程序可以讀片 內(nèi)時(shí)標(biāo)寄存器。內(nèi)時(shí)標(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后,后, 另一個(gè)更新周期將在另一個(gè)更新周期將在500ms500ms后開(kāi)始。因此,在后開(kāi)始。因此,在初始化初始化 時(shí)時(shí)可用可用這這3 3位位精確地使芯片在設(shè)定的時(shí)間開(kāi)始工作精確地使芯片在設(shè)定的時(shí)間開(kāi)始工作。 ds12887ds12887固定使用固定使用32768hz32768hz的內(nèi)部晶體。所以,只有的內(nèi)部晶體。所以,只有 dv0dv0、dv1dv1、dv2=010dv2=010一種組合選擇才可啟動(dòng)一種組合選擇才可
42、啟動(dòng)rtcrtc。 位位rs3rs3、rs2rs2、rs1rs1、rs0rs0:周期中斷可編程方波輸出速:周期中斷可編程方波輸出速 率選擇位。率選擇位。 不同的組合可以產(chǎn)生不同的方波輸出??赏ㄟ^(guò)設(shè)置寄不同的組合可以產(chǎn)生不同的方波輸出。可通過(guò)設(shè)置寄 存器存器b b的的sqwfsqwf和和piepie位位來(lái)控制是否允許周期中斷和方來(lái)控制是否允許周期中斷和方 波輸出。波輸出。 寄存器寄存器a a輸出方波的速率選擇位見(jiàn)輸出方波的速率選擇位見(jiàn)表表13-213-2。 (2 2)寄存器)寄存器b b 允許讀允許讀/ /寫,用于控制芯片的工作狀態(tài)。其控制字的寫,用于控制芯片的工作狀態(tài)。其控制字的 格式見(jiàn)表格式
43、見(jiàn)表13-813-8。 位位setset:set=0set=0時(shí),芯片處于正常工作狀態(tài),每秒產(chǎn)生時(shí),芯片處于正常工作狀態(tài),每秒產(chǎn)生 一個(gè)更新周期來(lái)更新時(shí)標(biāo)寄存器;一個(gè)更新周期來(lái)更新時(shí)標(biāo)寄存器; set=1set=1時(shí),芯片時(shí),芯片 停止工作,程序在此期間可初始化芯片的各個(gè)時(shí)標(biāo)停止工作,程序在此期間可初始化芯片的各個(gè)時(shí)標(biāo) 寄存器。寄存器。 位位piepie、aifaif、uieuie: :分別為周期中斷分別為周期中斷報(bào)警中斷報(bào)警中斷更新更新 周期結(jié)束中斷允許位。周期結(jié)束中斷允許位。各位為各位為1 1時(shí),允許芯片發(fā)相時(shí),允許芯片發(fā)相 應(yīng)的中斷。應(yīng)的中斷。 位位sqwfsqwf: :方波輸出允許位。
44、方波輸出允許位。sqwf=1sqwf=1,按寄存器按寄存器a a輸出速輸出速 率選擇位所確定的頻率方波;率選擇位所確定的頻率方波;sqwf=0sqwf=0,腳腳sqwfsqwf保持保持 低電平。低電平。 位位dmdm:時(shí)標(biāo)寄存器用十進(jìn)制時(shí)標(biāo)寄存器用十進(jìn)制bcdbcd碼表示或用二進(jìn)制表碼表示或用二進(jìn)制表 示示格式選擇格式選擇位。位。dm=0dm=0時(shí),為十進(jìn)制時(shí),為十進(jìn)制bcdbcd碼;碼;dm=1dm=1時(shí),時(shí), 為二進(jìn)制碼。為二進(jìn)制碼。 位位24/1224/12:24/1224/12小時(shí)小時(shí)模式設(shè)置位。模式設(shè)置位。24/12=124/12=1時(shí),為時(shí),為2424 小時(shí)工作模式;小時(shí)工作模式;
45、24/1224/12=0=0時(shí),為時(shí),為1212小時(shí)工作模式。小時(shí)工作模式。 位位dse:dse:夏時(shí)制夏時(shí)制設(shè)置。設(shè)置。dse=1dse=1,夏時(shí)制設(shè)置有效,夏時(shí),夏時(shí)制設(shè)置有效,夏時(shí) 制結(jié)束可自動(dòng)刷新恢復(fù)時(shí)間;制結(jié)束可自動(dòng)刷新恢復(fù)時(shí)間;dse=0dse=0,無(wú)效。,無(wú)效。 (3 3)寄存器)寄存器c c 特點(diǎn):特點(diǎn):程序訪問(wèn)該寄存器后,該寄存器的內(nèi)容將自動(dòng)程序訪問(wèn)該寄存器后,該寄存器的內(nèi)容將自動(dòng) 清清0 0,從而使,從而使irqfirqf標(biāo)志位變?yōu)楦唠娖剑駝t,芯片標(biāo)志位變?yōu)楦唠娖?,否則,芯片 將無(wú)法向?qū)o(wú)法向cpucpu申請(qǐng)下一次中斷。寄存器申請(qǐng)下一次中斷。寄存器c c的控制字的的控制字
46、的 格式見(jiàn)格式見(jiàn)表表13-813-8。 其中:其中: 位位irqf:irqf:中斷申請(qǐng)標(biāo)志位。該位有關(guān)的邏輯變量的邏中斷申請(qǐng)標(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時(shí),引腳變?yōu)榈碗娖揭鹬袛嗌暾?qǐng)。時(shí),引腳變?yōu)榈碗娖揭鹬袛嗌暾?qǐng)。 位位pfpf、afaf、ufuf:3 3位位分別為分別為周期中斷、報(bào)警中斷、更新周期中斷、報(bào)警中斷、更新 周期結(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)字的格式見(jiàn)為只讀的狀態(tài)寄存器,狀態(tài)字的格式見(jiàn)表表13-813-8。其中:。其中: 位位vrt:vrt:芯片內(nèi)部芯片內(nèi)部ramram與寄存器內(nèi)容有效標(biāo)志位。該位為與寄存器內(nèi)容有效標(biāo)志位。該位為 1 1時(shí),指芯片內(nèi)部時(shí),指芯片內(nèi)部ramram和寄存器內(nèi)容有效。讀該寄存和寄存器內(nèi)容有效。讀該寄存 器后,該位將自動(dòng)置器后,該位將自動(dòng)置1 1。 位位bit6bit6bit0bit0:保留位,讀出值始終為保留位,讀出值始終為0 0。 三、三、ds1
48、2887ds12887的中斷和更新周期的中斷和更新周期 ds12887ds12887處于正常工作狀態(tài)時(shí),每秒鐘將產(chǎn)生一個(gè)處于正常工作狀態(tài)時(shí),每秒鐘將產(chǎn)生一個(gè) 更新周期。更新周期。 芯片處于更新周期的芯片處于更新周期的標(biāo)志標(biāo)志:寄存器:寄存器a a中的中的uipuip位為位為1 1。 在更新周期內(nèi),在更新周期內(nèi),芯片內(nèi)部時(shí)標(biāo)寄存器中的數(shù)據(jù)處于芯片內(nèi)部時(shí)標(biāo)寄存器中的數(shù)據(jù)處于 更新階段更新階段,故微處理器不能讀時(shí)標(biāo)寄存器的內(nèi)容,故微處理器不能讀時(shí)標(biāo)寄存器的內(nèi)容, 否則將得到不確定數(shù)據(jù)。否則將得到不確定數(shù)據(jù)。 更新周期的基本功能更新周期的基本功能主要是刷新各個(gè)時(shí)標(biāo)寄存器中主要是刷新各個(gè)時(shí)標(biāo)寄存器中 的
49、內(nèi)容,同時(shí)秒時(shí)標(biāo)寄存器內(nèi)容加的內(nèi)容,同時(shí)秒時(shí)標(biāo)寄存器內(nèi)容加1 1,并檢查其,并檢查其 他時(shí)標(biāo)寄存器內(nèi)容是否有溢出,他時(shí)標(biāo)寄存器內(nèi)容是否有溢出,如有溢出如有溢出則相應(yīng)則相應(yīng) 進(jìn)位日、月、年。進(jìn)位日、月、年。 更新周期的另外一個(gè)功能更新周期的另外一個(gè)功能是:檢查是:檢查3 3個(gè)時(shí)、分、秒報(bào)個(gè)時(shí)、分、秒報(bào) 警時(shí)標(biāo)寄存器的內(nèi)容是否與對(duì)應(yīng)時(shí)標(biāo)寄存器的內(nèi)警時(shí)標(biāo)寄存器的內(nèi)容是否與對(duì)應(yīng)時(shí)標(biāo)寄存器的內(nèi) 容相符。容相符。如相符如相符,則,則寄存器寄存器c c中的中的afaf位置位置1 1;如果;如果 報(bào)警時(shí)標(biāo)寄存器的內(nèi)容為報(bào)警時(shí)標(biāo)寄存器的內(nèi)容為c0hc0hffhffh之間的數(shù)據(jù),之間的數(shù)據(jù), 則為不關(guān)心狀態(tài)。則為
50、不關(guān)心狀態(tài)。 為了采樣時(shí)標(biāo)寄存器中的數(shù)據(jù),器件提供了兩種避為了采樣時(shí)標(biāo)寄存器中的數(shù)據(jù),器件提供了兩種避 開(kāi)在更新周期內(nèi)訪問(wèn)時(shí)標(biāo)寄存器的方法。第一種開(kāi)在更新周期內(nèi)訪問(wèn)時(shí)標(biāo)寄存器的方法。第一種 方法是利用更新周期結(jié)束發(fā)出的中斷。方法是利用更新周期結(jié)束發(fā)出的中斷。 可以編程且允許在每次更新周期結(jié)束后發(fā)生中斷申可以編程且允許在每次更新周期結(jié)束后發(fā)生中斷申 請(qǐng),請(qǐng),提醒提醒cpucpu將有將有998ms998ms左右的時(shí)間去獲取有效的左右的時(shí)間去獲取有效的 數(shù)據(jù)。在中斷之后的數(shù)據(jù)。在中斷之后的998ms998ms時(shí)間內(nèi),程序可先將時(shí)時(shí)間內(nèi),程序可先將時(shí) 標(biāo)數(shù)據(jù)讀到芯片內(nèi)部的不掉電靜態(tài)標(biāo)數(shù)據(jù)讀到芯片內(nèi)部的
51、不掉電靜態(tài)ramram中。中。 因?yàn)樾酒瑑?nèi)部的靜態(tài)因?yàn)樾酒瑑?nèi)部的靜態(tài)ramram和狀態(tài)寄存器是可隨時(shí)和狀態(tài)寄存器是可隨時(shí) 讀寫的,在離開(kāi)中斷服務(wù)子程序前應(yīng)清除寄存讀寫的,在離開(kāi)中斷服務(wù)子程序前應(yīng)清除寄存 器器c c中的中的irqfirqf位。位。 另一種方法另一種方法是,利用寄存器是,利用寄存器a a中的中的uipuip位來(lái)指示芯位來(lái)指示芯 片是否處于更新周期。片是否處于更新周期。在在uipuip位由低變高位由低變高244244 后,芯片將開(kāi)始其更新周期。后,芯片將開(kāi)始其更新周期。 所以,若檢測(cè)到所以,若檢測(cè)到uipuip位為低電平時(shí),則利用位為低電平時(shí),則利用244244 的間隔時(shí)間去讀取時(shí)
52、標(biāo)信息;的間隔時(shí)間去讀取時(shí)標(biāo)信息;如檢測(cè)到如檢測(cè)到uipuip 位為位為1 1,則可暫緩讀數(shù)據(jù),等到,則可暫緩讀數(shù)據(jù),等到uipuip位變成低電位變成低電 平后再去讀數(shù)據(jù)。平后再去讀數(shù)據(jù)。 13.2.3 mcs-5113.2.3 mcs-51與與ds12887ds12887的接口設(shè)計(jì)的接口設(shè)計(jì) 一、一、ds12887ds12887的初始化的初始化 ds12887ds12887采用連續(xù)工作制,一般無(wú)需每次都初始化,采用連續(xù)工作制,一般無(wú)需每次都初始化, 即使是系統(tǒng)復(fù)位時(shí)也如此。即使是系統(tǒng)復(fù)位時(shí)也如此。 但在但在初始化時(shí)初始化時(shí),首先首先應(yīng)禁止芯片內(nèi)部的更新周期操應(yīng)禁止芯片內(nèi)部的更新周期操 作。所
53、以,應(yīng)先將作。所以,應(yīng)先將ds12887ds12887狀態(tài)寄存器狀態(tài)寄存器b b中的中的setset位位 置置1 1,然后然后初始化初始化00h00h09h09h時(shí)標(biāo)參數(shù)寄存器和狀態(tài)時(shí)標(biāo)參數(shù)寄存器和狀態(tài) 寄存器寄存器a a。此后,此后,再通過(guò)讀狀態(tài)寄存器再通過(guò)讀狀態(tài)寄存器c c,清除寄,清除寄 存器存器c c中的周期中斷標(biāo)志位中的周期中斷標(biāo)志位pfpf、報(bào)警中斷標(biāo)志位、報(bào)警中斷標(biāo)志位afaf、 更新周期結(jié)束中斷標(biāo)志位更新周期結(jié)束中斷標(biāo)志位ufuf。通過(guò)讀寄存器。通過(guò)讀寄存器d d中的中的 vrtvrt位后將自動(dòng)置位后將自動(dòng)置1 1。 最后,最后,將狀態(tài)寄存器將狀態(tài)寄存器b b中的中的setse
54、t位置位置0 0,芯片開(kāi)始計(jì)時(shí),芯片開(kāi)始計(jì)時(shí) 工作。工作。 二、鬧鐘單元的使用二、鬧鐘單元的使用 ds12887ds12887共有共有3 3個(gè)個(gè)鬧鐘單元,分別為鬧鐘單元,分別為時(shí)、分、秒時(shí)、分、秒鬧鐘單鬧鐘單 元。元。 在其中寫入鬧鐘時(shí)間值并且在時(shí)鐘中斷允許的情況下,在其中寫入鬧鐘時(shí)間值并且在時(shí)鐘中斷允許的情況下, 每天到該時(shí)刻每天到該時(shí)刻就會(huì)產(chǎn)生中斷申請(qǐng)信號(hào)。就會(huì)產(chǎn)生中斷申請(qǐng)信號(hào)。 但這種方式但這種方式每天只提供一次中斷信號(hào)每天只提供一次中斷信號(hào)。 另一種方式另一種方式是在鬧鐘單元中寫入是在鬧鐘單元中寫入“不關(guān)心碼不關(guān)心碼”:在時(shí):在時(shí) 鬧鐘單元寫入鬧鐘單元寫入c0hc0hffhffh之間的
55、數(shù)據(jù),可每小時(shí)產(chǎn)生之間的數(shù)據(jù),可每小時(shí)產(chǎn)生 一次中斷;一次中斷; 在時(shí)、分鬧鐘單元寫入在時(shí)、分鬧鐘單元寫入c0hc0hffhffh之間的數(shù)據(jù),可之間的數(shù)據(jù),可 每分鐘產(chǎn)生一次中斷每分鐘產(chǎn)生一次中斷;而時(shí)、分、秒鬧鐘單元;而時(shí)、分、秒鬧鐘單元 全部寫入全部寫入ffhffh,則每秒鐘產(chǎn)生一次中斷。,則每秒鐘產(chǎn)生一次中斷。 但這種方式也只是在整點(diǎn)、整分、或每秒產(chǎn)生一但這種方式也只是在整點(diǎn)、整分、或每秒產(chǎn)生一 次中斷次中斷。若控制系統(tǒng)要求的定時(shí)間隔不是整數(shù)。若控制系統(tǒng)要求的定時(shí)間隔不是整數(shù) 時(shí),應(yīng)該通過(guò)軟件來(lái)調(diào)整實(shí)現(xiàn)。時(shí),應(yīng)該通過(guò)軟件來(lái)調(diào)整實(shí)現(xiàn)。 三、接口電路及軟件編程三、接口電路及軟件編程 圖圖13
56、-2313-23是是at89c51at89c51單片機(jī)與單片機(jī)與ds12887ds12887的接口電路(其的接口電路(其 中片選地址中片選地址cs=#0d00hcs=#0d00h)。)。 ds12887ds12887狀態(tài)寄存器的參數(shù)設(shè)置如下?tīng)顟B(tài)寄存器的參數(shù)設(shè)置如下: : (1 1)狀態(tài)寄存器狀態(tài)寄存器a a置為置為20h20h,表示采用的時(shí)鐘頻率為,表示采用的時(shí)鐘頻率為 32678hz32678hz,禁止腳,禁止腳sqwfsqwf輸出輸出 (2 2)狀態(tài)寄存器狀態(tài)寄存器b b置為置為22h22h,表示允許報(bào)警中斷,禁,表示允許報(bào)警中斷,禁 止其他中斷,為止其他中斷,為2424小時(shí)模式,時(shí)標(biāo)寄存
57、器內(nèi)容用小時(shí)模式,時(shí)標(biāo)寄存器內(nèi)容用 bcdbcd碼表示,禁止方波輸出和夏時(shí)制服務(wù)。如果要碼表示,禁止方波輸出和夏時(shí)制服務(wù)。如果要 求定時(shí)間隔為求定時(shí)間隔為1 1秒至秒至5959秒的中斷申請(qǐng),那么時(shí)報(bào)警秒的中斷申請(qǐng),那么時(shí)報(bào)警 寄存器置寄存器置ffhffh,就表示該報(bào)警時(shí)標(biāo)處于不關(guān)心狀態(tài),就表示該報(bào)警時(shí)標(biāo)處于不關(guān)心狀態(tài) 下面為下面為ds12887ds12887的有關(guān)程序。的有關(guān)程序。 (1 1)初始化程序)初始化程序(見(jiàn)教材)(見(jiàn)教材) (2 2)查詢法判別芯片是否處于更新周期子程序查詢法判別芯片是否處于更新周期子程序 (見(jiàn)(見(jiàn) 教材)教材) 13.3 mcs-5113.3 mcs-51單片機(jī)的
58、報(bào)警接口單片機(jī)的報(bào)警接口 在單片機(jī)測(cè)控系統(tǒng)發(fā)生故障或處于某種緊急狀態(tài)時(shí),在單片機(jī)測(cè)控系統(tǒng)發(fā)生故障或處于某種緊急狀態(tài)時(shí), 單片機(jī)系統(tǒng)應(yīng)能發(fā)出提醒人們警覺(jué)的報(bào)警信號(hào)或提單片機(jī)系統(tǒng)應(yīng)能發(fā)出提醒人們警覺(jué)的報(bào)警信號(hào)或提 示信號(hào),常見(jiàn)的報(bào)警信號(hào)可分為示信號(hào),常見(jiàn)的報(bào)警信號(hào)可分為閃光報(bào)警、鳴音報(bào)閃光報(bào)警、鳴音報(bào) 警警和和音樂(lè)報(bào)警音樂(lè)報(bào)警。下面對(duì)這三種報(bào)警接口作以介紹。下面對(duì)這三種報(bào)警接口作以介紹。 13.3.1 13.3.1 閃光報(bào)警接口閃光報(bào)警接口 閃光報(bào)警可用閃光報(bào)警可用mcs-51mcs-51的的某一某一i/oi/o口線驅(qū)動(dòng)口線驅(qū)動(dòng)ledled閃爍閃爍,只,只 要該要該i/oi/o口線口線發(fā)出具有一定
59、頻率的高低電平信號(hào)發(fā)出具有一定頻率的高低電平信號(hào), 即可使即可使ledled閃爍。接口電路如閃爍。接口電路如圖圖13-2413-24所示。所示。 閃光報(bào)警的的程序編寫:閃光報(bào)警的的程序編寫:只需向只需向p1.0p1.0先寫入先寫入“1”1”, 然后延遲一段時(shí)間,再向向然后延遲一段時(shí)間,再向向p1.0p1.0寫入寫入“0”0”,延遲延遲 的時(shí)間可根據(jù)要求的的時(shí)間可根據(jù)要求的ledled的閃爍頻率而定??刹捎玫拈W爍頻率而定??刹捎?軟件延時(shí),也可使用定時(shí)器定時(shí)中斷,在中斷服務(wù)軟件延時(shí),也可使用定時(shí)器定時(shí)中斷,在中斷服務(wù) 程序中,改變程序中,改變p1.0p1.0的電平。的電平。 采用采用軟件延時(shí)軟件
60、延時(shí)的程序:的程序: flash1: setb p1.0 flash1: setb p1.0 lcall delaylcall delay; ;調(diào)用軟件延時(shí)子程序調(diào)用軟件延時(shí)子程序delaydelay clr p1.0clr p1.0 lcall delaylcall delay; ;調(diào)用軟件延時(shí)子程序調(diào)用軟件延時(shí)子程序delaydelay ljmp flash1ljmp flash1 如果如果mcs-51mcs-51本身的本身的i/oi/o口線資源緊張,要控制閃光報(bào)口線資源緊張,要控制閃光報(bào) 警的警的ledled數(shù)目較多數(shù)目較多,也可采用,也可采用擴(kuò)展一片擴(kuò)展一片74ls377 8d74ls
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版苗木種植與農(nóng)業(yè)綜合開(kāi)發(fā)合同樣本4篇
- 二零二五年度教育培訓(xùn)股東股權(quán)轉(zhuǎn)讓與合作辦學(xué)合同2篇
- 二零二五版嬰幼兒奶粉國(guó)際市場(chǎng)拓展與出口合同4篇
- 2025版綠色環(huán)保型商品房預(yù)售買賣合同3篇
- 2025年度校服品牌授權(quán)與校園形象塑造合同3篇
- 2025年度事業(yè)單位合同工勞動(dòng)法執(zhí)行監(jiān)督評(píng)估合同3篇
- 2025年度生鮮配送冷鏈物流承包合同范本3篇
- 2025年度個(gè)人傭金提成與長(zhǎng)期激勵(lì)合同2篇
- 課題申報(bào)參考:能源數(shù)據(jù)要素賦能可再生能源電力生產(chǎn)的機(jī)制與對(duì)策研究
- 課題申報(bào)參考:民族傳統(tǒng)體育與體育非物質(zhì)文化遺產(chǎn)的傳承與保護(hù)研究
- 2025年N1叉車司機(jī)考試試題(附答案)
- 《醫(yī)院財(cái)務(wù)分析報(bào)告》課件
- 2025老年公寓合同管理制度
- 2024-2025學(xué)年人教版數(shù)學(xué)六年級(jí)上冊(cè) 期末綜合卷(含答案)
- 2024中國(guó)汽車后市場(chǎng)年度發(fā)展報(bào)告
- 感染性腹瀉的護(hù)理查房
- 天津市部分區(qū)2023-2024學(xué)年高二上學(xué)期期末考試 物理 含解析
- 《人工智能基礎(chǔ)》全套英語(yǔ)教學(xué)課件(共7章)
- GB/T 35613-2024綠色產(chǎn)品評(píng)價(jià)紙和紙制品
- 2022-2023學(xué)年五年級(jí)數(shù)學(xué)春季開(kāi)學(xué)摸底考(四)蘇教版
- 【螞蟻?!?024中國(guó)商業(yè)醫(yī)療險(xiǎn)發(fā)展研究藍(lán)皮書
評(píng)論
0/150
提交評(píng)論