欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種BLE5.0協(xié)議系統(tǒng)及系統(tǒng)中應(yīng)用的軟硬件交互接口的制作方法

文檔序號(hào):12731236閱讀:676來(lái)源:國(guó)知局
一種BLE5.0協(xié)議系統(tǒng)及系統(tǒng)中應(yīng)用的軟硬件交互接口的制作方法與工藝

本發(fā)明涉及一種BLE5.0協(xié)議系統(tǒng)及系統(tǒng)中應(yīng)用的軟硬件交互接口,屬于無(wú)線(xiàn)通信技術(shù)領(lǐng)域。



背景技術(shù):

低功耗藍(lán)牙技術(shù)(BLE)是當(dāng)前發(fā)展最快使用最為普遍的幾種無(wú)線(xiàn)傳輸技術(shù)之一,BLE已經(jīng)滲透到了我們生活的各個(gè)地方,目前使用較為普遍的智能手機(jī)無(wú)一不集成BLE通信模塊,BLE模塊由于其低成本,低功耗等特性,被廣泛應(yīng)用于家庭終端設(shè)備,環(huán)境監(jiān)測(cè),燈光控制,無(wú)線(xiàn)升級(jí)等各個(gè)方面。物聯(lián)網(wǎng)的普及對(duì)BLE協(xié)議的更新迭代起到了至關(guān)重要的作用,協(xié)議的快速實(shí)現(xiàn)和易于擴(kuò)展對(duì)一線(xiàn)開(kāi)發(fā)人員提出了更高的要求。由于藍(lán)牙協(xié)議提供了從底層物理層到上層應(yīng)用層的完整協(xié)議,所以協(xié)議實(shí)現(xiàn)難度增大,協(xié)議功能變得十分復(fù)雜,不合理的協(xié)議層次劃分會(huì)增加協(xié)議實(shí)現(xiàn)難度,不便于后續(xù)協(xié)議更新擴(kuò)展,延長(zhǎng)產(chǎn)品上線(xiàn)周期,因此在實(shí)現(xiàn)過(guò)程依據(jù)功能對(duì)協(xié)議進(jìn)行層次劃分顯得尤為重要。

BLE軟件協(xié)議棧的開(kāi)發(fā)是實(shí)現(xiàn)整個(gè)BLE系統(tǒng)過(guò)程中最為繁雜也是耗時(shí)最長(zhǎng)的環(huán)節(jié),各層次間功能交錯(cuò),如果不能有效地進(jìn)行層次的劃分會(huì)嚴(yán)重影響系統(tǒng)開(kāi)發(fā)進(jìn)度。

BLE協(xié)議棧實(shí)現(xiàn)中,鏈路層功能開(kāi)發(fā)實(shí)現(xiàn)占據(jù)了很長(zhǎng)周期,在協(xié)議中針對(duì)BLE鏈路層功能也進(jìn)行了很大篇幅的描述,但是沒(méi)有根據(jù)功能對(duì)鏈路層進(jìn)行模塊劃分,如果依照協(xié)議進(jìn)行系統(tǒng)開(kāi)發(fā)很難在短期開(kāi)發(fā)出高效的核心協(xié)議棧,而且能夠獲得的公開(kāi)資料中也沒(méi)有文檔能針對(duì)該部分的實(shí)現(xiàn)進(jìn)行詳細(xì)描述。

BLE協(xié)議棧實(shí)現(xiàn)中軟硬件接口的設(shè)計(jì)屬于系統(tǒng)功能實(shí)現(xiàn)最為關(guān)鍵的地方,涉及到了軟硬件功能的劃分,協(xié)議中沒(méi)有針對(duì)軟硬件交互接口功能劃分的描述,該部分在實(shí)現(xiàn)過(guò)程中是研發(fā)者自由發(fā)揮的地方,具體的劃分及實(shí)現(xiàn)方式各不相同。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明提出一種基于鏈表的軟硬件交互接口,接口有效地屏蔽了底層硬件實(shí)現(xiàn)細(xì)節(jié),完成數(shù)據(jù)的收發(fā)和對(duì)硬件參數(shù)的獲取和配置,方便實(shí)現(xiàn),易于擴(kuò)展。鏈路層作為BLE5.0協(xié)議中重要的模塊,將鏈路層模塊進(jìn)行劃分,使得各層次功能更加明確,降低實(shí)現(xiàn)難度,縮短調(diào)試周期,在此基礎(chǔ)上進(jìn)行協(xié)議功能擴(kuò)展更加方便。本發(fā)明還提出了一種BLE5.0協(xié)議系統(tǒng),將協(xié)議中規(guī)定的各個(gè)功能進(jìn)行有效合理的劃分,易于功能的實(shí)現(xiàn)和維護(hù)。

