微機(jī)原理與接口技術(shù)11_第1頁(yè)
微機(jī)原理與接口技術(shù)11_第2頁(yè)
微機(jī)原理與接口技術(shù)11_第3頁(yè)
微機(jī)原理與接口技術(shù)11_第4頁(yè)
微機(jī)原理與接口技術(shù)11_第5頁(yè)
已閱讀5頁(yè),還剩61頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、微機(jī)原理與接口技術(shù)微機(jī)原理與接口技術(shù)第第11章章 串行接口技術(shù)串行接口技術(shù)主編:周國(guó)運(yùn)機(jī)械工業(yè)出版社機(jī)械工業(yè)出版社2011.9第第11章章 串行接口技術(shù)串行接口技術(shù)本章內(nèi)容本章內(nèi)容 11.1 串行通信概述串行通信概述 11.2 串行接口芯片串行接口芯片16550 11.3 串行接口應(yīng)用舉例串行接口應(yīng)用舉例 串行通信是微機(jī)中串行通信是微機(jī)中數(shù)據(jù)傳送數(shù)據(jù)傳送的一種重要的一種重要方式,大大降低了方式,大大降低了遠(yuǎn)距離通信的成本遠(yuǎn)距離通信的成本,它是,它是構(gòu)成構(gòu)成計(jì)算機(jī)網(wǎng)絡(luò)計(jì)算機(jī)網(wǎng)絡(luò)的基礎(chǔ)。的基礎(chǔ)。 本章講述串行通信的概念、串行通信基本章講述串行通信的概念、串行通信基本方式、本方式、RS-232串行通

2、信標(biāo)準(zhǔn)、串行接口芯串行通信標(biāo)準(zhǔn)、串行接口芯片片NS16550以及在微機(jī)中以及在微機(jī)中NS16550的實(shí)際應(yīng)的實(shí)際應(yīng)用。用。 11.1 串行通信概述串行通信概述一、串行通信基本概念一、串行通信基本概念 二、串行通信基本方式二、串行通信基本方式三、三、RS-232串行通信標(biāo)準(zhǔn)串行通信標(biāo)準(zhǔn)四、其他串行通信標(biāo)準(zhǔn)四、其他串行通信標(biāo)準(zhǔn) 1 1、通信方式、通信方式 計(jì)算機(jī)與外界的信息交換稱為通信計(jì)算機(jī)與外界的信息交換稱為通信。基本的通?;镜耐ㄐ欧椒ㄓ胁⑿型ㄐ藕痛型ㄐ艃煞N。信方法有并行通信和串行通信兩種。 (1 1)并行通信并行通信單位信息(通常指一個(gè)字節(jié))的各位數(shù)據(jù)單位信息(通常指一個(gè)字節(jié))的各位數(shù)據(jù)同

3、時(shí)傳同時(shí)傳送送的通信方法稱為并行通信。的通信方法稱為并行通信。(2 2)串行通信串行通信單位信息的各位數(shù)據(jù)被分時(shí)單位信息的各位數(shù)據(jù)被分時(shí)一位一位依次順序傳一位一位依次順序傳送送的通信方式稱為串行通信。的通信方式稱為串行通信。 一、串行通信基本概念一、串行通信基本概念11.1 串行通信概述串行通信概述11.1 串行通信概述串行通信概述2、數(shù)據(jù)傳送方式數(shù)據(jù)傳送方式單工方式:?jiǎn)喂し绞剑阂粚?duì)傳輸線只允許一對(duì)傳輸線只允許單方向單方向傳送傳送數(shù)據(jù);數(shù)據(jù);半雙工方式:半雙工方式:一對(duì)傳輸線允許向兩個(gè)方向一對(duì)傳輸線允許向兩個(gè)方向中的任一方向傳送數(shù)據(jù),但中的任一方向傳送數(shù)據(jù),但不能同時(shí)不能同時(shí)進(jìn)行;進(jìn)行;全雙工

4、方式:全雙工方式:用兩對(duì)傳輸線連接在發(fā)送器用兩對(duì)傳輸線連接在發(fā)送器和接收器上,發(fā)送和接收和接收器上,發(fā)送和接收能同時(shí)能同時(shí)進(jìn)行。進(jìn)行。一、串行通信基本概念一、串行通信基本概念11.1 串行通信概述串行通信概述一、串行通信基本概念一、串行通信基本概念接接收收器器發(fā)發(fā)送送器器接接收收器器發(fā)送器發(fā)送器發(fā)送器發(fā)送器接接收收器器數(shù)據(jù)流數(shù)據(jù)流接接收收器器發(fā)送器發(fā)送器發(fā)送器發(fā)送器數(shù)據(jù)流數(shù)據(jù)流接接收收器器(a)單工方式單工方式(b)半雙工方式半雙工方式(c)全雙工方式全雙工方式11.1 串行通信概述串行通信概述一、串行通信基本概念一、串行通信基本概念3、波特率和收、波特率和收/發(fā)時(shí)鐘發(fā)時(shí)鐘(1)波特率)波特率

5、 指在串行通信中,每秒傳送的二進(jìn)制位數(shù)指在串行通信中,每秒傳送的二進(jìn)制位數(shù)(bps)。(2)收發(fā)時(shí)鐘)收發(fā)時(shí)鐘收發(fā)時(shí)鐘的快慢直接影響通信設(shè)備發(fā)送收發(fā)時(shí)鐘的快慢直接影響通信設(shè)備發(fā)送/接收字接收字符數(shù)據(jù)的速度。符數(shù)據(jù)的速度。收發(fā)時(shí)鐘頻率與波特率的關(guān)系:收發(fā)時(shí)鐘頻率與波特率的關(guān)系:時(shí)鐘頻率時(shí)鐘頻率=Factor收發(fā)波特率收發(fā)波特率其中其中Factor稱為波特率因子,取稱為波特率因子,取1,16,6411.1 串行通信概述串行通信概述一、串行通信基本概念一、串行通信基本概念 4、信號(hào)調(diào)制解調(diào)、信號(hào)調(diào)制解調(diào) 調(diào)制調(diào)制就是把數(shù)字信號(hào)變換成模擬信號(hào)表示的過(guò)就是把數(shù)字信號(hào)變換成模擬信號(hào)表示的過(guò)程,而程,而解調(diào)

6、解調(diào)則是把模擬信號(hào)變換成數(shù)字信號(hào)表示的則是把模擬信號(hào)變換成數(shù)字信號(hào)表示的過(guò)程。過(guò)程。計(jì)計(jì)算算機(jī)機(jī)Modem調(diào)制調(diào)制解調(diào)解調(diào)模擬信號(hào)模擬信號(hào)數(shù)字信號(hào)數(shù)字信號(hào)數(shù)字信號(hào)數(shù)字信號(hào)1 0 1 0 1 0 1 01010101010101010兩線電話線兩線電話線Modem調(diào)制調(diào)制解調(diào)解調(diào)計(jì)計(jì)算算機(jī)機(jī)11.1 串行通信概述串行通信概述一、串行通信基本概念一、串行通信基本概念最基本的調(diào)制與解調(diào)的方法有以下幾種:最基本的調(diào)制與解調(diào)的方法有以下幾種:(1)調(diào)幅調(diào)幅(AM)()(2)調(diào)頻調(diào)頻(FM)()(3)調(diào)相調(diào)相(PM)11.1 串行通信概述串行通信概述一、串行通信基本概念一、串行通信基本概念5、串行通信的錯(cuò)

