一種處理i2c通信對接延時(shí)方法及數(shù)字光處理投影裝置的制造方法
【專利摘要】本發(fā)明涉及電子通信領(lǐng)域,尤其涉及一種處理I2C通信對接延時(shí)的方法及數(shù)字光處理投影裝置,用于解決現(xiàn)有技術(shù)中有可能出現(xiàn)光機(jī)驅(qū)動(dòng)器系統(tǒng)還未處理完該次的指令,而主設(shè)備會認(rèn)為從設(shè)備的數(shù)據(jù)傳輸失敗的問題。所述方法包括:主控器向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文后,若所述主控器和所述光機(jī)驅(qū)動(dòng)器之間的串行時(shí)鐘SCL信號為低電平信號,則監(jiān)控所述SCL信號;所述主控器在所述SCL信號變?yōu)楦唠娖叫盘柡?,若接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存器地址報(bào)文對應(yīng)的響應(yīng)報(bào)文,則向所述光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)報(bào)文。本發(fā)明實(shí)施例能夠更加準(zhǔn)確的獲得從設(shè)備向主設(shè)備發(fā)送響應(yīng)報(bào)文的時(shí)間,使得主控器與光機(jī)驅(qū)動(dòng)器之間的通訊更加準(zhǔn)確及時(shí)。
【專利說明】
一種處理12C通信對接延時(shí)方法及數(shù)字光處理投影裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及電子通信領(lǐng)域,尤其涉及一種處理I2C通信對接延時(shí)方法及數(shù)字光處 理投影裝置。
【背景技術(shù)】
[0002] I2C(Inter - Integrated Circuit)總線是由PHILIPS公司開發(fā)的兩線式串行總 線,I2C總線由一根串行時(shí)鐘總線SCL和一根串行數(shù)據(jù)總線SDA組成,用于連接微控制器及其 外圍設(shè)備。I2C總線是微電子通信控制領(lǐng)域廣泛采用的一種總線標(biāo)準(zhǔn)。它是同步通信的一種 特殊形式,具有接口線少,控制方式簡單,器件封裝形式小,通信速率較高等優(yōu)點(diǎn)。
[0003] 在數(shù)字光處理(DLP,Digital Light Processing)投影裝置中,包括主控器和光機(jī) 驅(qū)動(dòng)器系統(tǒng),光機(jī)驅(qū)動(dòng)器系統(tǒng)包括光機(jī)驅(qū)動(dòng)器、光機(jī)驅(qū)動(dòng)器電源、光源、數(shù)字微鏡晶片(DMD, Digital Micromirror Device)、透鏡模塊等,光機(jī)驅(qū)動(dòng)器作為主控器的從設(shè)備,與主控器 通過第一 I2C總線進(jìn)行通信,同時(shí),光機(jī)驅(qū)動(dòng)器還可以作為主設(shè)備,通過第二I2C總線與光機(jī) 電源驅(qū)動(dòng)器、光源驅(qū)動(dòng)器、數(shù)字微鏡晶片、透鏡模塊等進(jìn)行I2C通信,在數(shù)字光處理投影裝置 中,每個(gè)器件都有一個(gè)唯一的地址,無論是主控器、光機(jī)電源驅(qū)動(dòng)器、光源驅(qū)動(dòng)器、存儲器或 鍵盤接口都有一個(gè)唯一的地址。光機(jī)驅(qū)動(dòng)器是數(shù)字光處理投影裝置中的主控器的從設(shè)備, 又是光機(jī)系統(tǒng)中的主設(shè)備,而光機(jī)系統(tǒng)中的其它器件,例如光機(jī)電源驅(qū)動(dòng)器、光源驅(qū)動(dòng)器、 數(shù)字微鏡晶片、透鏡模塊等為光機(jī)系統(tǒng)中的從設(shè)備。在主控器作為主設(shè)備發(fā)送完寄存器地 址給光機(jī)驅(qū)動(dòng)器后,光機(jī)驅(qū)動(dòng)器并不會立即返回應(yīng)答給主控器,而是在光機(jī)驅(qū)動(dòng)器處理完 光機(jī)系統(tǒng)的指令后才會回應(yīng)應(yīng)答信號,此時(shí)主控器與光機(jī)驅(qū)動(dòng)器之間不能通過標(biāo)準(zhǔn)I2C模 式完成。
[0004] 現(xiàn)有技術(shù)中,通過在標(biāo)準(zhǔn)的I2C通訊過程中增加固定的延時(shí)間隔以使主設(shè)備在發(fā) 送完指令后等待固定的延時(shí)時(shí)間,來匹配可能會出現(xiàn)的光機(jī)驅(qū)動(dòng)器沒有立即回應(yīng)應(yīng)答信號 的問題,但是由于光機(jī)驅(qū)動(dòng)器每次處理的指令不同,光機(jī)驅(qū)動(dòng)器處理每次指令產(chǎn)生的時(shí)延 不同,而主設(shè)備等待固定的延時(shí)間隔,有可能出現(xiàn)下列情況:光機(jī)驅(qū)動(dòng)器系統(tǒng)還未處理完該 次的指令,而延時(shí)間隔已到時(shí),使得主設(shè)備認(rèn)為未接收到從設(shè)備發(fā)送的響應(yīng)報(bào)文,確定此時(shí) 與從設(shè)備的數(shù)據(jù)傳輸失敗。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明提供一種處理I2C通信對接延時(shí)方法及數(shù)字光處理投影裝置,用于解決現(xiàn) 有技術(shù)中有可能出現(xiàn)光機(jī)驅(qū)動(dòng)器系統(tǒng)還未處理完該次的指令,而主設(shè)備會認(rèn)為光機(jī)驅(qū)動(dòng)器 的數(shù)據(jù)傳輸失敗的問題。
[0006] 本發(fā)明提供一種處理I2C通信對接延時(shí)的方法,用于數(shù)字光處理投影裝置,所述方 法包括:
[0007] 主控器向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文后,若所述主控器和所述光機(jī)驅(qū)動(dòng)器之 間的串行時(shí)鐘SCL信號為低電平信號,則監(jiān)控所述SCL信號;
[0008] 所述主控器在所述SCL信號變?yōu)楦唠娖叫盘柡?,若接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的 針對所述寄存器地址報(bào)文對應(yīng)的響應(yīng)報(bào)文,則向所述光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)報(bào)文。
[0009] 本發(fā)明實(shí)施例中,當(dāng)主控器向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文后,若此時(shí)主控器 和光機(jī)驅(qū)動(dòng)器之間SCL信號為低電平,即光機(jī)驅(qū)動(dòng)器已接收到主控器發(fā)送的寄存器地址報(bào) 文,并且光機(jī)驅(qū)動(dòng)器已經(jīng)開始處理光機(jī)驅(qū)動(dòng)器內(nèi)部系統(tǒng)的指令,則主控器監(jiān)控SCL信號,當(dāng) 主控器監(jiān)控到SCL信號變?yōu)楦唠娖綍r(shí),即光機(jī)驅(qū)動(dòng)器已經(jīng)處理完內(nèi)部系統(tǒng)的指令后釋放了 SCL信號,主控器判斷是否接收到了光機(jī)驅(qū)動(dòng)器發(fā)送的響應(yīng)報(bào)文,若主控器接收到了光機(jī)驅(qū) 動(dòng)器發(fā)送的響應(yīng)報(bào)文,則主控器開始向光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)報(bào)文。主控器根據(jù)監(jiān)控的SCL信 號的變化能夠及時(shí)獲得光機(jī)驅(qū)動(dòng)器釋放SCL信號的時(shí)間,能夠更加準(zhǔn)確的獲得光機(jī)驅(qū)動(dòng)器 向主設(shè)備發(fā)送響應(yīng)報(bào)文的時(shí)間,使得主控器與光機(jī)驅(qū)動(dòng)器之間的通訊更加準(zhǔn)確及時(shí)。
[0010] 本發(fā)明還提供一種數(shù)字光處理投影的裝置,包括:
[0011] 主控器和光機(jī)驅(qū)動(dòng)器,所述主控器和所述光機(jī)驅(qū)動(dòng)器之間通過I2C進(jìn)行通信,所述 主控器包括:
[0012] 監(jiān)控單元,用于向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文后,若所述光機(jī)驅(qū)動(dòng)器的串行 時(shí)鐘SCL信號為低電平信號,則監(jiān)控所述SCL信號;
[0013] 發(fā)送單元,用于在所述SCL信號變?yōu)楦唠娖叫盘柡螅艚邮盏剿龉鈾C(jī)驅(qū)動(dòng)器發(fā)送 的針對所述寄存器地址報(bào)文對應(yīng)的響應(yīng)報(bào)文,則向所述光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)報(bào)文。
【附圖說明】
[0014] 為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使 用的附圖作簡要介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本 領(lǐng)域的普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其 他的附圖。
[0015] 圖1為本發(fā)明實(shí)施例提供的一種處理I2C通信對接延時(shí)的方法的流程示意圖;
[0016] 圖2為本發(fā)明實(shí)施例中主控器與光機(jī)驅(qū)動(dòng)器之間通訊結(jié)構(gòu)示意圖;
[0017] 圖3為本發(fā)明實(shí)施例提供的另一種處理I2C通信對接延時(shí)的方法的流程示意圖;
[0018] 圖4為本發(fā)明實(shí)施例提供的一種主控器與光機(jī)驅(qū)動(dòng)器之間通過I2C總線通信的流 程不意圖;
[0019] 圖5為本發(fā)明實(shí)施例提供的另一種主控器與光機(jī)驅(qū)動(dòng)器之間通過I2C總線通信的 流程示意圖;
[0020] 圖6為本發(fā)明實(shí)施例提供的一種主控器與光機(jī)驅(qū)動(dòng)器之間通過I2C總線獲取SCL信 號解決對接延時(shí)的方法流程示意圖;
[0021 ]圖7為本發(fā)明實(shí)施例提供的一種數(shù)字光處理投影的裝置的結(jié)構(gòu)示意圖;
[0022] 圖8為本發(fā)明實(shí)施例提供的主控器的結(jié)構(gòu)示意圖;
[0023] 圖9為本發(fā)明實(shí)施例提供的另一種數(shù)字光處理投影的裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0024]為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對本發(fā)明作進(jìn) 一步地詳細(xì)描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部份實(shí)施例,而不是全部的實(shí)施 例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的 所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0025] 現(xiàn)有技術(shù)中主控器與從設(shè)備通過標(biāo)準(zhǔn)I2C通訊協(xié)議進(jìn)行通訊,主控器與從設(shè)備通 過第一I2C總線進(jìn)行通信,但是在數(shù)字光處理(DLP,Digital Light Processing)投影裝置 中,包括主控器和光機(jī)驅(qū)動(dòng)器系統(tǒng),光機(jī)驅(qū)動(dòng)器系統(tǒng)包括光機(jī)驅(qū)動(dòng)器、光機(jī)驅(qū)動(dòng)器電源、光 源、數(shù)字微鏡晶片(DMD,Digital Micromirror Device)、透鏡模塊等,光機(jī)驅(qū)動(dòng)器作為主控 器的從設(shè)備,與主控器通過第一 I2C總線進(jìn)行通信,同時(shí),光機(jī)驅(qū)動(dòng)器還可以作為主設(shè)備,通 過第二I2C總線與光機(jī)驅(qū)動(dòng)器電源、光源、數(shù)字微鏡晶片、透鏡模塊等進(jìn)行I2C通信,,對于主 控器而言,在標(biāo)準(zhǔn)的I2C通訊過程中主設(shè)備在發(fā)送完指令后等待固定的延時(shí)時(shí)間,來匹配可 能會出現(xiàn)的光機(jī)驅(qū)動(dòng)器沒有立即回應(yīng)應(yīng)答信號的問題,但是由于光機(jī)驅(qū)動(dòng)器每次處理的指 令不同,光機(jī)驅(qū)動(dòng)器處理每次指令產(chǎn)生的時(shí)延不同,主設(shè)備增加固定延時(shí)間隔時(shí)會造成光 機(jī)驅(qū)動(dòng)器系統(tǒng)還未處理完該次的指令,而已達(dá)到主設(shè)備等待的固定時(shí)長,主設(shè)備會認(rèn)為此 時(shí)與從設(shè)備的數(shù)據(jù)傳輸失敗的問題。
[0026]為了解決上述問題,本發(fā)明提供一種處理數(shù)字光處理投影裝置中I2C通信對接延 時(shí)的方法,如圖1所示,所述方法包括:
[0027] 步驟101,主控器向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文后,若所述主控器和所述光機(jī) 驅(qū)動(dòng)器之間的串行時(shí)鐘SCL信號為低電平信號,則監(jiān)控所述SCL信號;
[0028] 步驟102,所述主控器在所述SCL信號變?yōu)楦唠娖叫盘柡?,若接收到所述光機(jī)驅(qū)動(dòng) 器發(fā)送的針對所述寄存器地址報(bào)文對應(yīng)的響應(yīng)報(bào)文,則向所述光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)報(bào)文。
[0029] 在步驟101中,主控器可以是投影儀中的主控器設(shè)備,也可以是智能電視、激光電 視、LED智能微型投影儀等設(shè)備的主控模塊。光機(jī)驅(qū)動(dòng)器為一種將光按照一定路徑傳輸并形 成圖像輸出的顯示系統(tǒng),在本發(fā)明實(shí)施例中光機(jī)驅(qū)動(dòng)器可以為智能微型中的顯示裝置,也 可以為智能電視、激光電視、LED智能微型投影儀等設(shè)備中的顯示系統(tǒng),光機(jī)驅(qū)動(dòng)器一般由 顯示核心、光源、鏡頭光路、散熱器組成。
[0030] 在本發(fā)明實(shí)施例中,主控器與光機(jī)驅(qū)動(dòng)器都是位于數(shù)字光處理投影裝置中,該投 影裝置中光機(jī)驅(qū)動(dòng)器是數(shù)字光處理投影裝置中的主控器的從設(shè)備,又是光機(jī)系統(tǒng)中的主設(shè) 備,而光機(jī)系統(tǒng)中的其它器件,例如光機(jī)電源驅(qū)動(dòng)器、光源驅(qū)動(dòng)器、數(shù)字微鏡晶片、透鏡模塊 等為光機(jī)系統(tǒng)中的從設(shè)備。在本發(fā)明實(shí)施例中,所述數(shù)字光處理投影裝置用于解決裝置中 存在至少兩級驅(qū)動(dòng)的架構(gòu)而產(chǎn)生的光機(jī)驅(qū)動(dòng)器系統(tǒng)還未處理完該次的指令,而主設(shè)備會認(rèn) 為光機(jī)驅(qū)動(dòng)器的數(shù)據(jù)傳輸失敗的問題。在本發(fā)明實(shí)施例中,所述數(shù)字光處理投影裝置可以 為LED微型投影儀或者其它具有至少兩級驅(qū)動(dòng)的架構(gòu)的投影儀裝置。
[0031] 在智能電視或者激光電視、LED智能微型投影儀等設(shè)備中主控器與光機(jī)驅(qū)動(dòng)器以 及其他從設(shè)備之間通過I2C進(jìn)行通訊。如圖2所示,若干個(gè)從設(shè)備中,從設(shè)備A3就是光機(jī)驅(qū)動(dòng) 器,其他從設(shè)備可以是調(diào)頻器、電源管理器或者LED驅(qū)動(dòng)器。主控器與光機(jī)驅(qū)動(dòng)器、從設(shè)備 A1、從設(shè)備A2通過第一 I2C總線進(jìn)行通訊,而光機(jī)驅(qū)動(dòng)器與從設(shè)備B1、從設(shè)備B2、從設(shè)備B3通 過第二I2C總線進(jìn)行通訊。
[0032]可選的,在本發(fā)明實(shí)施例中,還可以為三級驅(qū)動(dòng)或者三級以上驅(qū)動(dòng)的構(gòu)架,則主控 器與光機(jī)驅(qū)動(dòng)器之間通過第一 I2C總線進(jìn)行通信,光機(jī)驅(qū)動(dòng)器與其他從設(shè)備通過第二I2C總 線進(jìn)行通信,若從設(shè)備也是其他從設(shè)備的主控器,則通過第三I2C總線進(jìn)行通信等等。
[0033] 主控器通過第一 I2C總線向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文的目的是為了使光機(jī) 驅(qū)動(dòng)器根據(jù)寄存器地址報(bào)文中的寄存器地址進(jìn)行指令操作。其中,寄存器地址不同,執(zhí)行的 指令操作也不同。
[0034] 比如主控器發(fā)送的寄存器地址報(bào)文是為了通知光機(jī)驅(qū)動(dòng)器進(jìn)行寫操作,則光機(jī)驅(qū) 動(dòng)器在接收到主控器發(fā)送的寫操作指令后,通知其他從設(shè)備執(zhí)行寫操作指令;
[0035] 還比如主控器發(fā)送的寄存器地址報(bào)文是為了通知光機(jī)驅(qū)動(dòng)器進(jìn)行讀操作,則光機(jī) 驅(qū)動(dòng)器在接收到主控器發(fā)送的讀操作指令后,通知其他從設(shè)備執(zhí)行讀操作指令。
[0036] 在光機(jī)驅(qū)動(dòng)器通知其他從設(shè)備進(jìn)行讀操作或者是寫操作后,其他從設(shè)備需要完成 光機(jī)驅(qū)動(dòng)器的操作指令,在完成操作指令后,其他從設(shè)備會向光機(jī)驅(qū)動(dòng)器發(fā)送完成指令的 消息,光機(jī)驅(qū)動(dòng)器在接收到其他從設(shè)備發(fā)送的完成指令的消息后,才會向主控器發(fā)送針對 寄存器地址的響應(yīng)報(bào)文。
[0037] 在本發(fā)明實(shí)施例中,主控器與光機(jī)驅(qū)動(dòng)器的SCL信號就是第一I2C總線中的SCL信 號,主控器監(jiān)控的SCL信號就是第一I2C總線的SCL信號。在本發(fā)明實(shí)施例中,光機(jī)驅(qū)動(dòng)器接 收到寄存器地址報(bào)文后,光機(jī)驅(qū)動(dòng)器會將第一 I2C總線的SCL線拉低,表示第一 I2C總線為占 用狀態(tài),光機(jī)驅(qū)動(dòng)器會通過第二I2C總線通知與寄存器地址報(bào)文對應(yīng)的從設(shè)備處理讀取數(shù) 據(jù)命令,例如從設(shè)備B1為讀取數(shù)據(jù),從設(shè)備B2為寫入數(shù)據(jù),當(dāng)寄存器地址報(bào)文為讀取數(shù)據(jù), 則光機(jī)驅(qū)動(dòng)器通知從設(shè)備B1進(jìn)行讀取數(shù)據(jù)操作。當(dāng)從設(shè)備在處理讀取數(shù)據(jù)的操作完成后, 會向光機(jī)驅(qū)動(dòng)器發(fā)送完成指令消息,光機(jī)驅(qū)動(dòng)器在接收到從設(shè)備發(fā)送的完成指令消息后, 釋放第一 I2C總線的SCL信號(即將第一 I2C總線的SCL信號拉高),表示第一 I2C總線的狀態(tài) 為非占用狀態(tài),光機(jī)驅(qū)動(dòng)器釋放完SCL信號后,準(zhǔn)備向主控器發(fā)送響應(yīng)報(bào)文(需要將SDA線拉 低后才能發(fā)送)。
[0038] 在步驟102中,由于主控器一直監(jiān)控SCL信號的變化,在第一I2C總線的SCL從高電 平的位置被拉低后,主控器若監(jiān)控到第一 I2C總線的SCL信號從低電平的位置又變化為高電 平的位置,主控器認(rèn)為光機(jī)驅(qū)動(dòng)器已經(jīng)處理完寄存器地址報(bào)文對應(yīng)的指令,準(zhǔn)備向主控器 發(fā)送響應(yīng)報(bào)文,則判斷是否接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的響應(yīng)報(bào)文,若接收到所述光機(jī)驅(qū) 動(dòng)器發(fā)送的針對所述寄存器地址報(bào)文對應(yīng)的響應(yīng)報(bào)文,主控器認(rèn)為與光機(jī)驅(qū)動(dòng)器之間通訊 正常,可以向光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)報(bào)文。
[0039] 在本發(fā)明實(shí)施例中,當(dāng)光機(jī)驅(qū)動(dòng)器釋放第一I2C總線的SCL信號后,光機(jī)驅(qū)動(dòng)器需 要將第一 I2C總線的SDA信號拉低,才向主控器發(fā)送響應(yīng)報(bào)文,所以主控器在第一 I2C總線的 SCL信號變?yōu)楦唠娖叫盘柡?,等待第一時(shí)長;在主控器在第一時(shí)長后,判斷在第一時(shí)長內(nèi)是 否接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存器地址報(bào)文對應(yīng)的響應(yīng)報(bào)文;
[0040] 若主控器若在第一時(shí)長內(nèi)接收到所述光機(jī)發(fā)送的針對所述寄存器地址報(bào)文對應(yīng) 的響應(yīng)報(bào)文,則向所述光機(jī)發(fā)送數(shù)據(jù)報(bào)文。
[0041] 在本發(fā)明實(shí)施例中,第一時(shí)長可以設(shè)置為主控器向光機(jī)發(fā)送數(shù)據(jù)的時(shí)鐘周期的倍 數(shù),例如一個(gè)時(shí)鐘周期為l〇ys,則可以設(shè)置第一時(shí)長為500ii S,即50個(gè)時(shí)鐘周期,也可以設(shè)置 為其它時(shí)間。
[0042] 在步驟102中,所述主控器在確定所述主控器在所述SCL信號變?yōu)楦唠娖叫盘柡螅?停止監(jiān)控所述SCL信號;
[0043] 所述主控器判斷在第一時(shí)長內(nèi)是否接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存 器地址報(bào)文對應(yīng)的響應(yīng)報(bào)文之后,還包括:
[0044] 所述主控器若在第一時(shí)長內(nèi)未接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存器地 址報(bào)文對應(yīng)的響應(yīng)報(bào)文,則返回監(jiān)控所述SCL信號的步驟。
[0045] 在本發(fā)明實(shí)施例中,主控器監(jiān)控第一I2C總線的SCL信號的目的是確定光機(jī)驅(qū)動(dòng)器 在何時(shí)處理完寄存器地址報(bào)文對應(yīng)的指令,即何時(shí)光機(jī)驅(qū)動(dòng)器拉高第一 I2C總線的SCL信 號,當(dāng)主控器在確定第一I2C總線的SCL信號變?yōu)楦唠娖叫盘枙r(shí),即光機(jī)驅(qū)動(dòng)器已經(jīng)拉高了 第一 12C總線的SCL信號,則此時(shí)主控器停止監(jiān)控第一 12C總線的SCL信號。
[0046] 可選的,若主控器在第一時(shí)長內(nèi)未接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存器 地址報(bào)文對應(yīng)的響應(yīng)報(bào)文,則返回重新監(jiān)控SCL信號的步驟,繼續(xù)監(jiān)控SCL信號的電平。
[0047] 為了防止返回主控器監(jiān)控所述SCL信號的步驟超出主控器與光機(jī)驅(qū)動(dòng)器所處的系 統(tǒng)的處理能力,造成死循環(huán),一種可選的方式是:
[0048] 主控器在返回主控器監(jiān)控所述SCL信號的步驟之前,判斷返回的次數(shù)是否大于循 環(huán)閾值,在確定主控器返回監(jiān)控所述SCL信號的步驟的次數(shù)不大于預(yù)設(shè)循環(huán)閾值后,返回主 控器監(jiān)控所述SCL信號的步驟;
[0049] 在確定主控器返回監(jiān)控所述SCL信號的步驟的次數(shù)大于預(yù)設(shè)循環(huán)閾值后,不再返 回主控器監(jiān)控所述SCL信號的步驟,主控器會確定與光機(jī)驅(qū)動(dòng)器之間通訊失敗,不再向光機(jī) 驅(qū)動(dòng)器發(fā)送任何的數(shù)據(jù)報(bào)文。
[0050] 在本發(fā)明實(shí)施例中,循環(huán)閾值可以根據(jù)系統(tǒng)的處理能力進(jìn)行設(shè)置,例如根據(jù)光機(jī) 驅(qū)動(dòng)器或者主控器的型號,設(shè)置不同的循環(huán)閾值;也可以根據(jù)第一時(shí)長與循環(huán)閾值的對應(yīng) 關(guān)系進(jìn)行設(shè)置,例如第一時(shí)長與循環(huán)閾值有對應(yīng)關(guān)系表,則根據(jù)設(shè)置的第一時(shí)長,在對應(yīng)關(guān) 系表中查找到循環(huán)閾值的值。
[0051] 可選的,在主控器與光機(jī)驅(qū)動(dòng)器之間通訊失敗后,有很多種處理方式。本發(fā)明實(shí)施 例給出一種處理方式:
[0052]主控器會生成一個(gè)錯(cuò)誤報(bào)文,提示用戶主控器與光機(jī)驅(qū)動(dòng)器之間存在故障,以使 用戶根據(jù)錯(cuò)誤報(bào)文顯示的錯(cuò)誤代碼,查找故障原因以及尋找解決辦法。
[0053]例如,錯(cuò)誤代碼與故障原因的對照表如表1所示:
[0056]表1:錯(cuò)誤代碼與故障原因的對照表
[0057]本發(fā)明還提供一種處理I2C通信對接延時(shí)的方法,如圖3所示,所述方法包括:
[0058] 步驟301,主控器向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文后,等待第二時(shí)長;
[0059]步驟302,若所述主控器在所述第二時(shí)長內(nèi)沒有接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針 對所述寄存器地址報(bào)文的響應(yīng)報(bào)文,則返回向所述光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文的步 驟;
[0060] 其中,所述主控器與所述光機(jī)驅(qū)動(dòng)器通過第一I2C總線進(jìn)行數(shù)據(jù)傳輸,所述光機(jī)驅(qū) 動(dòng)器與其它至少一個(gè)從設(shè)備通過第二I2C總線進(jìn)行數(shù)據(jù)傳輸。
[0061] 在步驟301中,第二時(shí)長可以設(shè)置為主控器向光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)的時(shí)鐘周期的 倍數(shù),例如一個(gè)時(shí)鐘周期為l〇ys,則可以設(shè)置第二時(shí)長為500ys,即50個(gè)時(shí)鐘周期,也可以設(shè) 置其它時(shí)間,以使主控器在發(fā)送寄存器地址報(bào)文后等待第二時(shí)長。
[0062] 在步驟301中,主控器向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文的目的是為了通知光機(jī) 驅(qū)動(dòng)器中對應(yīng)的寄存器進(jìn)行指令操作,例如主控器發(fā)送的寄存器地址報(bào)文是為了通知光機(jī) 驅(qū)動(dòng)器進(jìn)行寫操作,則光機(jī)驅(qū)動(dòng)器在接收到主控器發(fā)送的寫操作指令后,通知光機(jī)驅(qū)動(dòng)器 的系統(tǒng)中的其它從設(shè)備執(zhí)行寫操作指令,或者主控器發(fā)送的寄存器地址報(bào)文是為了通知光 機(jī)驅(qū)動(dòng)器進(jìn)行讀操作,則光機(jī)驅(qū)動(dòng)器在接收到主控器發(fā)送的讀操作指令后,通知光機(jī)驅(qū)動(dòng) 器的系統(tǒng)中的其它從設(shè)備執(zhí)行讀操作指令。
[0063] 在步驟301前,主控器還需要向光機(jī)驅(qū)動(dòng)器發(fā)送硬件地址,以便通知光機(jī)驅(qū)動(dòng)器需 要開始進(jìn)行數(shù)據(jù)傳輸,在本發(fā)明實(shí)施例中,光機(jī)驅(qū)動(dòng)器的硬件地址為16進(jìn)制數(shù),例如為 0x34,主控器發(fā)送硬件地址報(bào)文,該報(bào)文中包括尋找的光機(jī)驅(qū)動(dòng)器的硬件地址為0x34,則光 機(jī)驅(qū)動(dòng)器在接收到主控器發(fā)送的硬件地址報(bào)文后,發(fā)送一個(gè)對應(yīng)的響應(yīng)報(bào)文給主控器,以 使主控器繼續(xù)發(fā)送寄存器地址報(bào)文。
[0064]在步驟302中,主控器在第二時(shí)長內(nèi)判斷是否接收到光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述 寄存器地址報(bào)文的響應(yīng)報(bào)文,如果主控器在第二時(shí)長沒有接收到響應(yīng)報(bào)文,則說明此時(shí)光 機(jī)驅(qū)動(dòng)器的內(nèi)部系統(tǒng)并沒有處理完成指令,例如,主控器發(fā)送的光機(jī)驅(qū)動(dòng)器的寄存器地址 報(bào)文是通知光機(jī)驅(qū)動(dòng)器進(jìn)行寫操作,則在主控器等待第二時(shí)長內(nèi),光機(jī)驅(qū)動(dòng)器的系統(tǒng)中還 沒有執(zhí)行完寫操作的指令,則主控器則返回向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文的步驟,在 發(fā)送完寄存器地址報(bào)文后,繼續(xù)等待第二時(shí)長后判斷是否接收到響應(yīng)報(bào)文。
[0065] 在步驟302中,所述主控器確定向所述光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文的次數(shù)不 大于預(yù)設(shè)第二循環(huán)閾值。
[0066] 本發(fā)明實(shí)施例中,主控器在返回發(fā)送寄存器地址報(bào)文的步驟時(shí),需要判斷返回的 此時(shí)是否大于第二循環(huán)閾值,設(shè)定第二循環(huán)閾值以防止主控器向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地 址報(bào)文的次數(shù)超出主控器與光機(jī)驅(qū)動(dòng)器所處的系統(tǒng)的處理能力,造成死循環(huán)的問題。在本 發(fā)明實(shí)施例中,第二循環(huán)閾值可以根據(jù)系統(tǒng)的處理能力進(jìn)行設(shè)置,也需要考慮延時(shí)的第二 時(shí)長。
[0067] 在步驟302中,所述主控器根據(jù)收到的指令對所述第二時(shí)長進(jìn)行更新;
[0068] 若更新后的所述第二時(shí)長增加,則所述主控器減少所述第二循環(huán)閾值;或者若更 新后的所述第二時(shí)長減少,則所述主控器增加所述第二循環(huán)閾值。
[0069] 其中,本發(fā)明實(shí)施例調(diào)整所述第二循環(huán)閾值的方式有很多,下面列列舉三種:
[0070] 方式一、第二時(shí)長的增加或減少時(shí),根據(jù)設(shè)置的調(diào)整比例對第二循環(huán)閾值進(jìn)行調(diào) 整,例如,調(diào)整比例為1:2,則主控器獲得的更新后的第二時(shí)長比更新前的第二時(shí)長增加了 3ms,則第二循環(huán)閾值減少6ms。
[0071] 方式二、第二時(shí)長的增加或減少時(shí),根據(jù)第二時(shí)長與第二循環(huán)閾值之間的對應(yīng)關(guān) 系對第二循環(huán)閾值進(jìn)行調(diào)整。
[0072] 例如,如表2為一種對應(yīng)關(guān)系,第二時(shí)長為0.85ms時(shí),對應(yīng)的第二循環(huán)閾值為105, 當(dāng)?shù)诙r(shí)長減少為0.05ms時(shí),對應(yīng)的第二循環(huán)閾值為185。
[0074]表2:第二時(shí)長與第二循環(huán)閾值之間對應(yīng)關(guān)系表
[0075]方式三、設(shè)置第二時(shí)長與第二循環(huán)閾值的乘積為一固定值,則當(dāng)?shù)诙r(shí)長增加或 減少時(shí),用固定值除以第二時(shí)長就可以得到調(diào)整后的第二循環(huán)閾值,從而知道需要將當(dāng)前 的第二循環(huán)閾值增加多少或減少多少。
[0076]例如設(shè)置第二時(shí)長與第二循環(huán)閾值的乘積的固定值為40ms,若設(shè)置第二時(shí)長為 lOOOys,即100個(gè)時(shí)鐘周期,則根據(jù)固定值40ms除以第二時(shí)長的lOOOys,就可以確定應(yīng)該設(shè) 置的第二循環(huán)閾值為4。
[0077]若將第二時(shí)長增加為100ys,即10個(gè)時(shí)鐘周期時(shí),則根據(jù)固定值40ms除以第二時(shí)長 的100ys,可以確定應(yīng)該設(shè)置的第二循環(huán)閾值為40。
[0078] 在本發(fā)明實(shí)施例中,若所述主控器未接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存 器地址報(bào)文對應(yīng)的響應(yīng)報(bào)文,且向所述光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文的次數(shù)大于所述預(yù) 設(shè)第二循環(huán)閾值,則所述主控器確認(rèn)與所述光機(jī)驅(qū)動(dòng)器之間通訊失敗,停止向所述光機(jī)驅(qū) 動(dòng)器發(fā)送報(bào)文。
[0079] 本發(fā)明上述實(shí)施例中,若主控器在經(jīng)過等待第二時(shí)長后,仍未接收到光機(jī)驅(qū)動(dòng)器 發(fā)送的響應(yīng)報(bào)文,此時(shí)主控器需要再進(jìn)行一次循環(huán),返回到發(fā)送寄存器地址報(bào)文的步驟,在 返回之前,主控器需要判斷返回次數(shù)是否已經(jīng)大于循環(huán)閾值,若大于循環(huán)閾值,則主控器就 確認(rèn)了于光機(jī)驅(qū)動(dòng)器之間的通訊失敗,認(rèn)為光機(jī)驅(qū)動(dòng)器是無法接收到主設(shè)備發(fā)送的數(shù)據(jù)報(bào) 文的,則主控器停止向光機(jī)驅(qū)動(dòng)器發(fā)送報(bào)文,可以減少對第一I2C總線數(shù)據(jù)信道的占用,也 可以及時(shí)停止向光機(jī)驅(qū)動(dòng)器發(fā)送報(bào)文,繼續(xù)執(zhí)行下一個(gè)任務(wù),并且及時(shí)報(bào)錯(cuò),以使光機(jī)驅(qū)動(dòng) 器與主設(shè)備之間的通訊錯(cuò)誤能夠及時(shí)得到解決。
[0080] 為了方便便于本領(lǐng)域技術(shù)人員的理解,在此舉例說明。
[0081 ] 實(shí)施例一
[0082] 在本發(fā)明實(shí)施例中,主控器向光機(jī)驅(qū)動(dòng)器發(fā)送硬件地址報(bào)文,光機(jī)驅(qū)動(dòng)器向主控 器發(fā)送響應(yīng)報(bào)文,以使主控器能夠開始向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文,光機(jī)驅(qū)動(dòng)器的 硬件地址為0x34,如圖4所示,包括:
[0083] 步驟401,主控器向光機(jī)驅(qū)動(dòng)器發(fā)送硬件地址報(bào)文,其中硬件地址報(bào)文中包括光機(jī) 驅(qū)動(dòng)器的硬件地址0x34;
[0084]步驟402,主控器判斷是否接收到光機(jī)驅(qū)動(dòng)器發(fā)送的針對硬件地址報(bào)文的響應(yīng)報(bào) 文,若接收到了光機(jī)驅(qū)動(dòng)器發(fā)送的針對硬件地址報(bào)文的響應(yīng)報(bào)文,則執(zhí)行步驟403;若未接 收到光機(jī)驅(qū)動(dòng)器發(fā)送的針對硬件地址報(bào)文的響應(yīng)報(bào)文,則執(zhí)行步驟404;
[0085] 步驟403,主控器向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文,進(jìn)行讀取光機(jī)驅(qū)動(dòng)器數(shù)據(jù)的 操作,執(zhí)行步驟405;
[0086] 步驟404,主控器確認(rèn)與光機(jī)驅(qū)動(dòng)器之間通訊失敗,不再向光機(jī)驅(qū)動(dòng)器發(fā)送報(bào)文; [0087]步驟405,主控器等待第二時(shí)長,在本發(fā)明實(shí)施例中,設(shè)定第二時(shí)長為50倍的時(shí)鐘 周期,即0.5ms;
[0088]步驟406,主控器判斷在0.5ms內(nèi)是否接收到從光機(jī)驅(qū)動(dòng)器發(fā)送的針對寄存器地址 報(bào)文的響應(yīng)報(bào)文,若接收到了光機(jī)驅(qū)動(dòng)器發(fā)送的響應(yīng)報(bào)文,則執(zhí)行步驟407;否則,執(zhí)行步驟 408;
[0089] 步驟407,主控器向光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)報(bào)文,執(zhí)行步驟409;
[0090] 步驟408,主控器判斷返回到發(fā)送寄存器地址到光機(jī)驅(qū)動(dòng)器的次數(shù)是否大于預(yù)設(shè) 的第二循環(huán)閾值,在本發(fā)明實(shí)施例中,預(yù)設(shè)第二循環(huán)閾值為500,若大于預(yù)設(shè)的第二循環(huán)閾 值,則執(zhí)行步驟404,若不大于預(yù)設(shè)的第二循環(huán)閾值,則執(zhí)行步驟403;
[0091]步驟409,主控器判斷是否接收到數(shù)據(jù)報(bào)文對應(yīng)的響應(yīng)報(bào)文,若接收到光機(jī)驅(qū)動(dòng)器 發(fā)送的響應(yīng)報(bào)文,則執(zhí)行步驟410;否則執(zhí)行步驟404;
[0092] 步驟410,主控器確認(rèn)與光機(jī)驅(qū)動(dòng)器之間通訊完成。
[0093] 實(shí)施例二
[0094]與實(shí)施例一相比,為了減少主控器在未接收到響應(yīng)報(bào)文后向光機(jī)驅(qū)動(dòng)器發(fā)送的次 數(shù),在本發(fā)明實(shí)施例中總延時(shí)時(shí)間為40ms不變的前提下,可以增加主控器等待第二時(shí)長的 時(shí)間,在本發(fā)明實(shí)施例中,設(shè)置為4ms,即400個(gè)時(shí)鐘周期,循環(huán)閾值為10,則如圖5所示,所述 方法包括:
[0095] 步驟501,主控器向光機(jī)驅(qū)動(dòng)器發(fā)送硬件地址報(bào)文,其中硬件地址報(bào)文中包括光機(jī) 驅(qū)動(dòng)器的硬件地址0x34;
[0096]步驟502,主控器判斷是否接收到光機(jī)驅(qū)動(dòng)器發(fā)送的針對硬件地址報(bào)文的響應(yīng)報(bào) 文,若接收到了光機(jī)驅(qū)動(dòng)器發(fā)送的針對硬件地址報(bào)文的響應(yīng)報(bào)文,則執(zhí)行步驟503;若未接 收到光機(jī)驅(qū)動(dòng)器發(fā)送的針對硬件地址報(bào)文的響應(yīng)報(bào)文,則執(zhí)行步驟504;
[0097] 步驟503,主控器向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文,進(jìn)行讀取光機(jī)驅(qū)動(dòng)器數(shù)據(jù)的 操作,執(zhí)行步驟505;
[0098] 步驟504,主控器確認(rèn)與光機(jī)驅(qū)動(dòng)器之間通訊失敗,不再向光機(jī)驅(qū)動(dòng)器發(fā)送報(bào)文; [0099]步驟505,主控器等待第二時(shí)長,在本發(fā)明實(shí)施例中,設(shè)定第二時(shí)長為400倍的時(shí)鐘 周期,即4ms;
[0100]步驟506,主控器判斷在4ms內(nèi)是否接收到從光機(jī)驅(qū)動(dòng)器發(fā)送的針對寄存器地址報(bào) 文的響應(yīng)報(bào)文,若接收到了光機(jī)驅(qū)動(dòng)器發(fā)送的響應(yīng)報(bào)文,則執(zhí)行步驟507;否則,執(zhí)行步驟 508;
[0101] 步驟507,主控器向光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)報(bào)文,執(zhí)行步驟509;
[0102]步驟508,主控器判斷返回到發(fā)送寄存器地址到光機(jī)驅(qū)動(dòng)器的次數(shù)是否大于第二 循環(huán)閾值,在本發(fā)明實(shí)施例中,第二循環(huán)閾值為10,若大于第二循環(huán)閾值,則執(zhí)行步驟504, 若不大于第二循環(huán)閾值,則執(zhí)行步驟503;
[0103] 步驟509,主控器判斷是否接收到數(shù)據(jù)報(bào)文對應(yīng)的響應(yīng)報(bào)文,若接收到光機(jī)驅(qū)動(dòng)器 發(fā)送的響應(yīng)報(bào)文,則執(zhí)行步驟510;否則執(zhí)行步驟504;
[0104] 步驟510,主控器確認(rèn)與光機(jī)驅(qū)動(dòng)器之間通訊完成。
[0105] 實(shí)施例三
[0106] 在本發(fā)明實(shí)施例中,主控器向光機(jī)驅(qū)動(dòng)器發(fā)送硬件地址報(bào)文,光機(jī)驅(qū)動(dòng)器向主控 器發(fā)送響應(yīng)報(bào)文,以使主控器能夠開始向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文,光機(jī)驅(qū)動(dòng)器的 硬件地址為0x34,主控器在獲取SCL信號變?yōu)楦唠娖胶?,判斷是否接收到光機(jī)驅(qū)動(dòng)器發(fā)送的 響應(yīng)報(bào)文,如圖6所示,包括:
[0107] 步驟601,主控器向光機(jī)驅(qū)動(dòng)器發(fā)送硬件地址報(bào)文,其中硬件地址報(bào)文中包括光機(jī) 驅(qū)動(dòng)器的硬件地址0x34;
[0108] 步驟602,主控器判斷是否接收到光機(jī)驅(qū)動(dòng)器發(fā)送的針對硬件地址報(bào)文的響應(yīng)報(bào) 文,若接收到了光機(jī)驅(qū)動(dòng)器發(fā)送的針對硬件地址報(bào)文的響應(yīng)報(bào)文,則執(zhí)行步驟603;若未接 收到光機(jī)驅(qū)動(dòng)器發(fā)送的針對硬件地址報(bào)文的響應(yīng)報(bào)文,則執(zhí)行步驟604;
[0109] 步驟603,主控器向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文,進(jìn)行讀取光機(jī)驅(qū)動(dòng)器數(shù)據(jù)的 操作,執(zhí)行步驟605;
[0110] 步驟604,主控器確認(rèn)與光機(jī)驅(qū)動(dòng)器之間通訊失敗,不再向光機(jī)驅(qū)動(dòng)器發(fā)送報(bào)文;
[0111] 步驟605,主控器監(jiān)控SCL信號的信號變化,獲取SCL信號變?yōu)楦唠娖降淖兓瘯r(shí)間;
[0112] 步驟606,主控器等待第一時(shí)長,在本發(fā)明實(shí)施例中,設(shè)置第一時(shí)長為lms,即100個(gè) 時(shí)鐘周期;
[0113] 步驟607,主控器判斷在lms內(nèi)是否接收到從光機(jī)驅(qū)動(dòng)器發(fā)送的針對寄存器地址報(bào) 文的響應(yīng)報(bào)文,若接收到了光機(jī)驅(qū)動(dòng)器發(fā)送的響應(yīng)報(bào)文,則執(zhí)行步驟608;否則,執(zhí)行步驟 604;
[0114] 步驟608,主控器向光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)報(bào)文;
[0115] 步驟609,主控器判斷是否接收到數(shù)據(jù)報(bào)文對應(yīng)的響應(yīng)報(bào)文,若接收到光機(jī)驅(qū)動(dòng)器 發(fā)送的響應(yīng)報(bào)文,則執(zhí)行步驟610;否則執(zhí)行步驟604;
[0116] 步驟610,主控器確認(rèn)與光機(jī)驅(qū)動(dòng)器之間通訊完成。
[0117] 實(shí)施例三與實(shí)施例一以及實(shí)施例二相比,主控器能夠根據(jù)SCL信號的電平的變化 準(zhǔn)確獲知光機(jī)驅(qū)動(dòng)器系統(tǒng)處理完指令的時(shí)間點(diǎn),即光機(jī)驅(qū)動(dòng)器釋放SCL信號的時(shí)間點(diǎn),則若 光機(jī)驅(qū)動(dòng)器與主控器之間通訊正常,則主控器一定能夠接收到光機(jī)驅(qū)動(dòng)器發(fā)送的響應(yīng)報(bào) 文,減少了實(shí)施例一以及實(shí)施例二中返回向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文的次數(shù),即主 控器只需要執(zhí)行一次向寄存器地址報(bào)文,就可以獲得光機(jī)驅(qū)動(dòng)器發(fā)送的響應(yīng)報(bào)文。
[0118] 基于同樣的構(gòu)思,本發(fā)明實(shí)施例還提供一種數(shù)字光處理投影裝置,如圖7所示,包 括:
[0119] 主控器701和光機(jī)驅(qū)動(dòng)器702,所述主控器701和所述光機(jī)驅(qū)動(dòng)器702之間通過I2C 進(jìn)行通信;
[0120] 所述主控器701,如圖8所示包括:
[0121 ] 監(jiān)控單元801,用于向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文后,若所述光機(jī)驅(qū)動(dòng)器的串 行時(shí)鐘SCL信號為低電平信號,則監(jiān)控所述SCL信號;
[0122]發(fā)送單元802,用于在所述SCL信號變?yōu)楦唠娖叫盘柡?,若接收到所述光機(jī)驅(qū)動(dòng)器 發(fā)送的針對所述寄存器地址報(bào)文對應(yīng)的響應(yīng)報(bào)文,則向所述光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)報(bào)文。 [0123] 進(jìn)一步地,所述發(fā)送單元802,具體用于:
[0124] 在所述監(jiān)控單元監(jiān)控SCL信號變?yōu)楦唠娖叫盘柡?,等待第一時(shí)長;
[0125] 在等待第一時(shí)長后,判斷在第一時(shí)長內(nèi)是否接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所 述寄存器地址報(bào)文對應(yīng)的響應(yīng)報(bào)文;
[0126] 若在第一時(shí)長內(nèi)接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存器地址報(bào)文對應(yīng)的 響應(yīng)報(bào)文,則向所述光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)報(bào)文。
[0127] 進(jìn)一步地,所述監(jiān)控單元801,還用于:
[0128] 在確定所述主控器在所述SCL信號變?yōu)楦唠娖叫盘柡螅V贡O(jiān)控所述SCL信號;
[0129] 所述發(fā)送單元802,還用于:
[0130] 若在第一時(shí)長內(nèi)未接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存器地址報(bào)文對應(yīng) 的響應(yīng)報(bào)文,則觸發(fā)所述監(jiān)控模塊繼續(xù)監(jiān)控所述SCL信號。
[0131] 進(jìn)一步地,所述發(fā)送單元802,還用于:
[0132]確定觸發(fā)所述監(jiān)控模塊繼續(xù)監(jiān)控所述SCL信號的次數(shù)不大于預(yù)設(shè)循環(huán)閾值。
[0133] 進(jìn)一步地,所述發(fā)送單元802,還用于:
[0134] 若確定觸發(fā)所述監(jiān)控模塊繼續(xù)監(jiān)控所述SCL信號的次數(shù)大于預(yù)設(shè)循環(huán)閾值,則確 定與所述光機(jī)驅(qū)動(dòng)器之間通訊失敗。
[0135] 本發(fā)明實(shí)施例還提供一種處理I2C通信對接延時(shí)的投影裝置,如圖9所示,包括:
[0136] 等待單元901,用于向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文后,等待第一時(shí)長;
[0137] 循環(huán)單元902,用于若在所述第一時(shí)長內(nèi)沒有接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對 所述寄存器地址報(bào)文的響應(yīng)報(bào)文,則返回向所述光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文的步驟;
[0138] 其中,所述投影裝置與所述光機(jī)驅(qū)動(dòng)器通過第一 I2C總線進(jìn)行數(shù)據(jù)傳輸,所述光機(jī) 驅(qū)動(dòng)器與其它至少一個(gè)光機(jī)驅(qū)動(dòng)器通過第二I2C總線進(jìn)行數(shù)據(jù)傳輸。
[0139] 進(jìn)一步地,所述循環(huán)單元902,還用于:
[0140] 確定向所述光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文的次數(shù)不大于預(yù)設(shè)循環(huán)閾值。
[0141] 進(jìn)一步地,所述裝置還包括:
[0142] 更新單元903,用于所述根據(jù)收到的指令對所述第一時(shí)長進(jìn)行更新;
[0143] 若更新后的所述第一時(shí)長增加,則減少所述循環(huán)閾值;或者若更新后的所述第一 時(shí)長減少,則增加所述循環(huán)閾值。
[0144] 進(jìn)一步地,所述裝置還包括:
[0145] 停止單元904,用于若未接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存器地址報(bào)文 對應(yīng)的響應(yīng)報(bào)文,且向所述光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文的次數(shù)大于所述預(yù)設(shè)循環(huán)閾 值,則確認(rèn)與所述光機(jī)驅(qū)動(dòng)器之間通訊失敗,停止向所述光機(jī)驅(qū)動(dòng)器發(fā)送報(bào)文。
[0146] 本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程 圖和/或方框圖來描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流 程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序 指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn) 生一個(gè)機(jī)器,使得通過計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí) 現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
[0147] 這些計(jì)算機(jī)程序指令也可存儲在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特 定方式工作的計(jì)算機(jī)可讀存儲器中,使得存儲在該計(jì)算機(jī)可讀存儲器中的指令產(chǎn)生包括指 令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或 多個(gè)方框中指定的功能。
[0148] 這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì) 算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或 其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一 個(gè)方框或多個(gè)方框中指定的功能的步驟。
[0149] 盡管已描述了本發(fā)明的優(yōu)選實(shí)施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造 性概念,則可對這些實(shí)施例作出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu) 選實(shí)施例以及落入本發(fā)明范圍的所有變更和修改。
[0150] 顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精 神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍 之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。
【主權(quán)項(xiàng)】
1. 一種處理I2C通信對接延時(shí)的方法,用于數(shù)字光處理投影,其特征在于,所述方法包 括: 主控器向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文后,若所述主控器和所述光機(jī)驅(qū)動(dòng)器之間的 串行時(shí)鐘SCL信號為低電平信號,則監(jiān)控所述SCL信號; 所述主控器在所述SCL信號變?yōu)楦唠娖叫盘柡?,若接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對 所述寄存器地址報(bào)文對應(yīng)的響應(yīng)報(bào)文,則向所述光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)報(bào)文。2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述主控器在所述SCL信號變?yōu)楦唠娖叫?號后,若接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存器地址報(bào)文對應(yīng)的響應(yīng)報(bào)文,則向所 述光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)報(bào)文,包括: 所述主控器在SCL信號變?yōu)楦唠娖叫盘柡?,等待第一時(shí)長; 所述主控器在等待第一時(shí)長后,判斷在第一時(shí)長內(nèi)是否接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的 針對所述寄存器地址報(bào)文對應(yīng)的響應(yīng)報(bào)文; 所述主控器若在第一時(shí)長內(nèi)接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存器地址報(bào)文 對應(yīng)的響應(yīng)報(bào)文,則向所述光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)報(bào)文。3. 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述主控器在SCL信號變?yōu)楦唠娖叫盘柡?還包括: 所述主控器在確定所述主控器在所述SCL信號變?yōu)楦唠娖叫盘柡?,停止監(jiān)控所述SCL信 號; 所述主控器判斷在第一時(shí)長內(nèi)是否接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存器地 址報(bào)文對應(yīng)的響應(yīng)報(bào)文之后,還包括: 所述主控器若在第一時(shí)長內(nèi)未接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存器地址報(bào) 文對應(yīng)的響應(yīng)報(bào)文,則返回監(jiān)控所述SCL信號的步驟。4. 根據(jù)權(quán)利要求3所述的方法,其特征在于,所述主控器返回所述主控器監(jiān)控所述SCL 信號的步驟之前,還包括: 所述主控器確定所述主控器返回監(jiān)控所述SCL信號的步驟的次數(shù)不大于預(yù)設(shè)循環(huán)閾 值。5. 根據(jù)權(quán)利要求4所述的方法,其特征在于,該方法還包括: 所述主控器若確定所述主控器返回監(jiān)控所述SCL信號的步驟的次數(shù)大于預(yù)設(shè)循環(huán)閾 值,則確定與所述光機(jī)驅(qū)動(dòng)器之間通訊失敗。6. -種數(shù)字光處理投影裝置,其特征在于,包括:主控器和光機(jī)驅(qū)動(dòng)器,所述主控器和 所述光機(jī)驅(qū)動(dòng)器之間通過I2C進(jìn)行通信,所述主控器包括: 監(jiān)控單元,用于在主控器向光機(jī)驅(qū)動(dòng)器發(fā)送寄存器地址報(bào)文后,若所述主控器和所述 光機(jī)驅(qū)動(dòng)器之間的串行時(shí)鐘SCL信號為低電平信號,則監(jiān)控所述SCL信號; 發(fā)送單元,用于在所述監(jiān)控單元監(jiān)控所述SCL信號變?yōu)楦唠娖叫盘柡?,若接收到所述?機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存器地址報(bào)文對應(yīng)的響應(yīng)報(bào)文,則向所述光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù) 報(bào)文。7. 根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述發(fā)送單元具體用于: 在所述監(jiān)控單元監(jiān)控SCL信號變?yōu)楦唠娖叫盘柡?,等待第一時(shí)長; 在等待第一時(shí)長后,判斷在第一時(shí)長內(nèi)是否接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄 存器地址報(bào)文對應(yīng)的響應(yīng)報(bào)文; 若在第一時(shí)長內(nèi)接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存器地址報(bào)文對應(yīng)的響應(yīng) 報(bào)文,則向所述光機(jī)驅(qū)動(dòng)器發(fā)送數(shù)據(jù)報(bào)文。8. 根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述監(jiān)控單元,還用于: 在確定所述主控器在所述SCL信號變?yōu)楦唠娖叫盘柡?,停止監(jiān)控所述SCL信號; 所述發(fā)送單元,還用于: 若在第一時(shí)長內(nèi)未接收到所述光機(jī)驅(qū)動(dòng)器發(fā)送的針對所述寄存器地址報(bào)文對應(yīng)的響 應(yīng)報(bào)文,則觸發(fā)所述監(jiān)控單元繼續(xù)監(jiān)控所述SCL信號。9. 根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述發(fā)送單元,還用于: 確定觸發(fā)所述監(jiān)控單元繼續(xù)監(jiān)控所述SCL信號的次數(shù)不大于預(yù)設(shè)循環(huán)閾值。10. 根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述發(fā)送單元還用于: 若確定觸發(fā)所述監(jiān)控單元繼續(xù)監(jiān)控所述SCL信號的次數(shù)大于預(yù)設(shè)循環(huán)閾值,則確定與 所述光機(jī)驅(qū)動(dòng)器之間通訊失敗。
【文檔編號】G06F13/42GK105893313SQ201610256768
【公開日】2016年8月24日
【申請日】2016年4月21日
【發(fā)明人】石新利
【申請人】青島海信寬帶多媒體技術(shù)有限公司