本發(fā)明是通過(guò)以下技術(shù)方案來(lái)實(shí)現(xiàn)的:一種應(yīng)用于BLE5.0協(xié)議系統(tǒng)的軟硬件交互接口,所述接口是一種基于鏈表的軟硬件交互接口,完成控制器和物理層之間的數(shù)據(jù)及信息交互,該接口基于Event實(shí)現(xiàn),實(shí)現(xiàn)時(shí)每個(gè)Event使用一個(gè)名為ECPT的結(jié)構(gòu)表示,每個(gè)ECPT包含了描述一個(gè)Event的所有參數(shù)信息,ECPT結(jié)構(gòu)關(guān)聯(lián)一個(gè)數(shù)據(jù)接收鏈表和一個(gè)數(shù)據(jù)發(fā)送鏈表,軟硬件交互接口的硬件側(cè)通過(guò)周期性地輪詢(xún)Event列表來(lái)判斷ECPT是否有效。

一種應(yīng)用于BLE5.0協(xié)議系統(tǒng)的軟硬件交互方法,所述方法是一種基于鏈表的軟硬件交互方法,完成控制器和物理層之間的數(shù)據(jù)及信息交互,包括如下步驟:

(1)當(dāng)BLE5.0系統(tǒng)進(jìn)行數(shù)據(jù)發(fā)送操作時(shí),軟硬件交互接口的軟件側(cè)將準(zhǔn)備好的數(shù)據(jù)放在發(fā)送緩存中;

(2)設(shè)置ECPT有效標(biāo)志來(lái)告知軟硬件交互接口硬件側(cè)進(jìn)行數(shù)據(jù)發(fā)送;

(3)當(dāng)硬件輪詢(xún)到該ECPT有效時(shí),依據(jù)ECPT中指定的參數(shù)獲取發(fā)送緩存中的內(nèi)容,并將待發(fā)送數(shù)據(jù)發(fā)送到空口;

(4)當(dāng)BLE5.0系統(tǒng)進(jìn)行數(shù)據(jù)接收時(shí),硬件將接收到的數(shù)據(jù)進(jìn)行解白化、CRC校驗(yàn)操作后放在接收緩存中,通過(guò)中斷方式告知軟硬件交互接口軟件側(cè),交互接口軟件側(cè)獲取中斷并將數(shù)據(jù)取出進(jìn)而交由上層軟件進(jìn)行進(jìn)一步處理。

進(jìn)一步地,所述方法包括三種交互方式,分別為共享內(nèi)存、寄存器組和中斷,共享內(nèi)存用于完成設(shè)備間數(shù)據(jù)收發(fā)過(guò)程控制及數(shù)據(jù)包傳遞的步驟,寄存器組用于完成硬件參數(shù)配置以及在設(shè)備工作過(guò)程中完成狀態(tài)參數(shù)的獲取的步驟,中斷功能用于完成異步通知軟件執(zhí)行相關(guān)動(dòng)作的步驟。

優(yōu)選地,所述軟硬件交互方法在共享內(nèi)存下實(shí)現(xiàn)。

一種BLE5.0協(xié)議系統(tǒng),所述BLE協(xié)議棧由下到上分為物理層、核心協(xié)議棧和應(yīng)用層協(xié)議棧,其中核心協(xié)議棧包括主機(jī)協(xié)議棧和控制器,主機(jī)協(xié)議棧包括安全管理協(xié)議、屬性協(xié)議、邏輯鏈路控制和適配層協(xié)議,控制器包括鏈路層,物理層包括基帶和射頻,所述主機(jī)協(xié)議棧和控制器之間采用協(xié)議規(guī)定的HCI接口協(xié)議進(jìn)行通信,所述控制器和物理層之間采用基于鏈表的軟硬件交互接口完成數(shù)據(jù)及信息交互。

