專利名稱:利用通用微處理器實現(xiàn)同步通信數(shù)據(jù)收發(fā)的裝置的制作方法
專利說明
一、技術(shù)領(lǐng)域本實用新型涉及計算機通信的接口裝置,特別是用微處理器作成的同步串行通信接口裝置。
二背景技術(shù):
一方面,隨著計算機網(wǎng)絡通信技術(shù)的快速發(fā)展,同步串行通信應用越來越少,主要集中在一些專業(yè)領(lǐng)域,這直接導致同步串行通信專用接口芯片越來越難買;而且,即便還有同步串行通信專用接口卡貨架產(chǎn)品,也不能處理非標準(非HDLC和IBM雙同步)同步串行通信規(guī)程的數(shù)據(jù)收發(fā)。另一方面,通用微處理器(單片機、DSP等)功能越來越強,價格越來越低;與同步串行通信專用接口芯片相比,更容易購買,費用更便宜。
因此,可用通用微處理器替代同步串行通信專用接口芯片,來完成同步串行通信的功能,并可實現(xiàn)非標準同步串行通信規(guī)程數(shù)據(jù)的收發(fā)。
三、實用新型內(nèi)容本實用新型的目的是提供一種利用通用微處理器實現(xiàn)同步通信數(shù)據(jù)收發(fā)的裝置,以替代同步串行通信專用接口芯片,從而實現(xiàn)同步通信數(shù)據(jù)收發(fā)的實用裝置。
實現(xiàn)本實用新型的目的的技術(shù)方案是一種利用通用微處理器實現(xiàn)同步通信數(shù)據(jù)收發(fā)的裝置,其特征在于,主要由一個微處理器和一個D觸發(fā)器組成;同步通信的所有聯(lián)絡、控制信號輸入至微處理器的并行I/O口,同步數(shù)據(jù)輸入RxD經(jīng)微處理器的1位I/O輸入,同步數(shù)據(jù)輸出TxD通過微處理器的1位I/O在本次時鐘周期內(nèi)輸出至D觸發(fā)器的D端,并在下一個時鐘周期由D觸發(fā)器的Q端與微處理器內(nèi)部的定時器時鐘同步輸出;微處理器的輸出時鐘送至D觸發(fā)器的CP端、作為CP時鐘源;還具有電平轉(zhuǎn)換電路上述所有輸入和輸出信號均分別經(jīng)電平轉(zhuǎn)換電路完成從RS-232電平到TTL電平和從TTL電平到RS-233電平的轉(zhuǎn)換。
還具有外部同步時鐘源以及一個2選1電路;微處理器的輸出時鐘或外部同步時鐘源的輸出時鐘通過2選1電路擇一地送至D觸發(fā)器的CP端、作為CP時鐘源。
該技術(shù)方案的原理是同步通信的所有聯(lián)絡、控制信號用通用微處理器的并行輸入/輸出口完成;同步通信數(shù)據(jù)輸入采取中斷方式,即根據(jù)同步通信時鐘,采取外部中斷方式,通過軟件根據(jù)相應通信規(guī)程進行數(shù)據(jù)的接收、處理;同步通信數(shù)據(jù)輸出既可采取定時中斷輸出方式,也可采取外部提供同步時鐘源方式。
需要說明的是,不管同步通信數(shù)據(jù)輸出采取定時中斷輸出方式或是采取外部提供同步時鐘源方式,都要保證同步輸出時鐘TxC和同步輸出數(shù)據(jù)TxD的同步。為此,本裝置利用D觸發(fā)器預置輸出數(shù)據(jù)位的辦法,實現(xiàn)了時鐘和數(shù)據(jù)的同步,詳見后面描述。
本新型的有益效果是可用通用微處理器替代同步串行通信專用接口芯片,來完成同步串行通信的功能,并可實現(xiàn)非標準同步串行通信規(guī)程數(shù)據(jù)的收發(fā)。
四
圖1是利用通用微處理器實現(xiàn)同步通信數(shù)據(jù)收發(fā)的裝置的原理圖;圖2是圖1所示2選1電路的一個實施例的電路圖;圖3是圖1所示裝置的電路圖。
五具體實施方式
圖1示出,本實用新型主要由一個微處理器,一個口觸發(fā)器和一個2選1電路組成;同步通住的所有聯(lián)絡、控制信號輸入至微處理器的并行I/O口,同步數(shù)據(jù)輸入RxD經(jīng)微處理器的1位I/O輸入,同步數(shù)據(jù)輸出TxD通過微處理器的1位I/O在本次時鐘周期內(nèi)輸出至D觸發(fā)器的D端,并在下一個時鐘周期由D觸發(fā)器的Q端與時鐘同步輸出;上述時鐘是微處理器內(nèi)部的定時器時鐘和外部同步時鐘源;微處理器的輸出時鐘或外部同步時鐘源的輸出時鐘通過2選1電路擇一地送至D觸發(fā)器的CP端,作為CP時鐘源;還具有電平轉(zhuǎn)換電路上述所有輸入和輸出信號均經(jīng)電平轉(zhuǎn)換電路完成從RS-232電平到TTL電平和從TTL電平到RS-233電平的轉(zhuǎn)換。
可以在上述方案基礎(chǔ)上取消外部同步時鐘源以及2選1電路(即微處理器的輸出時鐘直接送至D觸發(fā)器的CP端)而組成另一簡化方案。
有關(guān)上述電路,說明如下1.同步數(shù)據(jù)輸入以同步時鐘輸入RxC作為微處理器的外部中斷請求信號,同步數(shù)據(jù)輸入RxD作為微處理器的1位I/O輸入。在中斷服務程序中,讀入該位I/O輸入,即同步數(shù)據(jù)輸入RxD,并按HDLC或IBM雙同步標準通信規(guī)程進行數(shù)據(jù)處理,是否CRC效驗在初始化時確定。
2.同步數(shù)據(jù)輸出同步數(shù)據(jù)輸出TxD由微處理器準備好后,通過微處理器的1位I/O輸出給D觸發(fā)器,由微處理器內(nèi)部定時器產(chǎn)生的時鐘或外部提供的時鐘源作為同步時鐘TxC一起,將時鐘和微處理器上一次通過1位I/O輸出給D觸發(fā)器的數(shù)據(jù),即D觸發(fā)器的Q端數(shù)據(jù)同步輸出。
需要說明的是,每次微處理器的1位I/O輸出給D觸發(fā)器的數(shù)據(jù),均在本次時鐘周期內(nèi)送到D觸發(fā)器的D端,在下一個時鐘周期送到D觸發(fā)器的Q端與時鐘同步輸出。
下面就定時器時鐘和外部時鐘源進行說明。
(1)定時器時鐘定時器時鐘由微處理器根據(jù)同步通信波特率對應的時間周期,通過內(nèi)部定時器產(chǎn)生定時中斷,并在定時器中斷服務程序中,通過微處理器的1位I/O輸出時鐘TxC,同時將該時鐘送給2選1電路作為D觸發(fā)器的CP時鐘源之一。
由于定時器時鐘是通過內(nèi)部定時器產(chǎn)生定時中斷的方式獲得,并通過微處理器的1位I/O輸出,因此時鐘存在一定誤差,但通常波特率19.2Kbps以內(nèi)相對較小。對于需要較高精度的應用場合,可采用外部時鐘源方式。
(2)外部時鐘源外部時鐘源指通過有源晶振之類的時鐘源,根據(jù)同步通信波特率對應的時間周期,通過控制分頻電路來提供同步輸出時鐘TxC,同時也將該時鐘送給2選1電路作為D觸發(fā)器的CP時鐘源之一。
(3)2選1電路2選1電路實現(xiàn)方式較多,最簡單的就是用1片74LS00即可實現(xiàn),如圖2所示。
微處理器的1位I/O輸出作為2選1電路的控制信號。當控制信號為‘1’時,選擇定時器時鐘作為同步通信時鐘TxC輸出;當控制信號為‘0’時,選擇外部時鐘源作為同步通信時鐘TxC輸出。
3.控制聯(lián)絡信號控制聯(lián)絡信號比較簡單,全部用微處理器的位I/O來實現(xiàn)。
實施例下面以ATMEL公司的AT90S8515單片機為例,說明利用通用微處理器實現(xiàn)同步通信數(shù)據(jù)收發(fā)的具體實施方式
,如圖3所示(若采用其它單片機、DSP微處理器,實施方式完全相同),2選1電路由四個與非門74LS00-1、74LS00-2、74LS00-3、74LS00-4組成;74LS00-3和74LS00-2的輸出信號分別接至74LS00-4的輸入端,74LS00-4的輸出信號送至D觸發(fā)器的CP端,74LS00-2的一個輸入端接入外部時鐘源的信號,另一輸入端連接74LS00-1的輸出端,74LS00-1一個輸入端和74LS00-3的一個輸入端接入微處理器的輸出控制信號,74LS00-3的另一輸入端接入微處理器輸出時鐘信號。
所述微處理器采用單片機AT90S8515;所述電平轉(zhuǎn)換電路采用電平轉(zhuǎn)換集成電路;該電路結(jié)構(gòu)如下MAX202-1輸入端接入同步數(shù)據(jù)輸入RxD,輸出端接單片機的PBO腳,同步時鐘輸入RxC作為單片機的輸入時鐘,經(jīng)MAX202-2輸入至單片機的PD2腳,單片機的PB3腳接D觸發(fā)器的D端、PB2腳接74LS00-3的另一輸入端、PB1腳接至74LS00-3和74LS00-1的一個輸入端、PB2腳對外輸出同步時鐘輸出TxC信號,外部時鐘源的信號經(jīng)MAX202-3輸入至74LS00-2的一個輸入端,D觸發(fā)器Q端的輸出信號經(jīng)MAX202-5對外輸出。
1、同步數(shù)據(jù)輸入同步時鐘輸入RxC經(jīng)電平轉(zhuǎn)換集成電路MAX202-2,將同步時鐘輸入RxC從RS-232C電平轉(zhuǎn)換為TTL電平,作為AT90S8515單片機外部中斷0的中斷請求信號輸入到PD2(INT0)引腳,并在同步時鐘輸入RxC的上升沿請求中斷。
同樣,同步數(shù)據(jù)輸入RxD經(jīng)電平轉(zhuǎn)換集成電路MAX202-1,將同步時鐘輸入RxD從RS-232C電平轉(zhuǎn)換為TTL電平,作為AT90S8515單片機PB0引腳的位輸入,并在中斷服務程序中讀入該位數(shù)據(jù)。
2、同步數(shù)據(jù)輸出同步數(shù)據(jù)輸出TxD由AT90S8515單片機準備好后,通過單片機的PB3引腳,輸出給D觸發(fā)器,由微處理器內(nèi)部定時器產(chǎn)生的時鐘或外部提供的時鐘源作為同步時鐘TxC一起,將時鐘和微處理器上一次通過PB3引腳輸出給D觸發(fā)器的數(shù)據(jù),即D觸發(fā)器的Q端數(shù)據(jù)同步輸出給電平轉(zhuǎn)換集成電路MAX202-5,將同步數(shù)據(jù)輸出TxD從TTL電平轉(zhuǎn)換為RS-232C電平輸出。
如果采用定時器時鐘方式,則可用AT90S8515單片機的16位定時器T1產(chǎn)生同步通信波特率對應的時間周期的定時中斷,并在定時中斷服務程序中,通過單片機的PB2引腳輸出時鐘TxC,經(jīng)電平轉(zhuǎn)換集成電路MAX202-4,將同步時鐘輸出TxC從TIL電平轉(zhuǎn)換為RS-232C電平輸出。同時將PB2引腳的輸出時鐘TxC送給2選1電路的與非門74LS00-3作為D觸發(fā)器的CP時鐘源之一。
2選1電路的控制信號用AT90S8515單片機的PB1引腳來進行控制。PB1為‘1’時,經(jīng)與非門74LS00-1反相為‘0’后作為與非門74LS00-2的1個輸入,屏蔽掉外部同步時鐘源,使與非門74LS00-2的輸出始終為‘1’;同時開通與非門74LS00-3選擇定時器時鐘作為同步通信時鐘TxC輸出,并經(jīng)與非門74LS00-4再次反相后送D觸發(fā)器,作為CP時鐘源。
PB1為‘0’時,作為與非門74LS00-3的1個輸入,屏蔽掉定時器時鐘源,使與非門74LS00-3的輸出始終為‘1’;同時經(jīng)與非門74LS00-1反相為‘1’后作為與非門74LS00-2的1個輸入,開通與非門74LS00-2,使外部同步時鐘源正常通過與非門74LS00-2輸出給與非門74LS00-4,并經(jīng)與非門74LS00-4再次反相后送D觸發(fā)器,作為CP時鐘源。
權(quán)利要求1.一種利用通用微處理器實現(xiàn)同步通信數(shù)據(jù)收發(fā)的裝置,其特征在于,主要由一個微處理器和一個D觸發(fā)器組成;同步通信的所有聯(lián)絡、控制信號輸入至微處理器的并行I/O口,同步數(shù)據(jù)輸入RxD經(jīng)微處理器的1位I/O輸入,同步數(shù)據(jù)輸出TxD通過微處理器的1位I/O在本次時鐘周期內(nèi)輸出至D觸發(fā)器的D端,并在下一個時鐘周期由D觸發(fā)器的Q端與微處理器內(nèi)部的定時器時鐘同步輸出;微處理器的輸出時鐘送至D觸發(fā)器的CP端、作為CP時鐘源;還具有電平轉(zhuǎn)換電路上述所有輸入和輸出信號均分別經(jīng)電平轉(zhuǎn)換電路完成從RS-232電平到TTL電平和從TTL電平到RS-233電平的轉(zhuǎn)換。
2.根據(jù)權(quán)利要求1所述的裝置,其特征在于,還具有外部同步時鐘源以及一個2選1電路;微處理器的輸出時鐘或外部同步時鐘源的輸出時鐘通過2選1電路擇一地送至D觸發(fā)器的CP端、作為CP時鐘源。
3.根據(jù)權(quán)利要求2所述的裝置,其特征在于,所述2選1電路由四個與非門74LS00-1、74LS00-2、74LS00-3、74LS00-4組成;74LS00-3和74LS00-2的輸出信號分別接至74LS00-4的輸入端,74LS00-4的輸出信號送至D觸發(fā)器的CP端,74LS00-2的一個輸入端接入外部時鐘源的信號,另一輸入端連接74LS00-1的輸出端,74LS00-1一個輸入端和74LS00-3的一個輸入端接入微處理器的輸出控制信號,74LS00-3的另一輸入端接入微處理器的輸出時鐘信號。
4.根據(jù)權(quán)利要求3所述的裝置,其特征在于,所述微處理器采用單片機AT90S8515;所述電平轉(zhuǎn)換電路采用電平轉(zhuǎn)換集成塊MAX202;該電路結(jié)構(gòu)如下MAX202-1輸入端接入同步數(shù)據(jù)輸入RxD,輸出端接單片機的PBO腳,同步時鐘輸入RxC作為單片機的輸入時鐘,經(jīng)MAX202-2輸入至單片機的PD2腳,單片機的PB3腳接D觸發(fā)器的D端、PB2腳接74LS00-3的另一輸入端、PB1腳接至74LS00-3和74LS00-1的一個輸入端、PB2腳對外輸出同步時鐘輸出TxC信號,外部時鐘源的信號經(jīng)MAX202-3輸入至74LS00-2的一個輸入端,D觸發(fā)器Q端的輸出信號經(jīng)MAX202-5對外輸出。
專利摘要一種利用通用微處理器實現(xiàn)同步通信數(shù)據(jù)收發(fā)的裝置,屬同步串行通信接口裝置。同步通信的聯(lián)絡、控制信號輸入至微處理器,同步數(shù)據(jù)輸入RxD經(jīng)微處理器的1位I/O輸入,同步數(shù)據(jù)輸出TxD通過微處理器的1位I/O在本次時鐘周期內(nèi)輸出至D觸發(fā)器的D端,并在下一個時鐘周期由其Q端與微處理器內(nèi)部時鐘同步輸出;微處理器的輸出時鐘送至D觸發(fā)器的CP端、作為CP時鐘源;上述所有輸入和輸出信號均分別經(jīng)電平轉(zhuǎn)換電路完成從RS-232電平到TTL電平和從TTL電平到RS-233電平的轉(zhuǎn)換。本實用新型使用通用微處理器替代同步串行通信芯片,完成同步串行通信功能,實現(xiàn)非標準同步串行通信數(shù)據(jù)的收發(fā)。
文檔編號G06F13/40GK2849835SQ20052003647
公開日2006年12月20日 申請日期2005年12月13日 優(yōu)先權(quán)日2005年12月13日
發(fā)明者劉正熙, 黃戈, 李新勝 申請人:四川川大智勝軟件股份有限公司, 四川大學