7、誤校驗(yàn)、串行通信的錯(cuò)誤校驗(yàn)()奇偶校驗(yàn)()奇偶校驗(yàn) 在傳送數(shù)據(jù)時(shí),數(shù)據(jù)位尾隨的在傳送數(shù)據(jù)時(shí),數(shù)據(jù)位尾隨的1位為奇偶校驗(yàn)位(位為奇偶校驗(yàn)位(1或或0)。奇校驗(yàn)時(shí),數(shù)據(jù)中)。奇校驗(yàn)時(shí),數(shù)據(jù)中“1”的個(gè)數(shù)與校驗(yàn)位的個(gè)數(shù)與校驗(yàn)位“1”的個(gè)數(shù)之和應(yīng)為奇數(shù);偶校驗(yàn)時(shí),數(shù)據(jù)中的個(gè)數(shù)之和應(yīng)為奇數(shù);偶校驗(yàn)時(shí),數(shù)據(jù)中“1”的個(gè)數(shù)的個(gè)數(shù)與校驗(yàn)位與校驗(yàn)位“1”的個(gè)數(shù)之和應(yīng)為偶數(shù)。的個(gè)數(shù)之和應(yīng)為偶數(shù)。()和校驗(yàn)()和校驗(yàn)和校驗(yàn)是發(fā)送方將所發(fā)數(shù)據(jù)塊求和(或各字節(jié)異或和校驗(yàn)是發(fā)送方將所發(fā)數(shù)據(jù)塊求和(或各字節(jié)異或),產(chǎn)生一個(gè)字節(jié)的校驗(yàn)字符(校驗(yàn)和)附加到數(shù)據(jù)),產(chǎn)生一個(gè)字節(jié)的校驗(yàn)字符(校驗(yàn)和)附加到數(shù)據(jù)塊末尾。塊末尾。()循

8、環(huán)冗余校驗(yàn)()循環(huán)冗余校驗(yàn)這種校驗(yàn)是通過(guò)某種數(shù)學(xué)運(yùn)算實(shí)現(xiàn)有效信息與校驗(yàn)這種校驗(yàn)是通過(guò)某種數(shù)學(xué)運(yùn)算實(shí)現(xiàn)有效信息與校驗(yàn)位之間的循環(huán)校驗(yàn)。位之間的循環(huán)校驗(yàn)。11.1 串行通信概述串行通信概述二、串行通信基本方式二、串行通信基本方式1、異步通信、異步通信異步通信中,傳送的數(shù)據(jù)可以是一個(gè)異步通信中,傳送的數(shù)據(jù)可以是一個(gè)字符字符代碼或一個(gè)代碼或一個(gè)字節(jié)字節(jié)數(shù)據(jù),數(shù)據(jù)以數(shù)據(jù),數(shù)據(jù)以幀幀的形式一幀一的形式一幀一幀傳送。幀傳送。 0/1 0/10/10/1 0/1100/10/1 0/1 0/10/1 0/1100/1停停止止位位起起始始位位8位數(shù)據(jù)位數(shù)據(jù)校校驗(yàn)驗(yàn)位位停停止止位位起起始始位位0/1數(shù)據(jù)數(shù)據(jù)第第n

9、個(gè)字符個(gè)字符第第n+1個(gè)字符個(gè)字符11.1 串行通信概述串行通信概述二、串行通信基本方式二、串行通信基本方式2、同步通信、同步通信在同步通信中,每一數(shù)據(jù)塊發(fā)送開(kāi)始時(shí),在同步通信中,每一數(shù)據(jù)塊發(fā)送開(kāi)始時(shí),先發(fā)送先發(fā)送一個(gè)或兩個(gè)同步字符一個(gè)或兩個(gè)同步字符,使發(fā)送與接收,使發(fā)送與接收取得同步,然后再順序發(fā)送數(shù)據(jù)。數(shù)據(jù)塊的取得同步,然后再順序發(fā)送數(shù)據(jù)。數(shù)據(jù)塊的各個(gè)字符間各個(gè)字符間取消起始位和停止位取消起始位和停止位,所以通信,所以通信速度得以提高速度得以提高 。數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)同步字符同步字符1同步字符同步字符2數(shù)據(jù)流數(shù)據(jù)流11.1 串行通信概述串行通信概述三、三、RS-232串行通信標(biāo)準(zhǔn)串行通信標(biāo)準(zhǔn)

10、RS-232C標(biāo)準(zhǔn)(協(xié)議)是美國(guó)標(biāo)準(zhǔn)(協(xié)議)是美國(guó)EIA與與BELL等公司一等公司一起開(kāi)發(fā)的起開(kāi)發(fā)的1969年公布的通信協(xié)議。年公布的通信協(xié)議。最初是為遠(yuǎn)程通信連接數(shù)據(jù)終端設(shè)備最初是為遠(yuǎn)程通信連接數(shù)據(jù)終端設(shè)備DTE與數(shù)據(jù)通與數(shù)據(jù)通信設(shè)備信設(shè)備DCE而制定的。但目前已廣泛用于計(jì)算機(jī)與終而制定的。但目前已廣泛用于計(jì)算機(jī)與終端或外設(shè)之間的近端連接。端或外設(shè)之間的近端連接。對(duì)串行通信接口的有關(guān)問(wèn)題,如對(duì)串行通信接口的有關(guān)問(wèn)題,如信號(hào)線功能信號(hào)線功能、電氣電氣特性特性都作了明確規(guī)定。都作了明確規(guī)定。通信設(shè)備廠商都生產(chǎn)與通信設(shè)備廠商都生產(chǎn)與RS-232C制式兼容的通信設(shè)制式兼容的通信設(shè)備,它作為一種標(biāo)準(zhǔn),

11、已在目前備,它作為一種標(biāo)準(zhǔn),已在目前微機(jī)串行通信接口微機(jī)串行通信接口中中廣泛采用。廣泛采用。11.1 串行通信概述串行通信概述三、三、RS-232串行通信標(biāo)準(zhǔn)串行通信標(biāo)準(zhǔn)1、電氣特性、電氣特性在在TxD和和RxD數(shù)據(jù)上采用數(shù)據(jù)上采用負(fù)邏輯負(fù)邏輯:邏輯邏輯1(MARK):用電平):用電平-3-15V表示。表示。邏輯邏輯0(SPACE):用電平):用電平+3+15V表示。表示。在在RTS、CTS、DSR、DTR和和DCD等控制等控制線上:線上:信號(hào)有效(接通,信號(hào)有效(接通,ON狀態(tài),正電壓):用電平狀態(tài),正電壓):用電平+3+15V表示。表示。信號(hào)無(wú)效(斷開(kāi),信號(hào)無(wú)效(斷開(kāi),OFF狀態(tài),負(fù)電壓)

12、:用電狀態(tài),負(fù)電壓):用電平平-3-15V表示。表示。11.1 串行通信概述串行通信概述三、三、RS-232串行通信標(biāo)準(zhǔn)串行通信標(biāo)準(zhǔn)2、機(jī)械特性、機(jī)械特性RS-232C連接器的機(jī)械形狀有連接器的機(jī)械形狀有DB-25,DB-15和和DB-9三種類型,其引腳的定義各不相同。三種類型,其引腳的定義各不相同。11.1 串行通信概述串行通信概述三、三、RS-232串行通信標(biāo)準(zhǔn)串行通信標(biāo)準(zhǔn)RS-232C標(biāo)準(zhǔn)接口主要引腳定義標(biāo)準(zhǔn)接口主要引腳定義插針序號(hào)插針序號(hào)信號(hào)名稱信號(hào)名稱功功 能能信號(hào)方向信號(hào)方向1PGND保護(hù)接地保護(hù)接地2(3)TxD發(fā)送數(shù)據(jù)(串行輸出)發(fā)送數(shù)據(jù)(串行輸出)DTEDCE3(2)RxD接