進(jìn)一步地,該系統(tǒng)可通過(guò)單芯片模式或雙芯片模式實(shí)現(xiàn)。

優(yōu)選地,所述鏈路層與主機(jī)協(xié)議棧通信通過(guò)HCI接口實(shí)現(xiàn),與硬件的交互通過(guò)共享內(nèi)存實(shí)現(xiàn)。

一種實(shí)現(xiàn)鏈路層分層的BLE5.0協(xié)議系統(tǒng),包括主機(jī)協(xié)議棧、控制器、物理層,控制器包括鏈路層,物理層包括基帶和射頻,所述控制器和物理層之間采用軟硬件交互接口完成數(shù)據(jù)及信息交互,所述鏈路層劃分為如下模塊:

管理模塊,負(fù)責(zé)鏈路層頂層狀態(tài)機(jī)的管理和跳轉(zhuǎn);

控制模塊,完成在連接狀態(tài)下設(shè)備間信息交互及狀態(tài)信息維護(hù),同時(shí)提供數(shù)據(jù)及控制信息通路,完成設(shè)備狀態(tài)管理及數(shù)據(jù)傳輸;

公共模塊,負(fù)責(zé)接收來(lái)自主機(jī)側(cè)的配置命令,以及向主機(jī)側(cè)傳遞命令執(zhí)行結(jié)果;

調(diào)試模塊,負(fù)責(zé)完成直測(cè)模式下系統(tǒng)工作狀態(tài)管理,同時(shí)在開(kāi)發(fā)階段進(jìn)行硬件的測(cè)試和調(diào)試;

驅(qū)動(dòng)模塊,是軟硬件接口的實(shí)現(xiàn)模塊,負(fù)責(zé)數(shù)據(jù)流在硬件和軟件之間的交互,同時(shí)是系統(tǒng)廣播、掃描、初始化、連接功能的實(shí)現(xiàn)模塊。

進(jìn)一步地,所述頂層狀態(tài)機(jī)包括廣播態(tài)、掃描態(tài)、起始態(tài)、連接態(tài)和空閑態(tài),該五種狀態(tài)的維護(hù)由管理模塊實(shí)現(xiàn)。

進(jìn)一步地,所述管理模塊實(shí)現(xiàn)在廣播態(tài),掃描態(tài),起始態(tài)等非連接狀態(tài)下實(shí)現(xiàn)對(duì)設(shè)備的管理和調(diào)度,完成和主機(jī)側(cè)的事件及命令交互。

進(jìn)一步地,所述驅(qū)動(dòng)模塊由管理模塊、控制模塊、公共模塊直接調(diào)度。

優(yōu)選地,所述各個(gè)模塊均由單獨(dú)的狀態(tài)機(jī)實(shí)現(xiàn),模塊間采用消息傳遞機(jī)制完成信息傳遞。

優(yōu)選地,所述鏈路層與主機(jī)協(xié)議棧通信通過(guò)HCI接口實(shí)現(xiàn),與物理層的交互通過(guò)共享內(nèi)存實(shí)現(xiàn)。

優(yōu)選地,所述控制器和物理層之間采用的軟硬件交互接口是一種基于鏈表的軟硬件交互接口,完成控制器和物理層之間的數(shù)據(jù)及信息交互,該接口基于Event實(shí)現(xiàn),實(shí)現(xiàn)時(shí)每個(gè)Event使用一個(gè)名為ECPT的結(jié)構(gòu)表示,每個(gè)ECPT包含了描述一個(gè)Event的所有參數(shù)信息,ECPT結(jié)構(gòu)關(guān)聯(lián)一個(gè)數(shù)據(jù)接收鏈表和一個(gè)數(shù)據(jù)發(fā)送鏈表,軟硬件交互接口的硬件側(cè)通過(guò)周期性地輪詢(xún)Event列表來(lái)判斷ECPT是否有效。優(yōu)選地,所述軟硬件交互接口在共享內(nèi)存下實(shí)現(xiàn)。

