本發(fā)明涉及通信技術(shù)領(lǐng)域,具體涉及一種通信終端和單線雙向通信系統(tǒng)。
背景技術(shù):
在傳統(tǒng)的雙向通信系統(tǒng)中,由于需要單獨(dú)的時(shí)鐘信號(hào)線來(lái)明確信號(hào)的發(fā)送和采樣時(shí)間,兩個(gè)通信終端之間的雙向通信需要通過(guò)兩個(gè)或兩個(gè)以上的通信總線進(jìn)行。因此,這種傳統(tǒng)的雙向通信方式會(huì)占用通信終端的兩個(gè)或兩個(gè)以上的io口(inputandoutput,輸入輸出接口),降低了通信終端的io接口資源的利用率。同時(shí),基于這種傳統(tǒng)的雙向通信方式,每個(gè)通信總線都需要遵循一定的通信協(xié)議完成通信過(guò)程,導(dǎo)致兩個(gè)通信終端之間的通信協(xié)議也比較復(fù)雜。
雖然現(xiàn)有技術(shù)提供了一種單線雙向通信系統(tǒng)(如圖1所示),可通過(guò)一條通信總線實(shí)現(xiàn)兩個(gè)通信終端之間的雙向通信。但為了使得通信總線在空閑狀態(tài)下能保持高電平,以通過(guò)低電平來(lái)傳輸信號(hào),該單線雙向通信系統(tǒng)的通信總線上設(shè)置了上拉電阻rup以外接電源,這無(wú)疑復(fù)雜了通信總線的結(jié)構(gòu)。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明實(shí)施例提供了一種通信終端和單線雙向通信系統(tǒng),解決了現(xiàn)有雙向通信系統(tǒng)的io接口資源的利用率低、通信協(xié)議復(fù)雜以及通信總線結(jié)構(gòu)復(fù)雜的問(wèn)題。
本發(fā)明一實(shí)施例提供的一種通信終端包括:控制芯片、輸入模塊、高電平輸出控制模塊、低電平輸出控制模塊;
其中,所述控制芯片通過(guò)所述高電平輸出控制模塊向通信總線發(fā)送高電平信號(hào),通過(guò)所述低電平輸出控制模塊向所述通信總線發(fā)送低電平信號(hào),以及通過(guò)所述輸入模塊采集所述通信總線上的信號(hào),其中所述通信終端通過(guò)所述通信總線與另一通信終端連接;
其中,所述控制芯片包括存儲(chǔ)器、處理器以及存儲(chǔ)在所述存儲(chǔ)器上被所述處理器執(zhí)行的指令代碼,所述處理器執(zhí)行所述指令代碼以:
通過(guò)所述高電平輸出控制模塊、所述低電平輸出控制模塊或所述輸入模塊實(shí)現(xiàn)通過(guò)所述通信總線與所述另一通信終端的雙向數(shù)據(jù)傳輸。
其中,所述處理器執(zhí)行所述指令代碼以進(jìn)一步在所述通信終端用作主機(jī)終端時(shí),通過(guò)所述高電平輸出控制模塊向所述通信總線發(fā)送起始信號(hào);或,在所述通信終端用作從機(jī)終端時(shí),通過(guò)所述輸入模塊采集所述通信總線上的所述起始信號(hào)。
其中,所述通過(guò)所述高電平輸出控制模塊、所述低電平輸出控制模塊或所述輸入模塊實(shí)現(xiàn)通過(guò)所述通信總線與所述另一通信終端的雙向數(shù)據(jù)傳輸,包括:
通過(guò)所述輸入模塊依次采集所述通信總線上的數(shù)據(jù)信號(hào)以及停止信號(hào),其中,所述停止信號(hào)的數(shù)據(jù)內(nèi)容包括第一數(shù)據(jù)或第二數(shù)據(jù);或,通過(guò)所述高電平輸出控制模塊依次向所述通信總線發(fā)送數(shù)據(jù)信號(hào)以及停止信號(hào);以及
當(dāng)所述停止信號(hào)的數(shù)據(jù)內(nèi)容為所述第一數(shù)據(jù)且所述通信終端用作主機(jī)終端時(shí),通過(guò)所述高電平輸出控制模塊向所述通信總線發(fā)送下一起始信號(hào);或,當(dāng)所述停止信號(hào)的數(shù)據(jù)內(nèi)容為所述第一數(shù)據(jù)且所述通信終端為所述起始信號(hào)的采集端時(shí),通過(guò)所述輸入模塊采集所述通信總線上的下一起始信號(hào)。
其中,所述處理器執(zhí)行所述指令代碼以進(jìn)一步在所述通信總線處于空閑狀態(tài)時(shí),通過(guò)所述輸入模塊采集所述通信總線上的信號(hào)。
其中,所述輸入模塊通過(guò)一個(gè)下拉電阻與地電連接。
其中,所述高電平輸出控制模塊包括:高電平輸出開(kāi)關(guān)以及驅(qū)動(dòng)電源,所述高電平輸出開(kāi)關(guān)與所述控制芯片、所述驅(qū)動(dòng)電源和所述通信總線分別電連接;其中,所述通信終端通過(guò)開(kāi)啟所述高電平輸出開(kāi)關(guān)來(lái)形成所述驅(qū)動(dòng)電源與所述通信總線之間的電連接,以向所述通信總線發(fā)送高電平的所述起始信號(hào)、所述數(shù)據(jù)信號(hào)或所述停止信號(hào);
所述低電平輸出控制模塊包括:低電平輸出開(kāi)關(guān),所述低電平輸出開(kāi)關(guān)與所述控制芯片和地分別電連接;其中,所述通信終端進(jìn)一步通過(guò)開(kāi)啟所述低電平輸出開(kāi)關(guān)來(lái)形成地與所述通信總線之間的電連接,以向所述通信總線發(fā)送低電平信號(hào)。
其中,所述高電平輸出開(kāi)關(guān)為第一mos管,所述第一mos管的柵極與所述控制芯片電連接,所述第一mos管的源極與所述通信總線電連接,所述第一mos管的漏極與所述驅(qū)動(dòng)電源電連接;
所述低電平輸出開(kāi)關(guān)為第二mos管,所述第二mos管的柵極與所述控制芯片電連接,所述第二mos管的源極與所述通信總線電連接,所述第二mos管的漏極接地。
其中,所述處理器執(zhí)行所述指令代碼以進(jìn)一步當(dāng)通過(guò)所述輸入模塊采集所述通信總線上的信號(hào)時(shí),將所述高電平輸出控制模塊和所述低電平輸出控制模塊配置為開(kāi)路狀態(tài)。
其中,所述數(shù)據(jù)信號(hào)包括多個(gè)數(shù)據(jù)位;
其中,所述通信終端通過(guò)所述高電平輸出控制模塊以預(yù)設(shè)的發(fā)送周期向所述通信總線上依次發(fā)送所述數(shù)據(jù)信號(hào)中的數(shù)據(jù)位;
所述通信終端通過(guò)所述輸入模塊以預(yù)設(shè)的采樣周期依次采集所述通信總線上的所述數(shù)據(jù)信號(hào)中的數(shù)據(jù)位;
其中,所述數(shù)據(jù)信號(hào)中的每個(gè)數(shù)據(jù)位的所述采集周期的開(kāi)始時(shí)刻晚于或等于該數(shù)據(jù)位的所述發(fā)送周期的開(kāi)始時(shí)刻,所述數(shù)據(jù)信號(hào)中的每個(gè)數(shù)據(jù)位的所述采集周期的結(jié)束時(shí)刻早于或等于下一個(gè)數(shù)據(jù)位的所述發(fā)送周期的開(kāi)始時(shí)刻。
其中,所述起始信號(hào)包括一個(gè)數(shù)據(jù)位,所述停止信號(hào)包括一個(gè)數(shù)據(jù)位。
其中,所述起始信號(hào)、所述數(shù)據(jù)信號(hào)或所述停止信號(hào)的每一個(gè)數(shù)據(jù)位都是一個(gè)高電平方波信號(hào);
其中,所述通信終端通過(guò)所述高電平輸出控制模塊向所述通信總線發(fā)送時(shí)間寬度為t/2的所述起始信號(hào)的數(shù)據(jù)位;
其中,所述通過(guò)所述高電平輸出控制模塊依次向所述通信總線發(fā)送所述數(shù)據(jù)信號(hào)以及所述停止信號(hào),包括:
在所述起始信號(hào)的數(shù)據(jù)位的下降沿后的t/4時(shí)刻,發(fā)送所述數(shù)據(jù)信號(hào)的第一個(gè)數(shù)據(jù)位,所述數(shù)據(jù)信號(hào)的第一個(gè)數(shù)據(jù)位的時(shí)間寬度為3/4t;以及
以t為周期發(fā)送所述數(shù)據(jù)信號(hào)的第二個(gè)數(shù)據(jù)位至最后一個(gè)數(shù)據(jù)位以及所述停止信號(hào)的數(shù)據(jù)位,所述數(shù)據(jù)信號(hào)的所述第二個(gè)數(shù)據(jù)位至最后一個(gè)數(shù)據(jù)位中的每個(gè)數(shù)據(jù)位的時(shí)間寬度為t,所述停止信號(hào)的數(shù)據(jù)位的時(shí)間寬度為t;
其中,所述通過(guò)所述輸入模塊依次采集所述通信總線上的所述數(shù)據(jù)信號(hào)以及所述停止信號(hào),包括:
在所述起始信號(hào)的數(shù)據(jù)位的下降沿后的t/2時(shí)刻,開(kāi)始采集所述數(shù)據(jù)信號(hào)以及所述停止信號(hào)的數(shù)據(jù)位,其中每個(gè)所述采集周期的時(shí)間寬度為t/2,每?jī)蓚€(gè)所述采集周期之間的間隔時(shí)間為t/2;
其中,所述通過(guò)所述高電平輸出控制模塊向所述通信總線發(fā)送下一個(gè)所述起始信號(hào),包括:
在所述停止信號(hào)的數(shù)據(jù)位的下降沿后的t/2時(shí)刻,向所述通信總線發(fā)送下一個(gè)時(shí)間寬度為t/2的所述起始信號(hào)的數(shù)據(jù)位。
其中,所述處理器執(zhí)行所述指令代碼以進(jìn)一步在通過(guò)所述高電平輸出控制模塊向所述通信總線發(fā)送所述起始信號(hào)之后,在預(yù)設(shè)的時(shí)間內(nèi)循環(huán)判斷所述通信總線上是否存在數(shù)據(jù)傳輸;以及
若在所述預(yù)設(shè)的時(shí)間內(nèi)所述循環(huán)判斷結(jié)果始終為是,判斷為所述通信總線處于空閑狀態(tài)。
其中,當(dāng)所述通信終端用作主機(jī)終端且作為所述數(shù)據(jù)信號(hào)的接收方時(shí),其中,所述處理器執(zhí)行所述指令代碼以進(jìn)一步在通過(guò)所述高電平輸出控制模塊向所述通信總線發(fā)送所述起始信號(hào)之后,判斷采集到的所述數(shù)據(jù)信號(hào)是否為有效應(yīng)答信號(hào),以及判斷所述停止信號(hào)的數(shù)據(jù)內(nèi)容是否為第一數(shù)據(jù);
如果采集到所述數(shù)據(jù)信號(hào)為所述有效應(yīng)答信號(hào)且所述停止信號(hào)的數(shù)據(jù)內(nèi)容為第一數(shù)據(jù),則在第一時(shí)間間隔后,通過(guò)所述高電平輸出控制模塊向所述通信總線發(fā)送下一個(gè)所述起始信號(hào);
如果采集到所述數(shù)據(jù)信號(hào)不是所述有效應(yīng)答信號(hào),則判斷是否已經(jīng)發(fā)送了預(yù)設(shè)次數(shù)的所述起始信號(hào);如果判斷結(jié)果為是,則判斷為所述通信總線處于空閑狀態(tài);如果判斷結(jié)果為否,則在第二時(shí)間間隔后再次發(fā)送所述起始信號(hào)。
本發(fā)明一實(shí)施例提供一種單線雙向通信系統(tǒng),包括第一通信終端、第二通信終端和通信總線,所述第一通信終端和所述第二通信終端中的每個(gè)通信終端為如前任一所述的通信終端,其中,所述第一通信終端與所述第二通信終端通過(guò)所述通信總線相互連接以實(shí)現(xiàn)雙向通信。
本發(fā)明一實(shí)施例提供一種單線雙向通信方法,所述方法由如前任一所述的通信終端執(zhí)行,所述方法包括:
當(dāng)所述通信終端用作主機(jī)終端時(shí),通過(guò)所述高電平輸出控制模塊向所述通信總線發(fā)送起始信號(hào);或,當(dāng)所述通信終端用作從機(jī)終端時(shí),通過(guò)所述輸入模塊采集所述通信總線上的起始信號(hào);以及
根據(jù)所述起始信號(hào),通過(guò)所述高電平輸出控制模塊、所述低電平輸出控制模塊或所述輸入模塊實(shí)現(xiàn)通過(guò)所述通信總線與所述另一通信終端的雙向數(shù)據(jù)傳輸。
本發(fā)明一實(shí)施例提供一種控制芯片,所述控制芯片應(yīng)用于如前任一所述的通信終端,所述控制芯片包括:存儲(chǔ)器、處理器以及存儲(chǔ)在所述存儲(chǔ)器上被所述處理器執(zhí)行的指令代碼,所述處理器執(zhí)行所述指令代碼以:
當(dāng)所述通信終端用作主機(jī)終端時(shí),通過(guò)所述高電平輸出控制模塊向所述通信總線發(fā)送起始信號(hào);或,當(dāng)所述通信終端用作從機(jī)終端時(shí),通過(guò)所述輸入模塊采集所述通信總線上的起始信號(hào);以及
根據(jù)所述起始信號(hào),通過(guò)所述高電平輸出控制模塊、所述低電平輸出控制模塊或所述輸入模塊實(shí)現(xiàn)通過(guò)所述通信總線與所述另一通信終端的雙向數(shù)據(jù)傳輸。
本發(fā)明的實(shí)施例所提供的通信終端,即可用作主機(jī)終端也可用作從機(jī)終端,僅通過(guò)一條通信總線便可有序地與另一個(gè)本發(fā)明實(shí)施例所提供的通信終端完成雙向通信過(guò)程,且通信過(guò)程所遵循的通信協(xié)議簡(jiǎn)單可靠。此外,通信終端通過(guò)內(nèi)部的高電平輸出控制模塊即可向通信總線發(fā)送高電平信號(hào),通過(guò)內(nèi)部的低電平輸出控制模塊可向通信總線發(fā)送低電平信號(hào)。這樣在與另一個(gè)本發(fā)明實(shí)施例所提供的通信終端構(gòu)成雙向通信系統(tǒng)時(shí),不需要在通信總線上設(shè)置任何額外的上拉或下拉結(jié)構(gòu),簡(jiǎn)化了通信總線的結(jié)構(gòu)。
本發(fā)明的實(shí)施例所提供的單線雙向通信系統(tǒng),通過(guò)一條通信總線便可有序地完成兩個(gè)通信終端之間的雙向通信過(guò)程,且通信過(guò)程所遵循的通信協(xié)議簡(jiǎn)單可靠。此外,不需要在通信總線上設(shè)置任何額外的上拉或下拉結(jié)構(gòu),簡(jiǎn)化了通信總線的結(jié)構(gòu)。
附圖說(shuō)明
圖1所示為現(xiàn)有技術(shù)所提供的一種單線雙向通信系統(tǒng)的結(jié)構(gòu)示意圖。
圖2所示為本發(fā)明一實(shí)施例提供的一種通信終端的結(jié)構(gòu)示意圖。
圖3所示為當(dāng)本發(fā)明一實(shí)施例提供的通信終端的控制芯片中的處理器執(zhí)行指令代碼時(shí)所實(shí)現(xiàn)的通信方法的流程示意圖。
圖4所示為本發(fā)明一實(shí)施例提供的通信終端的控制芯片中的處理器執(zhí)行指令代碼時(shí)所實(shí)現(xiàn)的通信方法中數(shù)據(jù)傳輸過(guò)程的流程示意圖。
圖5所示為本發(fā)明另一實(shí)施例提供的通信終端的結(jié)構(gòu)示意圖。
圖6a和圖6b所示為本發(fā)明一實(shí)施例所提供的通信終端的控制芯片中的處理器執(zhí)行指令代碼時(shí)所實(shí)現(xiàn)的通信方法的虛擬時(shí)鐘原理示意圖。
圖7所示為本發(fā)明一實(shí)施例所提供的單線雙向通信系統(tǒng)的通信流程示意圖。
圖8所示為本發(fā)明一實(shí)施例所提供的一種單線雙向通信系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
圖2所示為本發(fā)明一實(shí)施例提供的一種通信終端的結(jié)構(gòu)示意圖。如圖2所示,該通信終端包括:控制芯片1、輸入模塊2、高電平輸出控制模塊3和低電平輸出控制模塊4。
控制芯片1通過(guò)與高電平輸出控制模塊3、低電平輸出控制模塊4以及輸入模塊2分別的電連接實(shí)現(xiàn)與通信總線5的通信連接,通信終端通過(guò)該通信總線5與另一通信終端連接。具體而言,控制芯片1可通過(guò)與高電平輸出控制模塊3的電連接向通信總線5發(fā)送高電平信號(hào);通過(guò)與低電平輸出控制模塊4的電連接向通信總線5發(fā)送低電平信號(hào);通過(guò)與輸入模塊2的電連接采集通信總線5上的信號(hào),該采集的信號(hào)可被輸入模塊2識(shí)別為高電平信號(hào)或低電平信號(hào)。由此可見(jiàn),控制芯片1通過(guò)高電平輸出控制模塊3和低電平輸出控制模塊4實(shí)現(xiàn)向通信總線5的信號(hào)輸出,通過(guò)輸入模塊2實(shí)現(xiàn)通信總線5上信號(hào)的信號(hào)輸入,由此實(shí)現(xiàn)與通信總線5的雙向通信。
基于上述的通信終端結(jié)構(gòu),本發(fā)明實(shí)施例所提供的兩個(gè)通信終端通過(guò)一個(gè)通信總線5相互連接即可構(gòu)成單線雙向通信系統(tǒng)。一般來(lái)說(shuō),在單線雙向通信系統(tǒng)的兩個(gè)通信終端中,當(dāng)有數(shù)據(jù)傳輸需求時(shí),首先主動(dòng)開(kāi)啟通信過(guò)程的通信終端為主機(jī)終端,另一個(gè)通信終端則作為從機(jī)終端。由于該兩個(gè)通信終端中的任何一個(gè)都可能作為開(kāi)啟一次通信過(guò)程的主機(jī)終端,因此還需要配置其中每個(gè)通信終端中控制芯片1,以使得每個(gè)通信終端中的輸入模塊2、高電平輸出控制模塊3和低電平輸出控制模塊4能夠有序運(yùn)作,從而使得該兩個(gè)通信終端各自完成在該次通信過(guò)程中的主機(jī)終端功能或從機(jī)終端功能。
具體而言,該通信終端中的控制芯片1包括存儲(chǔ)器、處理器以及存儲(chǔ)在存儲(chǔ)器上被處理器執(zhí)行的指令代碼。處理器執(zhí)行該指令代碼以通過(guò)高電平輸出控制模塊3、低電平輸出控制模塊4或輸入模塊2實(shí)現(xiàn)通過(guò)通信總線5與另一通信終端的雙向數(shù)據(jù)傳輸。該存儲(chǔ)器可以為任何有形媒介的可讀存儲(chǔ)介質(zhì),例如軟盤(pán)、cd-rom、dvd、硬盤(pán)驅(qū)動(dòng)器、甚至網(wǎng)絡(luò)介質(zhì)等。
圖3所示為當(dāng)本發(fā)明一實(shí)施例提供的通信終端的控制芯片中的處理器執(zhí)行指令代碼時(shí)所實(shí)現(xiàn)的通信方法的流程示意圖。如圖3所示,該通信方法包括:
步驟301:在通信總線5處于空閑狀態(tài)時(shí),通過(guò)輸入模塊2采集通信總線5上的信號(hào)。
由于當(dāng)通信總線5處于空閑狀態(tài)時(shí),通信總線5上并沒(méi)有信號(hào)在傳輸,所以此時(shí)通信終端并不知悉自己在下一個(gè)通信過(guò)程中的角色為主機(jī)終端還是從機(jī)終端。此時(shí)無(wú)論是即將作為主機(jī)終端的通信終端,還是即將作為從機(jī)終端的通信終端,都需要保持對(duì)于通信總線5上的信號(hào)的采集狀態(tài),以便于當(dāng)通信總線5上出現(xiàn)起始信號(hào)時(shí)明確自己在通信過(guò)程中的角色。
步驟302:當(dāng)通信終端用作主機(jī)終端時(shí),通過(guò)高電平輸出控制模塊3向通信總線5發(fā)送起始信號(hào);或,當(dāng)通信終端用作從機(jī)終端時(shí),通過(guò)輸入模塊2采集到通信總線5上的起始信號(hào)。
如前所述,當(dāng)通信總線5處于空閑狀態(tài)時(shí),通信總線5兩端的通信終端都處于信號(hào)采集狀態(tài)。例如,當(dāng)一個(gè)通信終端接收到通信需求指令時(shí),該通信終端即明確了自己的身份為主機(jī)終端,此時(shí)便向通信總線5發(fā)送一個(gè)起始信號(hào),以通知另一個(gè)通信終端開(kāi)啟本次通信過(guò)程。而作為從機(jī)終端的通信終端,并不會(huì)接收到開(kāi)啟通信過(guò)程的指令,也就不會(huì)發(fā)送起始信號(hào),因此仍保持著步驟101中的信號(hào)采集狀態(tài),而當(dāng)采集到了該起始信號(hào)時(shí),自然也就明確了自己的身份為從機(jī)終端。為了便于更清晰簡(jiǎn)潔的闡述技術(shù)方案,在后面的描述中,用限定詞“主機(jī)終端”來(lái)指代該通信終端用作主機(jī)終端時(shí)的情況,用限定詞“從機(jī)終端”來(lái)指代該通信終端用作從機(jī)終端時(shí)的情況。
應(yīng)當(dāng)理解,上述的通信需求指令可由與通信終端連接的其他外部設(shè)備向通信終端的控制芯片傳達(dá),本發(fā)明對(duì)該通信需求指令的來(lái)源并不做限定。還應(yīng)理解,本發(fā)明的實(shí)施例并不限于上述確定主機(jī)終端的方式,例如,也可以是兩個(gè)通信終端預(yù)先約定或協(xié)商主機(jī)終端或從機(jī)終端。
步驟303:通過(guò)高電平輸出控制模塊3、低電平輸出控制模塊4或輸入模塊2實(shí)現(xiàn)與通信總線5的雙向數(shù)據(jù)傳輸。
主機(jī)終端在發(fā)送了起始信號(hào)后,通信總線5兩端的通信終端便都明確了自己的身份,通信過(guò)程中的數(shù)據(jù)傳輸過(guò)程便可正式開(kāi)始。應(yīng)當(dāng)理解,雖然通過(guò)發(fā)送起始信號(hào)來(lái)開(kāi)啟通信過(guò)程的通信終端為主機(jī)終端,但在數(shù)據(jù)傳輸過(guò)程中,主機(jī)終端卻既有可能是數(shù)據(jù)信號(hào)的發(fā)送方,也有可能是數(shù)據(jù)信號(hào)的接收方。數(shù)據(jù)信號(hào)的數(shù)據(jù)內(nèi)容即為所要傳輸?shù)臄?shù)據(jù)。
在本發(fā)明一實(shí)施例中,該通信方法可進(jìn)一步包括:在通過(guò)高電平輸出控制模塊3向通信總線5發(fā)送起始信號(hào)之后,在預(yù)設(shè)的時(shí)間內(nèi)循環(huán)判斷通信總線5上是否存在數(shù)據(jù)傳輸;以及若在預(yù)設(shè)的時(shí)間內(nèi)循環(huán)判斷結(jié)果始終為是,判斷為通信總線5處于空閑狀態(tài)。這樣主機(jī)終端在發(fā)送了起始信號(hào)后,若在預(yù)設(shè)的時(shí)間內(nèi)并沒(méi)有實(shí)際上產(chǎn)生數(shù)據(jù)傳輸,則說(shuō)明數(shù)據(jù)信號(hào)的發(fā)送方(有可能是主機(jī)終端也有可能是從機(jī)終端)并不在線或因?yàn)槟承┕收显驘o(wú)法完成數(shù)據(jù)信號(hào)的發(fā)送,當(dāng)前的通信過(guò)程也就無(wú)法完成。此時(shí),可以判斷為通信總線5仍處于空閑狀態(tài),并繼續(xù)通過(guò)輸入模塊2采集通信總線5上的信號(hào)。
由此可見(jiàn),本發(fā)明的實(shí)施例所提供的通信終端,既可用作主機(jī)終端也可用作從機(jī)終端,僅通過(guò)一條通信總線5便可有序地與本發(fā)明實(shí)施例所提供的另一通信終端完成雙向通信過(guò)程,且通信過(guò)程所遵循的通信協(xié)議簡(jiǎn)單可靠。此外,通信終端通過(guò)內(nèi)部的高電平輸出控制模塊3即可向通信總線5發(fā)送高電平信號(hào),通過(guò)內(nèi)部的低電平輸出控制模塊4可向通信總線5發(fā)送高電平信號(hào)。這樣在與本發(fā)明實(shí)施例所提供的另一通信終端構(gòu)成雙向通信系統(tǒng)時(shí),不需要在通信總線5上設(shè)置任何額外的上拉或下拉結(jié)構(gòu),簡(jiǎn)化了通信總線5的結(jié)構(gòu)。
圖4所示為本發(fā)明一實(shí)施例提供的通信終端的控制芯片中的處理器執(zhí)行指令代碼時(shí)所實(shí)現(xiàn)的通信方法中數(shù)據(jù)傳輸過(guò)程的流程示意圖。如圖4所示,該數(shù)據(jù)傳輸過(guò)程可包括如下步驟:
步驟3031:通過(guò)輸入模塊2依次采集通信總線5上的數(shù)據(jù)信號(hào)以及停止信號(hào),其中,停止信號(hào)的數(shù)據(jù)內(nèi)容包括第一數(shù)據(jù)或第二數(shù)據(jù);或,通過(guò)高電平輸出控制模塊3依次向通信總線5發(fā)送數(shù)據(jù)信號(hào)以及停止信號(hào)。
如前所述,在數(shù)據(jù)傳輸過(guò)程中,數(shù)據(jù)的發(fā)送方可以是主機(jī)終端也可以是從機(jī)終端。當(dāng)主機(jī)終端為數(shù)據(jù)的發(fā)送方時(shí),從機(jī)終端即為數(shù)據(jù)的接收方;當(dāng)主機(jī)終端為數(shù)據(jù)的接收方時(shí),從機(jī)終端即為數(shù)據(jù)的發(fā)送方。數(shù)據(jù)的接收方需要通過(guò)輸入模塊2采集通信總線5上的數(shù)據(jù)信號(hào);數(shù)據(jù)的發(fā)送方則需要通過(guò)高電平輸出控制模塊3向通信總線5發(fā)送數(shù)據(jù)信號(hào)。數(shù)據(jù)信號(hào)的數(shù)據(jù)內(nèi)容即為所要傳輸?shù)臄?shù)據(jù)(例如可為從機(jī)終端的地址信息)。應(yīng)當(dāng)理解,數(shù)據(jù)信號(hào)的具體數(shù)據(jù)內(nèi)容可根據(jù)實(shí)際場(chǎng)景需求而變化。例如在本發(fā)明一實(shí)施例中,數(shù)據(jù)信號(hào)的具體數(shù)據(jù)內(nèi)容可為二進(jìn)制的0或1。本發(fā)明對(duì)數(shù)據(jù)信號(hào)的具體數(shù)據(jù)內(nèi)容不做限定。
此外,數(shù)據(jù)的發(fā)送方在發(fā)送完畢數(shù)據(jù)信號(hào)后,還會(huì)接著發(fā)送一個(gè)停止信號(hào)來(lái)明確本次通信過(guò)程是否結(jié)束。因此,數(shù)據(jù)的接收方在采集完數(shù)據(jù)信號(hào)后,還會(huì)采集到該停止信號(hào)。該停止信號(hào)的數(shù)據(jù)內(nèi)容可以包括第一數(shù)據(jù)或第二數(shù)據(jù),其中第一數(shù)據(jù)(例如可為二進(jìn)制的1)意為當(dāng)前數(shù)據(jù)的傳輸過(guò)程尚未結(jié)束,第二數(shù)據(jù)(例如可為二進(jìn)制的0)則意為當(dāng)前數(shù)據(jù)的傳輸過(guò)程已經(jīng)結(jié)束,亦或相反。
步驟3032:當(dāng)停止信號(hào)的數(shù)據(jù)內(nèi)容為第一數(shù)據(jù)且通信終端用作主機(jī)終端時(shí),通過(guò)高電平輸出控制模塊3向通信總線5發(fā)送下一個(gè)起始信號(hào);或,當(dāng)停止信號(hào)的數(shù)據(jù)內(nèi)容為第一數(shù)據(jù)且通信終端為起始信號(hào)的采集端時(shí),通過(guò)輸入模塊2采集通信總線5上的下一個(gè)起始信號(hào)。
如前所述,當(dāng)停止信號(hào)的數(shù)據(jù)內(nèi)容為第一數(shù)據(jù)時(shí),意味著當(dāng)前數(shù)據(jù)的傳輸過(guò)程尚未結(jié)束,當(dāng)前的通信過(guò)程可能僅完成了當(dāng)前數(shù)據(jù)的一部分?jǐn)?shù)據(jù)的傳輸,此時(shí)仍需要通過(guò)下一個(gè)通信過(guò)程繼續(xù)傳輸當(dāng)前數(shù)據(jù)。因此主機(jī)終端需要通過(guò)高電平輸出控制模塊3向通信總線5發(fā)送下一個(gè)起始信號(hào)以開(kāi)啟下一個(gè)通信過(guò)程。而作為起始信號(hào)的采集端的從機(jī)終端,則需要繼續(xù)通過(guò)輸入模塊2采集通信總線5上的下一個(gè)起始信號(hào)。
而當(dāng)停止信號(hào)的數(shù)據(jù)內(nèi)容為第二數(shù)據(jù)時(shí),則意味著當(dāng)前數(shù)據(jù)的傳輸過(guò)程已經(jīng)結(jié)束,通信總線5可恢復(fù)空閑狀態(tài)。當(dāng)再有新的數(shù)據(jù)需要傳輸時(shí),再由被確定為主機(jī)終端的(例如,接收到通信需求指令的)通信終端發(fā)送起始指令以充當(dāng)主機(jī)終端,從而開(kāi)啟傳輸該新數(shù)據(jù)的第一次通信過(guò)程。
由于控制芯片1是通過(guò)高電平輸出控制模塊3來(lái)向通信總線5發(fā)送起始信號(hào)、數(shù)據(jù)信號(hào)以及停止信號(hào),因此該起始信號(hào)、數(shù)據(jù)信號(hào)以及停止信號(hào)都是高電平信號(hào)。在本發(fā)明一實(shí)施例中,為了使得通信總線5能在沒(méi)有傳輸信號(hào)時(shí)穩(wěn)定地處于低電平狀態(tài),輸入模塊2可通過(guò)一個(gè)下拉電阻(drpd)與地電連接。但應(yīng)當(dāng)理解該下拉電阻的阻值應(yīng)比較大,可達(dá)到幾百千歐。
在一進(jìn)一步實(shí)施例中,為了避免高電平輸出控制模塊3和低電平輸出控制模塊4的輸出功能與輸入模塊2的輸入功能相沖突,該通信方法可進(jìn)一步包括:當(dāng)控制芯片1要通過(guò)輸入模塊2采集通信總線5上的信號(hào)時(shí),將高電平輸出控制模塊3和低電平輸出控制模塊4配置為開(kāi)路狀態(tài)。
在本發(fā)明一實(shí)施例中,高電平輸出控制模塊3可包括:高電平輸出開(kāi)關(guān)以及驅(qū)動(dòng)電源。該高電平輸出開(kāi)關(guān)與控制芯片1、驅(qū)動(dòng)電源和通信總線5分別電連接。這樣當(dāng)控制芯片1需要通過(guò)高電平輸出控制模塊3向通信總線5發(fā)送起始信號(hào)、數(shù)據(jù)信號(hào)或停止信號(hào)時(shí),其實(shí)是通過(guò)開(kāi)啟該高電平輸出開(kāi)關(guān)來(lái)形成驅(qū)動(dòng)電源與通信總線5之間的電連接,以向通信總線5發(fā)送高電平的起始信號(hào)、數(shù)據(jù)信號(hào)或停止信號(hào)。
在本發(fā)明一實(shí)施例中,低電平輸出控制模塊4可包括:低電平輸出開(kāi)關(guān),該低電平輸出開(kāi)關(guān)與控制芯片1和地分別電連接。這樣當(dāng)控制芯片1需要通過(guò)低電平輸出控制模塊4向通信總線5發(fā)送低電平信號(hào)時(shí),其實(shí)是通過(guò)開(kāi)啟該低電平輸出開(kāi)關(guān)來(lái)形成地與通信總線5之間的電連接,以向通信總線5發(fā)送低電平信號(hào)。應(yīng)當(dāng)理解,為了實(shí)現(xiàn)低電平信號(hào)的發(fā)送,也可以將該低電平輸出開(kāi)關(guān)一個(gè)電阻電連接以取代與地的電連接,本發(fā)明對(duì)此不做限定。
圖5所示為本發(fā)明另一實(shí)施例提供的通信終端的結(jié)構(gòu)示意圖。如圖5所示,該通信終端的高電平輸出控制模塊3中的高電平輸出開(kāi)關(guān)為第一mos管,該第一mos管的柵極與控制芯片1電連接,源極與通信總線5電連接,漏極與驅(qū)動(dòng)電源(dvdio)電連接。低電平輸出控制模塊4中的低電平輸出開(kāi)關(guān)為第二mos管,第二mos管的柵極與控制芯片1電連接,源極與通信總線5電連接,漏極接地(gndio)。
這樣當(dāng)控制芯片1需要通過(guò)高電平輸出控制模塊3向通信總線5發(fā)送起始信號(hào)、數(shù)據(jù)信號(hào)或停止信號(hào)時(shí),打開(kāi)該第一mos管并關(guān)閉該第二mos管即可,以將通信總線5與驅(qū)動(dòng)電源接通,使得通信總線5呈現(xiàn)高電平。當(dāng)控制芯片1需要通過(guò)低電平輸出控制模塊4向通信總線5發(fā)送低電平信號(hào)時(shí),關(guān)閉該第一mos管并打開(kāi)該第二mos管即可,以將通信總線5與地接通,使得通信總線5呈現(xiàn)低電平。
在本發(fā)明一實(shí)施例中,一次通信過(guò)程的數(shù)據(jù)信號(hào)可包括多個(gè)數(shù)據(jù)位。例如,一次通信過(guò)程的數(shù)據(jù)信號(hào)可包括八個(gè)數(shù)據(jù)位,該八個(gè)數(shù)據(jù)位構(gòu)成一個(gè)字節(jié)。而當(dāng)前所要傳輸?shù)臄?shù)據(jù)可能包括多個(gè)字節(jié),因此當(dāng)前所要傳輸?shù)臄?shù)據(jù)可能要通過(guò)多次通信過(guò)程來(lái)傳輸多個(gè)數(shù)據(jù)信號(hào)才能完成。然而,應(yīng)當(dāng)理解,本發(fā)明對(duì)于一個(gè)數(shù)據(jù)信號(hào)所包括的數(shù)據(jù)位的數(shù)量并不做具體限定。
應(yīng)當(dāng)理解,雖然數(shù)據(jù)信號(hào)中的數(shù)據(jù)位都為高電平信號(hào),但不同數(shù)據(jù)位所傳輸?shù)臄?shù)據(jù)內(nèi)容是可能有所變化的。以圖5所述的通信終端的結(jié)構(gòu)為例,當(dāng)一個(gè)數(shù)據(jù)位的數(shù)據(jù)內(nèi)容為二進(jìn)制的1時(shí),可配置為驅(qū)動(dòng)電源向通信總線5輸出的電壓為0.7*dovio;而當(dāng)一個(gè)數(shù)據(jù)為的數(shù)據(jù)內(nèi)容為二進(jìn)制的0時(shí),可配置為驅(qū)動(dòng)電源向通信總線5輸出的電壓為0.3*dovio。
在本發(fā)明一實(shí)施例中,由于起始信號(hào)僅用于通知開(kāi)啟通信過(guò)程,因此起始信號(hào)可僅包括一個(gè)數(shù)據(jù)位。由于停止信號(hào)僅用于通知是否結(jié)束通信過(guò)程,停止信號(hào)也可僅包括一個(gè)數(shù)據(jù)位。然而應(yīng)當(dāng)理解,本發(fā)明對(duì)于起始信號(hào)和停止信號(hào)各自所包括的數(shù)據(jù)位的數(shù)量也不做具體限定。例如,對(duì)于停止信號(hào)而言,也可以是11意為當(dāng)前數(shù)據(jù)的傳輸過(guò)程尚未結(jié)束,00意為當(dāng)前數(shù)據(jù)的傳輸過(guò)程已經(jīng)結(jié)束。
在本發(fā)明一實(shí)施例中,當(dāng)一個(gè)數(shù)據(jù)信號(hào)包括了多個(gè)數(shù)據(jù)位時(shí),數(shù)據(jù)接收方(可能是主機(jī)終端也可能是從機(jī)終端)就需要以預(yù)設(shè)的采樣周期依次采集通信總線5上的數(shù)據(jù)信號(hào)中的數(shù)據(jù)位。同時(shí),數(shù)據(jù)發(fā)送方(可能是從機(jī)終端也可能是主機(jī)終端)就需要以預(yù)設(shè)的發(fā)送周期向通信總線5上依次發(fā)送數(shù)據(jù)信號(hào)中的數(shù)據(jù)位。但為了保證數(shù)據(jù)接收方和數(shù)據(jù)發(fā)送方能夠協(xié)同工作,以使得數(shù)據(jù)接收方能夠采集到穩(wěn)定的信號(hào),數(shù)據(jù)信號(hào)中的每個(gè)數(shù)據(jù)位的采集周期的開(kāi)始時(shí)刻應(yīng)晚于或等于該數(shù)據(jù)位的發(fā)送周期的開(kāi)始時(shí)刻,數(shù)據(jù)信號(hào)中的每個(gè)數(shù)據(jù)位的采集周期的結(jié)束時(shí)刻應(yīng)早于或等于下一個(gè)數(shù)據(jù)位的發(fā)送周期的開(kāi)始時(shí)刻。
圖6a和圖6b所示為本發(fā)明一實(shí)施例所提供的通信終端的控制芯片中的處理器執(zhí)行指令代碼時(shí)所實(shí)現(xiàn)的通信方法的虛擬時(shí)鐘原理示意圖。其中,圖6a所示的為主機(jī)終端作為數(shù)據(jù)信號(hào)接受方時(shí)的雙向通信過(guò)程的虛擬時(shí)鐘原理示意圖;圖6b所示的為主機(jī)終端作為數(shù)據(jù)信號(hào)發(fā)送方時(shí)的雙向通信過(guò)程的虛擬時(shí)鐘原理示意圖。起始信號(hào)、數(shù)據(jù)信號(hào)或停止信號(hào)的每一個(gè)數(shù)據(jù)位都是一個(gè)高電平方波信號(hào),數(shù)據(jù)信號(hào)包括八個(gè)數(shù)據(jù)位,起始信號(hào)可以包括一個(gè)數(shù)據(jù)位,停止信號(hào)也可能包括一個(gè)數(shù)據(jù)位。其中實(shí)線的方波用于指代信號(hào)的發(fā)送時(shí)段,虛線的方波用于指代信號(hào)的采集時(shí)段。
如圖6a和6b所示,當(dāng)該通信終端用作主機(jī)終端時(shí),所發(fā)送的起始信號(hào)僅包括一個(gè)時(shí)間寬度為t/2的數(shù)據(jù)位。當(dāng)該通信終端作為數(shù)據(jù)的發(fā)送方時(shí),數(shù)據(jù)信號(hào)的第一個(gè)數(shù)據(jù)位發(fā)送于起始信號(hào)的數(shù)據(jù)位的下降沿后的t/4時(shí)刻,且該數(shù)據(jù)信號(hào)的第一個(gè)數(shù)據(jù)位的時(shí)間寬度為3/4t。數(shù)據(jù)信號(hào)的第二個(gè)數(shù)據(jù)位至最后一個(gè)數(shù)據(jù)位以及停止信號(hào)的數(shù)據(jù)位的發(fā)送周期為t,中間并沒(méi)有間隔,且數(shù)據(jù)信號(hào)的第二個(gè)數(shù)據(jù)位至最后一個(gè)數(shù)據(jù)位中的每個(gè)數(shù)據(jù)位的時(shí)間寬度為t,停止信號(hào)的數(shù)據(jù)位的時(shí)間寬度也為t。當(dāng)通信終端作為數(shù)據(jù)的接收方時(shí),只需要在起始信號(hào)的數(shù)據(jù)位的下降沿后的t/2時(shí)刻,開(kāi)始采集數(shù)據(jù)信號(hào)以及停止信號(hào)的數(shù)據(jù)位,其中每個(gè)采集周期的時(shí)間寬度為t/2,每?jī)蓚€(gè)采集周期之間的間隔時(shí)間為t/2。然后當(dāng)該通信終端用作主機(jī)終端時(shí),在停止信號(hào)的數(shù)據(jù)位的下降沿后的t/2時(shí)刻,再向通信總線發(fā)送下一個(gè)時(shí)間寬度為t/2的起始信號(hào)的數(shù)據(jù)位,以開(kāi)始當(dāng)前數(shù)據(jù)的下一個(gè)字節(jié)的通信過(guò)程。由此可見(jiàn),當(dāng)采用兩個(gè)本發(fā)明實(shí)施例所提供的通信終端構(gòu)成單線雙向通信系統(tǒng)時(shí),若該兩個(gè)通信終端采用如圖6a或圖6b所示的虛擬時(shí)鐘原理,便可使得通信總線5上同一次通信過(guò)程的信號(hào)采集過(guò)程和信號(hào)發(fā)送過(guò)程同時(shí)結(jié)束。這樣相鄰的兩次通信過(guò)程不會(huì)互相影響,進(jìn)一步提高了該雙向通信過(guò)程的準(zhǔn)確性和效率。
圖7所示為本發(fā)明一實(shí)施例所提供的單線雙向通信系統(tǒng)的通信流程示意圖。該單線雙向通信系統(tǒng)中的兩個(gè)通信終端采用了如圖6a所示的虛擬時(shí)鐘原理,如圖7所示,該通信流程包括如下步驟:
步驟701:通信過(guò)程開(kāi)始前,通信總線5處于空閑狀態(tài),通信總線5處于低電平,通信總線5兩端的通信終端都保持對(duì)于通信總線5上的信號(hào)的采集狀態(tài)。
步驟702:主機(jī)終端向通信總線5發(fā)送一個(gè)時(shí)間寬度為t/2的高電平方波信號(hào),即起始位信號(hào)的數(shù)據(jù)位,然后作為數(shù)據(jù)信號(hào)的接收方,開(kāi)始通過(guò)輸入模塊2采集通信總線5上的信號(hào)。
步驟703:從機(jī)終端接收到該起始位信號(hào)的數(shù)據(jù)位后,作為信號(hào)發(fā)送方,在起始信號(hào)的數(shù)據(jù)位的下降沿后的t/4時(shí)刻發(fā)送數(shù)據(jù)信號(hào)的第一個(gè)數(shù)據(jù)位,該數(shù)據(jù)信號(hào)的第一個(gè)數(shù)據(jù)位的時(shí)間寬度為3/4t。
步驟704:主機(jī)終端在起始信號(hào)的數(shù)據(jù)位的下降沿后的t/2時(shí)刻,采集總線上的數(shù)據(jù)信號(hào)的第一個(gè)數(shù)據(jù)位。
步驟705:從機(jī)終端在數(shù)據(jù)信號(hào)的第一個(gè)數(shù)據(jù)位的下降沿時(shí)刻改變數(shù)據(jù),發(fā)送數(shù)據(jù)信號(hào)的第二個(gè)數(shù)據(jù)位。
步驟706:主機(jī)終端在數(shù)據(jù)信號(hào)的第二個(gè)數(shù)據(jù)位的上升沿時(shí)刻采集通信總線5上的數(shù)據(jù)信號(hào)的第二個(gè)數(shù)據(jù)位。
步驟707:重復(fù)步驟705至步驟706,一直到從機(jī)終端發(fā)送完數(shù)據(jù)信號(hào)的八個(gè)數(shù)據(jù)位時(shí),主機(jī)終端正好采集完數(shù)據(jù)信號(hào)的八個(gè)數(shù)據(jù)位。
步驟708:從機(jī)終端向通信總線5發(fā)送停止位數(shù)據(jù),然后開(kāi)始保持對(duì)于通信總線5上的信號(hào)的采集狀態(tài)。
步驟709:主機(jī)終端判斷接收到數(shù)據(jù)信號(hào)的八個(gè)數(shù)據(jù)位是否為有效應(yīng)答信號(hào)以及判斷停止信號(hào)的數(shù)據(jù)位的數(shù)據(jù)內(nèi)容是否為1。如果數(shù)據(jù)信號(hào)的八個(gè)數(shù)據(jù)位是有效應(yīng)答信號(hào)并且停止信號(hào)的數(shù)據(jù)位的數(shù)據(jù)內(nèi)容是1,則認(rèn)為從機(jī)終端在位,在第一時(shí)間間隔后(在本發(fā)明實(shí)施例中可為t/2),返回步驟702發(fā)送下一個(gè)起始位信號(hào)以啟動(dòng)下一字節(jié)的傳輸。如果數(shù)據(jù)信號(hào)的八個(gè)數(shù)據(jù)位是有效應(yīng)答信號(hào)并且停止信號(hào)的數(shù)據(jù)位的數(shù)據(jù)內(nèi)容是0,則當(dāng)前通信過(guò)程結(jié)束,返回步驟701以使通信總線5回歸空閑狀態(tài),并使通信總線5兩端的通信終端都保持對(duì)于通信總線5上的信號(hào)的采集狀態(tài)。
步驟710:如果數(shù)據(jù)信號(hào)的八個(gè)數(shù)據(jù)位不是有效應(yīng)答信號(hào),則主機(jī)終端判斷是否已經(jīng)發(fā)送了預(yù)設(shè)次數(shù)的起始信號(hào)。如果判斷的結(jié)果為是,則說(shuō)明在已經(jīng)發(fā)送了預(yù)設(shè)次數(shù)的起始信號(hào)后,始終沒(méi)有采集到有效應(yīng)答信號(hào),則當(dāng)前通信過(guò)程結(jié)束,返回步驟701以使通信總線5回歸空閑狀態(tài),并使通信總線5兩端的通信終端都保持對(duì)于通信總線5上的信號(hào)的采集狀態(tài)。
步驟711:如果步驟710的判斷的結(jié)果為否,則主機(jī)終端在第二時(shí)間間隔后再次發(fā)送起始信號(hào)(例如間隔10t再次發(fā)送起始信號(hào))。應(yīng)當(dāng)理解,該再次發(fā)送起始信號(hào)的第二時(shí)間間隔應(yīng)與發(fā)送下一個(gè)起始信號(hào)的第一時(shí)間間隔有所不同。該再次發(fā)送起始信號(hào)是為了進(jìn)一步確認(rèn)從機(jī)終端是否在線,而該返回步驟702所發(fā)送的下一個(gè)起始信號(hào)是為了開(kāi)始當(dāng)前數(shù)據(jù)傳輸?shù)南乱粋€(gè)通信過(guò)程。然后返回步驟703再次采集數(shù)據(jù)信號(hào)和停止信號(hào)。
應(yīng)當(dāng)理解,這里的有效應(yīng)答信號(hào)為主機(jī)終端作為數(shù)據(jù)接收方所明確希望得到的信號(hào)。例如,主機(jī)終端和從機(jī)終端在進(jìn)行第一次通信時(shí),主機(jī)終端就需要得到從機(jī)終端的準(zhǔn)確通信地址信息才能進(jìn)行后續(xù)的通信過(guò)程。然而,在主機(jī)終端僅需要接受數(shù)據(jù)信號(hào)而并不需要接受明確的有效應(yīng)答信號(hào)時(shí)(例如主機(jī)終端已經(jīng)知悉了從機(jī)終端的準(zhǔn)確地址,后續(xù)只需要接受來(lái)自從機(jī)終端的數(shù)據(jù)信號(hào)即可),就不再需要判斷該數(shù)據(jù)信號(hào)是不是有效應(yīng)答信號(hào)了,而直接根據(jù)停止信號(hào)的數(shù)據(jù)內(nèi)容來(lái)決定是否進(jìn)行后續(xù)的通信過(guò)程即可。此時(shí),當(dāng)主機(jī)終端通過(guò)高電平輸出控制模塊3向通信總線5發(fā)送起始信號(hào)之后,在預(yù)設(shè)的時(shí)間內(nèi)循環(huán)判斷通信總線5上是否存在數(shù)據(jù)傳輸即可,而不用專門(mén)判斷是否為有效應(yīng)答信號(hào),若在預(yù)設(shè)的時(shí)間內(nèi)循環(huán)判斷結(jié)果始終為是,則判斷為通信總線5處于空閑狀態(tài)。
應(yīng)當(dāng)理解,雖然在圖7所示的實(shí)施例中,主機(jī)終端作為了數(shù)據(jù)信號(hào)的接收方,從機(jī)終端作為了數(shù)據(jù)信號(hào)的發(fā)送方,但在本發(fā)明另一實(shí)施例中,主機(jī)終端也可作為數(shù)據(jù)信號(hào)的發(fā)送方,從機(jī)終端也可作為數(shù)據(jù)信號(hào)的接收方,此時(shí)該單線雙向通信系統(tǒng)中的兩個(gè)通信終端即可采用如圖6b所示的虛擬時(shí)鐘原理,在此不再贅述。
還應(yīng)當(dāng)理解,雖然高電平方波的“上升沿”和“下降沿”在實(shí)際的虛擬時(shí)鐘中會(huì)占據(jù)一定的時(shí)間寬度,但由于該“上升沿”和“下降沿”的時(shí)間寬度遠(yuǎn)低于數(shù)據(jù)位的時(shí)間寬度,因此在上面的描述中,為了更清楚的闡述技術(shù)方案,將“上升沿”和“下降沿”的時(shí)間寬度忽略不計(jì),并以“上升沿時(shí)刻”和“下降沿時(shí)刻”來(lái)表示每個(gè)數(shù)據(jù)位的高電平方波的開(kāi)始時(shí)刻和結(jié)束時(shí)刻。但該對(duì)于“上升沿”和“下降沿”的時(shí)間寬度的忽略并不能用于限制本發(fā)明的保護(hù)范圍。
應(yīng)當(dāng)理解,盡管在上文的詳細(xì)描述中提及了通信終端的若干模塊,但是這種劃分僅僅是示例性而非強(qiáng)制性的。實(shí)際上,根據(jù)本發(fā)明的示例性實(shí)施方式,上文描述的兩個(gè)或更多模塊的特征和功能可以在一個(gè)模塊中實(shí)現(xiàn),反之,上文描述的一個(gè)模塊的特征和功能可以進(jìn)一步劃分為由多個(gè)模塊來(lái)實(shí)現(xiàn)。此外,上文描述的某些模塊在某些應(yīng)用場(chǎng)景下可被省略。
圖8所示為本發(fā)明一實(shí)施例提供的一種單線雙向通信系統(tǒng)的結(jié)構(gòu)示意圖。如圖8所示,該單線雙向通信系統(tǒng),包括兩個(gè)如前任一實(shí)施例所述的通信終端和一個(gè)通信總線5,該兩個(gè)通信終端通過(guò)該一個(gè)通信總線5相互連接以實(shí)現(xiàn)雙向通信。
在本發(fā)明一實(shí)施例中,通信終端可以是微控制單元(mcu,microcontrollerunit),例如,上述兩個(gè)通信終端可以是雙mcu系統(tǒng)中的mcu。
本發(fā)明的實(shí)施例所提供的單線雙向通信系統(tǒng),通過(guò)一條通信總線便可有序地完成兩個(gè)通信終端之間的雙向通信過(guò)程,且通信過(guò)程所遵循的通信協(xié)議簡(jiǎn)單可靠。此外,不需要在通信總線上設(shè)置任何額外的上拉或下拉結(jié)構(gòu),簡(jiǎn)化了通信總線的結(jié)構(gòu)。
應(yīng)當(dāng)理解,為了不模糊本發(fā)明的實(shí)施方式,說(shuō)明書(shū)僅對(duì)一些關(guān)鍵、未必必要的技術(shù)和特征進(jìn)行了描述,而可能未對(duì)一些本領(lǐng)域技術(shù)人員能夠?qū)崿F(xiàn)的特征做出說(shuō)明。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。