13、收數(shù)據(jù)(串行輸入)接收數(shù)據(jù)(串行輸入)DTEDCE4(7)RTS請(qǐng)求發(fā)送請(qǐng)求發(fā)送DTEDCE5(8)CTS允許發(fā)送允許發(fā)送DTEDCE6(6)DSRDCE就緒(數(shù)據(jù)建立就緒)就緒(數(shù)據(jù)建立就緒)DTEDCE7(5)SGND信號(hào)接地信號(hào)接地8(1)DCD載波檢測(cè)載波檢測(cè)DTEDCE20(4)DTRDTE就緒(數(shù)據(jù)終端準(zhǔn)備就緒)就緒(數(shù)據(jù)終端準(zhǔn)備就緒)DTEDCE22(9)RI振鈴提示振鈴提示DTEDCE注:插針序號(hào)()內(nèi)為注:插針序號(hào)()內(nèi)為9針?lè)菢?biāo)準(zhǔn)連接器的引腳號(hào)。針?lè)菢?biāo)準(zhǔn)連接器的引腳號(hào)。3、功能特性、功能特性11.1 串行通信概述串行通信概述三、三、RS-232串行通信標(biāo)準(zhǔn)串行通信標(biāo)準(zhǔn)4、通

14、信線路的連接、通信線路的連接(1)采用)采用Modem和專用電話線通信時(shí)信號(hào)線的連接和專用電話線通信時(shí)信號(hào)線的連接11.1 串行通信概述串行通信概述三、三、RS-232串行通信標(biāo)準(zhǔn)串行通信標(biāo)準(zhǔn)4、通信線路的連接、通信線路的連接(2)采用)采用Modem和電話網(wǎng)通信時(shí)信號(hào)線的連接和電話網(wǎng)通信時(shí)信號(hào)線的連接11.1 串行通信概述串行通信概述三、三、RS-232串行通信標(biāo)準(zhǔn)串行通信標(biāo)準(zhǔn)4、通信線路的連接、通信線路的連接(3)三線制通信連接)三線制通信連接 (4)零)零Modem方式的標(biāo)準(zhǔn)信號(hào)連接方式的標(biāo)準(zhǔn)信號(hào)連接計(jì)計(jì)算算機(jī)機(jī)或或終終端端23457620計(jì)計(jì)算算機(jī)機(jī)或或終終端端234576202222

15、0876543TxDRxDRTSCTSDSRSGDCDDTRRI22220876543TxDRxDRTSCTSDSRSGDCDDTRRIDTEDTE11.1 串行通信概述串行通信概述四、其他串行通信標(biāo)準(zhǔn)四、其他串行通信標(biāo)準(zhǔn)1USB標(biāo)準(zhǔn)接口標(biāo)準(zhǔn)接口 傳統(tǒng)的接口電路每增加一種設(shè)備,就需要為它傳統(tǒng)的接口電路每增加一種設(shè)備,就需要為它準(zhǔn)備一種接口或插座,還要為它們準(zhǔn)備各自的驅(qū)動(dòng)準(zhǔn)備一種接口或插座,還要為它們準(zhǔn)備各自的驅(qū)動(dòng)程序。這些接口、插座、驅(qū)動(dòng)程序各不相同,給使程序。這些接口、插座、驅(qū)動(dòng)程序各不相同,給使用和維護(hù)帶來(lái)了困難。用和維護(hù)帶來(lái)了困難。 由由Intel等公司開(kāi)發(fā)的等公司開(kāi)發(fā)的USB(通用串行

16、總線)采(通用串行總線)采用通用的連接器,采用熱插拔技術(shù)以及相應(yīng)的軟件,用通用的連接器,采用熱插拔技術(shù)以及相應(yīng)的軟件,使得外設(shè)的連接和使用大大地簡(jiǎn)化,受到了普遍歡使得外設(shè)的連接和使用大大地簡(jiǎn)化,受到了普遍歡迎,目前已經(jīng)成為流行的外設(shè)接口。迎,目前已經(jīng)成為流行的外設(shè)接口。11.1 串行通信概述串行通信概述四、其他串行通信標(biāo)準(zhǔn)四、其他串行通信標(biāo)準(zhǔn)USB接口的主要性能特點(diǎn):接口的主要性能特點(diǎn):設(shè)備連接簡(jiǎn)便,具有即插即用和熱插拔的能力。設(shè)備連接簡(jiǎn)便,具有即插即用和熱插拔的能力。具有適合傳送多媒體數(shù)據(jù)的傳輸方式。具有適合傳送多媒體數(shù)據(jù)的傳輸方式。和很多傳統(tǒng)接口一樣,可由電纜給接入的設(shè)備提和很多傳統(tǒng)接口一

17、樣,可由電纜給接入的設(shè)備提供供5V電源。電源。數(shù)據(jù)傳輸速率比普通標(biāo)準(zhǔn)串行口的要高得多。數(shù)據(jù)傳輸速率比普通標(biāo)準(zhǔn)串行口的要高得多。兩臺(tái)設(shè)備之間的最大傳輸距離一般為兩臺(tái)設(shè)備之間的最大傳輸距離一般為45m。最多可掛接最多可掛接127臺(tái)臺(tái)USB設(shè)備。設(shè)備。11.1 串行通信概述串行通信概述四、其他串行通信標(biāo)準(zhǔn)四、其他串行通信標(biāo)準(zhǔn)2IEEE1394標(biāo)準(zhǔn)接口標(biāo)準(zhǔn)接口 IEEE1394是是1995年批準(zhǔn)和發(fā)布的一種最新的年批準(zhǔn)和發(fā)布的一種最新的高性能串行總線接口標(biāo)準(zhǔn)。高性能串行總線接口標(biāo)準(zhǔn)。 1998年,在年,在Microsoft、Intel和和Compaq等公司等公司制定的個(gè)人計(jì)算機(jī)規(guī)格制定的個(gè)人計(jì)算機(jī)規(guī)格

18、PC98中,將具備中,將具備IEEE1394接接口作為一項(xiàng)重要內(nèi)容,目前正在口作為一項(xiàng)重要內(nèi)容,目前正在PC機(jī)中逐步推廣普機(jī)中逐步推廣普及。及。 IEEE1394與與USB有很多相似之處,一開(kāi)始就有很多相似之處,一開(kāi)始就是針對(duì)高速是針對(duì)高速I(mǎi)/O設(shè)備而提出的,其設(shè)備而提出的,其I/O速度是速度是USB最最高速度的高速度的8倍。倍。11.1 串行通信概述串行通信概述四、其他串行通信標(biāo)準(zhǔn)四、其他串行通信標(biāo)準(zhǔn)IEEE1394的主要性能特點(diǎn):的主要性能特點(diǎn):1)數(shù)據(jù)傳輸速率高)數(shù)據(jù)傳輸速率高1394的數(shù)據(jù)傳輸率分為的數(shù)據(jù)傳輸率分為100Mbps、200Mbps和和400Mbps三檔,遠(yuǎn)遠(yuǎn)高于三檔,遠(yuǎn)遠(yuǎn)