綜上所述,本發(fā)明與現(xiàn)有技術(shù)相比具有如下優(yōu)點(diǎn):

基于鏈表的軟硬件交互接口基于Event定義,結(jié)合數(shù)據(jù)收發(fā)鏈表,完成和硬件的信息交互及數(shù)據(jù)傳輸,作為系統(tǒng)實(shí)現(xiàn)的關(guān)鍵環(huán)節(jié),該接口的提出便于軟硬件同步開(kāi)發(fā)及聯(lián)合調(diào)試,在BLE系統(tǒng)開(kāi)發(fā)階段軟件模塊通過(guò)該接口實(shí)現(xiàn)對(duì)于功能的模擬測(cè)試,硬件模塊通過(guò)該接口實(shí)現(xiàn)對(duì)于部分功能的驗(yàn)證,系統(tǒng)集成階段通過(guò)該接口實(shí)現(xiàn)對(duì)于系統(tǒng)的聯(lián)和調(diào)試,接口方便擴(kuò)展,便于協(xié)議的更新迭代。

通過(guò)對(duì)BLE5.0整體協(xié)議按照功能進(jìn)行有效的層次及模塊劃分,各層次功能明確,模塊間通信接口簡(jiǎn)單,便于協(xié)作開(kāi)發(fā)和集成。通過(guò)對(duì)鏈路層進(jìn)行有效的模塊劃分,完成鏈路層功能的實(shí)現(xiàn),該實(shí)現(xiàn)方式滿(mǎn)足了協(xié)議需求,便于快速實(shí)現(xiàn)和調(diào)試,同時(shí)在不對(duì)現(xiàn)有架構(gòu)進(jìn)行變更的基礎(chǔ)上,完成基于新協(xié)議的功能擴(kuò)展,實(shí)現(xiàn)產(chǎn)品的快速迭代,縮短產(chǎn)品上市周期,模塊間的通信采用消息傳遞機(jī)制,實(shí)現(xiàn)數(shù)據(jù)傳輸零拷貝,提高了系統(tǒng)工作效率。

附圖說(shuō)明

圖1是BLE5.0協(xié)議系統(tǒng)結(jié)構(gòu)示意圖;

圖2是鏈路層功能模塊劃分示意圖;

圖3是鏈路層頂層狀態(tài)機(jī)示意圖;

圖4是軟硬件交互接口在系統(tǒng)中的位置示意圖;

圖5是軟硬件交互方式示意圖;

圖6是基于鏈表的軟硬件交互接口示意圖。

具體實(shí)施方式

為進(jìn)一步描述本發(fā)明,下面結(jié)合附圖對(duì)其作進(jìn)一步說(shuō)明。

如圖1所示,BLE5.0協(xié)議系統(tǒng)結(jié)構(gòu)示意圖,BLE協(xié)議棧由下到上分為物理層、核心協(xié)議棧和應(yīng)用層協(xié)議棧,其中核心協(xié)議棧包括主機(jī)協(xié)議棧和控制器,主機(jī)協(xié)議棧包括安全管理協(xié)議、屬性協(xié)議、邏輯鏈路控制和適配層協(xié)議,控制器包括鏈路層,物理層包括基帶和射頻,主機(jī)協(xié)議棧和控制器之間采用協(xié)議規(guī)定的HCI接口協(xié)議進(jìn)行通信,控制器和物理層之間采用基于鏈表的軟硬件交互接口完成數(shù)據(jù)及信息交互。

應(yīng)用層協(xié)議棧是協(xié)議規(guī)定的多種BLE應(yīng)用場(chǎng)景的具體實(shí)現(xiàn),本發(fā)明基于協(xié)議定義的多種應(yīng)用協(xié)議,包括溫濕度服務(wù)、環(huán)境服務(wù)、電池服務(wù)等,對(duì)協(xié)議進(jìn)行了深層次的二次封裝,使得用戶(hù)在不太了解BLE協(xié)議細(xì)節(jié)的基礎(chǔ)上也能進(jìn)行BLE應(yīng)用的開(kāi)發(fā),極大簡(jiǎn)化了開(kāi)發(fā)流程。

