一種移動(dòng)終端的cpu與傳感器的數(shù)據(jù)通信方法、系統(tǒng)的制作方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法、系統(tǒng),所述數(shù)據(jù)通信方法包括:當(dāng)移動(dòng)終端的CPU需要與傳感器進(jìn)行數(shù)據(jù)通信時(shí),CPU通過(guò)通信接口向傳感器組發(fā)送開(kāi)始信號(hào)和第一傳感器地址;子傳感器判斷自身的地址和第一傳感器地址是否一致;當(dāng)一致,則子傳感器向CPU發(fā)出第一應(yīng)答信號(hào);當(dāng)CPU接收到第一應(yīng)答信號(hào)后,向子傳感器發(fā)送寄存器地址;子傳感器接收到寄存器地址后,向CPU發(fā)送第二應(yīng)答信號(hào);當(dāng)CPU接收到第二應(yīng)答信號(hào)后,與子傳感器進(jìn)行數(shù)據(jù)通信,之后發(fā)送結(jié)束信號(hào)給子傳感器。本發(fā)明數(shù)據(jù)通信方法能夠使移動(dòng)終端同時(shí)兼容各廠家的傳感器,大大降低了移動(dòng)終端的二次軟件開(kāi)發(fā)工作量,同時(shí)也使終端設(shè)計(jì)難度大大降低。
【專(zhuān)利說(shuō)明】
一種移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法、系統(tǒng)
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及移動(dòng)終端領(lǐng)域,尤其涉及一種移動(dòng)終端的(PU與傳感器的數(shù)據(jù)通信方法、系統(tǒng)。
【背景技術(shù)】
[0002]隨著手機(jī)等終端的發(fā)展,手機(jī)的各種功能需求也基本確定,對(duì)于手機(jī)的操作系統(tǒng),如Android等操作系統(tǒng),其基本功能已很完備,但對(duì)于外圍傳感器部分,由于不同廠家的傳感器及同一廠家的不同型號(hào)的傳感器都是自主定義其接口形式、通信協(xié)議、數(shù)據(jù)格式等,使得每設(shè)計(jì)一款手機(jī)終端均要對(duì)所有傳感器進(jìn)行調(diào)試,以滿足產(chǎn)品需求,這給產(chǎn)品研發(fā)帶來(lái)極大的不便并增加很多的研發(fā)工作量,使產(chǎn)品研發(fā)周期加長(zhǎng)。另外,由于通信協(xié)議等不同,手機(jī)所用傳感器不能互相兼容,對(duì)手機(jī)模塊化設(shè)計(jì)也是一個(gè)障礙。
[0003]因此,現(xiàn)有技術(shù)還有待于改進(jìn)和發(fā)展。
【發(fā)明內(nèi)容】
[0004]本發(fā)明要解決的技術(shù)問(wèn)題在于,針對(duì)現(xiàn)有技術(shù)的上述缺陷,提供一種移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法、系統(tǒng),所述移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法,能夠使移動(dòng)終端同時(shí)兼容各廠家的傳感器,大大降低了移動(dòng)終端的二次軟件開(kāi)發(fā)工作量,同時(shí)也使終端設(shè)計(jì)難度大大降低。
[0005]本發(fā)明解決技術(shù)問(wèn)題所采用的技術(shù)方案如下:
一種移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法,包括:
A、當(dāng)移動(dòng)終端的CPU需要與傳感器進(jìn)行數(shù)據(jù)通信時(shí),所述CPU通過(guò)通信接口向傳感器組發(fā)送開(kāi)始信號(hào),并同時(shí)發(fā)送將要與(PU進(jìn)行數(shù)據(jù)通信的子傳感器的第一傳感器地址;
B、當(dāng)子傳感器接收到所述開(kāi)始信號(hào)和所述第一傳感器地址時(shí),判斷自身的地址和所述第一傳感器地址是否一致;當(dāng)一致,則所述子傳感器向所述CPU發(fā)出第一應(yīng)答信號(hào);
C、當(dāng)所述CPU接收到所述第一應(yīng)答信號(hào)后,向所述子傳感器發(fā)送將要進(jìn)行數(shù)據(jù)通信的寄存器地址;所述子傳感器接收到所述寄存器地址后,向所述CPU發(fā)送第二應(yīng)答信號(hào);
D、當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,與所述子傳感器進(jìn)行數(shù)據(jù)通信,之后發(fā)送結(jié)束信號(hào)給所述子傳感器。
[0006]所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法,其中,所述數(shù)據(jù)通信包括:移動(dòng)終端的CPU向傳感器傳輸數(shù)據(jù)和移動(dòng)終端的CPU從傳感器中讀取數(shù)據(jù)。
[0007]所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法,其中,所述步驟D具體包括:
Dll、當(dāng)移動(dòng)終端的CPU向傳感器傳輸數(shù)據(jù),當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,發(fā)送數(shù)據(jù)給所述子傳感器的所述寄存器;
D12、當(dāng)所述寄存器接收到所述CPU發(fā)送的數(shù)據(jù)后,向所述CPU發(fā)送第三應(yīng)答信號(hào);
D13、當(dāng)所述CPU接收到所述第三應(yīng)答信號(hào)后,發(fā)送第一結(jié)束信號(hào)給所述子傳感器。
[0008]所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法,其中,所述步驟D具體還包括: D21、當(dāng)移動(dòng)終端的CPU從傳感器中讀取數(shù)據(jù),當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,向所述子傳感器發(fā)送讀指令和讀取地址;
D22、當(dāng)所述子傳感器接收到所述讀指令和所述讀取地址后,將相應(yīng)的數(shù)據(jù)發(fā)送給所述
CPU;
D23、當(dāng)所述CPU讀取到相應(yīng)的數(shù)據(jù)后,發(fā)送第二結(jié)束信號(hào)給所述子傳感器。
[0009]所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法,其中,所述通信接口為I2C接口。
[0010]一種移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信系統(tǒng),包括:
傳感器地址發(fā)送模塊,用于當(dāng)移動(dòng)終端的CPU需要與傳感器進(jìn)行數(shù)據(jù)通信時(shí),所述CPU通過(guò)通信接口向傳感器組發(fā)送開(kāi)始信號(hào),并同時(shí)發(fā)送將要與CPU進(jìn)行數(shù)據(jù)通信的子傳感器的第一傳感器地址;
傳感器地址判斷模塊,用于當(dāng)子傳感器接收到所述開(kāi)始信號(hào)和所述第一傳感器地址時(shí),判斷自身的地址和所述第一傳感器地址是否一致;當(dāng)一致,則所述子傳感器向所述CPU發(fā)出第一應(yīng)答信號(hào);
寄存器地址發(fā)送模塊,用于當(dāng)所述CPU接收到所述第一應(yīng)答信號(hào)后,向所述子傳感器發(fā)送將要進(jìn)行數(shù)據(jù)通信的寄存器地址;所述子傳感器接收到所述寄存器地址后,向所述CPU發(fā)送第二應(yīng)答信號(hào);
數(shù)據(jù)通信模塊,用于當(dāng)所述CR]接收到所述第二應(yīng)答信號(hào)后,與所述子傳感器進(jìn)行數(shù)據(jù)通信,之后發(fā)送結(jié)束信號(hào)給所述子傳感器。
[0011]所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信系統(tǒng),其中,所述數(shù)據(jù)通信包括:移動(dòng)終端的CPU向傳感器傳輸數(shù)據(jù)和移動(dòng)終端的CPU從傳感器中讀取數(shù)據(jù)。
[0012]所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信系統(tǒng),其中,所述數(shù)據(jù)通信模塊包括:數(shù)據(jù)發(fā)送單元,用于當(dāng)移動(dòng)終端的CPU向傳感器傳輸數(shù)據(jù),當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,發(fā)送數(shù)據(jù)給所述子傳感器的所述寄存器;
數(shù)據(jù)接收單元,用于當(dāng)所述寄存器接收到所述CPU發(fā)送的數(shù)據(jù)后,向所述CPU發(fā)送第三應(yīng)答信號(hào);
第一結(jié)束單元,用于當(dāng)所述CPU接收到所述第三應(yīng)答信號(hào)后,發(fā)送第一結(jié)束信號(hào)給所述子傳感器。
[0013]所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信系統(tǒng),其中,所述數(shù)據(jù)通信模塊還包括:
讀指令發(fā)送單元,用于當(dāng)移動(dòng)終端的CPU從傳感器中讀取數(shù)據(jù),當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,向所述子傳感器發(fā)送讀指令和讀取地址;
讀取單元,用于當(dāng)所述子傳感器接收到所述讀指令和所述讀取地址后,將相應(yīng)的數(shù)據(jù)發(fā)送給所述CPU;
第二結(jié)束單元,用于當(dāng)所述CPU讀取到相應(yīng)的數(shù)據(jù)后,發(fā)送第二結(jié)束信號(hào)給所述子傳感器。
[0014]所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信系統(tǒng),其中,所述通信接口為I2C接口。
[0015]綜上所述,本發(fā)明提供了一種移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法、系統(tǒng),所述數(shù)據(jù)通信方法包括:當(dāng)移動(dòng)終端的CPU需要與傳感器進(jìn)行數(shù)據(jù)通信時(shí),所述CPU通過(guò)通信接口向傳感器組發(fā)送開(kāi)始信號(hào),并同時(shí)發(fā)送將要與CPU進(jìn)行數(shù)據(jù)通信的子傳感器的第一傳感器地址;當(dāng)子傳感器接收到所述開(kāi)始信號(hào)和所述第一傳感器地址時(shí),判斷自身的地址和所述第一傳感器地址是否一致;當(dāng)一致,則所述子傳感器向所述CPU發(fā)出第一應(yīng)答信號(hào);當(dāng)所述CPU接收到所述第一應(yīng)答信號(hào)后,向所述子傳感器發(fā)送將要進(jìn)行數(shù)據(jù)通信的寄存器地址;所述子傳感器接收到所述寄存器地址后,向所述CPU發(fā)送第二應(yīng)答信號(hào);當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,與所述子傳感器進(jìn)行數(shù)據(jù)通信,之后發(fā)送結(jié)束信號(hào)給所述子傳感器。本發(fā)明所述移動(dòng)終端的CHJ與傳感器的數(shù)據(jù)通信方法,能夠使移動(dòng)終端同時(shí)兼容各廠家的傳感器,大大降低了移動(dòng)終端的二次軟件開(kāi)發(fā)工作量,同時(shí)也使終端設(shè)計(jì)難度大大降低?!靖綀D說(shuō)明】
[0016]圖1是本發(fā)明移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法的較佳實(shí)施例的流程圖。
[0017]圖2是本發(fā)明手機(jī)的CPU傳輸單字節(jié)數(shù)據(jù)到傳感器的方法的原理示意圖。[〇〇18]圖3是本發(fā)明手機(jī)的CPU傳輸多字節(jié)數(shù)據(jù)到傳感器的方法的原理示意圖。
[0019]圖4是本發(fā)明手機(jī)的CPU從傳感器中讀取單字節(jié)數(shù)據(jù)的方法的原理示意圖。
[0020]圖5是本發(fā)明手機(jī)的CPU從傳感器中讀取多字節(jié)數(shù)據(jù)的方法的原理示意圖。
[0021]圖6是本發(fā)明移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信系統(tǒng)的較佳實(shí)施例的功能原理框圖。【具體實(shí)施方式】
[0022]為使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚、明確,以下參照附圖并舉實(shí)施例對(duì)本發(fā)明進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0023]請(qǐng)參見(jiàn)圖1,圖1是本發(fā)明移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法的較佳實(shí)施例的流程圖。圖1所示的一種移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法,包括:步驟S100、當(dāng)移動(dòng)終端的CPU需要與傳感器進(jìn)行數(shù)據(jù)通信時(shí),所述CPU通過(guò)通信接口向傳感器組發(fā)送開(kāi)始信號(hào),并同時(shí)發(fā)送將要與CPU進(jìn)行數(shù)據(jù)通信的子傳感器的第一傳感器地址;步驟S200、當(dāng)子傳感器接收到所述開(kāi)始信號(hào)和所述第一傳感器地址時(shí),判斷自身的地址和所述第一傳感器地址是否一致;當(dāng)一致,則所述子傳感器向所述CHJ發(fā)出第一應(yīng)答信號(hào);步驟S300、當(dāng)所述CPU接收到所述第一應(yīng)答信號(hào)后,向所述子傳感器發(fā)送將要進(jìn)行數(shù)據(jù)通信的寄存器地址;所述子傳感器接收到所述寄存器地址后,向所述CPU發(fā)送第二應(yīng)答信號(hào);步驟S400、當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,與所述子傳感器進(jìn)行數(shù)據(jù)通信,之后發(fā)送結(jié)束信號(hào)給所述子傳感器。
[0024]本發(fā)明實(shí)施例的移動(dòng)終端以手機(jī)為例進(jìn)行說(shuō)明,本發(fā)明實(shí)施例中手機(jī)的CPU(中央處理器)和傳感器組的通信接口為可連接多個(gè)傳感器的接口,如I2C接口總線或其它接口總線等;手機(jī)的所有傳感器均可以連接到該傳感器接口上從而組成傳感器組,傳感器的連接沒(méi)有先后次序可任意并聯(lián)到該接口上。本發(fā)明實(shí)施例中優(yōu)選所述通信接口為I2C接口。
[0025]在步驟S100中,當(dāng)手機(jī)的CPU需要與傳感器進(jìn)行數(shù)據(jù)通信時(shí),所述CPU通過(guò)通信接口向傳感器組發(fā)送開(kāi)始信號(hào),并同時(shí)發(fā)送將要與CPU進(jìn)行數(shù)據(jù)通信的所述傳感器組的子傳感器的第一傳感器地址;其中,所述數(shù)據(jù)通信包括:移動(dòng)終端的CPU向傳感器傳輸數(shù)據(jù)和移動(dòng)終端的CPU從傳感器中讀取數(shù)據(jù);而傳輸數(shù)據(jù)包括傳輸單字節(jié)數(shù)據(jù)和傳輸多字節(jié)數(shù)據(jù),讀取數(shù)據(jù)包括讀取單字節(jié)數(shù)據(jù)和讀取多字節(jié)數(shù)據(jù)。步驟S100在具體實(shí)施時(shí),如圖2至圖4所示, 當(dāng)手機(jī)的CPU向傳感器傳輸單字節(jié)數(shù)據(jù)或多字節(jié)數(shù)據(jù),以及手機(jī)的CPU從傳感器中讀取單字節(jié)數(shù)據(jù)或多字節(jié)數(shù)據(jù)時(shí),均是由手機(jī)的CPU先通過(guò)傳感器通信接口向傳感器組發(fā)送起始數(shù)據(jù)(開(kāi)始信號(hào))和傳感器地址。
[0026]步驟S200在具體實(shí)施時(shí),如圖2至圖4所示,不論手機(jī)的CPU向傳感器傳輸單字節(jié)數(shù)據(jù)或多字節(jié)數(shù)據(jù),還是以及手機(jī)的CHJ從傳感器中讀取單字節(jié)數(shù)據(jù)或多字節(jié)數(shù)據(jù),都是當(dāng)子傳感器接收到起始數(shù)據(jù)和傳感器地址后,判斷自身的地址和所述第一傳感器地址是否一致;若某個(gè)傳感器的地址和CPU發(fā)過(guò)來(lái)的地址一致,這時(shí)該匹配子傳感器就發(fā)出應(yīng)答信號(hào) (第一應(yīng)答信號(hào))給CPU,而其它沒(méi)匹配上的子傳感器就沒(méi)有任何數(shù)據(jù)反饋。
[0027] 步驟S300在具體實(shí)施時(shí),如圖2所示,當(dāng)手機(jī)的向傳感器傳輸單字節(jié)數(shù)據(jù)時(shí), CPU接收到子傳感器的應(yīng)答信號(hào)(第一應(yīng)答信號(hào))后,緊接著CPU發(fā)送該子傳感器需要傳輸數(shù)據(jù)的寄存器地址,已匹配的子傳感器接收到CPU傳送的寄存器地址后,該子傳感器回復(fù)CPU 應(yīng)答信號(hào)(第二應(yīng)答信號(hào));如圖4所示,當(dāng)手機(jī)的CPU從傳感器中讀取單字節(jié)數(shù)據(jù)時(shí),CPU接收到子傳感器的應(yīng)答信號(hào)(第一應(yīng)答信號(hào))后,CPU發(fā)送需要讀取數(shù)據(jù)的該子傳感器所屬寄存器地址,該子傳感器接收到CPU傳送的寄存器地址后,該子傳感器回復(fù)CPU應(yīng)答信號(hào)(第二應(yīng)答信號(hào));如圖5所示,當(dāng)手機(jī)的CPU從傳感器中讀取多字節(jié)數(shù)據(jù)時(shí),CPU接收到子傳感器的應(yīng)答信號(hào)(第一應(yīng)答信號(hào))后,CPU發(fā)送需要讀取數(shù)據(jù)的該子傳感器所屬寄存器地址,該子傳感器接收到CHJ傳送的寄存器地址后,該子傳感器回復(fù)CPU應(yīng)答信號(hào)(第二應(yīng)答信號(hào))。[〇〇28]進(jìn)一步的,所述步驟S400具體包括:5411、當(dāng)移動(dòng)終端的CPU向傳感器傳輸數(shù)據(jù),當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,發(fā)送數(shù)據(jù)給所述子傳感器的所述寄存器;5412、當(dāng)所述寄存器接收到所述CPU發(fā)送的數(shù)據(jù)后,向所述CPU發(fā)送第三應(yīng)答信號(hào);5413、當(dāng)所述CPU接收到所述第三應(yīng)答信號(hào)后,發(fā)送第一結(jié)束信號(hào)給所述子傳感器。
[0029]在本發(fā)明實(shí)施例中,如圖2所示,當(dāng)手機(jī)的CPU向傳感器傳輸單字節(jié)數(shù)據(jù)時(shí),CPU接收到應(yīng)答信號(hào)(第二應(yīng)答信號(hào))后發(fā)送單字節(jié)數(shù)據(jù)(發(fā)射數(shù)據(jù))給該子傳感器的對(duì)應(yīng)寄存器, 該寄存器接收到CPU發(fā)送過(guò)來(lái)的單字節(jié)數(shù)據(jù)后,該子傳感器發(fā)應(yīng)答信號(hào)(第三應(yīng)答信號(hào))給 CPU,CPU接收到應(yīng)答信號(hào)后發(fā)送結(jié)束信號(hào)(第一結(jié)束信號(hào))給該子傳感器,這樣CPU就完成了傳輸單字節(jié)數(shù)據(jù)到傳感器的整個(gè)流程。
[0030]特別的,如圖3所示,當(dāng)手機(jī)的CPU向傳感器傳輸多字節(jié)數(shù)據(jù)時(shí),CPU接收到子傳感器的應(yīng)答信號(hào)(第一應(yīng)答信號(hào))后,CPU發(fā)送需要傳輸數(shù)據(jù)的該子傳感器所屬寄存器地址1, 該子傳感器接收到CPU傳送的寄存器地址1后,該子傳感器回復(fù)CHJ應(yīng)答信號(hào)(第二應(yīng)答信號(hào));CPU接收到應(yīng)答信號(hào)后發(fā)送數(shù)據(jù)1(發(fā)射數(shù)據(jù)1)給該寄存器,該寄存器接收到數(shù)據(jù)1后子傳感器反饋給CHJ應(yīng)答信號(hào)(第三應(yīng)答信號(hào)),然后CPU發(fā)送寄存器地址2給該子傳感器,該子傳感器收到后回復(fù)應(yīng)答信號(hào),CPU接收到應(yīng)答信號(hào)后發(fā)送數(shù)據(jù)2給該寄存器,以此類(lèi)推,最后 CPU發(fā)送寄存器地址n給該子傳感器,該子傳感器收到后回復(fù)應(yīng)答信號(hào),CPU接收到應(yīng)答信號(hào)后發(fā)送數(shù)據(jù)n(發(fā)射數(shù)據(jù)n)給該寄存器,CPU接收到第n個(gè)數(shù)據(jù)的應(yīng)答信號(hào)后,最后CPU向該子傳感器發(fā)結(jié)束信號(hào)(第一結(jié)束信號(hào)),至此CPU傳輸多字節(jié)數(shù)據(jù)到傳感器的任務(wù)完成。[0〇31] 進(jìn)一步的,所述步驟S400具體還包括:5421、當(dāng)移動(dòng)終端的CPU從傳感器中讀取數(shù)據(jù),當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后, 向所述子傳感器發(fā)送讀指令和讀取地址;5422、當(dāng)所述子傳感器接收到所述讀指令和所述讀取地址后,將相應(yīng)的數(shù)據(jù)發(fā)送給所述 CPU;5423、當(dāng)所述CPU讀取到相應(yīng)的數(shù)據(jù)后,發(fā)送第二結(jié)束信號(hào)給所述子傳感器。[〇〇32]在本發(fā)明實(shí)施例中,如圖4所示,當(dāng)手機(jī)的CPU從傳感器中讀取單字節(jié)數(shù)據(jù)時(shí),CPU 接收到應(yīng)答信號(hào)(第二應(yīng)答信號(hào))后發(fā)送讀指令和讀取地址,該子傳感器接收到讀指令和讀取地址后就把相應(yīng)的數(shù)據(jù)發(fā)送給CPU,CPU讀取到相應(yīng)的數(shù)據(jù)后發(fā)結(jié)束數(shù)據(jù)(第二結(jié)束信號(hào)) 給子傳感器,至此CPU從傳感器讀取單字節(jié)數(shù)據(jù)的任務(wù)完成;如圖5所示,當(dāng)手機(jī)的CPU從傳感器中讀取多字節(jié)數(shù)據(jù)時(shí),CPU接收到應(yīng)答信號(hào)(第二應(yīng)答信號(hào))后發(fā)送讀指令和讀取地址 1,該子傳感器接收到讀指令和讀取地址1后就把相應(yīng)的讀取數(shù)據(jù)1發(fā)送給CPU,CPU接收到讀取數(shù)據(jù)1后發(fā)送讀指令和讀取地址2,該子傳感器接收到讀指令和讀取地址2后就把相應(yīng)的讀取數(shù)據(jù)2發(fā)送給CPU,依次類(lèi)推,直到CPU讀取到最后的數(shù)據(jù)n之后,CPU發(fā)送結(jié)束信息(第二結(jié)束信號(hào)),則該次CHJ從傳感器讀取多字節(jié)數(shù)據(jù)結(jié)束。
[0033]因此,本發(fā)明提供了一種移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法,也即是一種使同類(lèi)傳感器使用相同的通信握手協(xié)議的方法,在具體實(shí)施時(shí),還可以將數(shù)據(jù)格式及數(shù)據(jù)定義進(jìn)行統(tǒng)一,這樣終端產(chǎn)品無(wú)論使用哪個(gè)廠家的傳感器均可使用相同的驅(qū)動(dòng)程序,即在不修改軟件代碼的前提下各廠家的同類(lèi)傳感器可互相兼容使用。[〇〇34]本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成,前述的程序可以存儲(chǔ)與一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲(chǔ)介質(zhì)可為磁盤(pán)、光盤(pán)、只讀存儲(chǔ)記憶體(Read-Only,R0M)或隨機(jī)存儲(chǔ)記憶體(Random Access Memory,RAM)等。
[0035]基于上述方法實(shí)施例,本發(fā)明實(shí)施例還提供了一種移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信系統(tǒng),如圖6所示,所述移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信系統(tǒng),包括:傳感器地址發(fā)送模塊600、傳感器地址判斷模塊700、寄存器地址發(fā)送模塊800、數(shù)據(jù)通信模塊900,其中, 傳感器地址發(fā)送模塊600,用于當(dāng)移動(dòng)終端的CPU需要與傳感器進(jìn)行數(shù)據(jù)通信時(shí),所述 CPU通過(guò)通信接口向傳感器組發(fā)送開(kāi)始信號(hào),并同時(shí)發(fā)送將要與CPU進(jìn)行數(shù)據(jù)通信的子傳感器的第一傳感器地址;具體如上所述。[〇〇36]傳感器地址判斷模塊700,用于當(dāng)子傳感器接收到所述開(kāi)始信號(hào)和所述第一傳感器地址時(shí),判斷自身的地址和所述第一傳感器地址是否一致;當(dāng)一致,則所述子傳感器向所述CPU發(fā)出第一應(yīng)答信號(hào);具體如上所述。
[0037]寄存器地址發(fā)送模塊800,用于當(dāng)所述CPU接收到所述第一應(yīng)答信號(hào)后,向所述子傳感器發(fā)送將要進(jìn)行數(shù)據(jù)通信的寄存器地址;所述子傳感器接收到所述寄存器地址后,向所述CHJ發(fā)送第二應(yīng)答信號(hào);具體如上所述。
[0038]數(shù)據(jù)通信模塊900,用于當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,與所述子傳感器進(jìn)行數(shù)據(jù)通信,之后發(fā)送結(jié)束信號(hào)給所述子傳感器;具體如上所述。
[0039] 進(jìn)一步的,所述數(shù)據(jù)通信包括:移動(dòng)終端的向傳感器傳輸數(shù)據(jù)和移動(dòng)終端的CPU從傳感器中讀取數(shù)據(jù)。優(yōu)選的,所述通信接口為12C接口。
[0040]進(jìn)一步的,所述數(shù)據(jù)通信模塊900包括:數(shù)據(jù)發(fā)送單元,用于當(dāng)移動(dòng)終端的CPU向傳感器傳輸數(shù)據(jù),當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,發(fā)送數(shù)據(jù)給所述子傳感器的所述寄存器;具體如上所述。
[0041]數(shù)據(jù)接收單元,用于當(dāng)所述寄存器接收到所述CPU發(fā)送的數(shù)據(jù)后,向所述CPU發(fā)送第三應(yīng)答信號(hào);具體如上所述。[〇〇42]第一結(jié)束單元,用于當(dāng)所述CPU接收到所述第三應(yīng)答信號(hào)后,發(fā)送第一結(jié)束信號(hào)給所述子傳感器;具體如上所述。[〇〇43]進(jìn)一步的,所述數(shù)據(jù)通信模塊900還包括:讀指令發(fā)送單元,用于當(dāng)移動(dòng)終端的CPU從傳感器中讀取數(shù)據(jù),當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,向所述子傳感器發(fā)送讀指令和讀取地址;具體如上所述。
[0044]讀取單元,用于當(dāng)所述子傳感器接收到所述讀指令和所述讀取地址后,將相應(yīng)的數(shù)據(jù)發(fā)送給所述CPU;具體如上所述。
[0045]第二結(jié)束單元,用于當(dāng)所述CPU讀取到相應(yīng)的數(shù)據(jù)后,發(fā)送第二結(jié)束信號(hào)給所述子傳感器;具體如上所述。
[0046]綜上所述,本發(fā)明提供了一種移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法、系統(tǒng),所述數(shù)據(jù)通信方法包括:當(dāng)移動(dòng)終端的CPU需要與傳感器進(jìn)行數(shù)據(jù)通信時(shí),所述CPU通過(guò)通信接口向傳感器組發(fā)送開(kāi)始信號(hào),并同時(shí)發(fā)送將要與CPU進(jìn)行數(shù)據(jù)通信的子傳感器的第一傳感器地址;當(dāng)子傳感器接收到所述開(kāi)始信號(hào)和所述第一傳感器地址時(shí),判斷自身的地址和所述第一傳感器地址是否一致;當(dāng)一致,則所述子傳感器向所述CPU發(fā)出第一應(yīng)答信號(hào);當(dāng)所述CPU接收到所述第一應(yīng)答信號(hào)后,向所述子傳感器發(fā)送將要進(jìn)行數(shù)據(jù)通信的寄存器地址;所述子傳感器接收到所述寄存器地址后,向所述CPU發(fā)送第二應(yīng)答信號(hào);當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,與所述子傳感器進(jìn)行數(shù)據(jù)通信,之后發(fā)送結(jié)束信號(hào)給所述子傳感器。本發(fā)明所述移動(dòng)終端的CHJ與傳感器的數(shù)據(jù)通信方法,能夠使移動(dòng)終端同時(shí)兼容各廠家的傳感器,大大降低了移動(dòng)終端的二次軟件開(kāi)發(fā)工作量,同時(shí)也使終端設(shè)計(jì)難度大大降低。 [〇〇47]應(yīng)當(dāng)理解的是,本發(fā)明的應(yīng)用不限于上述的舉例,對(duì)本領(lǐng)域普通技術(shù)人員來(lái)說(shuō),可以根據(jù)上述說(shuō)明加以改進(jìn)或變換,所有這些改進(jìn)和變換都應(yīng)屬于本發(fā)明所附權(quán)利要求的保護(hù)范圍。
【主權(quán)項(xiàng)】
1.一種移動(dòng)終端的CHJ與傳感器的數(shù)據(jù)通信方法,其特征在于,包括: A、當(dāng)移動(dòng)終端的CPU需要與傳感器進(jìn)行數(shù)據(jù)通信時(shí),所述CPU通過(guò)通信接口向傳感器組發(fā)送開(kāi)始信號(hào),并同時(shí)發(fā)送將要與(PU進(jìn)行數(shù)據(jù)通信的子傳感器的第一傳感器地址; B、當(dāng)子傳感器接收到所述開(kāi)始信號(hào)和所述第一傳感器地址時(shí),判斷自身的地址和所述第一傳感器地址是否一致;當(dāng)一致,則所述子傳感器向所述CPU發(fā)出第一應(yīng)答信號(hào); C、當(dāng)所述CHJ接收到所述第一應(yīng)答信號(hào)后,向所述子傳感器發(fā)送將要進(jìn)行數(shù)據(jù)通信的寄存器地址;所述子傳感器接收到所述寄存器地址后,向所述CPU發(fā)送第二應(yīng)答信號(hào); D、當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,與所述子傳感器進(jìn)行數(shù)據(jù)通信,之后發(fā)送結(jié)束信號(hào)給所述子傳感器。2.根據(jù)權(quán)利要求1所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法,其特征在于,所述數(shù)據(jù)通信包括:移動(dòng)終端的(PU向傳感器傳輸數(shù)據(jù)和移動(dòng)終端的CPU從傳感器中讀取數(shù)據(jù)。3.根據(jù)權(quán)利要求2所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法,其特征在于,所述步驟D具體包括: D11、當(dāng)移動(dòng)終端的CPU向傳感器傳輸數(shù)據(jù),當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,發(fā)送數(shù)據(jù)給所述子傳感器的所述寄存器; D12、當(dāng)所述寄存器接收到所述CRJ發(fā)送的數(shù)據(jù)后,向所述CRJ發(fā)送第三應(yīng)答信號(hào); D13、當(dāng)所述CPU接收到所述第三應(yīng)答信號(hào)后,發(fā)送第一結(jié)束信號(hào)給所述子傳感器。4.根據(jù)權(quán)利要求2所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法,其特征在于,所述步驟D具體還包括: D21、當(dāng)移動(dòng)終端的CPU從傳感器中讀取數(shù)據(jù),當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,向所述子傳感器發(fā)送讀指令和讀取地址; D22、當(dāng)所述子傳感器接收到所述讀指令和所述讀取地址后,將相應(yīng)的數(shù)據(jù)發(fā)送給所述CPU; D23、當(dāng)所述CRJ讀取到相應(yīng)的數(shù)據(jù)后,發(fā)送第二結(jié)束信號(hào)給所述子傳感器。5.根據(jù)權(quán)利要求1所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信方法,其特征在于,所述通信接口為I2C接口。6.一種移動(dòng)終端的CRJ與傳感器的數(shù)據(jù)通信系統(tǒng),其特征在于,包括: 傳感器地址發(fā)送模塊,用于當(dāng)移動(dòng)終端的CPU需要與傳感器進(jìn)行數(shù)據(jù)通信時(shí),所述CPU通過(guò)通信接口向傳感器組發(fā)送開(kāi)始信號(hào),并同時(shí)發(fā)送將要與CPU進(jìn)行數(shù)據(jù)通信的子傳感器的第一傳感器地址; 傳感器地址判斷模塊,用于當(dāng)子傳感器接收到所述開(kāi)始信號(hào)和所述第一傳感器地址時(shí),判斷自身的地址和所述第一傳感器地址是否一致;當(dāng)一致,則所述子傳感器向所述CPU發(fā)出第一應(yīng)答信號(hào); 寄存器地址發(fā)送模塊,用于當(dāng)所述CPU接收到所述第一應(yīng)答信號(hào)后,向所述子傳感器發(fā)送將要進(jìn)行數(shù)據(jù)通信的寄存器地址;所述子傳感器接收到所述寄存器地址后,向所述CPU發(fā)送第二應(yīng)答信號(hào); 數(shù)據(jù)通信模塊,用于當(dāng)所述CHJ接收到所述第二應(yīng)答信號(hào)后,與所述子傳感器進(jìn)行數(shù)據(jù)通信,之后發(fā)送結(jié)束信號(hào)給所述子傳感器。7.根據(jù)權(quán)利要求6所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信系統(tǒng),其特征在于,所述數(shù)據(jù)通信包括:移動(dòng)終端的(PU向傳感器傳輸數(shù)據(jù)和移動(dòng)終端的CPU從傳感器中讀取數(shù)據(jù)。8.根據(jù)權(quán)利要求7所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信系統(tǒng),其特征在于,所述數(shù)據(jù)通信模塊包括: 數(shù)據(jù)發(fā)送單元,用于當(dāng)移動(dòng)終端的CPU向傳感器傳輸數(shù)據(jù),當(dāng)所述CPU接收到所述第二應(yīng)答信號(hào)后,發(fā)送數(shù)據(jù)給所述子傳感器的所述寄存器; 數(shù)據(jù)接收單元,用于當(dāng)所述寄存器接收到所述CPU發(fā)送的數(shù)據(jù)后,向所述CPU發(fā)送第三應(yīng)答信號(hào); 第一結(jié)束單元,用于當(dāng)所述CPU接收到所述第三應(yīng)答信號(hào)后,發(fā)送第一結(jié)束信號(hào)給所述子傳感器。9.根據(jù)權(quán)利要求7所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信系統(tǒng),其特征在于,所述數(shù)據(jù)通信模塊還包括: 讀指令發(fā)送單元,用于當(dāng)移動(dòng)終端的CPU從傳感器中讀取數(shù)據(jù),當(dāng)所述CHJ接收到所述第二應(yīng)答信號(hào)后,向所述子傳感器發(fā)送讀指令和讀取地址; 讀取單元,用于當(dāng)所述子傳感器接收到所述讀指令和所述讀取地址后,將相應(yīng)的數(shù)據(jù)發(fā)送給所述CPU;第二結(jié)束單元,用于當(dāng)所述CPU讀取到相應(yīng)的數(shù)據(jù)后,發(fā)送第二結(jié)束信號(hào)給所述子傳感器。10.根據(jù)權(quán)利要求6所述的移動(dòng)終端的CPU與傳感器的數(shù)據(jù)通信系統(tǒng),其特征在于,所述通信接口為I2C接口。
【文檔編號(hào)】G06F13/42GK106055511SQ201610426300
【公開(kāi)日】2016年10月26日
【申請(qǐng)日】2016年6月16日
【發(fā)明人】郭愛(ài)平, 胡勝鋼, 趙士青
【申請(qǐng)人】惠州Tcl移動(dòng)通信有限公司