19、高于EIDE和和SCSI的最高數(shù)的最高數(shù)據(jù)傳輸率。據(jù)傳輸率。2)數(shù)據(jù)傳送實(shí)時(shí)性強(qiáng))數(shù)據(jù)傳送實(shí)時(shí)性強(qiáng)這對(duì)于多媒體數(shù)據(jù)傳送特別重要,實(shí)時(shí)性可這對(duì)于多媒體數(shù)據(jù)傳送特別重要,實(shí)時(shí)性可保證圖像和聲音不會(huì)出現(xiàn)失真。保證圖像和聲音不會(huì)出現(xiàn)失真。3)結(jié)構(gòu)小巧,連接方便)結(jié)構(gòu)小巧,連接方便1394使用使用6芯電纜,直徑約為芯電纜,直徑約為6mm,插座也小。,插座也小。11.2 串行接口芯片串行接口芯片16550一、一、16550的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu) 二、二、16550的引腳信號(hào)的引腳信號(hào)三、三、16550的內(nèi)部寄存器及初的內(nèi)部寄存器及初始化編程始化編程 11.2 串行接口芯片串行接口芯片16550一、一、165

20、50的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu)包括:包括:數(shù)據(jù)總線緩沖器數(shù)據(jù)總線緩沖器讀讀/寫(xiě)控制邏輯寫(xiě)控制邏輯波特率發(fā)生器波特率發(fā)生器收發(fā)模塊收發(fā)模塊線路模塊線路模塊Modem控制模塊控制模塊中斷模塊中斷模塊除法器模塊除法器模塊讀讀/寫(xiě)寫(xiě)控制控制邏輯邏輯A0A1A2CS 0CS 1CS 2ADSMRRDRDWRWRDDISTxRDYXINXOUTRxRDY數(shù)據(jù)總線數(shù)據(jù)總線緩沖器緩沖器D0D7內(nèi)內(nèi)部部數(shù)數(shù)據(jù)據(jù)總總線線接收緩沖接收緩沖寄存器寄存器接收器接收器FIFO接收移位接收移位寄存器寄存器線路控制線路控制寄存器寄存器除數(shù)鎖存器除數(shù)鎖存器低字節(jié)低字節(jié)除數(shù)鎖存器除數(shù)鎖存器高字節(jié)高字節(jié)線路狀態(tài)線路狀態(tài)寄存器寄存器發(fā)送保

21、持發(fā)送保持寄存器寄存器Moden控制寄存器控制寄存器Moden狀態(tài)寄存器狀態(tài)寄存器中斷標(biāo)識(shí)中斷標(biāo)識(shí)寄存器寄存器FIFO控制寄存器控制寄存器接收定時(shí)接收定時(shí)控制控制波特率波特率發(fā)生器發(fā)生器發(fā)送定時(shí)發(fā)送定時(shí)控制控制發(fā)送器發(fā)送器FIFO發(fā)送移位發(fā)送移位寄存器寄存器Moden控制邏輯控制邏輯中斷允許中斷允許寄存器寄存器SINRCLKBAUDOUTSOUTRTSCTSDTRDSRDCDRIOUT 1OUT 2INTR中斷允許中斷允許寄存器寄存器SELECTSELECT讀讀/寫(xiě)寫(xiě)控制控制邏輯邏輯A0A1A2CS0CS1CS2ADSMRRDRDWRWRDDISTxRDYXINXOUTRxRDY數(shù)據(jù)總線數(shù)據(jù)總

22、線緩沖器緩沖器D0D7內(nèi)內(nèi)部部數(shù)數(shù)據(jù)據(jù)總總線線接收緩沖接收緩沖寄存器寄存器接收器接收器FIFO接收移位接收移位寄存器寄存器線路控制線路控制寄存器寄存器除數(shù)鎖存器除數(shù)鎖存器低字節(jié)低字節(jié)除數(shù)鎖存器除數(shù)鎖存器高字節(jié)高字節(jié)線路狀態(tài)線路狀態(tài)寄存器寄存器發(fā)送保持發(fā)送保持寄存器寄存器接收定時(shí)接收定時(shí)控制控制波特率波特率發(fā)生器發(fā)生器發(fā)送定時(shí)發(fā)送定時(shí)控制控制發(fā)送器發(fā)送器FIFO發(fā)送移位發(fā)送移位寄存器寄存器SINRCLKBAUDOUTSOUTSELECTSELECT發(fā)送保持發(fā)送保持寄存器寄存器Moden控制寄存器控制寄存器Moden狀態(tài)寄存器狀態(tài)寄存器中斷標(biāo)識(shí)中斷標(biāo)識(shí)寄存器寄存器FIFO控制寄存器控制寄存器發(fā)送移

23、位發(fā)送移位寄存器寄存器Moden控制邏輯控制邏輯中斷允許中斷允許寄存器寄存器SOUTRTSCTSDTRDSRDCDRIOUT1OUT2INTR中斷允許中斷允許寄存器寄存器ELECT讀讀/寫(xiě)寫(xiě)控制控制邏輯邏輯A0A1A2CS0CS1CS2ADSMRRDRDWRWRDDISTxRDYXINXOUTRxRDY內(nèi)內(nèi)部部數(shù)數(shù)據(jù)據(jù)總總線線 11.2 串行接口芯片串行接口芯片16550二、二、16550的引腳信號(hào)的引腳信號(hào)D7D0:雙向數(shù)據(jù)總線:雙向數(shù)據(jù)總線CS2、CS1、CS0:片選輸入信號(hào):片選輸入信號(hào)A2A0:端口選擇信號(hào):端口選擇信號(hào)ADS:地址選通輸入信號(hào):地址選通輸入信號(hào)TxRDY:發(fā)送器準(zhǔn)備好

24、信號(hào):發(fā)送器準(zhǔn)備好信號(hào)RxRDY:接收器準(zhǔn)備好信號(hào):接收器準(zhǔn)備好信號(hào)WR/WR寫(xiě)控制信號(hào)寫(xiě)控制信號(hào)RD/RD:讀控制信號(hào):讀控制信號(hào)DDIS:驅(qū)動(dòng)器禁止信號(hào):驅(qū)動(dòng)器禁止信號(hào)MR:主復(fù)位信號(hào):主復(fù)位信號(hào)INTR:中斷請(qǐng)求信號(hào):中斷請(qǐng)求信號(hào)XIN、XOUT:基準(zhǔn)時(shí)鐘信號(hào)輸:基準(zhǔn)時(shí)鐘信號(hào)輸入、輸出引腳入、輸出引腳 11.2 串行接口芯片串行接口芯片16550二、二、16550的引腳信號(hào)的引腳信號(hào)SOUT:串行數(shù)據(jù)輸出引腳:串行數(shù)據(jù)輸出引腳 SIN:串行數(shù)據(jù)輸入引腳:串行數(shù)據(jù)輸入引腳BANDOUT:波特率發(fā)生器輸出:波特率發(fā)生器輸出信號(hào)信號(hào)RCLK:接收時(shí)鐘信號(hào):接收時(shí)鐘信號(hào)DTR:數(shù)據(jù)終端就緒:數(shù)據(jù)