主機(jī)協(xié)議棧完成主機(jī)側(cè)數(shù)據(jù)及控制通路管理、安全管理、設(shè)備發(fā)現(xiàn)、服務(wù)發(fā)現(xiàn)等功能,通過(guò)主機(jī)控制器接口(HCI)與底層協(xié)議棧進(jìn)行交互。

主機(jī)控制器接口(HCI)用于主機(jī)協(xié)議棧和控制器的通信,目前有兩種常見(jiàn)的BLE系統(tǒng)實(shí)現(xiàn)方式,即單芯片模式和雙芯片模式。單芯片的實(shí)現(xiàn)方式中主機(jī)協(xié)議棧和控制器運(yùn)行于同一個(gè)處理器,兩者之間的通信在基于HCI接口的基礎(chǔ)上可以實(shí)現(xiàn)用戶(hù)的自定義和擴(kuò)展,接口完全由軟件實(shí)現(xiàn),無(wú)需特定的物理通信接口。雙芯片模式下,主機(jī)控制器接口基于UART等物理通信接口實(shí)現(xiàn),遵循協(xié)議中定義的HCI接口標(biāo)準(zhǔn),使得控制器可以適配不同的主機(jī)協(xié)議棧,提高了使用靈活性。

鏈路層實(shí)現(xiàn)了設(shè)備在廣播態(tài)、掃描態(tài)、起始態(tài)、連接態(tài)下?tīng)顟B(tài)機(jī)管理,完成主機(jī)到硬件的數(shù)據(jù)和控制通路實(shí)現(xiàn),完成協(xié)議中規(guī)定的各種鏈路層控制及交互過(guò)程的實(shí)現(xiàn)。鏈路層對(duì)數(shù)據(jù)包的操作都是在共享內(nèi)存中進(jìn)行的,實(shí)現(xiàn)了數(shù)據(jù)收發(fā)在主機(jī)控制器接口(控制器側(cè))到軟硬件交互接口整個(gè)處理過(guò)程中的零拷貝操作,提高了系統(tǒng)工作效率。

物理層由基帶和射頻模塊組成,協(xié)同上層協(xié)議棧完成BLE5.0協(xié)議分層系統(tǒng)功能。

在核心協(xié)議棧中,鏈路層完成設(shè)備廣播、掃描、連接等狀態(tài)的定義和實(shí)現(xiàn),完成物理通道選擇、相關(guān)鏈路狀態(tài)定義、設(shè)備過(guò)濾機(jī)制的實(shí)現(xiàn)等,對(duì)上銜接主機(jī)側(cè)高層協(xié)議,對(duì)下實(shí)現(xiàn)對(duì)于硬件的調(diào)度和數(shù)據(jù)收發(fā)通路及控制通路的管理,同時(shí)負(fù)責(zé)該層核心幀的成幀操作,因此合理的功能模塊劃分對(duì)實(shí)現(xiàn)鏈路層功能尤為重要,為此本發(fā)明對(duì)鏈路層實(shí)現(xiàn)的功能模塊進(jìn)行劃分,具體劃分如圖2所示。

鏈路層與主機(jī)協(xié)議棧通信通過(guò)HCI接口實(shí)現(xiàn),與硬件的交互通過(guò)共享內(nèi)存實(shí)現(xiàn),在鏈路層功能具體實(shí)現(xiàn)過(guò)程中依據(jù)功能需求將該層劃分為:管理模塊,控制模塊,公共模塊,調(diào)試模塊,驅(qū)動(dòng)模塊。

管理模塊負(fù)責(zé)鏈路層頂層狀態(tài)機(jī)的管理和跳轉(zhuǎn),依據(jù)協(xié)議,該模塊實(shí)現(xiàn)了對(duì)5個(gè)系統(tǒng)工作狀態(tài)的維護(hù),包括廣播態(tài)、掃描態(tài)、連接態(tài)、起始態(tài)、空閑態(tài),同時(shí)模塊實(shí)現(xiàn)了在廣播態(tài)、掃描態(tài)、起始態(tài)等非連接狀態(tài)下對(duì)設(shè)備的管理和調(diào)度,完成和主機(jī)側(cè)的事件及命令交互,鏈路層頂層狀態(tài)機(jī)如圖3所示。

