一種基于藍(lán)牙技術(shù)的單芯片多通道并行推送方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種基于藍(lán)牙技術(shù)的單芯片多通道并行推送方法,包括以下步驟:A、軟件初始化;B、判斷數(shù)據(jù)推送模式是否為無(wú)線(xiàn)推送模式;若不是無(wú)線(xiàn)推送模式,啟動(dòng)無(wú)線(xiàn)數(shù)據(jù)更新模塊,若是無(wú)線(xiàn)推送模式,則進(jìn)行步驟C;C、關(guān)閉軟件的可被發(fā)現(xiàn)功能項(xiàng),啟動(dòng)多任務(wù)分發(fā)功能;D、搜索周邊設(shè)備,形成推送目標(biāo)清單;E、啟動(dòng)無(wú)線(xiàn)推送模塊進(jìn)行并行數(shù)據(jù)推送;F、對(duì)周邊設(shè)備進(jìn)行重新搜索,若發(fā)現(xiàn)新的設(shè)備,則返回步驟E繼續(xù)進(jìn)行并行數(shù)據(jù)推送;若未發(fā)現(xiàn)新的設(shè)備,則結(jié)束本輪推送過(guò)程。本發(fā)明能夠改進(jìn)現(xiàn)有技術(shù)的不足,提高了傳輸效率。
【專(zhuān)利說(shuō)明】一種基于藍(lán)牙技術(shù)的單芯片多通道并行推送方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)傳輸【技術(shù)領(lǐng)域】,尤其是一種基于藍(lán)牙技術(shù)的單芯片多通道并行推送方法。
【背景技術(shù)】
[0002]現(xiàn)有的藍(lán)牙無(wú)線(xiàn)推送方法主要分為兩種:
[0003]1、一對(duì)一的數(shù)據(jù)推送。這種方式的缺點(diǎn)是:傳輸過(guò)程只能在兩臺(tái)終端設(shè)備之間進(jìn)行,效率較低,無(wú)法采用多通道并行方式向多臺(tái)終端設(shè)備同時(shí)推送數(shù)據(jù)。受限于功耗等因素,目前所有移動(dòng)終端內(nèi)置藍(lán)牙均為二級(jí)(Class II)功率,覆蓋范圍一般為10米以?xún)?nèi),極大地限制了數(shù)據(jù)推送的范圍和目標(biāo)設(shè)備數(shù)量。如果終端設(shè)備要向多個(gè)設(shè)備推送數(shù)據(jù),需要重復(fù)上述1.1傳統(tǒng)藍(lán)牙數(shù)據(jù)推送步驟2-步驟4的操作,造成操作過(guò)程繁瑣,操作時(shí)間過(guò)長(zhǎng)。
[0004]2、一對(duì)多的數(shù)據(jù)推送。這種方式的缺點(diǎn)是:功耗大。采用“嵌入式系統(tǒng)+藍(lán)牙模塊或藍(lán)牙適配器”的技術(shù)方案,嵌入式系統(tǒng)大量消耗能量,必然導(dǎo)致整體功耗較大。便攜性差,應(yīng)用不便。由于技術(shù)方案比較復(fù)雜,導(dǎo)致設(shè)備體積比較大,一般至少150mmX IOOmmX 30mm以上,不利于設(shè)備的便攜性。同時(shí)由于系統(tǒng)功耗較大,普通鋰電池?zé)o法支撐設(shè)備長(zhǎng)時(shí)間工作,所以只能通過(guò)電源適配器或者非便攜式電池(例如鉛酸蓄電池、鋰電池組)進(jìn)行供電,完全無(wú)法隨身攜帶。成本高。由于技術(shù)方案復(fù)雜,導(dǎo)致設(shè)備成本較高,最終產(chǎn)品售價(jià)區(qū)間為1500至6000,絕大部分產(chǎn)品售價(jià)高于2000。針對(duì)蘋(píng)果公司iPhone和iPad設(shè)備完全無(wú)效。由于技術(shù)方案限制和蘋(píng)果公司對(duì)自身產(chǎn)品的保護(hù),使得藍(lán)牙無(wú)線(xiàn)廣告機(jī)對(duì)蘋(píng)果系列產(chǎn)品的訪(fǎng)問(wèn)全部失敗,無(wú)法與蘋(píng)果系列產(chǎn)品進(jìn)行任何通信。
【發(fā)明內(nèi)容】
[0005]本發(fā)明要解決的技術(shù)問(wèn)題是提供一種基于藍(lán)牙技術(shù)的單芯片多通道并行推送方法,能夠改進(jìn)現(xiàn)有技術(shù)的不足,提高了傳輸效率。
[0006]為解決上述技術(shù)問(wèn)題,本發(fā)明所采取的技術(shù)方案如下。
[0007]一種基于藍(lán)牙技術(shù)的單芯片多通道并行推送方法,其特征在于包括以下步驟:
[0008]A、軟件初始化,若初始化失敗則重復(fù)此步驟;
[0009]B、判斷數(shù)據(jù)推送模式是否為無(wú)線(xiàn)推送模式;若不是無(wú)線(xiàn)推送模式,則循環(huán)檢測(cè)是否有數(shù)據(jù)更新申請(qǐng),當(dāng)檢測(cè)到數(shù)據(jù)更新申請(qǐng)后,啟動(dòng)無(wú)線(xiàn)數(shù)據(jù)更新模塊進(jìn)行更新,更新完畢后重啟軟件系統(tǒng);若是無(wú)線(xiàn)推送模式,則進(jìn)行步驟C ;
[0010]C、關(guān)閉軟件的可被發(fā)現(xiàn)功能項(xiàng),啟動(dòng)多任務(wù)分發(fā)功能;
[0011]D、搜索周邊設(shè)備,形成推送目標(biāo)清單;
[0012]E、啟動(dòng)無(wú)線(xiàn)推送模塊進(jìn)行并行數(shù)據(jù)推送;
[0013]F、對(duì)周邊設(shè)備進(jìn)行重新搜索,若發(fā)現(xiàn)新的設(shè)備,則返回步驟E繼續(xù)進(jìn)行并行數(shù)據(jù)推送;若未發(fā)現(xiàn)新的設(shè)備,則結(jié)束本輪推送過(guò)程。
[0014]3、作為優(yōu)選,步驟E中,進(jìn)行并行數(shù)據(jù)推送包括以下步驟,[0015]El、啟動(dòng)連接管理任務(wù);
[0016]E2、同時(shí)啟動(dòng)至少兩個(gè)推送任務(wù),開(kāi)始進(jìn)行數(shù)據(jù)推送;
[0017]E3、每個(gè)推送任務(wù)獨(dú)立地搜索是否存在等待推送設(shè)備,若存在等待推送設(shè)備,向等待推送設(shè)備發(fā)出推送請(qǐng)求,如果請(qǐng)求被拒絕,則重新搜索等待推送設(shè)備,如果請(qǐng)求被允許,則以數(shù)據(jù)包的形式依次推送數(shù)據(jù),數(shù)據(jù)推送完畢后,重新搜索等待推送設(shè)備;若不存在等待推送設(shè)備,則結(jié)束本輪推送。
[0018]采用上述技術(shù)方案所帶來(lái)的有益效果在于:
[0019]1:—對(duì)多高效傳輸。本發(fā)明實(shí)現(xiàn)了多于一個(gè)傳輸目標(biāo)的并行傳輸,并提高了并行傳輸速率,大幅提高了傳輸效率。
[0020]2:簡(jiǎn)化傳輸操作流程。用戶(hù)只需要將需要傳輸?shù)奈募?xiě)入本發(fā)明中,就可以實(shí)現(xiàn)對(duì)多個(gè)傳輸目標(biāo)的全自動(dòng)傳輸,減少了用戶(hù)的重復(fù)操作流程,節(jié)約了用戶(hù)大量時(shí)間。
[0021]3:數(shù)據(jù)傳輸和搜索同時(shí)進(jìn)行。本發(fā)明實(shí)現(xiàn)了在數(shù)據(jù)傳輸?shù)耐瑫r(shí)搜索周邊設(shè)備,提高了工作效率。
[0022]4:大幅提高了覆蓋范圍。本發(fā)明實(shí)現(xiàn)了對(duì)周邊50米以上半徑內(nèi)的覆蓋,明顯擴(kuò)大了覆蓋范圍。
[0023]5:整機(jī)功耗明顯下降。本發(fā)明實(shí)現(xiàn)了普通鋰電池(容量為SOO-1OOOmAh)可以支持設(shè)備工作12小時(shí)以上。
[0024]6:便攜小尺寸。本發(fā)明實(shí)現(xiàn)了產(chǎn)品外觀尺寸小于80mmX50mmX25mm,用戶(hù)可以隨
身放在口袋里,攜帶十分方便。
[0025]7:擴(kuò)大兼容性。本發(fā)明實(shí)現(xiàn)了對(duì)蘋(píng)果手機(jī)留下推送信息。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0026]圖1是本發(fā)明一個(gè)具體實(shí)施的方式的原理圖。
[0027]圖2是本發(fā)明一個(gè)具體實(shí)施的方式中并行數(shù)據(jù)推送的原理圖。
【具體實(shí)施方式】
[0028]參照?qǐng)D1-2,本發(fā)明一個(gè)【具體實(shí)施方式】包括以下步驟:
[0029]A、軟件初始化,若初始化失敗則重復(fù)此步驟;
[0030]B、判斷數(shù)據(jù)推送模式是否為無(wú)線(xiàn)推送模式;若不是無(wú)線(xiàn)推送模式,則循環(huán)檢測(cè)是否有數(shù)據(jù)更新申請(qǐng),當(dāng)檢測(cè)到數(shù)據(jù)更新申請(qǐng)后,啟動(dòng)無(wú)線(xiàn)數(shù)據(jù)更新模塊進(jìn)行更新,更新完畢后重啟軟件系統(tǒng);若是無(wú)線(xiàn)推送模式,則進(jìn)行步驟C ;
[0031]C、關(guān)閉軟件的可被發(fā)現(xiàn)功能項(xiàng),啟動(dòng)多任務(wù)分發(fā)功能;
[0032]D、搜索周邊設(shè)備,形成推送目標(biāo)清單;
[0033]E、啟動(dòng)無(wú)線(xiàn)推送模塊進(jìn)行并行數(shù)據(jù)推送;
[0034]F、對(duì)周邊設(shè)備進(jìn)行重新搜索,若發(fā)現(xiàn)新的設(shè)備,則返回步驟E繼續(xù)進(jìn)行并行數(shù)據(jù)推送;若未發(fā)現(xiàn)新的設(shè)備,則結(jié)束本輪推送過(guò)程。
[0035]4、值得注意的是,步驟E中,進(jìn)行并行數(shù)據(jù)推送包括以下步驟,
[0036]E1、啟動(dòng)連接管理任務(wù);
[0037]E2、同時(shí)啟動(dòng)兩個(gè)推送任務(wù),開(kāi)始進(jìn)行數(shù)據(jù)推送;[0038]E3、每個(gè)推送任務(wù)獨(dú)立地搜索是否存在等待推送設(shè)備,若存在等待推送設(shè)備,向等待推送設(shè)備發(fā)出推送請(qǐng)求,如果請(qǐng)求被拒絕,則重新搜索等待推送設(shè)備,如果請(qǐng)求被允許,則以數(shù)據(jù)包的形式依次推送數(shù)據(jù),數(shù)據(jù)推送完畢后,重新搜索等待推送設(shè)備;若不存在等待推送設(shè)備,則結(jié)束本輪推送。
[0039]本發(fā)明的工作原理是:本發(fā)明將“連接管理任務(wù)”和“推送任務(wù)”分離,可以實(shí)現(xiàn)一個(gè)“連接管理任務(wù)”和多個(gè)“推送任務(wù)”結(jié)合的方式,即可實(shí)現(xiàn)并行推送,提高效率。由“連接管理任務(wù)”負(fù)責(zé)搜索并形成活動(dòng)藍(lán)牙設(shè)備列表,對(duì)多個(gè)“推送任務(wù)”的工作進(jìn)行管理,避免多個(gè)“推送任務(wù)”出現(xiàn)互相干擾、重復(fù)推送等問(wèn)題。
[0040]下面對(duì)本方法終端一些步驟進(jìn)行具體解釋說(shuō)明:
[0041]無(wú)線(xiàn)推送模式:本方法的多通道并行數(shù)據(jù)推送需要預(yù)先設(shè)定推送信息,所以包括無(wú)線(xiàn)推送模式和無(wú)線(xiàn)更新模式。如果此步驟判別為無(wú)線(xiàn)推送模式,則進(jìn)入此模式的后續(xù)步驟;如果判別為無(wú)線(xiàn)更新模式,則進(jìn)入該模式的后續(xù)步驟。
[0042]關(guān)閉可被發(fā)現(xiàn)并啟動(dòng)多任務(wù)分發(fā)功能:在無(wú)線(xiàn)推送模式中,首先需要關(guān)閉本機(jī)的可被發(fā)現(xiàn)功能,以避免被其他藍(lán)牙設(shè)備搜索并干擾其工作。然后啟動(dòng)多任務(wù)分發(fā)功能,向各個(gè)分發(fā)任務(wù)分配必要的資源,為多通道并行推送做好準(zhǔn)備。
[0043]搜索周邊設(shè)備:本機(jī)需要搜索周邊活動(dòng)的藍(lán)牙設(shè)備清單,并以此作為多通道并行數(shù)據(jù)推送的目標(biāo)清單。
[0044]啟動(dòng)無(wú)線(xiàn)推送模塊:本機(jī)根據(jù)周邊活動(dòng)藍(lán)牙設(shè)備清單,按照至少兩路并行的方式并行向活動(dòng)藍(lán)牙設(shè)備推送信息。
[0045]周邊設(shè)備已全部嘗試:判斷周邊活動(dòng)藍(lán)牙設(shè)備是否已經(jīng)全部嘗試推送,如果還有未嘗試的設(shè)備,則繼續(xù)進(jìn)行并行推送;如果已全部嘗試推送,則回到搜索周邊設(shè)備模塊,開(kāi)始新一輪的搜索。
[0046]是否有數(shù)據(jù)更新申請(qǐng):在“無(wú)線(xiàn)更新模式”內(nèi)判斷是否有外部設(shè)備對(duì)本機(jī)發(fā)起無(wú)線(xiàn)更新數(shù)據(jù)的申請(qǐng)。如果沒(méi)有無(wú)線(xiàn)數(shù)據(jù)更新申請(qǐng),則重復(fù)進(jìn)行判斷;如果有,則接受該申請(qǐng)并“啟動(dòng)無(wú)線(xiàn)更新模塊”。
[0047]啟動(dòng)無(wú)線(xiàn)更新模塊:當(dāng)有外部設(shè)備對(duì)本機(jī)發(fā)起無(wú)線(xiàn)更新數(shù)據(jù)的申請(qǐng)時(shí),則啟動(dòng)無(wú)線(xiàn)更新模塊,接收來(lái)自外部設(shè)備的數(shù)據(jù)并將其保存在非易失存儲(chǔ)器中,作為本機(jī)在無(wú)線(xiàn)推送模式中的推送數(shù)據(jù)來(lái)源。
[0048]啟動(dòng)連接管理任務(wù):連接管理任務(wù)是并行推送的基礎(chǔ),負(fù)責(zé)搜索周邊設(shè)備、管理與推送目標(biāo)設(shè)備之間的鑒權(quán)和連接等功能。
[0049]搜索周邊活動(dòng)的藍(lán)牙設(shè)備通過(guò)連接管理任務(wù)進(jìn)行搜索,并將周邊活動(dòng)的藍(lán)牙設(shè)備保存為列表形式,作為推送目標(biāo)。
[0050]啟動(dòng)推送任務(wù)和啟動(dòng)推送任務(wù)2:以?xún)陕凡⑿型扑蜑槔?,分別啟動(dòng)推送任務(wù)I和推送任務(wù)2,為兩個(gè)任務(wù)分配相應(yīng)的資源,確??梢詧?zhí)行并行操作。
[0051]有等待推送設(shè)備:在兩個(gè)推送任務(wù)中,分別檢測(cè)活動(dòng)設(shè)備列表中是否有等待推送設(shè)備:如果有,則對(duì)該設(shè)備進(jìn)行推送;如果沒(méi)有,則本輪推送完成。由于是兩個(gè)任務(wù)同時(shí)檢測(cè)活動(dòng)設(shè)備列表,所有通過(guò)互斥式訪(fǎng)問(wèn)確保兩個(gè)任務(wù)不會(huì)同時(shí)訪(fǎng)問(wèn)同一個(gè)設(shè)備。如果推送任務(wù)I和推送任務(wù)2經(jīng)過(guò)檢查都已沒(méi)有等特推送設(shè)備,則本輪推送完成,并回到搜索周邊活動(dòng)的藍(lán)牙設(shè)備模塊,重新搜索并形成新的等待推送設(shè)備列表,開(kāi)始新一輪的推送。[0052]向等待推送設(shè)備發(fā)送推送申請(qǐng):在開(kāi)始推送信息之前,需要首先發(fā)送推送申請(qǐng)。如果等特推送設(shè)備是智能手機(jī)、計(jì)算機(jī)、平板電腦等常見(jiàn)終端設(shè)備,則會(huì)在屏幕上彈出信息接收提示,由用戶(hù)選擇接收信息或拒絕接收。
[0053]推送申請(qǐng)是否被接受:如果推送申請(qǐng)被用戶(hù)接受,則開(kāi)始信息推送;如果未被用戶(hù)接受,則放棄對(duì)該設(shè)備的推送并回到有等待推送設(shè)備模塊,尋找下一個(gè)推送目標(biāo)。
[0054]以數(shù)據(jù)包形式依次推送信息:如果推送申請(qǐng)被接受,則將推送信息按順序分為若干數(shù)據(jù)包,依次向目標(biāo)設(shè)備推送,直至完成最后一個(gè)數(shù)據(jù)包的推送。
[0055]已完成信息推送如果完成推送,則回到有等待推送設(shè)備模塊,尋找下一個(gè)推送目標(biāo)。
[0056]以上顯示和描述了本發(fā)明的基本原理和主要特征和本發(fā)明的優(yōu)點(diǎn)。本行業(yè)的技術(shù)人員應(yīng)該了解,本發(fā)明不受上述實(shí)施例的限制,上述實(shí)施例和說(shuō)明書(shū)中描述的只是說(shuō)明本發(fā)明的原理,在不脫離本發(fā)明精神和范圍的前提下,本發(fā)明還會(huì)有各種變化和改進(jìn),這些變化和改進(jìn)都落入要求保護(hù)的本發(fā)明范圍內(nèi)。本發(fā)明要求保護(hù)范圍由所附的權(quán)利要求書(shū)及其等效物界定。
【權(quán)利要求】
1.一種基于藍(lán)牙技術(shù)的單芯片多通道并行推送方法,其特征在于包括以下步驟: A、軟件初始化,若初始化失敗則重復(fù)此步驟; B、判斷數(shù)據(jù)推送模式是否為無(wú)線(xiàn)推送模式;若不是無(wú)線(xiàn)推送模式,則循環(huán)檢測(cè)是否有數(shù)據(jù)更新申請(qǐng),當(dāng)檢測(cè)到 數(shù)據(jù)更新申請(qǐng)后,啟動(dòng)無(wú)線(xiàn)數(shù)據(jù)更新模塊進(jìn)行更新,更新完畢后重啟軟件系統(tǒng);若是無(wú)線(xiàn)推送模式,則進(jìn)行步驟C ; C、關(guān)閉軟件的可被發(fā)現(xiàn)功能項(xiàng),啟動(dòng)多任務(wù)分發(fā)功能; D、搜索周邊設(shè)備,形成推送目標(biāo)清單; E、啟動(dòng)無(wú)線(xiàn)推送模塊進(jìn)行并行數(shù)據(jù)推送; F、對(duì)周邊設(shè)備進(jìn)行重新搜索,若發(fā)現(xiàn)新的設(shè)備,則返回步驟E繼續(xù)進(jìn)行并行數(shù)據(jù)推送;若未發(fā)現(xiàn)新的設(shè)備,則結(jié)束本輪推送過(guò)程。
2.根據(jù)權(quán)利要求1所述的基于藍(lán)牙技術(shù)的單芯片多通道并行推送方法,其特征在于:步驟E中,進(jìn)行并行數(shù)據(jù)推送包括以下步驟, E1、啟動(dòng)連接管理任務(wù); E2、同時(shí)啟動(dòng)至少兩個(gè)推送任務(wù),開(kāi)始進(jìn)行數(shù)據(jù)推送; E3、每個(gè)推送任務(wù)獨(dú)立地搜索是否存在等待推送設(shè)備,若存在等待推送設(shè)備,向等特推送設(shè)備發(fā)出推送請(qǐng)求,如果請(qǐng)求被拒絕,則重新搜索等待推送設(shè)備,如果請(qǐng)求被允許,則以數(shù)據(jù)包的形式依次推送數(shù)據(jù),數(shù)據(jù)推送完畢后,重新搜索等待推送設(shè)備;若不存在等待推送設(shè)備,則結(jié)束本輪推送。
【文檔編號(hào)】H04L29/08GK103957607SQ201410098095
【公開(kāi)日】2014年7月30日 申請(qǐng)日期:2014年3月18日 優(yōu)先權(quán)日:2014年3月18日
【發(fā)明者】劉佳 申請(qǐng)人:南京志純信息科技有限公司