25、終端就緒DSR:數(shù)據(jù)設(shè)備就緒:數(shù)據(jù)設(shè)備就緒RTS:請(qǐng)求發(fā)送:請(qǐng)求發(fā)送CTS:允許發(fā)送:允許發(fā)送DCD:接收線路信號(hào):接收線路信號(hào)RI:振鈴指示:振鈴指示OUT1、OUT2:輸出信號(hào),由用:輸出信號(hào),由用戶編程定義戶編程定義 三、三、16550的內(nèi)部寄存器及初始化編程的內(nèi)部寄存器及初始化編程DLAB CS2 CS1 CS0 A2 A1 A0 寄寄 存存 器(器(R)COM1地址地址COM2地址地址復(fù)位狀態(tài)復(fù)位狀態(tài)00 1 10 0 0數(shù)據(jù)接收數(shù)據(jù)接收R(讀讀)3F8H2F8H清清000 1 10 0 0數(shù)據(jù)發(fā)送數(shù)據(jù)發(fā)送R(寫(xiě)寫(xiě))3F8H2F8H清清000 1 10 0 1中斷允許中斷允許R3F9

26、H2F9H清清00 1 10 1 0中斷識(shí)別中斷識(shí)別R(讀讀)FIFOR(寫(xiě))(寫(xiě))3FAH 2FAHD0=1、其余位清、其余位清0清清00 1 10 1 1通信線路控制通信線路控制R3FBH 2FBH清清00 1 11 0 0MODEN控制控制R3FCH 2FCH清清00 1 11 0 1通信線路狀態(tài)通信線路狀態(tài)R3FDH 2FDHD6、D5位清位清0,其余位為其余位為10 1 11 1 0MODEN狀態(tài)狀態(tài)R3FEH 2FEHD3D0位清位清0 0 1 11 1 1不用不用3FFH 2FFH10 1 10 0 0低低8位除數(shù)位除數(shù)R3F8H2F8H清清010 1 10 0 1高高8位除數(shù)位

27、除數(shù)R3F9H2F9H清清0注:注:DLAB標(biāo)志是線路控制寄存器的標(biāo)志是線路控制寄存器的D7位,是允許訪問(wèn)除數(shù)寄存器的標(biāo)志位。位,是允許訪問(wèn)除數(shù)寄存器的標(biāo)志位。 11.2 串行接口芯片串行接口芯片16550三、三、16550的內(nèi)部寄存器及初始化編程的內(nèi)部寄存器及初始化編程(1)數(shù)據(jù)接收寄存器)數(shù)據(jù)接收寄存器并行數(shù)據(jù)并行數(shù)據(jù)檢測(cè)接收錯(cuò)誤檢測(cè)接收錯(cuò)誤刪除起始位、刪除起始位、校驗(yàn)位、停止位校驗(yàn)位、停止位串行數(shù)據(jù)串行數(shù)據(jù)CPU接收緩沖寄存器接收緩沖寄存器接收移位寄存器接收移位寄存器同步控制同步控制16550SIN0/1 0/10/10/1 11.2 串行接口芯片串行接口芯片16550三、三、16550

28、的內(nèi)部寄存器及初始化編程的內(nèi)部寄存器及初始化編程并行數(shù)據(jù)并行數(shù)據(jù)加入起始位、加入起始位、校驗(yàn)位、停止位校驗(yàn)位、停止位串行數(shù)據(jù)串行數(shù)據(jù)CPU發(fā)送保持寄存器發(fā)送保持寄存器發(fā)送移位寄存器發(fā)送移位寄存器同步控制同步控制16550SOUT0/1 0/10/10/1(2)數(shù)據(jù)發(fā)送寄存器)數(shù)據(jù)發(fā)送寄存器 11.2 串行接口芯片串行接口芯片16550三、三、16550的內(nèi)部寄存器及初始化編程的內(nèi)部寄存器及初始化編程(3)FIFO控制寄存器控制寄存器D7D6D5D4D3D2D1D0RT1RT000DMAXMIT RECVENRT1 RT0表示接收器觸發(fā)器的值表示接收器觸發(fā)器的值00:1字節(jié)字節(jié)01:4字節(jié)字節(jié)1

29、0:8字節(jié)字節(jié)11:14字節(jié)字節(jié)DMA位為位為1時(shí),選擇時(shí),選擇FIFO方式;為方式;為0時(shí),時(shí),選擇選擇16450UART方式。方式。XMIT置置1時(shí),發(fā)送時(shí),發(fā)送器復(fù)位。器復(fù)位。RECV置置1時(shí),接時(shí),接收器復(fù)位。收器復(fù)位。EN置置1,允許,允許FIFO模式。模式。 11.2 串行接口芯片串行接口芯片16550三、三、16550的內(nèi)部寄存器及初始化編程的內(nèi)部寄存器及初始化編程(4)通信線路控制寄存器通信線路控制寄存器D7D6D5D4D3D2D1D0DLABSBRKSPBEPSPENSTBWLS1WLS0寄存器選擇寄存器選擇0 正常值正常值1 除數(shù)寄存器除數(shù)寄存器中止字符中止字符0 無(wú)作用無(wú)

30、作用1 發(fā)送中止字符發(fā)送中止字符校驗(yàn)位設(shè)置校驗(yàn)位設(shè)置0 無(wú)校驗(yàn)位無(wú)校驗(yàn)位001 設(shè)置奇校驗(yàn)設(shè)置奇校驗(yàn)011 設(shè)置偶校驗(yàn)設(shè)置偶校驗(yàn)101 校驗(yàn)位為校驗(yàn)位為1111 校驗(yàn)位為校驗(yàn)位為0停止位個(gè)數(shù)停止位個(gè)數(shù)0 1位位1 1.5位(數(shù)據(jù)位為位(數(shù)據(jù)位為5位時(shí))位時(shí))1 2位(數(shù)據(jù)位為位(數(shù)據(jù)位為68位時(shí))位時(shí))數(shù)據(jù)位個(gè)數(shù)數(shù)據(jù)位個(gè)數(shù)00 5位位01 6位位10 7位位11 8位位 11.2 串行接口芯片串行接口芯片16550三、三、16550的內(nèi)部寄存器及初始化編程的內(nèi)部寄存器及初始化編程(5)通信線路狀態(tài)寄存器通信線路狀態(tài)寄存器D7D6D5D4D3D2D1D0ETTSRE THREBIFEPEOEDR

31、為為1表示接收表示接收FIFO錯(cuò)誤錯(cuò)誤為為1時(shí)表示發(fā)送移位時(shí)表示發(fā)送移位寄存器空,當(dāng)數(shù)據(jù)寄存器空,當(dāng)數(shù)據(jù)由發(fā)送保持寄存器由發(fā)送保持寄存器移入發(fā)送移位寄存移入發(fā)送移位寄存器時(shí),該位為器時(shí),該位為0為為1表示發(fā)送緩沖寄存表示發(fā)送緩沖寄存器空,當(dāng)器空,當(dāng)CPU將字符寫(xiě)將字符寫(xiě)入發(fā)送保持寄存器后,入發(fā)送保持寄存器后,該位為該位為0為為1表示接收到表示接收到終止符終止符為為1表示幀格式錯(cuò)表示幀格式錯(cuò)為為1表示奇偶錯(cuò)表示奇偶錯(cuò)為為1表示溢出錯(cuò)表示溢出錯(cuò)為為1表示接收數(shù)據(jù)就表示接收數(shù)據(jù)就緒,當(dāng)緒,當(dāng)CPU讀走數(shù)讀走數(shù)據(jù)后,該位為據(jù)后,該位為0 11.2 串行接口芯片串行接口芯片16550三、三、16550的

32、內(nèi)部寄存器及初始化編程的內(nèi)部寄存器及初始化編程(6) Modem控制寄存器控制寄存器D7D6D5D4D3D2D1D0000LOOPOUT2OUT1RTSDTR自測(cè)試狀態(tài):自測(cè)試狀態(tài):4個(gè)控制輸入信號(hào)在內(nèi)部與個(gè)控制輸入信號(hào)在內(nèi)部與4個(gè)控制輸出信號(hào)相連個(gè)控制輸出信號(hào)相連發(fā)送的串行數(shù)據(jù)在內(nèi)部被接收發(fā)送的串行數(shù)據(jù)在內(nèi)部被接收檢測(cè)檢測(cè)16550發(fā)送和接收功能,不必外連線發(fā)送和接收功能,不必外連線為為1表示表示DTR準(zhǔn)備好準(zhǔn)備好為為1表示表示RTS有有效效為為1使使OUT1輸輸出為低出為低為為1使使OUT2輸輸出為低出為低為為1表示表示16550工作于自測(cè)試狀態(tài),工作于自測(cè)試狀態(tài),即自發(fā)自收狀態(tài),為即自發(fā)