控制模塊完成在連接狀態(tài)下設(shè)備間信息交互及狀態(tài)信息維護(hù),同時(shí)提供數(shù)據(jù)及控制信息通路,完成設(shè)備狀態(tài)管理及數(shù)據(jù)傳輸??刂颇K實(shí)現(xiàn)了協(xié)議中鏈路層所有控制過(guò)程包括連接參數(shù)更新過(guò)程、連接參數(shù)請(qǐng)求過(guò)程、啟動(dòng)/停止加密過(guò)程、特征交互過(guò)程等,同時(shí)實(shí)現(xiàn)了過(guò)程沖突控制、超時(shí)控制等功能。

公共模塊負(fù)責(zé)接收來(lái)自主機(jī)側(cè)的配置命令,如讀取緩存空間大小,系統(tǒng)復(fù)位等,以及向主機(jī)側(cè)傳遞命令執(zhí)行結(jié)果,模塊本身不改變鏈路層狀態(tài)信息,只負(fù)責(zé)對(duì)配置命令的執(zhí)行及狀態(tài)結(jié)果反饋。

調(diào)試模塊負(fù)責(zé)完成直測(cè)模式下系統(tǒng)工作狀態(tài)管理,同時(shí)在開(kāi)發(fā)階段進(jìn)行硬件的測(cè)試和調(diào)試。

驅(qū)動(dòng)模塊是軟硬件接口的實(shí)現(xiàn)模塊,負(fù)責(zé)數(shù)據(jù)流在硬件和軟件之間的交互,同時(shí)是系統(tǒng)廣播、掃描、初始化、連接功能的實(shí)現(xiàn)模塊,通過(guò)讀寫(xiě)寄存器、中斷、共享內(nèi)存等方式,模塊完成數(shù)據(jù)在軟硬件之間的傳遞,同時(shí)控制硬件工作狀態(tài),獲取狀態(tài)信息,該模塊可以由管理模塊、控制模塊、公共模塊等直接調(diào)度,實(shí)現(xiàn)軟硬件信息交互。

本系統(tǒng)通過(guò)劃分功能模塊,簡(jiǎn)化了系統(tǒng)開(kāi)發(fā)和調(diào)試過(guò)程,便于維護(hù)和協(xié)議擴(kuò)展,模塊間采用消息傳遞機(jī)制完成信息傳遞,每個(gè)模塊均由單獨(dú)的狀態(tài)機(jī)實(shí)現(xiàn),緩存空間管理和事件處理均采用零拷貝方式,提高系統(tǒng)工作效率。

控制器的基帶及部分鏈路層功能由硬件實(shí)現(xiàn),鏈路層軟件完成和硬件的直接交互,通過(guò)軟件對(duì)硬件的控制使硬件完成具體任務(wù)的執(zhí)行操作,同時(shí)硬件向軟件反饋動(dòng)作執(zhí)行狀態(tài),因此軟件需要一種接口來(lái)完成與硬件的交互,軟硬件交互接口在整個(gè)系統(tǒng)中的位置如圖4所示。軟硬件交互接口的設(shè)計(jì)和實(shí)現(xiàn)關(guān)系著系統(tǒng)工作效率和穩(wěn)定性,同時(shí)好的交互接口的設(shè)計(jì)能夠加速系統(tǒng)開(kāi)發(fā)和縮短調(diào)試周期。

如圖5所示,本發(fā)明實(shí)現(xiàn)的軟硬件交互接口包括三種方式,即共享內(nèi)存、寄存器組和中斷。共享內(nèi)存主要用于完成設(shè)備間數(shù)據(jù)收發(fā)過(guò)程控制及數(shù)據(jù)包傳遞,寄存器組完成硬件參數(shù)配置以及在設(shè)備工作過(guò)程中完成狀態(tài)參數(shù)的獲取,中斷功能用于異步通知軟件執(zhí)行相關(guān)的動(dòng)作,如數(shù)據(jù)接收、超時(shí)處理、錯(cuò)誤狀態(tài)報(bào)告等。

