
本發明涉及一種電子
技術領域:
,尤其涉及一種數據傳輸方法及裝置。
背景技術:
:隨著通信技術的發展和完善,生活和工作中對通信的使用已經相當普及,同時對通信中信號發送和接收的可靠性及傳輸效率提出了越來越高的要求。在現有的通信方式中,通信雙方一般均采用事先協商好的波特率進行數據交互,從而保證數據的正確傳輸。然而基于事先協商的波特率進行數據傳輸,通信雙方采用的通信波特率參數只能是某一固定數值,無法根據通信環境的不同而進行改變,且當通信雙方與其他終端進行數據交互時,由于與其他終端的通信波特率存在不兼容的可能性,會導致通信失敗。技術實現要素:本發明旨在解決上述問題。本發明的主要目的在于提供一種數據傳輸方法。本發明的另一目的在于提供一種數據傳輸裝置。為達到上述目的,本發明的技術方案具體是這樣實現的:方案1、一種數據傳輸方法,包括:獲取第一待發送數據的比特序列,其中,所述第一待發送數據的比特序列至少包括:待傳輸數據,所述待傳輸數據至少包括:本地支持的波特率參數;根據第一待發送數據的比特序列,獲取所述比特序列中的比特對應的波形序列,其中,以第一波形序列表示第一數據比特,以第二波形序列或第三波形序列表示第二數據比特,所述第一數據比特為比特1和比特0中的一個,所述第二數據比特為所述比特1和比特0中的另一個,在所述比特序列中有至少兩個連續比特為所述第二數據比特時,所述至少兩個連續比特中的第一個比特對應的波形序列為所述第二波形序列,第二個比特以及后續的比特對應的波形序列為所述第三波形序列;其中,所述波形序列的特征包括:所述第一波形序列的持續時間、所述第二波形序列的持續時間以及所述第三波形序列的持續時間相同,且所述第一波形序列以高電平開始并持續第一預設時間后跳變為低電平,所述第二波形序列在所述持續時間內持續高電平,所述第三波形序列以高電平開始并持續第二預設時間后跳變為低電平,其中,所述第一預設時間與所述第二預設時間的時長不同;按照當前使用的波特率,連續發送所述比特序列中的比特對應的波形序列,其中,所述波形序列的持續時間與所述當前使用的波特率成反比關系。方案2、根據方案1所述的方法,按照當前使用的波特率,連續發送所述比特序列中的比特對應的波形序列,包括:按照所述當前使用的波特率,控制發送端口的電平按照所述比特序列中的比特對應的波形序列的波形以及所述波形序列的特征進行變化,以發送所述第一待發送數據。方案3、根據方案1或2所述的方法,在獲取第一待發送數據的比特序列之前,所述方法還包括:檢測接收端口的電平變化;根據所述電平變化以及所述波形序列的特征確定連對端續傳輸的第一接收數據對應的n個波形序列,其中,n為正整數,所述第一接收數據對應的n個波形序列中的各個波形序列為以下之一:所述第一波形序列、所述第二波形序列和所述第三波形序列;根據所述連續傳輸的第一接收數據對應的n個波形序列確定所述第一接收數據的比特序列,所述第一接收數據的比特序列至少包括:第一傳輸數據,所述第一傳輸數據至少包括:用于指示獲取波特率參數的指示信息。方案4、根據方案1至3中任一項所述的方法,在所述根據第一待發送數據的比特序列,連續發送所述比特序列中的比特對應的波形序列之后,所述方法還包括:檢測接收端口的電平變化;根據所述電平變化以及所述波形序列的特征確定對端連續傳輸的第二接收數據對應的m個波形序列,其中,m為正整數且m≥2,所述第二接收數據對應的m個波形序列中的各個波形序列分別為以下之一:所述第一波形序列、所述第二波形序列和所述第三波形序列;根據所述連續傳輸的第二接收數據對應的m個波形序列確定所述第二接收數據的比特序列;解析所述第二接收數據,獲取所述對端從所述本地支持的波特率參數中選擇的波特率;獲取第二待發送數據的比特序列;按照所述選擇的波特率,發送所述第二待發送數據的比特序列對應的波形序列,其中,所述波形序列的持續時間與所述選擇的波特率成反比。方案5、根據方案4所述的方法,按照所述選擇的波特率,發送所述第二待發送數據的比特序列對應的波形序列,其中,所述波形序列的持續時間與所述選擇的波特率成反比,包括:按照所述選擇的波特率,控制發送端口的電平按照所述第二待發送數據的比特序列中的比特對應的波形序列的波形以及所述波形序列的特征進行變化,以發送所述第二待發送數據。方案6、根據方案1至5中任一項所述的方法,所述本地支持的波特率參數至少包括:接收數據的波特率和/或發送數據的波特率;其中:所述接收數據的波特率包括一個或多個;所述發送數據的波特率包括一個或多個。方案7、根據方案1至6中任一項所述的方法,所述第一波形序列中出現的低電平在所述持續時間內所占的總時長不隨傳輸所述波形序列的波特率的變化而變化;和/或,所述第三波形序列中出現的低電平在所述持續時間內所占的總時長不隨傳輸所述波形序列的波特率的變化而變化。方案8、根據方案1至7中任一項所述的方法,所述第一波形序列中出現的低電平在所述持續時間內所占的總時長小于所述持續時間的二分之一;和/或所述第三波形序列中出現的低電平在所述持續時間內所占的總時長小于所述持續時間的二分之一。方案9、根據方案1至8中任一項所述的方法,t1=a*t,其中,t1為所述第一預設時間,t為所述持續時間,a為預設的占空比系數,0<a<1;t2=b*t,其中,t2為所述第二預設時間,b為預設的占空比系數,0≤b<1;且,a≠b。方案10、根據方案1至9任一項所述的方法,所述第二預設時間等于0,且所述第三波形序列在所述持續時間內僅出現一次由低電平變為高電平的電平跳變,并以高電平結束;所述第一波形序列以高電平開始并在所述持續時間內僅出現一次由高電平變為低電平的電平跳變,并以低電平結束;或者,所述第一波形序列以高電平開始并在所述持續時間內僅一次由高電平變為低電平的電平跳變,并以高電平結束。方案11、根據方案1至10中任一項所述的方法,所述第一待發送數據的比特序列以及所述第二待發送數據的比特序列均包括一個數據幀,所述數據幀包括:數據幀頭、傳輸數據以及數據幀尾;所述數據幀頭至少包括1個比特,所述數據幀頭的第1個比特對應的波形序列為所述第三波形序列或者所述第一波形序列。方案12、根據方案1至10中任一項所述的方法,所述第一待發送數據的比特序列以及所述第二待發送數據的比特序列均包括一個數據幀,所述數據幀包括:數據幀頭、傳輸數據以及數據幀尾;所述數據幀頭至少包括m個比特,m為正整數且m≥2;其中,所述數據幀頭的前m個比特對應的波形序列由m個所述第一波形序列組成;或所述數據幀頭的前m個比特對應的波形序列由m個所述第三波形序列組成;或所述數據幀頭的前m個比特對應的波形序列包括至少一個所述第一波形序列和至少一個所述第三波形序列。方案13、根據方案12所述的方法,所述數據幀頭的前m個比特對應的波形序列由m個所述第一波形序列組成時,所述數據幀頭還包括:在所述數據幀頭的前m個比特之后的至少1個抗干擾比特,其中,所述至少1個抗干擾比特對應的波形序列為所述第二波形序列或所述第三波形序列;所述數據幀頭的前m個比特對應的波形序列由m個所述第三波形序列組成時,所述數據幀頭還包括:在所述數據幀頭的前m個比特之后的至少1個抗干擾比特,其中,所述至少1個抗干擾比特對應的波形序列為所述第二波形序列或所述第一波形序列。方案14、根據方案11至13中任一項所述的方法,所述數據幀頭包括8個比特,所述8個比特對應的波形序列依次為所述第三波形序列、所述第三波形序列、所述第三波形序列、所述第三波形序列、所述第二波形序列、所述第三波形序列、所述第二波形序列和所述第三波形序列。方案15、根據方案11至14中任一項所述的方法,所述數據幀尾包括2個比特,其中:所述數據幀尾的第一個比特對應的波形序列為所述第二波形序列,所述數據幀尾的第二個比特對應的波形序列為所述第二波形序列;或者,所述數據幀尾的第一個比特對應的波形序列為所述第三波形序列,所述數據幀尾的第二個比特對應的波形序列為所述第二波形序列;或者,所述數據幀尾的第一個比特對應的波形序列為所述第一波形序列,所述數據幀尾的第二個比特對應的波形序列為所述第三波形序列。方案16、一種數據傳輸裝置,包括:第一獲取模塊,用于獲取第一待發送數據的比特序列,其中,所述第一待發送數據的比特序列至少包括:待傳輸數據,所述待傳輸數據至少包括:本地支持的波特率參數;第二獲取模塊,用于根據第一待發送數據的比特序列,獲取所述比特序列中的比特對應的波形序列,其中,以第一波形序列表示第一數據比特,以第二波形序列或第三波形序列表示第二數據比特,所述第一數據比特為比特1和比特0中的一個,所述第二數據比特為所述比特1和比特0中的另一個,在所述比特序列中有至少兩個連續比特為所述第二數據比特時,所述至少兩個連續比特中的第一個比特對應的波形序列為所述第二波形序列,第二個比特以及后續的比特對應的波形序列為所述第三波形序列;其中,所述波形序列的特征包括:所述第一波形序列的持續時間、所述第二波形序列的持續時間以及所述第三波形序列的持續時間相同,且所述第一波形序列以高電平開始并持續第一預設時間后跳變為低電平,所述第二波形序列在所述持續時間內持續高電平,所述第三波形序列以高電平開始并持續第二預設時間后跳變為低電平,其中,所述第一預設時間與所述第二預設時間的時長不同;第一發送模塊,用于按照當前使用的波特率,連續發送所述比特序列中的比特對應的波形序列,其中,所述波形序列的持續時間與所述當前使用的波特率成反比關系。方案17、根據方案16所述的裝置,所述第一發送模塊用于按照以下方式連續發送所述比特序列中的比特對應的波形序列:按照所述當前使用的波特率,控制發送端口的電平按照所述比特序列中的比特對應的波形序列的波形以及所述波形序列的特征進行變化,以發送所述第一待發送數據。方案18、根據方案16或17所述的裝置,還包括:第一檢測模塊,用于在所述第一獲取模塊獲取第一待發送數據的比特序列之前,檢測接收端口的電平變化;第一確定模塊,用于根據所述電平變化以及所述波形序列的特征確定連對端續傳輸的第一接收數據對應的n個波形序列,其中,n為正整數,所述第一接收數據對應的n個波形序列中的各個波形序列為以下之一:所述第一波形序列、所述第二波形序列和所述第三波形序列;第二確定模塊,用于根據所述連續傳輸的第一接收數據對應的n個波形序列確定所述第一接收數據的比特序列,所述第一接收數據的比特序列至少包括:第一傳輸數據,所述第一傳輸數據至少包括:用于指示獲取波特率參數的指示信息。方案19、根據方案16至18中任一項所述的裝置,還包括:第二檢測模塊,用于在所述根據第一待發送數據的比特序列,連續發送所述比特序列中的比特對應的波形序列之后,檢測接收端口的電平變化;第三確定模塊,用于根據所述電平變化以及所述波形序列的特征確定對端連續傳輸的第二接收數據對應的m個波形序列,其中,m為正整數且m≥2,所述第二接收數據對應的m個波形序列中的各個波形序列分別為以下之一:所述第一波形序列、所述第二波形序列和所述第三波形序列;第四確定模塊,用于根據所述連續傳輸的第二接收數據對應的m個波形序列確定所述第二接收數據的比特序列;第三獲取模塊,用于解析所述第二接收數據,獲取所述對端從所述本地支持的波特率參數中選擇的波特率;第四獲取模塊,用于獲取第二待發送數據的比特序列;第二發送模塊,用于按照所述選擇的波特率,發送所述第二待發送數據的比特序列對應的波形序列,其中,所述波形序列的持續時間與所述選擇的波特率成反比。方案20、根據方案19所述的裝置,所述第二發送模塊按照以下方式發送所述第二待發送數據的比特序列對應的波形序列:按照所述選擇的波特率,控制發送端口的電平按照所述第二待發送數據的比特序列中的比特對應的波形序列的波形以及所述波形序列的特征進行變化,以發送所述第二待發送數據。由上述本發明提供的技術方案可以看出,本端在第一待發送數據的比特序列中向對端發送本地支持的波特率參數,從而使得本端與對端可以采用多種波特率進行數據交互,只需要在本端在待發送數據中包含本地支持的波特率參數,對端即可獲得本端所支持的波特率,進而選擇本端和對端都支持的波特率進行數據傳輸,提高了數據傳輸的成功率。附圖說明為了更清楚地說明本發明實施例的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域的普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他附圖。圖1為本發明實施例提供的一種數據傳輸方法的流程圖;圖2為本發明實施例提供的一種數據幀的幀格式示意圖;圖3為本發明實施例提供的三種第一波形序列的波形示意圖;圖4為本發明實施例提供的第二波形序列的波形示意圖;圖5為本發明實施例提供的三種第三波形序列的波形示意圖;圖6為本發明實施例提供的一種第一待發送數據的比特序列對應的波形序列的波形示意圖;圖7為本發明實施例提供的一種數據幀頭確定的示意圖;圖8為本發明實施例提供的另一種第一待發送數據的比特序列對應的波形示意圖;圖9為本發明實施例提供的一種數據傳輸裝置的結構示意圖。具體實施方式下面結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本發明的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明的保護范圍。在本發明的描述中,需要理解的是,術語“第一”、“第二”僅用于描述目的,而不能理解為指示或暗示相對重要性或數量或位置。下面將結合附圖對本發明實施例作進一步地詳細描述。實施例1本實施例提供一種數據傳輸方法,在本實施例中通信的兩個設備可以分為主設備和從設備,例如主設備可以為pc、手機等移動終端、讀卡器,從設備可以為usb、電子簽名設備(如工行u盾,農行key寶)、智能卡,在主設備與從設備電連接后,從設備可以從主設備取電,主設備在與從設備通信的同時,可以為從設備供電,在靜默態時,主設備與從設備連接的端口保持高電平,通過高電平主設備可以為從設備供電,主設備和從設備均可以通過控制該端口輸出的電平變化進行數據發送,并檢測該端口輸入的電平變化進行數據接收。在本實施例提供的方法中,可以在本端與對端傳輸數據之前,也可以在本端與對端傳輸數據過程中,通知對端本端所支持的波特率參數,以使得對端可以采用本端所支持的波特率進行數據傳輸,進而使得本端可以與對端進行通信,提高本端與對端通信的成功率。圖1為本實施例提供的數據傳輸方法的流程圖,如圖1所示,該方法主要包括以下步驟s101至步驟s103。步驟s101,獲取第一待發送數據的比特序列;在本實施例中,為了使對端獲取本端本地支持的波特率參數,第一待發送數據的比特序列至少包括待傳輸數據,所述待傳輸數據至少包括:本地支持的波特率參數。在本發明實施例的一個可選實施方案中,第一待發送數據的比特序列可以為編譯好的比特串,該比特串中攜帶有本地支持的波特率參數。在本發明實施例的一個可選實施方案中,第一待發送數據的比特序列可以為一個數據幀,該數據幀的幀格式可以采用如圖2所示的結構,一個數據幀可以依次包括:數據幀頭(startofframe,縮寫sof)、傳輸數據(byte0,byte1……byten-1,byten)(在第一待發送數據的比特序列對應的數據幀中,傳輸數據包括本端本地支持的波特率參數)和數據幀尾(endofframe,縮寫eof),其中,數據幀頭sof為通信雙方約定好的比特序列對應的波形序列,通過該數據幀頭,對端可以識別出當前開始接收一個數據幀,并能夠確定接收數據幀中待傳輸數據的起始位置(或時刻),此外,數據幀頭sof還可以指示本端傳輸數據的波特率,通過分析數據幀頭對端可以獲取本端傳輸數據的波特率,并采用該波特率解析接收數據;數據幀尾eof也是通信雙方約定好的波形序列,通過該數據幀尾,對端識別數據接收結束,該數據幀為eof的設置可以區分于正常的待傳輸數據以及數據幀頭對應的波形序列,以便于識別出數據幀尾eof。作為一種可選的實施方式,傳輸數據中的頭一個字節即byte0可以用來標識報文類型,例如,byte0為8比特,定義如下:bit7bit[6:4]bit[3:0]device_typerevpacket_type其中,device_type代表該報文發起方設備類型,例如,1代表主設備,0代表從設備,便于后續分析工具可區分報文是主設備發出還是從設備發出。rev為缺省數據,packet_type代表報文類型,例如0001b表示atr報文,atr報文可以為參數獲取報文,對端接收到該atr報文,也要返回相應的atr報文,并攜帶相應的參數;例如0010b表示ack響應報文,即表示數據接收成功的響應報文,例如,0011b表示nak報文,即表示設備未準備好(或數據接收失敗)的響應報文,例如,在數據接收錯誤,或者數據丟包等情況下,對端會向本端返回nak報文;例如,0100b表示pkt報文,即該報文就是正常的數據報文,由此,通過報文類型可以區分報文為指示信息還是正常的數據,對端在接收到相應類型的報文后,可以做出相應的響應。作為一種可選的實施方式,待傳輸數據中的最后兩個字節byten-1,byten可以作為crc冗余校驗位,可以利用該校驗位對接收數據幀的比特序列進行校驗,以便檢測或校驗接收的數據是否出現錯誤。在本實施例中,由于第一待發送數據傳輸的本地支持的波特率參數,因此,第一待發送數據的比特序列對應的數據幀中,packet_type的值為0001b,指示該數據幀為atr報文,對端可以根據該指示,從該數據幀中獲取本端本地支持的波特率參數。在本實施例中,本端與對端之間通過波形序列來傳輸數據,本端本地支持的波特率參數用于指示本端在傳輸數據(包括接收和發送數據)時,傳輸數據使用的波形序列所支持的波特率。下面對本實施例中的波形序列進行說明。在本實施例中,以第一波形序列表示第一數據比特,以第二波形序列或第三波形序列表示第二數據比特,所述第一數據比特為比特1和比特0中的一個,所述第二數據比特為所述比特1和比特0中的另一個。在本實施例中,第一波形序列、第二波形序列、和第三波形序列具體以下特征:第一波形序列、第二波形序列以及第三波形序列的持續時間相同,且第一波形序列以高電平開始并持續第一預設時間后跳變為低電平,第二波形序列在持續時間內持續高電平,第三波形序列以高電平開始并持續第二預設時間后跳變為低電平,其中,第一預設時間與第二預設時間的時長不同,以此可以區分第一波形序列與第三波形序列。在本實施例中,不同的波形序列的持續時間相同,即均以t來傳輸一個比特,相比與現有技術中需要用不同的時間間隔來傳輸一個比特值的方式,本實施例傳輸一個比特所需的時間更短,因此,編碼效率更高,降低了本端和對端的成本及負擔。在本發明實施例的一個可選實施方案中,為了進一步提高本端或對端的取電效率,第一波形序列還可以具有以下特征:第一波形序列中出現的低電平在所述持續時間內所占的總時長小于所述持續時間的二分之一;和/或,第三波形序列還可以具有以下特征:所述第三波形序列中出現的低電平在所述持續時間內所占的總時長小于所述持續時間的二分之一。即在該可選實施方式中,在一個持續時間內,第一波形序列和/或第三波形序列中低電平所占用的總時長不超過一個持續時間的二分之一,從而保證了在數據傳輸過程中,本端與對端之間高電平維持的時間,使得本端或對端可以長時間的從另一端獲得電能,提高了供電效率。在本實施例中,第一預設時間與傳輸持續時間可以有一定的比例關系,也可以是雙方協商預設的固定時長,例如固定為10ns,第二預設時間與傳輸持續時間可以有一定的比例關系,也可以是雙方協商預設的固定時長,例如固定為20ns,只要第一預設時間與第二預設時間的不同的,能夠區分出第一波形序列和第三波形序列即可。作為一種可選的實施方式,第一預設時間t1和第二預設時間t2可以滿足以下預設關系:t1=a*t,t2=b*t,其中,t為傳輸持續時間,a為預設的占空比系數,b為預設的占空比系數,0<a<1;0≤b<1;且a≠b。其中,作為一種可選的方式,b可以等于0,即t2等于0,第三波形序列以低電平起始,從而與以高電平起始的第一波形序列形成較大的區別,更有利于波形序列的發送和接收時的識別。在本實施例中,第一波形序列和第三波形序列中可以出現一次下降沿電平跳變(或上升沿電平跳變)或多次下降沿電平跳變(或上升沿電平跳變),在本實施例中,由于在靜默態主從設備之間的一個端口的電平持續為高電平,通過硬件開關或軟件等控制該端口的高電平變為低電平作為一次下降沿的跳變,然后控制該端口恢復為高電平則形成一次上升沿的跳變,作為一種可選的實施方式,第三波形序列在傳輸持續時間內僅出現一次由高電平變為低電平的跳變和一次由低電平變為高電平的電平跳變,并以高電平結束,當然,在b=0時,第三波形序列中僅出現一次由低電平變為高電平的跳變;第一波形序列以高電平開始并在傳輸持續時間內僅出現一次由高電平變為低電平的電平跳變,并以低電平結束;或者,第一波形序列以高電平開始并在傳輸持續時間內僅出現一次由高電平變為低電平的電平跳變,并以高電平結束。相比于一個波形序列中包括多次下降沿跳變或多次上升沿跳變的情況,一個波形序列中僅存在一次下降沿電平跳變(或上升沿電平跳變)可以減少控制端的操作復雜性,無需控制發送端口的電平進行多次跳變才能傳輸一個比特,提高數據傳輸的效率。下面對本實施例中的3種波形序列給出示例性的說明。圖3給出了三種第一波形序列的示意圖,圖4給出了第二波形序列的示意圖,圖5給出了幾種第三波形序列的示意圖。其中,如圖3所示,第一波形序列以高電平開始并持續第一預設時間后跳變為低電平,例如,如圖3中(a)所示,第一波形序列的傳輸持續時間為40ns,高電平持續第一預設時間為10ns,占第一波形序列的持續時間的1/4。在實際應用中,主從設備一直處于連接狀態中,主設備在默認狀態輸出高電平,持續為從設備供電,當主設備需要發送數據時,會通過自身的通斷開關產生低電平,通過高低電平形成不同的波形序列,以傳輸相應的比特數據,當主設備輸出低電平時,主設備則不能為從設備供電。因此,為了盡可能高效地為從設備供電,優選地,第一波形序列中出現的低電平在傳輸持續時間內所占的總時長可以小于傳輸持續時間的二分之一;由此,在傳輸的數據中高電平的出現時間越長則供電效率越高。如圖3中的(b)所示,第一波形序列的持續時間為40ns,高電平持續第一預設時間為30ns,占第一波形序列的傳輸持續時間的3/4,以此第一波形序列傳輸數據供電效率比較高。因此,圖3中的(b)中的第一波形序列傳輸數據供電效率要比圖3(a)中的高。此外,第一波形序列的波形還可以如圖3中的(c)所示,以高電平結束。圖4所示的第二波形序列為在持續時間內一直為高電平,由此,又可以提高供電效率。第三波形序列以高電平開始并持續第二預設時間跳變為低電平,例如,如圖5中(a)所示,第三波形序列的傳輸持續時間為60ns,高電平持續第二預設時間為20ns,低電平的持續時間為40ns,低電平的持續時長占第三波形序列的傳輸持續時間的2/3。此外,第三波形序列的波形還可以如圖5中(b)所示,以高電平結束。為了提高供電效率,優選地,所述第三波形序列中出現的低電平在傳輸持續時間內所占的總時長可以小于傳輸持續時間的二分之一,如圖5中(c)所示,第三波形序列的傳輸持續時間為100ns,高電平持續第二預設時間為0ns,即可以理解為第三波形序列以低電平開始,低電平的持續時間為40ns,占第三波形序列的傳輸持續時間的2/5,因此,圖5中(b)中的第三波形序列傳輸數據供電效率要比圖5中(a)中的高。在本實施例中,在一次傳輸過程中,第一波形序列和第三波形序列中出現的低電平的持續時長可以是一個固定時長,也可以是一個與波特率沒有關系的可變時長。例如,假設第一待發送數據的比特序列(11110000)對應的8個波形序列依次為xxxxyzzz(其中,x表示第一波形序列,y表示第二波形序列,z表示第三波形序列),圖6為該比特序列對應的波形序列的波形示意圖,如圖6所示,第一波形序列a的第一預設時長t1不變,但低電平可以變化,雖然第一波形序列x的波形可以發生變化,但只要符合波形序列的特征,就可以識別出第一波形序列x,第三波形序列z同理,此處不再贅述,由此可見,本實施例中波形序列的波形可變,則本端發送波形序列和對端識別波形序列可以更靈活。其中,作為一種可選的實施方式,第一波形序列中出現的低電平在傳輸持續時間內所占的總時長不隨傳輸波形序列的波特率的變化而變化;和/或,第三波形序列中出現的低電平在傳輸持續時間內所占的總時長不隨傳輸波形序列的波特率的變化而變化。例如,第一波形序列以及第三波形序列中低電平的持續時長可以預設為一個固定時長,由于主從設備傳輸數據幀的波特率可以改變,這樣低電平占傳輸持續時間的占空比就是變化的,而不是一個固定比例。例如,低電平的持續時間固定為10ns,當主設備以50mbs的波特率,即傳輸持續時間為20ns進行波形序列的傳輸時,低電平的持續時間占傳輸持續時間的50%,即從設備的取電效率為50%;當主設備以25mbs的波特率,即傳輸持續時間為40ns進行波形序列的傳輸時,低電平的持續時間占傳輸持續時間的25%,即從設備的取電效率為75%,由此可見,低電平的時長固定時,低電平在傳輸持續時間內所占的總時長與波特率沒有線性關系,即不隨傳輸波形序列的波特率的變化而變化,由此,可以根據實際情況選擇波特率,使得主從設備的接口保持高電平的時間盡可能的長,從而進一步提高兩線通信中的供電效率。本實施例中,第一波形序列、第二波形序列和第三波形序列的持續時間由本端當前使用的波特率決定,因此,在本實施例中,根據本地支持的波特率參數可以確定本端所能解析的波形序列的持續時間以及本端所發送的波形序列可以使用的持續時間。在本發明實施例的一個可選實施方案中,所述本地支持的波特率參數至少包括:接收數據的波特率和/或發送數據的波特率;其中,所述接收數據的波特率包括一個或多個;所述發送數據的波特率包括一個或多個。其中,接收數據的波特率用于指示本端可以解析的接收數據的波形序列的波特率,發送數據的波特率用于指示本端所發送的波形序列可以使用的波特率,對端根據本端的發送數據的波特率,可以對本端發送的波形序列進行解析。在本實施例中,接收數據的波特率和發送數據的波特率均可以包括多個,對端在接收到之后,可以根據所述本端所支持的波特率參數,選擇同時適合本端和對端的波特率,實現波特率自適應。在本實施例中,本端可以主動向對端發送本地支持的波特率參數,或者,也可以是在接收到對端的請求之后,向對端發送本地支持的波特率參數。因此,在本實施例的一個可選實施方式中,在步驟s101之前,該方法還可以包括:檢測接收端口的電平變化;根據所述電平變化以及所述波形序列的特征確定連續傳輸的第一接收數據對應的n個波形序列,其中,n為正整數,所述第一接收數據對應的n個波形序列中的各個波形序列為以下之一:所述第一波形序列、所述第二波形序列和所述第三波形序列;根據所述連續傳輸的第一接收數據對應的n個波形序列確定所述第一接收數據的比特序列,所述第一接收數據的比特序列至少包括:第一傳輸數據,所述第一傳輸數據至少包括:用于指示獲取波特率參數的指示信息。通過該可選實施方式,本端可以在接收到對端發送的用于指示獲取波特率參數的指示信息之后,再獲取所述第一待發送數據。在上述可選實施方式中,本端可能知曉對端發送第一接收數據的比特序列對應的波形序列采用的波特率,例如,對端使用預先預定的波特率發送,在這種情況下,本端可以根據對端使用的波特率以及檢測到的電平變化,確定連續傳輸的第一接收數據對應的n個波形序列。在上述可選實施方式中,可選地,本端可能事先并不知曉對端發送第一接收數據的比特序列對應的波形序列采用的波特率,在這種情況下,本端可以根據預先設置好的數據幀頭中包含的波形序列以及檢測到的電平變化,從第一接收數據的比特序列的數據幀頭中解析出第一接收數據的比特序列對應的波形序列的持續時間,進而得到對端發送第一接收數據的比特序列對應的波形序列采用的波特率,然后根據得到的波特率,對數據幀的傳輸數據部分進行解析,進而得到所述第一傳輸數據。在本發明實施例的一個可選實施方案中,本端與對端之間傳輸的數據幀的數據幀頭至少包括1個比特,數據幀頭的第1個比特對應的波形序列為所述第三波形序列或者所述第一波形序列,本端與對端協商以第一波形序列或第三波形序列作為數據幀頭,則在檢測到的接收端口的電平變化形成上述數據幀頭對應的波形序列時,可以確定當前接收到的波形序列為數據幀頭,該數據幀頭后緊接著的波形序列為傳輸數據的波形序列的起始位置。采用這種實施方式中在通信雙方以預先協商的波特率進行數據傳輸的情況下,可以通過上述波形序列識別出數據幀頭。在本發明實施例的另一個可選實施方案中,本端與對端之間傳輸的數據幀的數據幀頭可以至少包括m個比特,數據幀頭的前m個比特對應的波形序由m個第一波形序列組成;或者,數據幀頭的前m個比特對應的波形序列由m個第三波形序列組成,m為正整數且m≥2;或者,數據幀頭的前m個比特對應的波形序列由至少一個第一波形序列和至少一個第三波形序列組成。相比于前一種可選實施方式,該可選實施方式還可以通過數據幀頭的前m個比特對應的波形序列確定出一個波形序列的預設持續時間,即確定發送方發送數據的波特率,并可以利用該波特率進行數據的接收和發送,實現波特率自適應。進一步地,本端與對端之間傳輸的數據幀的數據幀頭的前幾個比特對應的波形序列為連續相同的波形序列時,為了避免單頻干擾,還可以在連續相同的波形序列的后面(只要在后面就可以,比如緊接著連續相同的波形序列后面,或者隔幾個波形序列之后均可)約定至少1個與所述相同的波形序列不同的波形序列,即抗干擾比特對應的波形序列,例如,數據幀頭的前m個比特對應的波形序列由m個第一波形序列組成時,數據幀頭還包括:在數據幀頭的前m個比特之后的至少1個抗干擾比特,其中,所述至少1個抗干擾比特為第二波形序列或第三波形序列,例如,該數據幀頭對應的波形序列可以為xxxxyzyz,其中,x為第一波形序列,y為第二波形序列,z為第三波形序列;或者,數據幀頭的前m個比特對應的波形序列由m個所述第三波形序列組成時,數據幀頭還包括:在數據幀頭的前m個比特之后的至少1個抗干擾比特,其中,所述至少1個抗干擾比特中至少有一個比特對應的波形序列為第一波形序列或第二波形序列,例如,該數據幀頭對應的波形序列可以為zzzzxyzz。采用這種數據幀頭結構,可以防止單頻干擾,單頻干擾可以理解為以相同周期產生的脈沖序列,因此,如果數據幀頭由連續幾個相同的波形序列組成,比如,連續4個z,而單頻干擾的頻率恰好與波特率相同,即本端通過電平變化識別出與該數據幀頭相同的波形序列,此時,本端會將該單頻干擾識別為數據幀頭,出現錯誤識別的情況,而通過第三種實施方式中的數據幀頭中在連續相同的多個波形序列之后出現的不同的波形序列,使得數據幀頭存在不同的時間間隔,即不會出現與單頻干擾相同的波形序列,由此通過該實施方式中的數據幀頭可以防單頻干擾。在本實施例中,可以通過對上述幾種實施方式中提到的數據幀頭進行解析得到一個波形序列的預設持續時間,以該預設持續時間作為每個波形序列的傳輸持續時間,根據電平變化以及波形序列特征確定接收數據中的傳輸數據以及數據幀為對應的波形序列。以下給出如何檢測接收端口的電平變化并根據電平變化確定n個波形序列的具體實現方式,本實施例包括但不限于以下情況:在一個可選的實施方式中,檢測接收端口的電平變化,包括:持續檢測到接收端口的s個電平跳變;在檢測到接收端口的s個電平跳變之后,繼續檢測接收端口的q個電平跳變,其中s個電平跳變和q個電平跳變均為從高電平跳變為低電平,s、q均為正整數,且s>1,q>1。根據電平變化以及波形序列的特征確定連續傳輸的n個波形序列,包括:獲取數據幀頭預設的s個電平跳變形成的l個波形序列,其中,l為正整數且1<l<n;根據l個波形序列的特征以及檢測到的s個電平跳變中的任意兩個電平跳變之間的時間間隔計算一個波形序列的持續時間;以該計算得到的持續時間作為每個波形序列的持續時間,根據q個電平跳變以及波形序列的特征確定傳輸數據以及數據幀尾對應的波形序列。在本實施方式中,數據發送方和數據接收方預先約定數據幀頭為l個比特的波形序列,該l個比特的波形序列對應s個電平跳變,數據接收方在持續檢測接收端口的電平變化的過程中,可以將檢測到的s個電平跳變默認為對應數據幀頭的s個跳變,而在s個跳變之后檢測到電平變化(即檢測到的q個跳變)則用于確定數據幀中的傳輸數據和數據幀尾對應的波形序列。當然,在需要的時候,也可以判斷根據檢測到的s個電平跳變所形成的l個的波形序列是否與預設的數據幀頭的l個比特波形序列對應,從而確定該s個電平跳變是否是數據幀頭。數據接收方根據前述的方法接收到數據幀頭后,根據數據幀頭確定一個波形的持續時間t,再在每t時長內是否發生電平跳變以及每個電平跳變的特征,確定出q個電平跳變對應的波形序列,從而確定整個n個波形序列。具體來說,根據前述對待發送數據中格式的描述可以確定,本端在對端發送的第一接收數據時,是先接收到幾個比特的數據幀頭之后,再接收后續的傳輸數據以及數據幀尾信息,而數據幀頭中攜帶了一些參數信息,例如,本端和對端預先約定l個波形序列作為數據幀頭,因此,本端可以從對端獲取或者從自身存儲器中獲取到l個波形序列的特征,即數據幀頭中的波形序列的特征是本端已知的。而根據前文的波形序列的特征可以知道,第一波形序列x以高電平開始,且其在波形的持續時間內經歷一次電平跳變且跳變的時間為t1(t1為從每一個波形開始的時間到發生跳變的時間,t1>0);第二波形序列為持續的高電平,其在波形的持續時間內不經歷電平跳變;第三波形序列為以低電平開始,由于本端和對端默認狀態是高電平,因此第三波形序列可以認為其在波形的最開始(可以認為是0時刻)經歷一次電平跳變。例如,如圖7中的(a)所示,當預先約定的數據幀頭的l個波形序列為4bit的序列“xzzz”時,則可以認為數據幀頭需要經歷4次下降沿的電平跳變(x和z均有一次下降沿跳變),在圖7中的(a)中當檢測到4次下降沿跳變時,則認為數據幀頭接收完畢。即該4次跳變對應的即為數據幀頭。接下來需要根據檢測到的s個跳變和l個波形序列的特征計算出數據幀頭中攜帶的持續時間等信息。仍然以前例來詳細說明,如圖7中的(b)所示,雙方已經約定l位的數據幀頭格式為4bit的序列“xzzz”,如果在數據傳輸中沒有發生錯誤,則本端接收到的s個跳變應當為4個下降沿跳變。本端已知數據幀頭數據中的第1個波形序列為第一波形序列x,且第一波形序列x的跳變時間為t1=a*t,其中,a為預設的高電平占空比系數,第2個波形序列為第三波形序列z,且第三波形序列z的跳變時間為0。本端可以在接收端口檢測到第1次和第2次電平跳變之間(電平跳變僅指由高電平到低電平的電平跳變)的時間間隔τ,本端檢測到的時間間隔τ與持續時間t應滿足τ=(t-t1),即τ=(t-a*t)。由此,本端可以根據數據幀頭序列的波形特征以及l個電平跳變中的任意兩個電平跳變之間的時間間隔(即τ)計算一個波形序列的持續時間t,從而本端通過數據幀頭數據即可確定對端發送數據所采用的波特率(即1/t)。圖7中的(a)和圖7中的(b)中第一波形序列x以高電平結束,第三波形序列z以高電平結束時。如果第一波形序列和/或第三波形序列以低電平結束時也同樣可以獲得,在此不再贅敘由于在數據幀頭的結束位置即是傳輸數據的開始位置,在確定了每個波形的持續時間t后,就可以從數據幀頭的結束位置開始解析傳輸數據。當本端根據檢測電平由高電平到低電平的電平跳變來確定波形類型時,根據前面已知的波形特征,在每一段持續時間t內,當檢測到出現一次下降沿電平跳變且跳變的時間為t1時,則可以判定其為一個第一波形序列x;當檢測到某一個波形序列在持續時間的一開始就發生下降沿電平跳變的,則可以判定其為一個第三波形序列z;當檢測到某一個模型序列在波形的持續時間內不發生下降沿電平跳變時,則可以判定其為一個第二波形序列y。在圖7中的(b)中可以看到,在數據幀頭“xzzz”之后的數據即為確定出的傳輸數據和數據幀尾,從解析的結果可以看出,在數據幀頭“xzzz”之后的波形序列依次為“xyxxyzzxyy”,如圖7中的(c)所示,而一旦出現“yy”則可以認為其為數據幀尾,可見真正的傳輸數據為“xyxxyzzx”,如果是以x表示1、以y或z表示0的場合,則該傳輸數據為最終解析為“10110001”,如圖7中的(d)所示。因此,在確定完每個波形序列的持續時間后,利用上述方法可以確定出q個電平跳變所代表的傳輸數據和數據幀尾對應的波形序列,而前文中已經確定了數據幀頭的l個波形序列,至此可以確定出電平變化的連續的n個波形序列,從而最終解析出傳輸的數據。在本實施方式的確定電平變化時,可以采樣獲得完整的電平變化的規律,從而獲得s個電平跳變,也可以僅設置監測電平變化的電路來監測電平的跳變,即,只要能夠獲得對應于數據幀頭的s個跳變均可,本發明并不局限于哪種方式。如果利用采樣的方式獲得s個電平跳變,則不僅可以獲得電平發生跳變的特征,還可以獲得完整的電平變化對應的波形,從而無需考慮各類波形序列的特征,可以適用在任何類型的波形序列中,均可以成功解析出波形序列。如果利用監測電平跳變的方式,則無需對電平進行采樣,避免了長時間采樣來還原整體波形,只需要根據電平跳變的特征就可以確定出n個波形序列,減少了解析的復雜程度。在本實施方式中,采樣可以利用采樣電路來實現接收端口的電平檢測,根據需要采樣的目標的不同,可以采用相匹配的采樣頻率。在本實施方式中,電平跳變監測可以采用比較器、差分放大器等器件來實現,當然,任何可以實現監測電平跳變的軟硬件實現,均應是本發明所保護的范圍。作為一種可選的實施方式,本實施例中,本端與對端可以預先約定傳輸數據的數據幀的數據幀尾對應的波形序列。可選地,數據幀尾可以包括2個比特,對應的波形序列包括以下3種方式之一:數據幀尾的第一個比特對應的波形序列為第二波形序列,數據幀尾的第二個比特對應的波形序列為第二波形序列;或者,數據幀尾的第一個比特對應的波形序列為第三波形序列,數據幀尾的第二個比特對應的波形序列為第二波形序列;或者,數據幀尾的第一個比特對應的波形序列為第一波形序列,數據幀尾的第二個比特對應的波形序列為第三波形序列。在本實施例中,當根據電平變化以及波形序列的特征確定的波形序列為上述預設的數據幀尾對應的波形序列,則說明數據接收結束。本實施例中,數據幀頭和數據幀尾對應的波形序列是通信協議預先約定好的,一般來說,約定數據幀頭和數據幀尾不出現同樣的波形序列,這樣更容易將數據幀頭和數據幀尾進行識別和區別,如果約定的數據幀頭中的波形序列包含了數據幀尾中的2個波形序列,那么可以通過一些策略區分數據幀頭和數據幀為,例如,數據幀頭可以約定為8比特,即由8個波形序列組成,而數據幀尾由2個波形序列組成,以此作為兩者的區別,由于靜默態接收端口的電平一直為高電平,在接收端口檢測到第一個下降沿跳變時,開始接收數據幀頭,連續檢測到8個預設的數據幀頭對應的波形序列,則數據幀頭接收結束,總之可以區分數據幀頭和數據幀為即可,因此,本實施例對數據幀頭和數據幀尾對應的波形序列并不做具體限制。步驟s102,根據第一待發送數據的比特序列,獲取所述比特序列中的比特對應的波形序列。在本實施例中,進行數據傳輸的本端與對端可提前協商用于表示比特1和比特0的波形序列類型,或者,本端與對端在出廠之前預先設置存儲用于表示比特1和比特0的波形序列類型,例如,第一波形序列表示比特1,第二波形序列和第三波形序列均能夠表示比特0,此時對于數據本端而言,當需要外發數據比特1時,本端產生第一波形序列,當需要外發數據比特0時,本端根據需要產生第二波形序列或第三波形序列;同樣的,當第一波形序列表示比特0時,第二波形序列和第三波形序列均能夠表示比特1,此時對于本端而言,當需要外發數據比特1時,本端根據需要產生第二波形序列或第三波形序列,當需要外發數據比特0時,本端產生第一波形序列;通過不同的波形序列表示比特0和比特1,能夠實現通信雙方的正常數據收發,保證數據交互的正確性;在本實施例中,第一波形序列、第二波形序列、第三波形序列分別為三種波形不同的脈沖波,且第一波形序列、第二波形序列、第三波形序列三種波形的單個脈沖持續時間相同,也就是說,三種波形序列的單個脈沖從脈沖開始至脈沖結束所持續的時間相同;三種波形序列的單個脈沖從脈沖開始至脈沖結束所持續的時間均為t。在本實施例中,第一波形序列的波形可以有多種形式,以持續第一預設時間的高電平開始,并在單個脈沖持續時間內出現低電平的波形脈沖均能夠作為本實施例中的第一波形序列;第二波形序列在所述持續時間內持續高電平,即第二波形序列在單個脈沖持續時間內始終保持高電平;第三波形序列的波形同樣可以有多種形式,以持續第二預設時間的高電平開始,并在單個脈沖持續時間內出現低電平的波形脈沖均能夠作為本實施例中的第三波形序列;其中,所述第一預設時間與所述第二預設時間的時長不同,第一預設時間和第二預設時間可預先存儲于通信終端內部,也可在通信過程中由通信雙方協商生成,第一預設時間與所述第二預設時間的時長不同從而保證通信雙方能夠正常識別第一波形序列和第二波形序列;此外,由于第一波形序列和第三波形序列中均包含有高電平,第二波形序列為高電平信號,而高電平能夠對通信從屬設備進行供電操作,這就實現了通信終端在進行數據通信的過程中進行取電操作。在步驟s102中,本端獲取并分析第一待發送數據,并根據第一待發送數據中的比特1、比特0與第一波形序列、第二波形序列、第三波形序列的對應關系,獲取第一待發送數據的比特序列相應的波形序列。其中,在所述比特序列中有至少兩個連續比特為所述第二數據比特時,所述至少兩個連續比特中的第一個比特對應的波形序列為所述第二波形序列,第二個比特以及后續的比特對應的波形序列為所述第三波形序列;也就是說,當第一待發送數據的比特序列中有a(a≥2)個連續的第二數據比特時,僅第一個第二數據比特用第二波形序列表示,之后的a-1個第二數據比特均用第三波形序列進行表示,從而避免當需要連續傳輸第二數據比特時,本端持續輸出第二波形序列,即本端持續輸出高電平信號,導致對端無法區分接收到的是第二數據比特還是無數據傳輸時的持續高電平的情況。步驟s103,按照當前使用的波特率,連續發送所述比特序列中的比特對應的波形序列,其中,所述波形序列的持續時間與所述當前使用的波特率成反比關系。在本實施例中,本端當前使用的波特率可以為本端默認的波特率,或者,在本端在接收到對端發送的用于指示獲取波特率參數的指示信息的情況下,本端當前使用的波特率可以是對端發送用于指示獲取波特率參數的指示信息的波特率,這樣可以保證本端當前使用的波特率為對端所支持的波特率,方便對端解析本端發送的數據。在本實施例的一個可選實施方式中,在執行步驟s103發送所述述第一待發送數據的比特序列中的比特對應的波形序列時,本端按照所述當前使用的波特率,控制發送端口的電平按照第一待發送數據的比特序列中的比特對應的波形序列以及波形序列的特征進行變化,以發送第一待發送數據。例如,通信協議約定:比特“1”用第一波形序列表示,則比特“0”用第二波形序列和第三波形序列表示,本實施例中,第一待發送數據的比特序列中的每個比特對應的波形序列是確定的,例如,本端通過控制發送端口產生高低電平,即,通過硬件開關或軟件等控制該端口的高電平變為低電平作為一次下降沿的跳變,然后控制該端口恢復為高電平則形成一次上升沿的跳變。波形序列是通過發送端口產生的高低電平的變化得到的,由此,就可以產生每個比特對應的波形序列,進而形成一個數據幀對應的波形序列。例如,第一待發送數據的比特序列為11001000,那么按照通信協議約定,第一待發送數據的比特序列對應的8個波形序列依次為xxyzxyzz,其中,x為第一波形序列,y為第二波形序列,z為第三波形序列,根據各個波形序列的上述波形序列的特征,即第一波形序列、第二波形序列以及第三波形序列的傳輸持續時間相同且與所述當前使用的波特率呈反比,如均為t,第一預設時間為t1,第二預設時間t2,那么,第一待發送數據的比特序列11001000對應的8個波形序列可以如圖8所示。在發送第一待發送數據的比特序列的每個比特時,在相應時刻控制發送端口的電平發生跳變,以形成該比特對應的波形序列,進而形成一個數據幀的比特序列對應的波形序列,傳輸第一待發送數據的比特序列。在本發明實施例的一個可選實施方案中,在執行步驟s103之后,對端接收到本端發送的所述本地支持的波特率參數,則對端可以根據本端的所述本地支持的波特率參數,選擇后續與本端進行通信的波特率,可選地,對端可以根據所述本地支持的波特率參數,選擇所述本端支持的最大波特率,并將選擇的波特率返回給本端,從而可以提高傳輸速率。在具體應用中,對端發送選擇的波特率時,可以采用選擇的所述波特率進行傳輸,也可以采用本端向所述對端發送所述本地支持的波特率參數時所使用的波特率參數,或者,也可以采用對端當前使用的波特率進行傳輸。因此,在本發明實施例的一個可選實施方案中,在步驟s103之后,該方法還可以包括:檢測接收端口的電平變化;根據所述電平變化以及所述波形序列的特征確定對端連續傳輸的第二接收數據對應的m個波形序列,其中,m為正整數且m≥2,所述第二接收數據對應的m個波形序列中的各個波形序列分別為以下之一:所述第一波形序列、所述第二波形序列和所述第三波形序列;根據所述連續傳輸的第二接收數據對應的m個波形序列確定所述第二接收數據的比特序列;解析所述第二接收數據,獲取所述對端從所述本地支持的波特率參數中選擇的波特率;獲取第二待發送數據的比特序列;按照所述選擇的波特率,發送所述第二待發送數據的比特序列對應的波形序列,其中,所述波形序列的持續時間與所述選擇的波特率成反比。在上述實施方式中,本端根據接收端口的電平變化及波形序列的特征確定對端連續傳輸的第二接收數據對應的m個波形序列,并解析得到第二接收數據的方式與前面所述的確定第一接收數據對應的n個波形序列,并解析得到第一接收數據的方式相似,在此不再贅述。在上述實施方式中,本端在接收到第二接收數據之后,獲得到對端選擇的波特率,則在發送第二待發送數據時,本端按照所述選擇的波特率發送第二待發送數據,從而實現了本端與對端之間的波特率自適應。在上述實施方式中,第二待發送數據為本端需要向對端傳輸的數據,在具體傳輸過程中,本端可以將第二待發送數據以上述數據幀的結構發送,第二待發送數據的具體內容本實施例不作限定。在本實施例提供的方案中,為保證對端在后續數據傳輸過程中采用本端支持的波特率進行數據交互,本端在第一待發送數據的比特序列中向對端發送本地支持的波特率參數,從而使得本端與對端可以采用多種波特率進行數據交互,只需要在本端在待發送數據中包含本地支持的波特率參數,即可實現數據傳輸過程中波特率的跳變,通過本方案,能夠實現通信雙方根據不同的數據發送場景,對波特率進行調整,以滿足不同通信場景下的數據傳輸需要。實施例2本實施例提供了一種數據傳輸裝置,該數據傳輸裝置可以設置在實施例1所述的本端中,用于執行實施例1所述的數據傳輸方法。圖9為本實施例提供的數據傳輸裝置的結構示意圖,如圖9所示,該數據傳輸裝置主要包括:第一獲取模塊900、第二獲取模塊902和第一發送模塊904。下面主要對本實施例提供的數據傳輸裝置的各個功能模塊的功能進行描述,其它未盡事宜可以參考實施例1的描述。第一獲取模塊900,用于獲取第一待發送數據的比特序列,其中,所述第一待發送數據的比特序列至少包括:待傳輸數據,所述待傳輸數據至少包括:本地支持的波特率參數;第二獲取模塊902,用于根據第一待發送數據的比特序列,獲取所述比特序列中的比特對應的波形序列,其中,以第一波形序列表示第一數據比特,以第二波形序列或第三波形序列表示第二數據比特,所述第一數據比特為比特1和比特0中的一個,所述第二數據比特為所述比特1和比特0中的另一個,在所述比特序列中有至少兩個連續比特為所述第二數據比特時,所述至少兩個連續比特中的第一個比特對應的波形序列為所述第二波形序列,第二個比特以及后續的比特對應的波形序列為所述第三波形序列;其中,所述波形序列的特征包括:所述第一波形序列的持續時間、所述第二波形序列的持續時間以及所述第三波形序列的持續時間相同,且所述第一波形序列以高電平開始并持續第一預設時間后跳變為低電平,所述第二波形序列在所述持續時間內持續高電平,所述第三波形序列以高電平開始并持續第二預設時間后跳變為低電平,其中,所述第一預設時間與所述第二預設時間的時長不同;第一發送模塊904,用于按照當前使用的波特率,連續發送所述比特序列中的比特對應的波形序列,其中,所述波形序列的持續時間與所述當前使用的波特率成反比關系。在本實施例中,本地支持的波特率參數用于指示本端在傳輸數據(包括接收和發送數據)時,傳輸數據使用的波形序列所支持的波特率。下面對本實施例中的波形序列進行說明。在本實施例中,以第一波形序列表示第一數據比特,以第二波形序列或第三波形序列表示第二數據比特,所述第一數據比特為比特1和比特0中的一個,所述第二數據比特為所述比特1和比特0中的另一個。在本發明實施例的一個可選實施方案中,所述第一發送模塊904用于按照以下方式連續發送所述比特序列中的比特對應的波形序列:按照所述當前使用的波特率,控制發送端口的電平按照所述比特序列中的比特對應的波形序列的波形以及所述波形序列的特征進行變化,以發送所述第一待發送數據。例如,通信協議約定:比特“1”用第一波形序列表示,則比特“0”用第二波形序列和第三波形序列表示,本實施例中,第一待發送數據的比特序列中的每個比特對應的波形序列是確定的,例如,第一發送模塊904通過控制發送端口產生高低電平,即,通過硬件開關或軟件等控制該端口的高電平變為低電平作為一次下降沿的跳變,然后控制該端口恢復為高電平則形成一次上升沿的跳變。波形序列是通過發送端口產生的高低電平的變化得到的,由此,就可以產生每個比特對應的波形序列,進而形成一個數據幀對應的波形序列。例如,第一待發送數據的比特序列為11001000,那么按照通信協議約定,第一待發送數據的比特序列對應的8個波形序列依次為xxyzxyzz,其中,x為第一波形序列,y為第二波形序列,z為第三波形序列,根據各個波形序列的上述波形序列的特征,即第一波形序列、第二波形序列以及第三波形序列的傳輸持續時間相同且與所述當前使用的波特率呈反比,如均為t,第一預設時間為t1,第二預設時間t2,那么,第一待發送數據的比特序列11001000對應的8個波形序列可以如圖8所示。在發送第一待發送數據的比特序列的每個比特時,在相應時刻控制發送端口的電平發生跳變,以形成該比特對應的波形序列,進而形成一個數據幀的比特序列對應的波形序列,傳輸第一待發送數據的比特序列。在本發明實施例的一個可選實施方案中,該數據傳輸裝置還可以包括:第一檢測模塊,用于在所述第一獲取模塊900獲取第一待發送數據的比特序列之前,檢測接收端口的電平變化;第一確定模塊,用于根據所述電平變化以及所述波形序列的特征確定連對端續傳輸的第一接收數據對應的n個波形序列,其中,n為正整數,所述第一接收數據對應的n個波形序列中的各個波形序列為以下之一:所述第一波形序列、所述第二波形序列和所述第三波形序列;第二確定模塊,用于根據所述連續傳輸的第一接收數據對應的n個波形序列確定所述第一接收數據的比特序列,所述第一接收數據的比特序列至少包括:第一傳輸數據,所述第一傳輸數據至少包括:用于指示獲取波特率參數的指示信息。通過該可選實施方式,第一獲取模塊900可以在接收到對端發送的用于指示獲取波特率參數的指示信息之后,再獲取所述第一待發送數據,即可以根據對端的請求向對端發送本地支持的波特率參數。第一確定模塊根據檢測到的電平變化以及所述波形序列的特征確定連對端續傳輸的第一接收數據對應的n個波形序列的可選實施方式以及第二確定模塊根據所述連續傳輸的第一接收數據對應的n個波形序列確定所述第一接收數據的比特序列的可選實施方式可以參見實施例1中對本端確定第一接收數據對應的n個波形序列以及確定第一接收數據的比特序列的可選實施方式的描述,具體本實施例不再贅述。在本發明實施例的一個可選實施方案中,該數據傳輸裝置還可以包括:第二檢測模塊,用于在所述根據第一待發送數據的比特序列,連續發送所述比特序列中的比特對應的波形序列之后,檢測接收端口的電平變化;第三確定模塊,用于根據所述電平變化以及所述波形序列的特征確定對端連續傳輸的第二接收數據對應的m個波形序列,其中,m為正整數且m≥2,所述第二接收數據對應的m個波形序列中的各個波形序列分別為以下之一:所述第一波形序列、所述第二波形序列和所述第三波形序列;第四確定模塊,用于根據所述連續傳輸的第二接收數據對應的m個波形序列確定所述第二接收數據的比特序列;第三獲取模塊,用于解析所述第二接收數據,獲取所述對端從所述本地支持的波特率參數中選擇的波特率;第四獲取模塊,用于獲取第二待發送數據的比特序列;第二發送模塊,用于按照所述選擇的波特率,發送所述第二待發送數據的比特序列對應的波形序列,其中,所述波形序列的持續時間與所述選擇的波特率成反比。通過該可選實施方式,本端可以獲取到對端根據所述本地支持的波特率參數選擇的波特率,并采用對端所選擇的波特率發送第二待發送數據的比特序列,實現波特率的跳變。在上述可選實施方式中,可選地,對端選擇的波特率可以為本端支持的最大波特率,從而可以提高傳輸速率。在本發明實施例的一個可選實施方案中,所述第二發送模塊按照以下方式發送所述第二待發送數據的比特序列對應的波形序列:按照所述選擇的波特率,控制發送端口的電平按照所述第二待發送數據的比特序列中的比特對應的波形序列的波形以及所述波形序列的特征進行變化,以發送所述第二待發送數據。流程圖中或在此以其他方式描述的任何過程或方法描述可以被理解為,表示包括一個或更多個用于實現特定邏輯功能或過程的步驟的可執行指令的代碼的模塊、片段或部分,并且本發明的優選實施方式的范圍包括另外的實現,其中可以不按所示出或討論的順序,包括根據所涉及的功能按基本同時的方式或按相反的順序,來執行功能,這應被本發明的實施例所屬
技術領域:
的技術人員所理解。應當理解,本發明的各部分可以用硬件、軟件、固件或它們的組合來實現。在上述實施方式中,多個步驟或方法可以用存儲在存儲器中且由合適的指令執行系統執行的軟件或固件來實現。例如,如果用硬件來實現,和在另一實施方式中一樣,可用本領域公知的下列技術中的任一項或他們的組合來實現:具有用于對數據信號實現邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(pga),現場可編程門陣列(fpga)等。本
技術領域:
的普通技術人員可以理解實現上述實施例方法攜帶的全部或部分步驟是可以通過程序來指令相關的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質中,該程序在執行時,包括方法實施例的步驟之一或其組合。此外,在本發明各個實施例中的各功能單元可以集成在一個處理模塊中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個模塊中。上述集成的模塊既可以采用硬件的形式實現,也可以采用軟件功能模塊的形式實現。所述集成的模塊如果以軟件功能模塊的形式實現并作為獨立的產品銷售或使用時,也可以存儲在一個計算機可讀取存儲介質中。上述提到的存儲介質可以是只讀存儲器,磁盤或光盤等。在本說明書的描述中,參考術語“一個實施例”、“一些實施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結合該實施例或示例描述的具體特征、結構、材料或者特點包含于本發明的至少一個實施例或示例中。在本說明書中,對上述術語的示意性表述不一定指的是相同的實施例或示例。而且,描述的具體特征、結構、材料或者特點可以在任何的一個或多個實施例或示例中以合適的方式結合。盡管上面已經示出和描述了本發明的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本發明的限制,本領域的普通技術人員在不脫離本發明的原理和宗旨的情況下在本發明的范圍內可以對上述實施例進行變化、修改、替換和變型。本發明的范圍由所附權利要求及其等同限定。當前第1頁12