33、自收狀態(tài),為0表示工作表示工作于正常工作狀態(tài)于正常工作狀態(tài) 11.2 串行接口芯片串行接口芯片16550三、三、16550的內(nèi)部寄存器及初始化編程的內(nèi)部寄存器及初始化編程(7) Modem狀態(tài)狀態(tài)寄存器寄存器D7D6D5D4D3D2D1D0DCDRIDSRCTSDCDRIDSR CTS1)高)高4位位DCD、RI、DSR和和CTS記錄外部記錄外部Modem的的四個(gè)輸入信號(hào)狀態(tài),功能與相應(yīng)引腳信號(hào)功能相同,四個(gè)輸入信號(hào)狀態(tài),功能與相應(yīng)引腳信號(hào)功能相同,而極性相反。而極性相反。2)低)低4位記錄高位記錄高4位相應(yīng)狀態(tài)的改變,即當(dāng)高位相應(yīng)狀態(tài)的改變,即當(dāng)高4位中位中某一位的狀態(tài)發(fā)生改變時(shí),則低某一位

34、的狀態(tài)發(fā)生改變時(shí),則低4位相應(yīng)位置位相應(yīng)位置1。這些。這些狀態(tài)位的改變,除了允許狀態(tài)位的改變,除了允許CPU執(zhí)行輸入指令進(jìn)行查詢執(zhí)行輸入指令進(jìn)行查詢外,也可以引起中斷。外,也可以引起中斷。 11.2 串行接口芯片串行接口芯片16550三、三、16550的內(nèi)部寄存器及初始化編程的內(nèi)部寄存器及初始化編程(8)中斷允許寄存器中斷允許寄存器D7D6D5D4D3D2D1D00000EDSSIELSIETBEI ERBFID3D0各位為各位為1分別表示允許分別表示允許Moden輸入狀態(tài)改變中輸入狀態(tài)改變中斷、允許接收出錯(cuò)中斷、允許發(fā)送緩沖器空中斷、允斷、允許接收出錯(cuò)中斷、允許發(fā)送緩沖器空中斷、允許接收緩沖

35、器滿中斷。許接收緩沖器滿中斷。需要注意的是:需要注意的是:中斷允許寄存器的相應(yīng)位為中斷允許寄存器的相應(yīng)位為“1”,只允許中斷源產(chǎn)生一個(gè)高電平有效的中斷請(qǐng)求信號(hào)只允許中斷源產(chǎn)生一個(gè)高電平有效的中斷請(qǐng)求信號(hào)INTR。 11.2 串行接口芯片串行接口芯片16550三、三、16550的內(nèi)部寄存器及初始化編程的內(nèi)部寄存器及初始化編程(9)中斷識(shí)別中斷識(shí)別寄存器寄存器D7D6D5D4D3D2D1D00000ID2ID1ID0IPD0反映是否有中斷請(qǐng)求反映是否有中斷請(qǐng)求D3D2D1位表示正在請(qǐng)求的中斷,對(duì)應(yīng)關(guān)系如下:位表示正在請(qǐng)求的中斷,對(duì)應(yīng)關(guān)系如下:000:Moden輸入狀態(tài)改變輸入狀態(tài)改變001:發(fā)送寄

36、存器空:發(fā)送寄存器空010:接收緩沖器滿:接收緩沖器滿110:FIFO接收字符超時(shí)接收字符超時(shí)011:接收數(shù)據(jù)出錯(cuò):接收數(shù)據(jù)出錯(cuò) 11.2 串行接口芯片串行接口芯片16550三三、16550的內(nèi)部寄存器及初始化編程的內(nèi)部寄存器及初始化編程16550初始化編程初始化編程將將80H寫(xiě)入通信線路控制寄存器,使最高位寫(xiě)入通信線路控制寄存器,使最高位D7(DLAB)1,建立訪問(wèn)除數(shù)寄存器的標(biāo)志。,建立訪問(wèn)除數(shù)寄存器的標(biāo)志。 寫(xiě)除數(shù)寄存器,設(shè)定波特率分頻系數(shù)。寫(xiě)除數(shù)寄存器,設(shè)定波特率分頻系數(shù)。寫(xiě)通信線路控制寄存器,寫(xiě)通信線路控制寄存器,使最高位使最高位D7(DLAB)0,設(shè)置數(shù)據(jù)格式。,設(shè)置數(shù)據(jù)格式。設(shè)置

37、設(shè)置FIFO控制寄存器??刂萍拇嫫鳌TO(shè)置中斷允許寄存器。設(shè)置中斷允許寄存器。設(shè)置設(shè)置Modem控制寄存器。控制寄存器。 11.2 串行接口芯片串行接口芯片16550三、三、16550的內(nèi)部寄存器及初始化編程的內(nèi)部寄存器及初始化編程MOV DX, 3FBH;線路控制寄存器端口地址線路控制寄存器端口地址MOV AL, 80H;AL=10000000B, 使最高位使最高位DLAB=1OUT DX, AL;寫(xiě)線路控制寄存器寫(xiě)線路控制寄存器MOV DX, 3F8H;除數(shù)寄存器低字節(jié)端口地址除數(shù)寄存器低字節(jié)端口地址MOV AX, 3CH;分頻系數(shù)分頻系數(shù)OUT DX, AL;寫(xiě)除數(shù)寄存器低字節(jié)寫(xiě)除數(shù)寄存器

38、低字節(jié)INC DX;除數(shù)寄存器高字節(jié)端口地址除數(shù)寄存器高字節(jié)端口地址MOV AL, AHOUT DX, AL;寫(xiě)除數(shù)寄存器高字節(jié)寫(xiě)除數(shù)寄存器高字節(jié)寫(xiě)線路控制寄存器和除數(shù)寄存器寫(xiě)線路控制寄存器和除數(shù)寄存器 11.2 串行接口芯片串行接口芯片16550三、三、16550的內(nèi)部寄存器及初始化編程的內(nèi)部寄存器及初始化編程寫(xiě)線路控制寄存器及寫(xiě)線路控制寄存器及FIFO控制寄存器控制寄存器MOV DX, 3FBH;線路控制寄存器端口地址線路控制寄存器端口地址MOV AL, 0BH;AL=00001011, 數(shù)長(zhǎng)數(shù)長(zhǎng)8位位, 1位位停止位停止位, 奇校驗(yàn)奇校驗(yàn)OUT DX, AL;寫(xiě)線路控制寄存器寫(xiě)線路控制寄

39、存器MOV DX,3FAH;FIFO控制寄存器地址送控制寄存器地址送DXMOV AL,47H ;允許允許FIFO并清除,設(shè)并清除,設(shè)FIFO中斷觸發(fā)值為中斷觸發(fā)值為4BOUT DX,AL;寫(xiě)寫(xiě)FIFO控制寄存器控制寄存器 11.2 串行接口芯片串行接口芯片16550三、三、16550的內(nèi)部寄存器及初始化編程的內(nèi)部寄存器及初始化編程寫(xiě)寫(xiě)Modem控制寄存器及中斷允許寄存器控制寄存器及中斷允許寄存器MOV DX, 3FCH;Modem控制寄存器端口地址控制寄存器端口地址MOV AL, 03H;使使DTR =0和和RTS =0, ;數(shù)據(jù)終端就緒數(shù)據(jù)終端就緒, 請(qǐng)求發(fā)送請(qǐng)求發(fā)送OUT DX, AL;寫(xiě)

