新四季網

一種數據傳輸方法及終端與流程

2023-06-05 07:18:21


本發明涉及一種電子
技術領域:
,尤其涉及一種數據傳輸方法及終端。
背景技術:
:現有的信號傳輸技術通常採用不同的時間間隔區分不同的比特值,例如,比特00用t+t1表示,比特01用t+t2表示,比特10用t+t3表示,比特11用t+t4表示,採用該現有的信號傳輸技術,傳輸不同的比特值所需的時長較長,數據比特的編碼效率較低,增加了發送端和接收端的負擔及成本。此外,在現有技術中,在數據傳輸過程中,通常發送端在發送完成所有數據包之後,才會接收到接收端的重傳請求,發送端重傳全部數據或者重傳接收端未接收到的數據包,但無論哪種方式,都導致數據重傳的效率降低,數據傳輸量增大。技術實現要素:本發明旨在解決上述問題之一。本發明的主要目的在於提供一種數據傳輸方法。本發明的另一目的在於提供一種終端。為達到上述目的,本發明的技術方案具體是這樣實現的:本發明一方面提供了一種數據傳輸方法,包括:獲取待發送數據,所述待發送數據包括n個數據幀;獲取第i個數據幀的比特序列,其中,i的取值依次為1,2,3……n,n為正整數;根據所述第i個數據幀的比特序列,連續發送所述第i個數據幀的比特序列中的比特對應的x個波形序列;其中,x為正整數,所述波形序列包括以下之一:第一波形序列、第二波形序列和第三波形序列,所述波形序列的特徵包括:所述第一波形序列、所述第二波形序列以及所述第三波形序列的傳輸持續時間相同,所述傳輸持續時間與所述波形序列的波特率呈反比關係,且所述第一波形序列以高電平開始並在所述傳輸持續時間內出現低電平,其中,所述第一波形序列中出現的低電平在所述傳輸持續時間內所佔的總時長不隨所述波形序列的波特率的變化而變化,所述第二波形序列在所述傳輸持續時間內持續高電平,所述第三波形序列以低電平開始並以高電平結束,且所述第三波形序列中出現的低電平在所述傳輸持續時間內所佔的總時長不隨所述波形序列的波特率的變化而變化,所述x個波形序列中的各個波形序列分別為以下之一:所述第一波形序列、所述第二波形序列和所述第三波形序列;在發送完成所述第i個數據幀的比特序列對應的x個波形序列後,檢測接收埠的電平變化;根據所述電平變化以及所述波形序列的特徵確定接收數據的y個波形序列,其中,y為正整數,所述y個波形序列中的各個波形序列分別為以下之一:所述第一波形序列、所述第二波形序列和所述第三波形序列;根據所述接收數據的y個波形序列確定所述接收數據的比特序列;在所述接收數據的比特序列至少包括至少用於指示數據接收成功的標記位的情況下,獲取第i+1個數據幀的比特序列;根據所述第i+1個數據幀的比特序列,連續發送所述第i+1個數據幀的比特序列中的比特對應的z個波形序列,直至將所述待發送數據的所述n個數據幀發送完成,其中,z為正整數,所述z個波形序列中的各個波形序列分別為以下之一:所述第一波形序列、所述第二波形序列和所述第三波形序列;其中,在發送所述待發送數據的n個數據幀時,以所述第一波形序列表示第一數據比特,分別以所述第二波形序列和所述第三波形序列表示第二數據比特,所述第一數據比特為比特1和比特0中的一個,所述第二數據比特為所述比特1和比特0中的另一個;在連續發送的至少兩個比特為所述第二數據比特時,所述連續發送的至少兩個比特中的第一個比特對應的波形序列為所述第二波形序列,第二個比特以及後續的比特對應的波形序列為所述第三波形序列。可選的,在發送完成所述第i個數據幀的比特序列對應的x個波形序列後,檢測接收埠的電平變化之前,所述方法還包括:在預設時間內在檢測到所述接收埠的電平發生變化,則執行所述檢測接收埠的電平變化的步驟;如果在預設時間內沒有檢測到所述接收埠的電平發生變化,則重新根據所述第i個數據幀的比特序列,連續發送所述第i個數據幀的比特序列中的比特對應的x個波形序列。可選的,在所述根據所述接收數據的y個波形序列確定所述接收數據的比特序列之後,所述方法還包括:在所述接收數據的比特序列沒有包括至少用於指示數據接收成功的標記位的情況下,重新根據所述第i個數據幀的比特序列,連續發送所述第i個數據幀的比特序列中的比特對應的x個波形序列。可選的,所述根據所述第i個數據幀的比特序列,連續發送所述第i個數據幀的比特序列中的比特對應的x個波形序列,包括:控制發送埠的電平按照所述第i個數據幀的比特序列中的比特對應的x個波形序列以及所述波形序列的特徵進行變化,以發送所述第i個數據幀;所述根據所述第i+1個數據幀的比特序列,連續發送所述第i個數據幀的比特序列中的比特對應的z個波形序列,包括:控制發送埠的電平按照所述第i+1個數據幀的比特序列中的比特對應的z個波形序列以及所述波形序列的特徵進行變化,以發送所述第i+1個數據幀。可選的,所述波形序列的特徵還包括:所述第一波形序列中出現的低電平在所述傳輸持續時間內所佔的總時長小於所述傳輸持續時間的二分之一;和/或,所述第三波形序列中出現的低電平在所述傳輸持續時間內所佔的總時長小於所述傳輸持續時間的二分之一。可選的,所述波形序列的特徵還包括:所述第三波形序列在所述傳輸持續時間內僅出現一次由低電平變為高電平的電平跳變;所述第一波形序列以高電平開始並在所述傳輸持續時間內僅出現一次由高電平變為低電平的電平跳變,並以低電平結束;或者,所述第一波形序列以高電平開始並在所述傳輸持續時間內僅出現一次由高電平變為低電平的電平跳變,並以高電平結束。本發明另一方面提供了一種終端,包括:比特序列獲取模塊、波形序列生成及發送模塊、電平檢測模塊和數據確定模塊,其中:所述比特序列獲取模塊,用於獲取待發送數據,所述待發送數據包括n個數據幀;獲取第i個數據幀的比特序列,其中,i的取值依次為1,2,3……n,n為正整數;所述波形序列生成及發送模塊,用於根據所述第i個數據幀的比特序列,連續發送所述第i個數據幀的比特序列中的比特對應的x個波形序列,其中,x為正整數,所述波形序列包括以下之一:第一波形序列、第二波形序列和第三波形序列,所述波形序列的特徵包括:所述第一波形序列、所述第二波形序列以及所述第三波形序列的傳輸持續時間相同,且所述第一波形序列以高電平開始並在所述傳輸持續時間內出現低電平,其中,所述第一波形序列中出現的低電平在所述傳輸持續時間內所佔的總時長不隨所述波形序列的波特率的變化而變化,所述第二波形序列在所述傳輸持續時間內持續高電平,所述第三波形序列以低電平開始並以高電平結束,且所述第三波形序列中出現的低電平在所述傳輸持續時間內所佔的總時長不隨所述波形序列的波特率的變化而變化,所述x個波形序列中的各個波形序列分別為以下之一:所述第一波形序列、所述第二波形序列和所述第三波形序列;所述電平檢測模塊,用於在所述波形序列生成及發送模塊發送完成所述第i個數據幀的比特序列對應的x個波形序列後,檢測接收埠的電平變化;所述數據確定模塊,用於根據所述電平變化以及所述波形序列的特徵確定接收數據的y個波形序列,其中,y為正整數,所述y個波形序列中的各個波形序列分別為以下之一:所述第一波形序列、所述第二波形序列和所述第三波形序列;根據所述接收數據的y個波形序列確定所述接收數據的比特序列;並在所述接收數據的比特序列至少包括至少用於指示數據接收成功的標記位的情況下,觸發所述比特序列獲取模塊獲取第i+1個數據幀的比特序列;所述比特序列獲取模塊,還用於在所述數據確定模塊的觸發下,獲取第i+1個數據幀的比特序列;所述波形序列生成及發送模塊,還用於根據所述第i+1個數據幀的比特序列,連續發送所述第i+1個數據幀的比特序列中的比特對應的z個波形序列,直至將所述待發送數據的所述n個數據幀發送完成,其中,z為正整數,所述z個波形序列中的各個波形序列分別為以下之一:所述第一波形序列、所述第二波形序列和所述第三波形序列;其中,所述波形序列生成及發送模塊在發送所述待發送數據的n個數據幀時,以所述第一波形序列表示第一數據比特,分別以所述第二波形序列和所述第三波形序列表示第二數據比特,所述第一數據比特為比特1和比特0中的一個,所述第二數據比特為所述比特1和比特0中的另一個;在連續發送的至少兩個比特為所述第二數據比特時,所述連續發送的至少兩個比特中的第一個比特對應的波形序列為所述第二波形序列,第二個比特以及後續的比特對應的波形序列為所述第三波形序列。可選的,所述電平檢測模塊,還用於在預設時間內檢測到所述接收埠的電平發生變化,則檢測執行所述接收埠的電平變化的操作;如果在預設時間內沒有檢測到所述接收埠的電平發生變化,則觸發所述波形序列生成及發送模塊重新根據所述第i個數據幀的比特序列,連續發送所述第i個數據幀的比特序列中的比特對應的x個波形序列;所述波形序列生成及發送模塊,還用於在所述檢測模塊的觸發下,重新根據所述第i個數據幀的比特序列,連續發送所述第i個數據幀的比特序列中的比特對應的x個波形序列。可選的,所述數據確定模塊,還用於在所述接收數據的比特序列沒有包括至少用於指示數據接收成功的標記位的情況下,觸發所述波形序列生成及發送模塊重新發送所述第i個數據幀的比特序列對應的x個波形序列;所述波形序列生成及發送模塊,還用於在所述接收數據的比特序列沒有包括至少用於指示數據接收成功的標記位的情況下,重新根據所述第i個數據幀的比特序列,連續發送所述第i個數據幀的比特序列中的比特對應的x個波形序列。可選的,所述波形序列生成及發送模塊通過以下方式根據所述第i個數據幀的比特序列,連續發送所述第i個數據幀的比特序列中的比特對應的x個波形序列:所述波形序列生成及發送模塊,還用於控制發送埠的電平按照所述第i個數據幀的比特序列中的比特對應的x個波形序列及所述波形序列的特徵進行變化,以發送所述第i個數據幀;所述波形序列生成及發送模塊通過以下方式根據所述第i+1個數據幀的比特序列,連續發送所述第i個數據幀的比特序列中的比特對應的z個波形序列:所述波形序列生成及發送模塊,還用於控制發送埠的電平按照所述第i+1個數據幀的比特序列中的比特對應的z個波形序列及所述波形序列的特徵進行變化,以發送所述第i+1個數據幀。可選的,所述波形序列的特徵還包括:所述第一波形序列中出現的低電平在所述傳輸持續時間內所佔的總時長小於所述傳輸持續時間的二分之一;和/或,所述第三波形序列中出現的低電平在所述傳輸持續時間內所佔的總時長小於所述傳輸持續時間的二分之一。可選的,所述波形序列的特徵還包括:所述第三波形序列在所述傳輸持續時間內僅出現一次由低電平變為高電平的電平跳變;所述第一波形序列以高電平開始並在所述傳輸持續時間內僅出現一次由高電平變為低電平的電平跳變,並以低電平結束;或者,所述第一波形序列以高電平開始並在所述傳輸持續時間內僅出現一次由高電平變為低電平的電平跳變,並以高電平結束。由上述本發明提供的技術方案可以看出,本發明提供了一種數據傳輸方法及終端,以高低電平變化的波形序列表示比特0和1,在通信的同時也能實現為從設備供電的效果,進一步地,在傳輸數據時使波形序列中高電平所佔的時長儘可能長,從而保證從設備能達到較高的取電效率,且編碼效率更高,降低了發送端和接收端的成本及負擔。而且,本發明中,發送端發送完成一幀數據幀後,在接收到接收端返回的ack報文(指示數據接收成功的數據)才繼續發送下一幀數據幀,如果在預設的等待時間沒有接收到ack響應報文,則重發數據幀,本發明無需將待發送數據的全部數據幀發送完之後再進行數據重發,大大提高了數據重傳的效率和正確率,相較於現有技術中全部重傳的方式,減少了數據傳輸量。附圖說明為了更清楚地說明本發明實施例的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對於本領域的普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他附圖。圖1為本發明實施例1提供的數據傳輸方法的流程圖;圖2為本發明實施例1提供的數據幀的幀格式的示意圖;圖3為本發明實施例1提供的第一波形序列的示意圖;圖4為本發明實施例1提供的第二波形序列的示意圖;圖5為本發明實施例1提供的第三波形序列的示意圖圖;圖6為本發明實施例1提供的第i個數據幀的比特序列11001000對應的8個波形序列的示意圖;圖7a為本發明實施例1提供的第i個數據幀的數據幀頭為aaaababa的示意圖;圖7b為本發明實施例1提供的第i個數據幀的數據幀頭為cacababa的示意圖;圖8為本發明實施例2提供的數據傳輸方法的流程圖;圖9為本發明實施例3提供的終端的結構圖;圖10為本發明實施例4提供的終端的結構圖;圖11為本發明實施例5提供的數據傳輸方法的流程圖;圖12為本發明實施例6提供的數據傳輸方法的流程圖。具體實施方式下面結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明的保護範圍。在本發明的描述中,需要理解的是,術語「中心」、「縱向」、「橫向」、「上」、「下」、「前」、「後」、「左」、「右」、「豎直」、「水平」、「頂」、「底」、「內」、「外」等指示的方位或位置關係為基於附圖所示的方位或位置關係,僅是為了便於描述本發明和簡化描述,而不是指示或暗示所指的裝置或元件必須具有特定的方位、以特定的方位構造和操作,因此不能理解為對本發明的限制。此外,術語「第一」、「第二」僅用於描述目的,而不能理解為指示或暗示相對重要性或數量或位置。在本發明的描述中,需要說明的是,除非另有明確的規定和限定,術語「安裝」、「相連」、「連接」應做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或一體地連接;可以是機械連接,也可以是電連接;可以是直接相連,也可以通過中間媒介間接相連,可以是兩個元件內部的連通。對於本領域的普通技術人員而言,可以具體情況理解上述術語在本發明中的具體含義。下面將結合附圖對本發明實施例作進一步地詳細描述。實施例1本實施例提供了一種數據傳輸方法,在本實施例中通信的兩個設備可以分為主設備和從設備,例如主設備可以為pc、手機等移動終端、讀卡器,從設備可以為usb、電子籤名設備(如工行u盾,農行key寶)、智慧卡,在主設備與從設備電連接後,從設備可以從主設備取電,主設備在與從設備通信的同時,可以為從設備供電,在靜默態時,主設備與從設備連接的埠保持高電平,通過高電平主設備可以為從設備供電,主設備和從設備均可以通過控制該埠輸出的電平變化進行數據發送,並檢測該埠輸入的電平變化進行數據接收。圖1是本實施例的一種可選的數據傳輸方法的流程圖。本發明實施例的本端可以是主設備也可以是從設備。如圖1所示,該數據傳輸方法主要包括以下步驟(s101~s108):步驟s101,本端獲取待發送數據,該待發送數據包括n個數據幀;本實施例中待發送數據包括n個數據幀,n為正整數,發送端發送第i個數據幀,i的取值依次為1,2,……,n,即,發送端從第1個數據幀開始,在發送完成第1個數據幀後再發送第2個數據幀,如此連續發送n個數據幀,直至將待發送數據的n個數據幀全部發完,其中,每個數據幀都是一串比特序列,待發送數據是由多個數據幀的比特序列組成的比特序列。本實施例中,一個比特對應一個波形序列,波形序列分為幾種,分別來表示比特1和比特0,關于波形序列此處暫不作詳細說明,可以參見本實施例步驟s104中對波形序列進行的詳細描述。作為一種可選的實施方式,在本實施例中,一個數據幀的幀格式可以如圖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冗餘校驗位,可以利用該校驗位對接收數據幀的比特序列進行校驗,以便檢測或校驗接收的數據是否出現錯誤。步驟s102,置i=1;步驟s103,獲取第i個數據幀的比特序列;在本實施例中,第i數據幀的比特序列為一串比特串,包括該數據幀的數據幀頭、待傳輸數據和數據幀尾中各個部分的數據。步驟s104,根據所述第i個數據幀的比特序列,連續發送所述第i個數據幀的比特序列中的比特對應的x個波形序列;其中,x為正整數,所述波形序列包括以下之一:第一波形序列、第二波形序列和第三波形序列,所述波形序列的特徵包括:第一波形序列、第二波形序列以及第三波形序列的傳輸持續時間相同,傳輸持續時間與波形序列的波特率呈反比關係,且第一波形序列以高電平開始並在傳輸持續時間內出現低電平,其中,第一波形序列中出現的低電平在傳輸持續時間內所佔的總時長不隨波形序列的波特率的變化而變化,第二波形序列在傳輸持續時間內持續高電平,第三波形序列以低電平開始並以高電平結束,且第三波形序列中出現的低電平在傳輸持續時間內所佔的總時長不隨波形序列的波特率的變化而變化,x個波形序列中的各個波形序列分別為以下之一:第一波形序列、第二波形序列和第三波形序列。在本實施例中,不同的波形序列的傳輸持續時間相同,即均以t來傳輸一個比特,相比與現有技術中需要用不同的時間間隔來傳輸一個比特值的方式,本實施例傳輸一個比特所需的時間更短,因此,編碼效率更高,降低了發送端和接收端的成本及負擔。此外,相比於現有技術僅以高低電平來表示比特0和比特1的方式,本實施例提供的波形序列,以第二波形序列和第三波形序列表示比特0或比特1中的一個,也就是說,在傳輸數據比特的波形序列中儘可能多的出現高電平,進而提高供電效率。其中,在發送第i個數據幀時,以第一波形序列表示第一數據比特,分別以第二波形序列和第三波形序列表示第二數據比特,所述第一數據比特為比特1和比特0中的一個,所述第二數據比特為所述比特1和比特0中的另一個,在連續發送的至少兩個比特為所述第二數據比特時,所述連續發送的至少兩個比特中的第一個比特對應的波形序列為所述第二波形序列,第二個比特以及後續的比特對應的波形序列為所述第三波形序列。本實施例中,第二數據比特由第二波形序列或第三波形序列表示,而第二波形序列在傳輸持續時間內均為高電平,由此,可以進一步提高取電效率。在本實施例中,第一波形序列以及第三波形序列中的低電平在傳輸持續時間內所佔的總時長不隨所述波形序列的波特率的變化而變化。例如,第一波形序列以及第三波形序列中低電平的持續時長可以預設為一個固定時長,由於主從設備傳輸數據幀的波特率可以改變,這樣低電平佔傳輸持續時間的佔空比就是變化的,而不是一個固定比例,例如,低電平的持續時間固定為10ns,當主設備以50mbs的波特率,即傳輸持續時間為20ns進行波形序列的傳輸時,低電平的持續時間佔傳輸持續時間的50%,即從設備的取電效率為50%;當主設備以25mbs的波特率,即傳輸持續時間為40ns進行波形序列的傳輸時,低電平的持續時間佔傳輸持續時間的25%,即從設備的取電效率為75%,由此可見,低電平的時長固定時,低電平在傳輸持續時間內所佔的總時長與波特率沒有線性關係,即不隨傳輸波形序列的波特率的變化而變化,由此,可以根據實際情況選擇波特率,使得主從設備的接口保持高電平的時間儘可能的長,從而進一步提高兩線通信中的供電效率。其中,作為一種可選的實施方式,所述波形序列的特徵還包括:第一波形序列中出現的低電平在傳輸持續時間內所佔的總時長小於傳輸持續時間的二分之一;和/或,第三波形序列中出現的低電平在傳輸持續時間內所佔的總時長小於傳輸持續時間的二分之一。由此,當波形序列中低電平出現的時長越短,便可以使得主從設備的接口保持高電平的時間儘可能的長,從而進一步提高兩線通信中的供電效率。在本實施例中,作為一種可選的實施方式,第一波形序列以高電平開始並持續第一預設時間跳變為低電平,其中,第一預設時間與傳輸持續時間可以有一定的比例關係,也可以是雙方協商預設的固定時長,例如固定為10ns。作為一種可選的實施方式,第一預設時間t1可以滿足以下預設關係:t1=a*t,其中,t為傳輸持續時間,a為預設的佔空比係數,0<a<1。本實施例中,預設第一波形序列的起始高電平的持續時間t1便於在通過數據幀頭計算一個波形序列的傳輸持續時間t的情況下,利用t1計算出t。在本實施例中,第一波形序列和第三波形序列中可以出現一次下降沿電平跳變(或上升沿電平跳變)或多次下降沿電平跳變(或上升沿電平跳變),在本實施例中,由於在靜默態主從設備之間的一個埠的電平持續為高電平,通過硬體開關或軟體等控制該埠的高電平變為低電平作為一次下降沿的跳變,然後控制該埠恢復為高電平則形成一次上升沿的跳變,作為一種可選的實施方式,第三波形序列在傳輸持續時間內僅出現一次由低電平變為高電平的跳變,並以高電平結束;第一波形序列以高電平開始並在傳輸持續時間內僅出現一次由高電平變為低電平的電平跳變,並以低電平結束;或者,第一波形序列以高電平開始並在傳輸持續時間內僅出現一次由高電平變為低電平的電平跳變,並以高電平結束。相比於一個波形序列中包括多次下降沿跳變或多次上升沿跳變的情況,一個波形序列中僅存在一次下降沿電平跳變(或上升沿電平跳變)可以減少控制端的操作複雜性,無需控制發送埠的電平進行多次跳變才能傳輸一個比特,提高數據傳輸的效率。下面對本實施例中的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)所示,波特率為50mbps,則第三波形序列的傳輸持續時間為20ns,假設低電平的持續時間固定為10ns,那麼,低電平的持續時長佔第三波形序列的傳輸持續時間的1/2,這時候從設備的取電效率為50%。又例如,如圖5(b)所示,波特率為25mbps,則第三波形序列的傳輸持續時間為40ns,假設低電平的持續時間仍然固定為10ns,那麼,低電平的持續時長佔第三波形序列的傳輸持續時間的1/4,此時從設備的取電效率為75%,當低電平的時長固定,隨著波特率的降低,傳輸持續時間變長,取電效率提高,由此可見,低電平在所述傳輸持續時間內所佔的總時長不隨所述波形序列的波特率的變化而變化可以提高取電效率。因此,圖5(b)中的第三波形序列傳輸數據供電效率要比圖5(a)中的高。此外,圖5(b)中第三波形序列中出現的低電平在傳輸持續時間內所佔的總時長可以小於傳輸持續時間的二分之一還可以進一步提高供電效率。在本步驟中,作為一種可選的實施方式,根據第i個數據幀的比特序列,連續發送第i個數據幀的比特序列中的比特對應的x個波形序列可以包括:控制發送埠的電平按照第i個數據幀的比特序列中的比特對應的x個波形序列以及波形序列的特徵進行變化,以發送第i個數據幀。例如,通信協議約定:比特「1」用第一波形序列表示,則比特「0」用第二波形序列和第三波形序列表示,本實施例中,可以先獲取一個數據幀的比特序列,每個比特對應的波形序列是確定的,例如,本端通過控制發送埠產生高低電平,即,通過硬體開關或軟體等控制該埠的高電平變為低電平作為一次下降沿的跳變,然後控制該埠恢復為高電平則形成一次上升沿的跳變。波形序列是通過發送埠產生的高低電平的變化得到的,由此,就可以產生每個比特對應的波形序列,進而形成一個數據幀對應的波形序列。例如,第i個數據幀的比特序列為11001000,那麼按照通信協議約定,第i個數據幀的比特序列對應的8個波形序列依次為aabcabcc,其中,a為第一波形序列,b為第二波形序列,c為第三波形序列,根據各個波形序列的上述波形序列的特徵,即第一波形序列、第二波形序列以及第三波形序列的傳輸持續時間相同且與傳輸上述波形序列的波特率呈反比,如均為t,第一波形序列的高電平的第一預設時間為t1,第一波形序列與第三波形序列中的低電平的固定時長均為t2,第i個數據幀的比特序列11001000對應的8個波形序列可以如圖6所示。在發送第i個數據幀中的每個比特時,在相應時刻控制發送埠的電平發生跳變,以形成該比特對應的波形序列,進而形成一個數據幀的比特序列對應的波形序列,傳輸該第i個數據幀。步驟s105,在發送完成第i個數據幀的比特序列對應的波形序列後,檢測接收埠的電平變化;本實施例中,如前文所述,本端是通過發送端的發送埠產生高低電平的變化來形成一個數據幀的波形序列的,因此,相應的,對端也是通過同樣的方式發送數據的,本端為了接收對端發送的數據,需要對接收埠的電平變化進行檢測,以便根據電平變化進行波形序列的識別。具體地,作為一種可選的實施方式,檢測接收埠的電平變化可以包括:對接收埠的電平進行連續採樣,得到採樣後的高低電平變化;或者,檢測接收埠的電平跳變,例如該電平跳變可以為由高電平變為低電平的跳變,例如可以通過差分放大器對接收埠的電平進行檢測比較,在檢測到電平從高電平變低時差分放大器輸出下降沿的跳變。在本實施例中,為了提高了數據重傳的效率以及正確性,在發送完成第i個數據幀的比特序列對應的x個波形序列後,檢測接收埠的電平變化之前,作為一種可選的實施方式,本實施提供的方法還可以包括:在預設時間內在檢測到接收埠的電平發生變化,則執行檢測接收埠的電平變化的步驟;如果在預設時間內沒有檢測到接收埠的電平發生變化,即說明沒有收到對端返回的響應數據,則返回步驟s103,重新執行步驟s103~s105,重傳本端在步驟s105已經發送完成的第i個數據幀。本實施例中,本端可以預先設置發送完一個數據幀後等待接收數據的等待時間,例如,可以為8t,t為傳輸持續時間,在該等待時間內如果接收到對端返回的數據,則說明對端接收到本端發送的數據幀且接收成功,本端在接收完對端返回的數據接收響應數據(ack響應報文)後可以繼續發送下一個數據幀;如果在該等待時間沒有接收到對端返回的數據接收成功的響應數據,則重發該數據幀。由此,本實施例無需將待發送數據的全部數據幀發送完成才進行數據的重發,大大提高了數據重傳的效率和正確率。此外,作為一種可選的實施方式,本實施例中,如果在預設時間內沒有檢測到接收埠的電平發生變化,在返回步驟s103執行重傳的操作之前,還包括:判斷重傳的次數是否達到預設次數,如果達到,則結束流程,不返回s103執行重傳,如果沒有達到,返回步驟s103執行重傳。例如,預設次數為5次,重傳一次本地計數器加1,例如,在重傳5次後,計數器計數值為5,當判決在預設時間內沒有檢測到接收埠的電平發生變化時,且判斷計數器的計數值已達到5次,則結束流程。以便在保證重傳的同時不會影響數據傳輸效率。步驟s106,根據電平變化以及波形序列的特徵確定接收數據的y個波形序列,y為正整數,所述y個波形序列中的各個波形序列分別為以下之一:第一波形序列、第二波形序列和第三波形序列;在本步驟中,作為一種可選的實施方式,根據電平變化以及波形序列的特徵確定接收數據的y個波形序列,包括:獲取一個波形序列的預設持續時間;以所述預設持續時間作為每個波形序列的傳輸持續時間,根據電平變化以及波形序列特徵確定所述接收數據的y個波形序列。根據前文提到的波形序列的特徵,在獲取到一個波形序列的預設持續時間的前提下,第一波形序列的起始高電平的第一預設時間以及第三波形序列的起始高電平的第二預設時間都是可以確定的,因此,確定一個波形序列的方式可以為:在一個波形序列的傳輸持續時間內,根據該波形序列的起始電平的高低,以及在起始電平為高電平時,高電平的持續時長符合上述哪種波形序列的特徵,來確定該波形序列為哪個波形序列,或者,也可以根據接收埠檢測到的電平變化,如通過採樣電平變化得到一個波形序列的波形,判斷該波形符合上述哪種波形序列的特徵,來確定該波形序列為哪個波形序列。例如,在一個波形序列的傳輸持續時間內,該波形序列的起始位置(起始時刻)為低電平,則該波形序列為第三波形序列,如果該波形序列的起始位置(起始時刻)為高電平,且在一個波形序列的傳輸持續時間內出現低電平,則為第一波形序列,如果一直持續為高電平,則為第二波形序列。在本實施例中,所述接收數據依次包括數據幀頭、傳輸數據和數據幀尾,在檢測到數據幀頭對應的波形序列後,就可以確定數據幀中的傳輸數據對應的波形序列的起始位置,從該起始位置開始可以根據檢測到的電平變化(如下降沿的電平跳變)符合上述哪種波形序列的特徵來確定第一個波形序列,在持續一個波形序列的傳輸持續時間後,開始確定第二個波形序列,以此直至確定完接收數據中的傳輸數據和數據幀尾對應的波形序列。其中,一個波形序列的預設持續時間可以是通信雙方預先協商好的,通信雙方採用該預先協商好的預設持續時間(即波特率的反比)進行數據傳輸,也可以是從數據幀頭中解析得到的,相較於前者,後者可以更靈活選擇波特率進行數據傳輸,對端可以視當前的傳輸環境以及對端支持的接收數據的速率選擇雙方支持的最高的波特率進行數據傳輸,本端只要解析數據幀頭就可以獲得當前的波特率,由此,可以採用通信雙方支持的最大波特率進行數據傳輸,以達到高速的數據傳輸的效果。作為第一種可選的實施方式,數據幀頭可以至少包括1個比特,數據幀頭的第1個比特對應的波形序列為所述第三波形序列或者所述第一波形序列,雙方協商以上述波形序列作為數據幀頭,則在檢測到的接收埠的電平變化形成上述數據幀頭對應的波形序列時,可以確定當前接收到的波形序列為數據幀頭,該數據幀頭後緊接著的波形序列為傳輸數據的波形序列的起始位置。作為第二種可選的實施方式,數據幀頭至少包括m個比特,數據幀頭的前m個比特對應的波形序由m個第一波形序列組成;或者,數據幀頭的前m個比特對應的波形序列由m個第三波形序列組成,m為正整數且m≥2;或者,數據幀頭的前m個比特對應的波形序列由至少一個第一波形序列和至少一個第三波形序列組成。第一種實施方式中在通信雙方以預先協商的波特率進行數據傳輸的情況下,可以通過上述波形序列識別出數據幀頭,相比於第一種實施方式,第二種實施方式還可以通過數據幀頭的前m個比特對應的波形序列確定出一個波形序列的預設持續時間,即確定發送方發送數據的波特率,並可以利用該波特率進行數據的接收和發送,實現波特率自適應。在第二種實施方式的基礎之上,作為第三種可選的實施方式,數據幀頭的前幾個比特對應的波形序列為連續相同的波形序列時,為了避免單頻幹擾,還可以在連續相同的波形序列的後面(只要在後面就可以,比如緊接著連續相同的波形序列後面,或者隔幾個波形序列之後均可)約定至少1個與所述相同的波形序列不同的波形序列,即抗幹擾比特對應的波形序列,例如,數據幀頭的前m個比特對應的波形序列由m個第一波形序列組成時,數據幀頭還包括:在數據幀頭的前m個比特之後的至少1個抗幹擾比特,其中,所述至少1個抗幹擾比特為第二波形序列或第三波形序列,例如,該數據幀頭對應的波形序列可以為aaaabcbc,其中,a為第一波形序列,b為第二波形序列,c為第三波形序列;或者,數據幀頭的前m個比特對應的波形序列由m個所述第三波形序列組成時,數據幀頭還包括:在數據幀頭的前m個比特之後的至少1個抗幹擾比特,其中,所述至少1個抗幹擾比特中至少有一個比特對應的波形序列為第一波形序列或第二波形序列,例如,該數據幀頭對應的波形序列可以為ccccabcc。通過上述第三種實施方式中的數據幀頭可以防止單頻幹擾,單頻幹擾可以理解為以相同周期產生的脈衝序列,因此,如果數據幀頭由連續幾個相同的波形序列組成,比如,連續4個c,而單頻幹擾的頻率恰好與波特率相同,即本端通過電平變化識別出與該數據幀頭相同的波形序列,此時,本端會將該單頻幹擾識別為數據幀頭,出現錯誤識別的情況,而通過第三種實施方式中的數據幀頭中在連續相同的多個波形序列之後出現的不同的波形序列,使得數據幀頭存在不同的時間間隔,即不會出現與單頻幹擾相同的波形序列,由此採用該實施方式中的數據幀頭可以防單頻幹擾。在本實施例中,可以通過對上述第二種和第三種實施方式中提到的數據幀頭進行解析得到一個波形序列的預設持續時間,以該預設持續時間作為每個波形序列的傳輸持續時間,根據電平變化以及波形序列特徵確定接收數據中的傳輸數據以及數據幀為對應的波形序列。作為一種可選的實施方式,確定預設持續時間的方式可以通過以下方式實現:根據數據幀頭對應的波形序列中的任意2個相同跳變之間的時間間隔計算得到一個波形序列的預設持續時間,其中,相同跳變指任意2個跳變均為從高電平跳變為低電平;預設的數據幀頭對應的n個波形序列中的各個波形序列分別為以下之一:第一波形序列、第二波形序列和第三波形序列。以數據幀頭為aaaababa為例,如圖7a所示,以a的第一預設時間t1=1/4t,其中,t為預設持續時間,可以根據8個波形序列中的任意兩個下降沿跳變計算一個波形序列的預設持續時間,例如,第1個下降沿電平跳變和第2個下降沿跳變的時刻之間的時間間隔t1就是一個波形序列的預設持續時間t,又例如,第1個下降沿電平跳變和第5個下降沿電平跳變的時間間隔t2為3/4t+4t+1/4t,即t2=5t,由此可以推算出一個波形序列的預設持續時間t的時長。在舉一例,以數據幀頭為cacababa為例,如圖7b所示,以a的第一預設時間t1=1/4t,其中,t為預設持續時間,可以根據8個波形序列中的任意兩個下降沿跳變計算一個波形序列的預設持續時間,例如,第1個下降沿電平跳變和第2個下降沿電平跳變的時刻之間的時間間隔t1為t+1/4t,即第三波形序列c的一個傳輸持續時間加a的初始高電平的持續時間t1,即t1=5/4t,由此可以計算得到一個波形序列的預設持續時間t,又例如,第1個下降沿電平跳變和第5個下降沿電平跳變的時間間隔t2為3/4t+4t+1/4t,即t2=5t,由此可以推算出一個波形序列的預設持續時間t的時長。然後,以該預設持續時間作為每個波形序列的傳輸持續時間,根據電平變化以及波形序列特徵確定接收數據中的傳輸數據以及數據幀尾對應的波形序列。對於數據幀頭對的波形序列由其他波形序列組成的情況,確定預設持續時間的方式與上述舉例的方式是相同的,此處不再贅述。作為一種可選的實施方式,本實施例中,通信雙方可以預先約定數據幀尾對應的波形序列。具體地,數據幀尾包括2個比特,對應的波形序列包括以下3種方式之一:數據幀尾的第一個比特對應的波形序列為第二波形序列,數據幀尾的第二個比特對應的波形序列為第二波形序列;或者,數據幀尾的第一個比特對應的波形序列為第三波形序列,數據幀尾的第二個比特對應的波形序列為第二波形序列;或者,數據幀尾的第一個比特對應的波形序列為第一波形序列,數據幀尾的第二個比特對應的波形序列為第三波形序列。在本實施例中,當根據電平變化以及波形序列的特徵確定的波形序列為上述預設的數據幀尾對應的波形序列,則說明數據接收結束。本實施例中,數據幀頭和數據幀尾對應的波形序列是通信協議預先約定好的,一般來說,約定數據幀頭和數據幀尾不出現同樣的波形序列,這樣更容易將數據幀頭和數據幀尾進行識別和區別,如果約定的數據幀頭中的波形序列包含了數據幀尾中的2個波形序列,那麼可以通過一些策略區分數據幀頭和數據幀尾,例如,數據幀頭可以約定為8比特,即由8個波形序列組成,而數據幀尾由2個波形序列組成,以此作為兩者的區別,由於靜默態接收埠的電平一直為高電平,在接收埠檢測到第一個下降沿跳變時,開始接收數據幀頭,連續檢測到8個預設的數據幀頭對應的波形序列,則數據幀頭接收結束,總之可以區分數據幀頭和數據幀尾即可,因此,本實施例對數據幀頭和數據幀尾對應的波形序列並不做具體限制。步驟s107,根據接收數據的y個波形序列確定接收數據的比特序列;根據預設的波形序列與比特的對應關係,可以在確定接收數據的y個波形序列後,對應解析得到y個波形序列對應的y個比特,即接收數據的比特序列。例如,通信協議規定,以所述第一波形序列表示比特「1」,分別以所述第二波形序列和所述第三波形序列表示比特0。其中,在確定接收數據的比特序列時,可以確定一個波形序列解析一個對應的比特,也可以在確定全部的y個波形序列之後,再解析得到對應的y個比特,前一種方式相較於後一種方式,解析得到比特序列的效率更高,但本實施例對此確定接收數據的比特序列的方式不做限定。步驟s108,在接收數據的比特序列至少包括至少用於指示數據接收成功的標記位的情況下,判斷i是否等於n,如果否,則置i=i+1,返回步驟s103,即發送下一幀數據幀;如果是,則待發送數據的n個數據幀發送完畢;在本實施例中,在發送完成第i個數據幀後,只有在收到對端返回的ack響應報文,才能繼續發送第i+1個數據幀,直至將待發送數據的全部數據幀發送完成。本實施例中,只有當對端接收成功第i個數據幀才會向本端返回ack響應報文,即接收數據的比特序列至少包括至少用於指示數據接收成功的標記位,在步驟s107中可以根據接收數據的y個波形序列確定接收數據的比特序列,在確定的接收數據的比特序列中如果包含指示數據接收成功的標記位,則說明接收到報文為ack響應報文,如果對端在預設的等待時間內沒有接收到第i個數據幀或者接收到的第i個數據幀錯誤,則不會向本端返回ack響應報文,因此,作為一種可選的實施方式,在接收數據的比特序列沒有包括至少用於指示數據接收成功的標記位的情況下,不執行判斷i是否等於n,如果否,則置i=i+1的步驟,而是直接返回步驟s103,重傳第i個數據幀,即重傳第1個數據幀。本實施例中,無需將待發送數據的全部數據幀發送完之後再進行數據重發,大大提高了數據重傳的效率和正確率。通過本實施例提供了一種以高低電平變化的波形序列表示比特序列的數據傳輸方法,在通信的同時也能實現為從設備供電的效果,進一步地,在傳輸數據時使波形序列中高電平所佔的時長儘可能長,從而保證從設備能達到較高的取電效率,且編碼效率更高,降低了發送端和接收端的成本及負擔。而且,本實施例中,本端發送完成一幀數據幀後,在接收到對端返回的ack報文(指示數據接收成功的數據)才繼續發送下一幀數據幀,如果在預設的等待時間沒有接收到ack響應報文,則重發數據幀,本實施例無需將待發送數據的全部數據幀發送完之後再進行數據重發,大大提高了數據重傳的效率和正確率,相較於現有技術中全部重傳的方式,減少了數據傳輸量。實施例2本實施例提供了一種數據傳輸方法,圖8是本實施例的一種可選的數據傳輸方法的流程圖。本發明實施例的本端可以是主設備也可以是從設備。如圖8所示,該數據傳輸方法主要包括以下步驟(s201~s205):步驟s201,本端檢測接收埠的電平變化;本實施例中,如實施例1中所述,對端通過控制發送端的發送埠產生高低電平的變化來形成一個數據幀的波形序列。因此,相應的,本端為了接收對端發送的數據,需要對接收埠的電平變化進行檢測,以便根據電平變化進行波形序列的識別。具體地,作為一種可選的實施方式,檢測接收埠的電平變化可以包括:對接收埠的電平進行連續採樣,得到採樣後的高低電平變化;或者,檢測接收埠的電平跳變,該電平跳變可以為由高電平變為低電平的跳變,例如可以通過差分放大器對接收埠的電平進行檢測比較,在檢測到電平從高電平變低時差分放大器輸出下降沿的跳變。步驟s202,根據電平變化以及波形序列的特徵確定連續傳輸的波形序列;其中,所述波形序列包括以下之一:第一波形序列、第二波形序列和第三波形序列,所述連續傳輸的波形序列中的各個波形序列分別包括以下之一:第一波形序列、第二波形序列和第三波形序列;其中,各個波形序列的特徵可以參見實施例1中提到的波形序列的特徵的描述。第一波形序列、第二波形序列和第三波形序列的具體描述也可以參見實施例1中的具體描述。本步驟中,作為一種可選的實施方式,根據電平變化以及波形序列的特徵確定連續傳輸的波形序列,包括:獲取一個波形序列的預設持續時間;以預設持續時間作為每個波形序列的傳輸持續時間,根據電平變化以及波形序列特徵確定所述連續傳輸的波形序列。本步驟中根據所述電平變化以及波形序列的特徵確定連續傳輸的波形序列的具體實施方式以及如何獲得一個波形序列的傳輸持續時間的具體實施方式均可以參見實施例1中步驟s106中的具體描述。步驟s203,根據連續傳輸的波形序列確定接收數據幀的比特序列;在確定連續傳輸的波形序列後,根據預設的波形序列與比特的對應關係對應解析得到接收數據幀的比特序列,例如,以第一波形序列表示第一數據比特,分別以第二波形序列和第三波形序列表示第二數據比特,所述第一數據比特為比特1和比特0中的一個,所述第二數據比特為所述比特1和比特0中的另一個;具體地,例如,可以以所述第一波形序列表示比特「1」,分別以所述第二波形序列和所述第三波形序列表示比特0。其中,在確定接收數據幀的比特序列時,可以確定一個波形序列解析一個對應的比特,也可以在確定接收數據幀的全部波形序列之後,再解析得到對應的比特序列,前一種方式相較於後一種方式,解析得到比特序列的效率更高,但本實施例對此確定接收數據幀的比特序列的方式不做限定。步驟s204,在從連續傳輸的波形序列中識別出接收數據幀的數據幀尾對應的k個波形序列後,根據所述接收數據幀中傳輸數據的校驗位對所述接收數據幀的比特序列進行校驗,如果校驗通過,則獲取待發送數據的比特序列,其中,k為正整數,所述待發送數據的比特序列至少包括:待傳輸數據,所述待傳輸數據至少包括:至少用於指示所述待發送數據為數據接收成功響應報文的標記位;在本實施例中,接收數據幀依次包括數據幀頭、傳輸數據和數據幀尾,其中,數據幀頭的具體描述以及確定方式可以參見實施例1的步驟s106中的描述。作為一種可選的實施方式,本實施例中,可以預先設置數據幀尾對應的波形序列,具體地,數據幀尾的第一個比特對應的波形序列為第二波形序列,數據幀尾的第二個比特對應的波形序列為第二波形序列,或者,數據幀尾的第一個比特對應的波形序列為第三波形序列,數據幀尾的第二個比特對應的波形序列為第二波形序列,或者,數據幀尾的第一個比特對應的波形序列為第一波形序列,數據幀尾的第二個比特對應的波形序列為第三波形序列。在本實施例中,當從所述連續傳輸的波形序列中識別出上述預設的數據幀尾對應的波形序列,則說明數據接收結束。此外,實施例1中的圖2示意出了數據幀的幀格式,其中,接收數據幀的傳輸數據中的最後兩個字節byten-1,byten可以作為crc冗餘校驗位,本步驟中,可以利用該crc冗餘校驗位對接收數據幀的比特序列進行校驗,在校驗通過,則說明接收數據幀無誤,接收數據幀成功後本地可以向對端返回ack響應報文,即獲取待發送數據的比特序列,向對端返回攜帶有至少用於指示所述待發送數據為數據接收成功響應報文的標記位的數據幀,以便對端在收到該ack響應報文後,可以繼續發送下一幀數據幀。此外,如果crc校驗不通過,則說明數據接收錯誤,因此,在crc校驗不通過的情況下,則向對端返回nak響應報文,指示數據接收不成功,以便對端即使重傳接收不成功的數據;其中,向對端返回nak響應報文的方式與向對端返回ack響應報文的方式相同,只是在待發送數據中包含的指示信息為數據接收失敗而不是數據接收成功,即,在從所述連續傳輸的波形序列中識別出接收數據幀的數據幀尾對應的k個波形序列後,如果根據所述接收數據幀中傳輸數據的校驗位對所述接收數據幀的比特序列進行校驗不通過,則獲取待發送數據的比特序列,其中,待發送數據的比特序列至少包括:待傳輸數據,待傳輸數據至少包括:至少用於指示所述待發送數據為數據接收失敗響應報文的標記位。步驟s205,控制發送埠的電平按照所述待發送數據的比特序列中的比特對應的波形序列以及波形序列的特徵進行變化,以發送待發送數據的比特序列;其中,以第一波形序列表示第一數據比特,分別以第二波形序列和第三波形序列表示第二數據比特,第一數據比特為比特1和比特0中的一個,第二數據比特為所述比特1和比特0中的另一個,在連續發送的至少兩個比特為第二數據比特時,所述連續發送的至少兩個比特中的第一個比特對應的波形序列為第二波形序列,第二個比特以及後續的比特對應的波形序列為第三波形序列。例如,通信協議約定:比特「1」用第一波形序列表示,則比特「0」用第二波形序列和第三波形序列表示,本實施例中,每個比特對應的波形序列是確定的,例如,本端通過控制發送埠產生高低電平,即,通過硬體開關或軟體等控制該埠的高電平變為低電平作為一次下降沿的跳變,然後控制該埠恢復為高電平則形成一次上升沿的跳變,波形序列是通過發送埠產生的高低電平的變化得到的,由此,就可以產生每個比特對應的波形序列,進而形成待發送數據的比特序列。例如,待發送數據的比特序列為11001000,那麼按照通信協議約定,待發送數據的比特序列對應的8個波形序列依次為第一波形序列、第一波形序列、第二波形序列、第三波形序列、第一波形序列、第二波形序列、第三波形序列、第三波形序列,根據各個波形序列的上述波形序列的特徵,即第一波形序列、第二波形序列以及第三波形序列的傳輸持續時間相同且與傳輸上述波形序列的波特率呈反比,如均為t,那麼,待發送數據的比特序列11001000對應的波形序列可以如圖6所示,在發送待發送數據中的每個比特時,在相應時刻控制發送埠的電平發生跳變,以形成該比特對應的波形序列,進而形成待發送數據的比特序列對應的波形序列,傳輸該待發送數據。通過本實施例提供了一種以高低電平變化的波形序列表示比特序列的數據傳輸方法,在通信的同時也能實現為從設備供電的效果,進一步地,在傳輸數據時使波形序列中高電平所佔的時長儘可能長,從而保證從設備能達到較高的取電效率。而且,本實施例中,如果本端成功接收完成對端發送的一幀數據幀後,會向對端返回ack響應報文,如果接收數據錯誤,則會向對端返回nak響應報文,以便對端及時重發本端接收失敗數據幀,因此,本實施例中,數據幀的重發無需等到接收完對端發送的全部數據幀,大大提高了數據重傳的效率和正確率,相較於現有技術中全部重傳的方式,減少了數據傳輸量。實施例3本實施例提供了一種終端,該終端可以應用於實施例1中的數據傳輸方法,即實施例1中的本端,該終端可以主設備也可以是從設備。如圖9所示,該終端30包括:比特序列獲取模塊301、波形序列生成及發送模塊302、電平檢測模塊303和數據確定模塊304,其中:比特序列獲取模塊301,用於獲取待發送數據,該待發送數據包括n個數據幀;獲取第i個數據幀的比特序列,其中,i的取值依次為1,2,3……n,n為正整數;波形序列生成及發送模塊302,用於根據第i個數據幀的比特序列,連續發送第i個數據幀的比特序列中的比特對應的x個波形序列,其中,x為正整數,每個波形序列包括以下之一:第一波形序列、第二波形序列和第三波形序列,第一波形序列、第二波形序列和第三波形序列均具有以下波形序列的特徵:第一波形序列、第二波形序列以及第三波形序列的傳輸持續時間相同,傳輸持續時間與波形序列的波特率呈反比關係,且第一波形序列以高電平開始並在傳輸持續時間內出現低電平,其中,第一波形序列中出現的低電平在傳輸持續時間內所佔的總時長不隨波形序列的波特率的變化而變化,第二波形序列在傳輸持續時間內持續高電平,第三波形序列以低電平開始並以高電平結束,且第三波形序列中出現的低電平在傳輸持續時間內所佔的總時長不隨波形序列的波特率的變化而變化,x個波形序列中的各個波形序列分別為以下之一:第一波形序列、第二波形序列和第三波形序列。在本實施例中,不同的波形序列的傳輸持續時間相同,即均以t來傳輸一個比特,相比與現有技術中需要用不同的時間間隔來傳輸一個比特值的方式,本實施例傳輸一個比特所需的時間更短,因此,編碼效率更高,降低了發送端和接收端的成本及負擔。此外,相比於現有技術僅以高低電平來表示比特0和比特1的方式,本實施例提供的波形序列,以第二波形序列和第三波形序列表示比特0或比特1中的一個,也就是說,在傳輸數據比特的波形序列中儘可能多的出現高電平,進而提高供電效率。電平檢測模塊303,用於在波形序列生成及發送模塊發送完成第i個數據幀的比特序列對應的x個波形序列後,檢測接收埠的電平變化;數據確定模塊304,用於根據電平變化以及波形序列的特徵確定接收數據的y個波形序列,其中,y為正整數,y個波形序列中的各個波形序列分別為以下之一:第一波形序列、第二波形序列和第三波形序列;根據接收數據的y個波形序列確定接收數據的比特序列;並在接收數據的比特序列至少包括至少用於指示數據接收成功的標記位的情況下,觸發比特序列獲取模塊獲取第i+1個數據幀的比特序列;比特序列獲取模塊301,還用於在數據確定模塊的觸發下,獲取第i+1個數據幀的比特序列;波形序列生成及發送模塊302,還用於根據第i+1個數據幀的比特序列,連續發送第i+1個數據幀的比特序列中的比特對應的z個波形序列,直至將待發送數據的n個數據幀發送完成,其中,z為正整數,z個波形序列中的各個波形序列分別為以下之一:第一波形序列、第二波形序列和第三波形序列;其中,波形序列生成及發送模塊在發送待發送數據的n個數據幀時,以第一波形序列表示第一數據比特,分別以第二波形序列和第三波形序列表示第二數據比特,第一數據比特為比特1和比特0中的一個,第二數據比特為比特1和比特0中的另一個;在連續發送的至少兩個比特為第二數據比特時,連續發送的至少兩個比特中的第一個比特對應的波形序列為第二波形序列,第二個比特以及後續的比特對應的波形序列為第三波形序列。通過本實施例提供的終端,在傳輸數據比特時使波形序列中高電平所佔的時長儘可能長,從而保證從設備能達到較高的取電效率,且編碼效率更高,降低了發送端和接收端的成本及負擔。本實施例中待發送數據包括n個數據幀,n為正整數,終端30發送第i個數據幀,i的取值依次為1,2,……,n,即,終端30發送完成第i個數據幀後,且在收到對端返回的數據接收成功的響應報文(ack響應報文)後,繼續發送下一個數據幀(即第i+1個數據幀),以此方式,終端30從第1個數據幀開始,在發送完成第1個數據幀後再發送第2個數據幀,如此連續發送n個數據幀,直至將待發送數據的n個數據幀全部發完,其中,每個數據幀都是一串比特序列,待發送數據是由多個數據幀的比特序列組成的比特序列,一個比特對應一個波形序列。作為一種可選的實施方式,在本實施例中,一個數據幀的幀格式可以如圖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冗餘校驗位,可以利用該校驗位對接收數據幀的比特序列進行校驗,以便檢測或校驗接收的數據是否出現錯誤。在本實施例中,第一波形序列以及第三波形序列中的低電平在傳輸持續時間內所佔的總時長不隨所述波形序列的波特率的變化而變化。例如,第一波形序列以及第三波形序列中低電平的持續時長可以預設為一個固定時長,由於主從設備傳輸數據幀的波特率可以改變,這樣低電平佔傳輸持續時間的佔空比就是變化的,而不是一個固定比例,例如,低電平的持續時間固定為10ns,當主設備以50mbs的波特率,即傳輸持續時間為20ns進行波形序列的傳輸時,低電平的持續時間佔傳輸持續時間的50%,即從設備的取電效率為50%;當主設備以25mbs的波特率,即傳輸持續時間為40ns進行波形序列的傳輸時,低電平的持續時間佔傳輸持續時間的25%,即從設備的取電效率為75%,由此可見,低電平的時長固定時,低電平在傳輸持續時間內所佔的總時長與波特率沒有線性關係,即不隨傳輸波形序列的波特率的變化而變化,由此,可以根據實際情況選擇波特率,使得主從設備的接口保持高電平的時間儘可能的長,從而進一步提高兩線通信中的供電效率。其中,作為一種可選的實施方式,所述波形序列的特徵還包括:第一波形序列中出現的低電平在傳輸持續時間內所佔的總時長小於傳輸持續時間的二分之一;和/或,第三波形序列中出現的低電平在傳輸持續時間內所佔的總時長小於傳輸持續時間的二分之一。由此,當波形序列中低電平出現的時長越短,便可以使得主從設備的接口保持高電平的時間儘可能的長,從而進一步提高兩線通信中的供電效率。在本實施例中,作為一種可選的實施方式,第一波形序列以高電平開始並持續第一預設時間跳變為低電平,其中,第一預設時間與傳輸持續時間可以有一定的比例關係,也可以是雙方協商預設的固定時長,例如固定為10ns。作為一種可選的實施方式,第一預設時間t1可以滿足以下預設關係:t1=a*t,其中,t為傳輸持續時間,a為預設的佔空比係數,0<a<1。本實施例中,預設第一波形序列的起始高電平的持續時間t1便於在通過數據幀頭計算一個波形序列的傳輸持續時間t的情況下,利用t1計算出t。在本實施例中,第一波形序列和第三波形序列中可以出現一次下降沿電平跳變(或上升沿電平跳變)或多次下降沿電平跳變(或上升沿電平跳變),在本實施例中,由於在靜默態主從設備之間的一個埠的電平持續為高電平,通過硬體開關或軟體等控制該埠的高電平變為低電平作為一次下降沿的跳變,然後控制該埠恢復為高電平則形成一次上升沿的跳變,作為一種可選的實施方式,第三波形序列在傳輸持續時間內僅出現一次由低電平變為高電平的電平跳變,並以高電平結束;第一波形序列以高電平開始並在傳輸持續時間內僅出現一次由高電平變為低電平的電平跳變,並以低電平結束;或者,第一波形序列以高電平開始並在傳輸持續時間內僅出現一次由高電平變為低電平的電平跳變,並以高電平結束。相比於一個波形序列中包括多次下降沿跳變或多次上升沿跳變的情況,一個波形序列中僅存在一次下降沿電平跳變(或上升沿電平跳變)可以減少控制端的操作複雜性,無需控制發送埠的電平進行多次跳變才能傳輸一個比特,提高數據傳輸的效率。具體地,對本實施例中的3種波形序列的示例性說明可以參照實施例1中圖3~圖5的具體描述,此處不再贅述。在本實施例中,作為一種可選的實施方式,波形序列生成及發送模塊302通過以下方式根據第i個數據幀的比特序列,連續發送第i個數據幀的比特序列中的比特對應的x個波形序列:波形序列生成及發送模塊302,還用於控制發送埠的電平按照第i個數據幀的比特序列中的比特對應的x個波形序列及波形序列的特徵進行變化,以發送第i個數據幀;作為一種可選的實施方式,波形序列生成及發送模塊302通過以下方式根據第i+1個數據幀的比特序列,連續發送第i個數據幀的比特序列中的比特對應的z個波形序列:波形序列生成及發送模塊302,還用於控制發送埠的電平按照第i+1個數據幀的比特序列中的比特對應的z個波形序列及波形序列的特徵進行變化,以發送第i+1個數據幀。例如,通信協議約定:比特「1」用第一波形序列表示,則比特「0」用第二波形序列和第三波形序列表示,本實施例中,比特序列獲取模塊301可以先獲取一個數據幀的比特序列,每個比特對應的波形序列是確定的,例如,波形序列生成及發送模塊302通過控制發送埠產生高低電平,即,通過硬體開關或軟體等控制該發送埠的高電平變為低電平作為一次下降沿的跳變,然後控制該發送埠恢復為高電平則形成一次上升沿的跳變。波形序列是通過發送埠產生的高低電平的變化得到的,由此,就可以產生每個比特對應的波形序列,進而形成一個數據幀對應的波形序列。例如,第i個數據幀的比特序列為11001000,那麼按照通信協議約定,第i個數據幀的比特序列對應的8個波形序列依次為aabcabcc,其中,a為第一波形序列,b為第二波形序列,c為第三波形序列,根據各個波形序列的上述波形序列的特徵,即第一波形序列、第二波形序列以及第三波形序列的傳輸持續時間相同且與傳輸上述波形序列的波特率呈反比,如均為t,第一波形序列的高電平的第一預設時間為t1,第一波形序列與第二波形序列中的低電平的固定時長均為t2,那麼,第i個數據幀的比特序列11001000對應的8個波形序列可以如圖6所示。在發送第i個數據幀中的每個比特時,在相應時刻控制發送埠的電平發生跳變,以形成該比特對應的波形序列,進而形成一個數據幀的比特序列對應的波形序列,傳輸該第i個數據幀。本實施例中,如前文所述,終端30的波形序列生成及發送模塊302是通過控制發送埠產生高低電平的變化來形成一個數據幀的波形序列的,因此,相應的,對端也是通過同樣的方式發送數據的,終端30為了接收對端發送的數據,電平檢測模塊303需要對接收埠的電平變化進行檢測,以便根據電平變化進行波形序列的識別。具體地,作為一種可選的實施方式,電平檢測模塊303可以通過以下方式檢測接收埠的電平變化:對接收埠的電平進行連續採樣,得到採樣後的高低電平變化;或者,檢測接收埠的電平跳變,例如該電平跳變可以為由高電平變為低電平的跳變。例如電平檢測模塊303可以採用差分放大器,差分放大器對接收埠的電平進行檢測比較,在檢測到電平從高電平變低時差分放大器輸出下降沿的跳變。在本實施例中,為了提高了數據重傳的效率以及正確性,在發送完成第i個數據幀的比特序列對應的x個波形序列後,檢測接收埠的電平變化之前,作為一種可選的實施方式,電平檢測模塊303,還用於在預設時間內檢測到接收埠的電平發生變化,則檢測執行接收埠的電平變化的操作;如果在預設時間內沒有檢測到接收埠的電平發生變化,即說明沒有收到對端返回的響應數據,則觸發波形序列生成及發送模塊302執行重傳第i個數據幀的操作;波形序列生成及發送模塊302,還用於在電平檢測模塊303的觸發下,重新根據第i個數據幀的比特序列,連續發送第i個數據幀的比特序列中的比特對應的x個波形序列。本實施例中,終端30可以預先設置發送完一個數據幀後等待接收數據的等待時間,例如,可以為8t,t為傳輸持續時間,在該等待時間內如果接收到對端返回的數據,則說明對端接收到終端30發送的數據幀且接收成功,終端30在接收完對端返回的數據接收響應數據(ack響應報文)後可以繼續發送下一個數據幀;如果在該等待時間沒有接收到對端返回的數據接收成功的響應數據,則重發該數據幀。本實施例中,終端30發送完成一幀數據幀後,在接收到對端返回的ack報文(指示數據接收成功的數據)才繼續發送下一幀數據幀,如果在預設的等待時間沒有接收到ack響應報文,則重發數據幀,本實施例無需將待發送數據的全部數據幀發送完之後再進行數據重發,大大提高了數據重傳的效率和正確率,相較於現有技術中全部重傳的方式,減少了數據傳輸量。此外,作為一種可選的實施方式,本實施例中,電平檢測模塊303,還用於如果在預設時間內沒有檢測到接收埠的電平發生變化,在觸發波形序列生成及發送模塊302執行重傳第i個數據幀的操作之前,判斷重傳的次數是否達到預設次數,如果達到,則結束流程,如果沒有達到,則觸發波形序列生成及發送模塊302執行重傳第i個數據幀的操作。例如,預設次數為5次,重傳一次本地計數器加1,例如,在重傳5次後,計數器計數值為5,當判決在預設時間內沒有檢測到接收埠的電平發生變化時,且判斷計數器的計數值已達到5次,則結束流程。以便在保證重傳的同時不會影響數據傳輸效率。在本實施例中,作為一種可選的實施方式,數據確定模塊304可以通過以下方式根據電平變化以及波形序列的特徵確定接收數據的y個波形序列:獲取一個波形序列的預設持續時間;以該預設持續時間作為每個波形序列的傳輸持續時間,根據電平變化以及波形序列特徵確定接收數據的y個波形序列。根據前文提到的波形序列的特徵,在獲取到一個波形序列的預設持續時間的前提下,第一波形序列的起始高電平的第一預設時間以及第三波形序列的起始高電平的第二預設時間都是可以確定的,因此,確定一個波形序列的方式可以為:在一個波形序列的傳輸持續時間內,根據該波形序列的起始電平的高低,以及在起始電平為高電平時,高電平的持續時長符合上述哪種波形序列的特徵,來確定該波形序列為哪個波形序列,或者,也可以根據接收埠檢測到的電平變化,如通過採樣電平變化得到一個波形序列的波形,判斷該波形符合上述哪種波形序列的特徵,來確定該波形序列為哪個波形序列。例如,在一個波形序列的傳輸持續時間內,該波形序列的起始位置(起始時刻)為低電平,則該波形序列為第三波形序列,如果該波形序列的起始位置(起始時刻)為高電平,且在一個波形序列的傳輸持續時間內出現低電平,則為第一波形序列,如果一直持續為高電平,則為第二波形序列。在本實施例中,所述接收數據依次包括數據幀頭、傳輸數據和數據幀尾,在檢測到數據幀頭對應的波形序列後,就可以確定數據幀中的傳輸數據對應的波形序列的起始位置,從該起始位置開始可以根據檢測到的電平變化(如下降沿的電平跳變)符合上述哪種波形序列的特徵來確定第一個波形序列,在持續一個波形序列的傳輸持續時間後,開始確定第二個波形序列,以此直至確定完接收數據中的傳輸數據和數據幀尾對應的波形序列。其中,一個波形序列的預設持續時間可以是通信雙方預先協商好的,通信雙方採用該預先協商好的預設持續時間(即波特率的反比)進行數據傳輸,也可以是從數據幀頭中解析得到的,相較於前者,後者可以更靈活選擇波特率進行數據傳輸,對端可以視當前的傳輸環境以及對端支持的接收數據的速率選擇雙方支持的最高的波特率進行數據傳輸,本端只要解析數據幀頭就可以獲得當前的波特率,由此,可以採用通信雙方支持的最大波特率進行數據傳輸,以達到高速的數據傳輸的效果。具體地,關於數據幀頭的具體描述、通過數據幀頭解析計算得到一個波形序列的預設持續時間的具體方式以及數據幀尾的具體描述可以參見實施例1中步驟s106中的詳細描述,此處不再贅述。此外,作為一種可選的實施方式,本實施例中,數據確定模塊304,還用於在接收數據的比特序列沒有包括至少用於指示數據接收成功的標記位的情況下,觸發波形序列生成及發送模塊302執行重傳第i個數據幀的操作;波形序列生成及發送模塊302,還用於在接收數據的比特序列沒有包括至少用於指示數據接收成功的標記位的情況下,重新根據第i個數據幀的比特序列,連續發送第i個數據幀的比特序列中的比特對應的x個波形序列。本實施例中,終端30發送完成一幀數據幀後,在接收到對端返回的ack報文(指示數據接收成功的數據)才繼續發送下一幀數據幀,如果在預設的等待時間沒有接收到ack響應報文,則重發數據幀,本實施例無需將待發送數據的全部數據幀發送完之後再進行數據重發,大大提高了數據重傳的效率和正確率,相較於現有技術中全部重傳的方式,減少了數據傳輸量。通過本實施例提供的終端,在通信的同時也能實現為從設備供電的效果,進一步地,在傳輸數據時使波形序列中高電平所佔的時長儘可能長,從而保證從設備能達到較高的取電效率,且編碼效率更高,降低了發送端和接收端的成本及負擔。而且,本實施例中,本端(終端30)發送完成一幀數據幀後,在接收到對端返回的ack報文(指示數據接收成功的數據)才繼續發送下一幀數據幀,如果在預設的等待時間沒有接收到ack響應報文,則重發數據幀,本實施例無需將待發送數據的全部數據幀發送完之後再進行數據重發,大大提高了數據重傳的效率和正確率,相較於現有技術中全部重傳的方式,減少了數據傳輸量。實施例4本實施例提供了一種終端,該終端可以應用於實施例2中的數據傳輸方法,即實施例2中的本端,該終端可以主設備也可以是從設備。如圖10所示,該終端40包括:電平檢測模塊401、波形序列確定模塊402、數據確定模塊403、比特序列獲取模塊404和發送模塊405,其中:電平檢測模塊401,用於檢測接收埠的電平變化;波形序列確定模塊402,用於根據電平變化以及波形序列的特徵確定連續傳輸的波形序列,其中,波形序列包括以下之一:第一波形序列、第二波形序列和第三波形序列,其中,各個波形序列的特徵可以參見實施例1中提到的波形序列的特徵的描述。第一波形序列、第二波形序列和第三波形序列的具體描述也可以參見實施例3中的具體描述。在本實施例中,不同的波形序列的傳輸持續時間相同,即均以t來傳輸一個比特,相比與現有技術中需要用不同的時間間隔來傳輸一個比特值的方式,本實施例傳輸一個比特所需的時間更短,因此,編碼效率更高,降低了發送端和接收端的成本及負擔。此外,相比於現有技術僅以高低電平來表示比特0和比特1的方式,本實施例提供的波形序列,以第二波形序列和第三波形序列表示比特0或比特1中的一個,也就是說,在傳輸數據比特的波形序列中儘可能多的出現高電平,進而提高供電效率。數據確定模塊403,用於根據連續傳輸的波形序列確定接收數據幀的比特序列,其中,以第一波形序列表示第一數據比特,分別以第二波形序列和第三波形序列表示第二數據比特,第一數據比特為比特1和比特0中的一個,第二數據比特為比特1和比特0中的另一個;並在從連續傳輸的波形序列中識別出接收數據幀的數據幀尾對應的k個波形序列後,觸發比特序列獲取模塊獲取待發送數據的比特序列;比特序列獲取模塊404,用於在數據確定模塊從連續傳輸的波形序列中識別出接收數據幀的數據幀尾對應的k個波形序列後,根據接收數據幀中傳輸數據的校驗位對接收數據幀的比特序列進行校驗,如果校驗通過,則獲取待發送數據的比特序列,其中,k為正整數,待發送數據的比特序列至少包括:待傳輸數據,待傳輸數據至少包括:至少用於指示待發送數據為數據接收成功響應報文的標記位;發送模塊405,用於控制發送埠的電平按照待發送數據的比特序列中的比特對應的波形序列以及波形序列的特徵進行變化,以發送待發送數據的比特序列,其中,在連續發送的至少兩個比特為第二數據比特時,連續發送的至少兩個比特中的第一個比特對應的波形序列為第二波形序列,第二個比特以及後續的比特對應的波形序列為第三波形序列。通過本實施例提供的終端,在傳輸數據比特時使波形序列中高電平所佔的時長儘可能長,從而保證從設備能達到較高的取電效率,且編碼效率更高,降低了發送端和接收端的成本及負擔。本實施例中,如實施例3中所述,終端30(對端)通過控制發送埠產生高低電平的變化來形成一個數據幀的波形序列。因此,相應的,終端40(本端)為了接收對端發送的數據,電平檢測模塊401需要對接收埠的電平變化進行檢測,以便波形序列確定模塊402根據電平變化進行波形序列的識別。具體地,作為一種可選的實施方式,電平檢測模塊401可以通過以下方式檢測接收埠的電平變化:對接收埠的電平進行連續採樣,得到採樣後的高低電平變化;或者,檢測接收埠的電平跳變,該電平跳變可以為由高電平變為低電平的跳變,例如,電平檢測模塊401可以採用差分放大器實現,差分放大器對接收埠的電平進行檢測比較,在檢測到電平從高電平變低時差分放大器輸出下降沿的跳變。作為一種可選的實施方式,波形序列確定模塊402可以通過以下方式根據電平變化以及波形序列的特徵確定連續傳輸的波形序列:波形序列確定模塊402,用於獲取一個波形序列的預設持續時間;以預設持續時間作為每個波形序列的傳輸持續時間,根據電平變化以及波形序列特徵確定所述連續傳輸的波形序列。本實施例中波形序列確定模塊402根據所述電平變化以及波形序列的特徵確定連續傳輸的波形序列的具體實施方式以及如何獲得一個波形序列的傳輸持續時間的具體實施方式均可以參見實施例3中數據確定模塊304根據電平變化以及波形序列的特徵確定接收數據的y個波形序列的方式的具體描述。數據確定模塊403在確定連續傳輸的波形序列後,根據預設的波形序列與比特的對應關係對應解析得到接收數據幀的比特序列,例如,以第一波形序列表示第一數據比特,分別以第二波形序列和第三波形序列表示第二數據比特,所述第一數據比特為比特1和比特0中的一個,所述第二數據比特為所述比特1和比特0中的另一個;具體地,例如,可以以所述第一波形序列表示比特「1」,分別以所述第二波形序列和所述第三波形序列表示比特0。其中,在確定接收數據幀的比特序列時,可以確定一個波形序列解析一個對應的比特,也可以在確定接收數據幀的全部波形序列之後,再解析得到對應的比特序列,前一種方式相較於後一種方式,解析得到比特序列的效率更高,但本實施例對此確定接收數據幀的比特序列的方式不做限定。在本實施例中,接收數據幀依次包括數據幀頭、傳輸數據和數據幀尾,其中,數據幀頭的具體描述以及確定方式可以參見實施例1的步驟s106中的描述。作為一種可選的實施方式,本實施例中,可以預先設置數據幀尾對應的波形序列,具體地,數據幀尾的第一個比特對應的波形序列為第二波形序列,數據幀尾的第二個比特對應的波形序列為第二波形序列,或者,數據幀尾的第一個比特對應的波形序列為第三波形序列,數據幀尾的第二個比特對應的波形序列為第二波形序列,或者,數據幀尾的第一個比特對應的波形序列為第一波形序列,數據幀尾的第二個比特對應的波形序列為第三波形序列。在本實施例中,當從所述連續傳輸的波形序列中識別出上述預設的數據幀尾對應的波形序列,則說明數據接收結束。此外,實施例1中的圖2示出了數據幀的幀格式,其中,接收數據幀的傳輸數據中的最後兩個字節byten-1,byten可以作為crc冗餘校驗位,本實施例中,數據確定模塊403可以利用該crc冗餘校驗位對接收數據幀的比特序列進行校驗,校驗通過,則說明接收數據幀無誤,接收數據幀成功後終端40可以向對端(終端30)返回ack響應報文,即觸發比特序列獲取模塊404獲取待發送數據的比特序列,發送模塊405向對端返回攜帶有至少用於指示所述待發送數據為數據接收成功響應報文的標記位的數據幀,以便對端在收到該ack響應報文後,可以繼續發送下一幀數據幀。此外,如果crc校驗不通過,則說明數據接收錯誤,因此,在crc校驗不通過的情況下,則向對端返回nak響應報文,指示數據接收不成功,以便對端即使重傳接收不成功的數據,其中,向對端返回nak響應報文的方式與向對端返回ack響應報文的方式相同,只是在待發送數據中包含的指示信息為數據接收失敗而不是數據接收成功,即,數據確定模塊403在從所述連續傳輸的波形序列中識別出接收數據幀的數據幀尾對應的k個波形序列後,如果根據所述接收數據幀中傳輸數據的校驗位對所述接收數據幀的比特序列進行校驗不通過,則觸發比特序列獲取模塊404獲取待發送數據的比特序列,其中,待發送數據的比特序列至少包括:待傳輸數據,待傳輸數據至少包括:至少用於指示所述待發送數據為數據接收失敗響應報文的標記位,發送模塊405控制發送埠的電平按照所述待發送數據的比特序列中的比特對應的波形序列以及波形序列的特徵進行變化,以發送待發送數據的比特序列。在本實施例中,發送模塊405,用於控制發送埠的電平按照待發送數據的比特序列中的比特對應的波形序列以及波形序列的特徵進行變化,以發送待發送數據的比特序列。其中,以第一波形序列表示第一數據比特,分別以第二波形序列和第三波形序列表示第二數據比特,第一數據比特為比特1和比特0中的一個,第二數據比特為所述比特1和比特0中的另一個,在連續發送的至少兩個比特為第二數據比特時,所述連續發送的至少兩個比特中的第一個比特對應的波形序列為第二波形序列,第二個比特以及後續的比特對應的波形序列為第三波形序列。例如,通信協議約定:比特「1」用第一波形序列表示,則比特「0」用第二波形序列和第三波形序列表示,本實施例中,每個比特對應的波形序列是確定的,例如,發送模塊405通過控制發送埠產生高低電平,即,通過硬體開關或軟體等控制該埠的高電平變為低電平作為一次下降沿的跳變,然後控制該埠恢復為高電平則形成一次上升沿的跳變,波形序列是通過發送埠產生的高低電平的變化得到的,由此,就可以產生每個比特對應的波形序列,進而形成待發送數據的比特序列。例如,待發送數據的比特序列為11001000,那麼按照通信協議約定,待發送數據的比特序列對應的8個波形序列依次為第一波形序列、第一波形序列、第二波形序列、第三波形序列、第一波形序列、第二波形序列、第三波形序列、第三波形序列,根據各個波形序列的上述波形序列的特徵,即第一波形序列、第二波形序列以及第三波形序列的傳輸持續時間相同且與傳輸上述波形序列的波特率呈反比,如均為t,那麼,待發送數據的比特序列11001000對應的波形序列可以如圖6所示,在發送待發送數據中的每個比特時,在相應時刻控制發送埠的電平發生跳變,以形成該比特對應的波形序列,進而形成待發送數據的比特序列對應的波形序列,傳輸該待發送數據。通過本實施例提供的終端,在通信的同時也能實現為從設備供電的效果,進一步地,在傳輸數據時使波形序列中高電平所佔的時長儘可能長,從而保證從設備能達到較高的取電效率。而且,本實施例中,如果本端(終端40)成功接收完成對端發送的一幀數據幀後,會向對端返回ack響應報文,如果接收數據錯誤,則會向對端返回nak響應報文,以便對端及時重發本端接收失敗的數據幀,因此,本實施例中,數據幀的重發無需等到接收完對端發送的全部數據幀,大大提高了數據重傳的效率和正確率,相較於現有技術中全部重傳的方式,減少了數據傳輸量。實施例5針對實施例1提供的數據傳輸方法,本實施例以本端為主設備為例,提供了一種可選的數據傳輸方法,圖11是本實施例的一種數據傳輸方法的流程圖。如圖11所示,該數據傳輸方法主要包括以下步驟(s301~s307):步驟s301,主設備獲取待發送數據,並將待發送數據的n個數據幀存入fifo數據緩存器,其中,n為正整數;其中,每個數據幀都是一串比特序列,待發送數據是由多個數據幀的比特序列組成的比特序列。一個數據幀的幀格式可以參見實施例1中步驟s101中的描述,此處不再贅述。步驟s302,主設備發送當前數據幀;其中,主設備當前發送的該數據幀為從fifo數據緩存器中取出的數據幀,可以為n個數據幀中的第i個數據幀,i個取值範圍為1,2,3……n。本實施例中,在靜默態,發送埠保持高電平,當開始發送數據時,可以控制發送埠的電平按照該第i個數據幀的比特序列對應的波形序列以及波形序列的特徵進行變化,以發送第i個數據幀。具體地,主設備發送第i個數據幀的方式以及對波形序列的種類以及波形序列的特徵均可以參見實施例1的步驟s104中的描述,此處不再贅述。由此,可以保證在發送數據的同時從設備可以達到較高的取電效率。步驟s303,在發送完成當前數據幀後,開始計時,判斷在預設時間內是否收到ack響應報文,如果收到,則執行步驟s305,如果沒有收到,則執行步驟s304;在本實施例中,主設備只有在接收到從設備返回的ack響應報文後,才會向從設備繼續發送下一幀數據幀,由此提高數據傳輸的正確率,減少數據傳輸量。其中,主設備的時鐘計時可以預設一個ack等待時間,該預設的等待時間可以根據波特率以及本領域技術人員的經驗進行設定,如果超過預設的等待時間,即使接收到從設備返回的ack響應報文,主設備還是會認為從設備接收錯誤,執行步驟s304,進行重傳。具體地,可以檢測接收埠的電平變化,進而根據電平變化以及波形序列的特徵確定波形序列,依據波形序列與比特的對應關係,確定接收數據的比特序列,從而確定該接收數據中是否包含有ack響應報文的指示信息,具體方式可以參見實施例1中的步驟s105~s108中的描述,此處不再贅述。步驟s304,判斷是否超過重傳次數,如果超過,結束流程,如果沒有超過,則返回步驟s302;步驟s305,判斷fifo數據緩存器是否為空,如果是,則數據發送流程結束,否則,執行步驟s306;步驟s306,從fifo數據緩存器中取出下一數據幀作為當前數據幀,判斷當前數據幀是否為緩存區內的最後一個數據幀,如果是,則執行步驟s307;否則,直接轉至步驟s301發送當前數據幀。步驟s307,在該數據幀中包含指示當前數據幀為最後一幀的標識,然後返回步驟s301。其中,在該數據幀中添加指示當前數據幀為最後一幀的標識的方式可以為:在數據幀的傳輸數據中包含至少1比特的用於指示當前數據幀為最後一幀的標識位。實施例6針對實施例2提供的數據傳輸方法,本實施例以本端為從設備為例,提供了一種可選的數據傳輸方法,圖12是本實施例的一種數據傳輸方法的流程圖。如圖12所示,該數據傳輸方法主要包括以下步驟(s401~s405):步驟s401,開始接收數據,接收第i個數據幀;在本實施例中,在靜默態時,接收埠的電平持續為高電平,當檢測到接收埠的電平發生下降沿的跳變時,則開始接收數據,該第一個下降沿的跳變為第i個數據幀中的第一個比特對應的波形序列,其中,i的取值依次為1,2,3,……n,n為正整數。一般來說,通信雙方為了傳輸數據的方便,不會將數據幀頭的前幾個波形序列設置為第二波形序列,因為這樣會增加接收端檢測電平變化以及識別數據幀頭的麻煩,因此,為了便利,至少會將數據幀頭的第一個波形序列設置為第一波形序列或第三波形序列,這樣在接收埠檢測到的第一個下降沿跳變即為第一個比特對應的波形序列,便於接收端確定數據幀頭。具體地,接收第i個數據幀,可以檢測接收埠的電平變化,進而根據電平變化以及波形序列的特徵確定波形序列,依據波形序列與比特的對應關係,確定接收數據的比特序列,具體方式可以參見實施例2中的步驟s201~s203中的描述,此處不再贅述。步驟s402,利用數據幀中的校驗位進行crc冗餘校驗,如果校驗通過,則執行步驟s404;否則執行步驟s403;本實施例中,數據幀的幀結構可以參見實施例1中圖2所示的幀結構,其中,數字幀的待傳輸數據中的最後兩個字節byten-1,byten可以作為crc冗餘校驗位,可以利用該校驗位對接收數據幀的比特序列進行校驗,以便檢測或校驗接收的數據是否出現錯誤。如果數據接收錯誤,則需要向主設備返回nak響應報文,指示數據接收不成功。步驟s403,向主設備返回nak響應報文;其中,向主設備返回nak響應報文的方式與向主設備返回ack響應報文的方式相同,只是在待發送數據中包含的指示信息為數據接收錯誤而不是數據接收成功,具體地,從設備可以控制發送埠的電平按照待發送數據(nak響應報文)的比特序列中的比特對應的波形序列以及波形序列的特徵進行變化,以發送所述待發送數據的比特序列;其中,待發送數據(nak響應報文)的比特序列至少包括:待傳輸數據,所述待傳輸數據至少包括:至少用於指示待傳輸數據為數據接收失敗響應報文的標記位,具體的發送數據的方式可以參見實施例2中的步驟s205中的描述,此處不再贅述。步驟s404,將第i個數據幀放入fifo數據緩衝器中,並向主設備返回ack響應報文;其中,向主設備返回ack響應報文的方式與步驟s403返回nak響應報文的方式相同,只是待傳輸數據至少包括:至少用於指示所述待發送數據為數據接收成功響應報文的標記位。步驟s405,判斷該第i個數據幀是否為最後一幀,如果是,則數據接收完成。具體地,判斷該第i個數據幀是否為最後一幀可以從該數據幀中是否包含至少1比特的用於指示當前數據幀為最後一幀的標識位,如果是,則說明當前的數據幀就是最後一幀。至此,從設備接收完成主設備發送的n個數據幀。流程圖中或在此以其他方式描述的任何過程或方法描述可以被理解為,表示包括一個或更多個用於實現特定邏輯功能或過程的步驟的可執行指令的代碼的模塊、片段或部分,並且本發明的優選實施方式的範圍包括另外的實現,其中可以不按所示出或討論的順序,包括根據所涉及的功能按基本同時的方式或按相反的順序,來執行功能,這應被本發明的實施例所屬
技術領域:
的技術人員所理解。應當理解,本發明的各部分可以用硬體、軟體、固件或它們的組合來實現。在上述實施方式中,多個步驟或方法可以用存儲在存儲器中且由合適的指令執行系統執行的軟體或固件來實現。例如,如果用硬體來實現,和在另一實施方式中一樣,可用本領域公知的下列技術中的任一項或他們的組合來實現:具有用於對數據信號實現邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(pga),現場可編程門陣列(fpga)等。本
技術領域:
的普通技術人員可以理解實現上述實施例方法攜帶的全部或部分步驟是可以通過程序來指令相關的硬體完成,所述的程序可以存儲於一種計算機可讀存儲介質中,該程序在執行時,包括方法實施例的步驟之一或其組合。此外,在本發明各個實施例中的各功能單元可以集成在一個處理模塊中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個模塊中。上述集成的模塊既可以採用硬體的形式實現,也可以採用軟體功能模塊的形式實現。所述集成的模塊如果以軟體功能模塊的形式實現並作為獨立的產品銷售或使用時,也可以存儲在一個計算機可讀取存儲介質中。上述提到的存儲介質可以是只讀存儲器,磁碟或光碟等。在本說明書的描述中,參考術語「一個實施例」、「一些實施例」、「示例」、「具體示例」、或「一些示例」等的描述意指結合該實施例或示例描述的具體特徵、結構、材料或者特點包含於本發明的至少一個實施例或示例中。在本說明書中,對上述術語的示意性表述不一定指的是相同的實施例或示例。而且,描述的具體特徵、結構、材料或者特點可以在任何的一個或多個實施例或示例中以合適的方式結合。儘管上面已經示出和描述了本發明的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本發明的限制,本領域的普通技術人員在不脫離本發明的原理和宗旨的情況下在本發明的範圍內可以對上述實施例進行變化、修改、替換和變型。本發明的範圍由所附權利要求及其等同限定。當前第1頁12

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