共享內(nèi)存是系統(tǒng)為實(shí)現(xiàn)軟硬件高效交互專(zhuān)門(mén)劃分的一塊內(nèi)存,軟件和硬件可以直接訪(fǎng)問(wèn)該內(nèi)存塊,完成對(duì)內(nèi)存中數(shù)據(jù)的操作,軟硬件通過(guò)該內(nèi)存塊完成信息交互需要遵循統(tǒng)一的交互格式及流程,結(jié)合BLE協(xié)議規(guī)范,本發(fā)明在共享內(nèi)存方式下設(shè)計(jì)實(shí)現(xiàn)了一種基于鏈表的軟硬件交互接口及方法,包括了格式定義和交互流程定義,如圖6所示。

由于標(biāo)準(zhǔn)規(guī)定,系統(tǒng)進(jìn)行數(shù)據(jù)的收發(fā)都是在Event(事件)中進(jìn)行的,因此基于鏈表的軟硬件交互接口格式及流程的定義需要充分考慮Event的屬性,實(shí)現(xiàn)時(shí)每個(gè)Event使用一個(gè)名為ECPT(事件控制參數(shù)表)的結(jié)構(gòu)表示,每個(gè)ECPT包含了描述一個(gè)Event的所有參數(shù)信息,ECPT結(jié)構(gòu)關(guān)聯(lián)一個(gè)數(shù)據(jù)接收鏈表和一個(gè)數(shù)據(jù)發(fā)送鏈表,軟硬件交互接口硬件側(cè)通過(guò)周期性地輪詢(xún)Event列表來(lái)判斷ECPT是否有效。當(dāng)系統(tǒng)進(jìn)行數(shù)據(jù)發(fā)送操作時(shí),只需要軟硬件交互接口的軟件側(cè)將準(zhǔn)備好的數(shù)據(jù)放在發(fā)送緩存中,通過(guò)設(shè)置ECPT有效標(biāo)志來(lái)告知軟硬件交互接口硬件側(cè)進(jìn)行數(shù)據(jù)發(fā)送,當(dāng)硬件輪詢(xún)到該ECPT有效時(shí),依據(jù)ECPT中指定的參數(shù)獲取發(fā)送緩存中的內(nèi)容,并將待發(fā)送數(shù)據(jù)發(fā)送到空口;當(dāng)系統(tǒng)進(jìn)行數(shù)據(jù)接收時(shí),硬件將接收到的數(shù)據(jù)進(jìn)行解白化、CRC校驗(yàn)操作后放在接收緩存中,通過(guò)中斷方式告知軟硬件交互接口軟件側(cè),交互接口軟件側(cè)獲取中斷并將數(shù)據(jù)取出進(jìn)而交由上層軟件進(jìn)行進(jìn)一步處理。

本發(fā)明實(shí)現(xiàn)的BLE5.0協(xié)議系統(tǒng)、實(shí)現(xiàn)鏈路層分層的BLE5.0協(xié)議系統(tǒng)以及系統(tǒng)中應(yīng)用的基于鏈表的軟硬件交互接口均可以應(yīng)用于其他無(wú)線(xiàn)協(xié)議棧的分層以及實(shí)現(xiàn)上,以上所述是本發(fā)明的優(yōu)選實(shí)施方式,對(duì)于本領(lǐng)域的技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下還可以作出若干改進(jìn),這些改進(jìn)也應(yīng)視為本發(fā)明的保護(hù)范圍。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
平安县| 分宜县| 西乡县| 义乌市| 井陉县| 林州市| 昭苏县| 花莲县| 青田县| 兴城市| 耒阳市| 通许县| 卢龙县| 玛沁县| 台安县| 松潘县| 尤溪县| 锦州市| 民县| 太保市| 格尔木市| 凤凰县| 安新县| 武汉市| 永登县| 永宁县| 荥阳市| 启东市| 吉安市| 牙克石市| 新闻| 广安市| 江源县| 昌江| 双峰县| 房山区| 玛纳斯县| 保德县| 洛浦县| 秦皇岛市| 无锡市|