40、寫(xiě)Modem控制寄存器控制寄存器MOV DX, 3F9H;中斷允許寄存器端口地址中斷允許寄存器端口地址MOV AL, 00H;禁止所有中斷禁止所有中斷OUT DX, AL;寫(xiě)中斷允許寄存器寫(xiě)中斷允許寄存器 11.3 串行接口應(yīng)用舉例串行接口應(yīng)用舉例一、一、BIOS通信功能介紹通信功能介紹二、二、 雙微機(jī)串行通信雙微機(jī)串行通信 三、三、Windows下微機(jī)串口應(yīng)用下微機(jī)串口應(yīng)用11.3 串行接口應(yīng)用串行接口應(yīng)用舉例舉例一、一、 BIOS通信功能介紹通信功能介紹(1)串行口初始化)串行口初始化 :INT 14H 0號(hào)功能號(hào)功能入口參數(shù):入口參數(shù):AH0,串行口初始化;,串行口初始化; AL初始化參

41、數(shù)初始化參數(shù) D7D6D5D4D3D2D1D0波特率選擇波特率選擇校驗(yàn)選擇校驗(yàn)選擇停止位選擇停止位選擇數(shù)據(jù)位選擇數(shù)據(jù)位選擇000:110bps 001:150 bps010:300 bps 011:600 bps100:1200 bps 101:2400 bps110:4800 bps 111:9600 bpsx0:無(wú)校驗(yàn):無(wú)校驗(yàn)01:奇校驗(yàn):奇校驗(yàn)11:偶校驗(yàn):偶校驗(yàn)為為1時(shí)時(shí)2位位停止位停止位為為0時(shí)時(shí)1位停止位位停止位為為11時(shí)時(shí)8位位數(shù)據(jù)數(shù)據(jù)為為10時(shí)時(shí)7位數(shù)據(jù)位數(shù)據(jù)出口參數(shù):出口參數(shù):AH通信線路狀態(tài)寄存器內(nèi)容。通信線路狀態(tài)寄存器內(nèi)容。 ALModem狀態(tài)寄存器內(nèi)容。狀態(tài)寄存器內(nèi)容。

42、11.3 串行接口應(yīng)用串行接口應(yīng)用舉例舉例一、一、 BIOS通信功能介紹通信功能介紹(2)發(fā)送一幀數(shù)據(jù))發(fā)送一幀數(shù)據(jù) :INT 14H 1號(hào)功能號(hào)功能入口參數(shù):入口參數(shù):AH1,發(fā)送數(shù)據(jù)。,發(fā)送數(shù)據(jù)。 AL待發(fā)送的數(shù)據(jù)。待發(fā)送的數(shù)據(jù)。 DX0,使用主串行口;,使用主串行口; DX1,使用輔助串行口。,使用輔助串行口。出口參數(shù):出口參數(shù):AH的的D71,表示發(fā)送失敗;,表示發(fā)送失??; D70,表示發(fā)送成功。,表示發(fā)送成功。11.3 串行接口應(yīng)用串行接口應(yīng)用舉例舉例一、一、 BIOS通信功能介紹通信功能介紹(3)接收一幀數(shù)據(jù))接收一幀數(shù)據(jù) :INT 14H 2號(hào)功能號(hào)功能入口參數(shù):入口參數(shù):AH2

43、,接收數(shù)據(jù)。,接收數(shù)據(jù)。 DX0,使用主串行口;,使用主串行口; DX1,使用輔助串行口。,使用輔助串行口。出口參數(shù):出口參數(shù):AH的的D71,表示接收失??;,表示接收失敗; D70,表示接收成功。,表示接收成功。 AL=接收的字符。接收的字符。11.3 串行接口應(yīng)用串行接口應(yīng)用舉例舉例一、一、 BIOS通信功能介紹通信功能介紹(4)測(cè)試通信線路狀態(tài))測(cè)試通信線路狀態(tài) :INT 14 H 3號(hào)功能號(hào)功能入口參數(shù):入口參數(shù):AH3,測(cè)試通信線路狀態(tài)。,測(cè)試通信線路狀態(tài)。 DX0,使用主串行口;,使用主串行口; DX1,使用輔助串行口。,使用輔助串行口。出口參數(shù):出口參數(shù):AH通信線路狀態(tài)寄存器內(nèi)

44、容。通信線路狀態(tài)寄存器內(nèi)容。 ALModem狀態(tài)寄存器內(nèi)容。狀態(tài)寄存器內(nèi)容。 AX寄存器返回值的定義見(jiàn)下表。寄存器返回值的定義見(jiàn)下表。11.3 串行接口應(yīng)用串行接口應(yīng)用舉例舉例一、一、 BIOS通信功能介紹通信功能介紹AHALD7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0超超時(shí)時(shí)發(fā)發(fā)送送移移位位寄寄存存器器空空發(fā)發(fā)送送保保持持寄寄存存器器空空終終止止傳傳送送幀幀格格式式錯(cuò)錯(cuò)奇奇偶偶錯(cuò)錯(cuò)重重疊疊接接收收錯(cuò)錯(cuò)接接收收數(shù)數(shù)據(jù)據(jù)就就緒緒線線路路自自檢檢測(cè)測(cè)錯(cuò)錯(cuò)振振鈴鈴指指示示數(shù)數(shù)據(jù)據(jù)終終端端就就緒緒清清除除發(fā)發(fā)送送非非線線路路自自檢檢測(cè)測(cè)非非振振鈴鈴指指

45、示示非非數(shù)數(shù)據(jù)據(jù)終終端端就就緒緒非非清清除除發(fā)發(fā)送送11.3 串行接口應(yīng)用串行接口應(yīng)用舉例舉例二、二、雙微機(jī)串行通信雙微機(jī)串行通信例例11.1 在甲乙兩臺(tái)微機(jī)之間使用串口在甲乙兩臺(tái)微機(jī)之間使用串口1進(jìn)行近進(jìn)行近距離通信。采用異步方式,字符長(zhǎng)度距離通信。采用異步方式,字符長(zhǎng)度8位,位,1位停止位,位停止位,偶校驗(yàn),通信波特率為偶校驗(yàn),通信波特率為9600bps。雙機(jī)同時(shí)運(yùn)行通信程。雙機(jī)同時(shí)運(yùn)行通信程序,一方輸入的字符可在另一方屏幕上顯示。當(dāng)按下序,一方輸入的字符可在另一方屏幕上顯示。當(dāng)按下“Esc”鍵時(shí),程序結(jié)束運(yùn)行。鍵時(shí),程序結(jié)束運(yùn)行。 解:解:由于兩臺(tái)微機(jī)是近距離通信,因此不需要由于兩臺(tái)微機(jī)

46、是近距離通信,因此不需要Modem,可直接使用串口線連接。本例采用對(duì)端口的,可直接使用串口線連接。本例采用對(duì)端口的直接操作。直接操作。程序代碼如下程序代碼如下:11.3 串行接口應(yīng)用串行接口應(yīng)用舉例舉例CODESEGMENTASSUMECS:CODESTART:MOV AL,80HMOV DX,3FBHOUTDX,AL;設(shè)置控制寄存器,設(shè)置控制寄存器,;選擇除數(shù)寄存器;選擇除數(shù)寄存器MOV AX,120MOV DX,3F8HOUTDX,ALINCDXMOV AL,AHOUTDX,AL;設(shè)置除數(shù)寄存器,設(shè)置除數(shù)寄存器,;波特率為;波特率為9600bps11.3 串行接口應(yīng)用串行接口應(yīng)用舉例舉例M

47、OV AL,0BHMOV DX,3FBHOUT DX,AL;置置16550工作方式,奇校驗(yàn),工作方式,奇校驗(yàn),;8位數(shù)據(jù),位數(shù)據(jù),1個(gè)停止位個(gè)停止位LOOP1:MOV DX,3FDH IN AL,DX;循環(huán)讀狀態(tài)寄存器循環(huán)讀狀態(tài)寄存器TEST AL,1JNZ RECV;接收準(zhǔn)備好,轉(zhuǎn)接收接收準(zhǔn)備好,轉(zhuǎn)接收TEST AL,20HJNZ TRANS;發(fā)送準(zhǔn)備好,轉(zhuǎn)發(fā)送發(fā)送準(zhǔn)備好,轉(zhuǎn)發(fā)送JMP LOOP1;循環(huán)循環(huán)11.3 串行接口應(yīng)用串行接口應(yīng)用舉例舉例TRANS:MOV AH,1;發(fā)送程序段發(fā)送程序段INT 16H;BIOS功能調(diào)用,功能調(diào)用,;鍵盤(pán)緩沖區(qū)空鍵盤(pán)緩沖區(qū)空Z(yǔ)F=1JZ LOOP1;

48、無(wú)鍵按下,循環(huán)下一次無(wú)鍵按下,循環(huán)下一次MOV AH,0INT 16H;讀取按鍵讀取按鍵ASCII碼碼CMP AL,27JZ EXIT;是是ESC鍵,程序退出鍵,程序退出MOV DX,3F8HOUT DX,AL;發(fā)送按鍵發(fā)送按鍵ASCII碼碼JMP LOOP111.3 串行接口應(yīng)用串行接口應(yīng)用舉例舉例RECV:TEST AL,1EH JNZ DISPERR;接收錯(cuò)誤,轉(zhuǎn)出錯(cuò)處理接收錯(cuò)誤,轉(zhuǎn)出錯(cuò)處理MOV DX,3F8HIN AL,DX;讀取接收字符讀取接收字符CMP AL,13JNZ DISPNOMAL;不是回車,轉(zhuǎn)普通顯示不是回車,轉(zhuǎn)普通顯示MOV DL,10CALL DISP;顯示換行顯示

49、換行MOV DL,13CALL DISP;顯示回車顯示回車JMP LOOP111.3 串行接口應(yīng)用串行接口應(yīng)用舉例舉例DISPERR:MOV DL,? CALL DISP;接收出錯(cuò),顯示?號(hào)接收出錯(cuò),顯示?號(hào)JMP LOOP1DISPNOMAL:MOV DL,ALCALL DISP;顯示接收到的字符顯示接收到的字符JMP LOOP1DISP:MOV AH,2 INT 21H;DOS功能調(diào)用,將功能調(diào)用,將DL中的字符中的字符;輸出到屏幕輸出到屏幕RETEXIT:MOV AH,4CHINT 21H;DOS功能調(diào)用,返回系統(tǒng)功能調(diào)用,返回系統(tǒng)CODEENDSEND START11.3 串行接口應(yīng)用

50、串行接口應(yīng)用舉例舉例三三、Windows下串行口編程應(yīng)用下串行口編程應(yīng)用1SerialPort組件的屬性和方法簡(jiǎn)介組件的屬性和方法簡(jiǎn)介在在.NET Framework 2.0中提供了中提供了SerialPort類,類,該類主要實(shí)現(xiàn)串口數(shù)據(jù)通信等。下面主要介紹該類在該類主要實(shí)現(xiàn)串口數(shù)據(jù)通信等。下面主要介紹該類在后面實(shí)例中用到的部分屬性和方法。后面實(shí)例中用到的部分屬性和方法。 PortName:屬性,獲取或設(shè)置串行口,如屬性,獲取或設(shè)置串行口,如COM1、COM2等。等。 BaudRate:屬性,獲取或設(shè)置串行波特率,屬性,獲取或設(shè)置串行波特率,如常用的波特率如常用的波特率9600、19200、1

51、15200等。等。 Parity:屬性,獲取或設(shè)置奇偶校驗(yàn)檢查協(xié)議,屬性,獲取或設(shè)置奇偶校驗(yàn)檢查協(xié)議,如無(wú)校驗(yàn)、奇校驗(yàn)、偶校驗(yàn)等。如無(wú)校驗(yàn)、奇校驗(yàn)、偶校驗(yàn)等。11.3 串行接口應(yīng)用串行接口應(yīng)用舉例舉例 StopBits:屬性,獲取或設(shè)置每個(gè)字節(jié)的標(biāo)準(zhǔn)屬性,獲取或設(shè)置每個(gè)字節(jié)的標(biāo)準(zhǔn)停止位數(shù),停止位數(shù),1位、位、1.5位、位、2位等。位等。 Open:方法,打開(kāi)一個(gè)新的串行端口連接。方法,打開(kāi)一個(gè)新的串行端口連接。 Close:方法,關(guān)閉端口連接,設(shè)置方法,關(guān)閉端口連接,設(shè)置IsOpen 屬屬性為性為 false,并釋放內(nèi)部,并釋放內(nèi)部Stream對(duì)象。對(duì)象。 WriteLine:方法,將字符串寫(xiě)

52、入串行端口輸方法,將字符串寫(xiě)入串行端口輸出緩沖區(qū)。出緩沖區(qū)。 ReadLine:方法,讀取輸入緩沖區(qū)中的字符串方法,讀取輸入緩沖區(qū)中的字符串 DataReceived:事件,該事件處理事件,該事件處理SerialPort對(duì)對(duì)象的數(shù)據(jù)接收事件。象的數(shù)據(jù)接收事件。其他屬性和方法可以參閱其他屬性和方法可以參閱.NET Framework 2.0中中SerialPort類。類。11.3 串行接口應(yīng)用串行接口應(yīng)用舉例舉例2串口應(yīng)用編程串口應(yīng)用編程下面介紹在下面介紹在Windows 下使用下使用VS2005版版Visual C#,利用,利用SerialPort組件編寫(xiě)串行口傳送字符串程序組件編寫(xiě)串行口傳送

53、字符串程序的方法。的方法。(1)創(chuàng)建項(xiàng)目)創(chuàng)建項(xiàng)目啟動(dòng)啟動(dòng)VS2005,新建,新建Visual C#類型項(xiàng)目。類型項(xiàng)目。(2)界面設(shè)計(jì))界面設(shè)計(jì)串行口通信界面如右圖。串行口通信界面如右圖。 11.3 串行接口應(yīng)用串行接口應(yīng)用舉例舉例 (3)程序設(shè)計(jì))程序設(shè)計(jì)下面是需要編寫(xiě)的各種事件處理代碼。下面是需要編寫(xiě)的各種事件處理代碼。 1)窗體創(chuàng)建時(shí)的串口初始化程序)窗體創(chuàng)建時(shí)的串口初始化程序private void Form1_Load(object sender, EventArgs e) comboBox1.SelectedIndex = 0;/選擇串口選擇串口 comboBox2.SelectedIndex = 4;/選擇波特率選擇波特率 comboBox3.SelectedIndex =

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論