專利名稱:光盤驅動器及其控制方法
技術領域:
本發明涉及一種用于個人計算機的光盤驅動器。
隨著電腦產品逐漸家電化發展,用戶將不再滿意一般光驅功能支持方面的單調(僅有播放、暫停、停止等簡單功能)、操作不方便、模式化(按鍵設計位置無新意)等諸多問題,如果能夠使光驅像大多數DVD PLAYER、CD PLAYER那樣能支持更為強大、豐富的諸多控制功能,例如,由紅外遙控裝置(同時并不需要計算機開機)來直接控制光盤驅動器進行操作等,必然會極大的提高光驅產品的附加價值。
例如,目前的臺式計算機一般都配置有光盤驅動器如CD-ROM或DVD-ROM,用戶可以用它們來播放音頻光盤(CD碟片),通過外接音箱或耳機欣賞優美的音樂。但是步驟比較復雜,用戶首先要打開計算機電源,然后進入操作系統并且運行播放CD碟片的應用軟件,選擇播放曲目、調整音量、播放或暫停等操作也都需要通過播放軟件來進行。這種過程對用戶比較麻煩,并且要求用戶熟悉計算機及播放軟件。另一方面,在此過程,計算機主機和顯示器必須得到正常的供電,其中的中央處理單元CPU、顯示器和硬盤等高功耗設備的耗電量較大,對于只實現播放CD之功能而言,造成了能源的較大浪費。
根據本發明的一個方面,提供一種通過外部控制裝置控制光盤驅動器進行操作的方法,其中,該光盤驅動器安裝在一計算機內,該外部控制裝置的通信接口連接該光盤驅動器的通信接口,該方法包括以下步驟由該光盤驅動器中的通信接口接收來自該外部控制裝置的控制指令信息;由該光盤驅動器中的微處理器根據該光盤驅動器與該外部控制裝置之間預定的通信協議對該控制指令信息進行解碼處理;該微處理器控制該光盤驅動器的相關部件執行該控制指令,實現相應的功能。
在本發明的實施例中,該光盤驅動器根據預定的通信協議,將執行該控制指令過程中的狀態信息或該光盤驅動器中的光盤的有關信息和數據進行編碼處理并封包,并通過該通信接口發送給該外部控制裝置。
所述的控制指令可以用于在計算機正常開機運行后控制光盤驅動器進行各種操作。例如用戶可使用紅外遙控器控制光驅的操作,播放音頻或視頻光盤。
所述的控制指令也可以是用于控制該光盤驅動器在該計算機的電源未被打開時、在該外部控制裝置的直接控制下播放音頻光盤,或進行其它的操作。
所述的光盤的有關信息和數據可以包括光盤信息、光盤內容目錄信息、光盤數據信息和光盤驅動器狀態信息。
在本發明的實施例中,所述的通信協議包括(1)通信協議的框架性定義,包括信號傳輸率、信號幅值定義(即邏輯“0”、“1”對應的電平值)、幀長度及各位具體定義、發送/接收命令包格式、長度及具體定義;(2)控制命令字定義,按照上述幀格式詳細確定各控制指令對應的指令碼;
(3)光盤驅動器狀態信息命令字定義,包括光盤驅動器的各種狀態以及光盤信息等對應的碼值;(4)事件定義,即根據實現功能的不同定義不同的事件,所謂事件即定義了在什么狀態下發送或接收什么樣的數據包。
在本發明的實施例中,所述的通信協議可包括以下內容(1)為該光盤驅動器發送命令封包定義的光盤驅動器之狀態代碼及光盤之狀態代碼,至少包括對應以下狀態的狀態代碼目前該光盤驅動器處于播放狀態;目前該光盤驅動器處于暫停狀態;目前該光盤驅動器處于停止狀態;目前該光盤驅動器處于托架非關閉狀態;目前該光盤驅動器中沒有光盤;目前該光盤驅動器中有非音頻光盤;(2)為該光盤驅動器發送命令封包定義的數據傳送命令,至少包括以下命令發送光盤驅動器中CD光盤總曲目命令及總曲目數;發送光盤驅動器中CD光盤當前播放曲目序號命令及該曲目序號;發送當前曲目播放時間信息命令及播放時間;發送光盤驅動器當前音量值命令及音量值數據;(3)為該光盤驅動器發送命令封包定義的應答命令,至少包括以下應答;命令接收正確;命令接收錯誤,請求重發;(4)事件定義,包括當光盤驅動器在某一狀態下、接收到來自該控制器的某一控制命令時,發送相應的應答或狀態代碼、和/或執行相應的操作。
根據本發明的另一方面,提供一種光盤驅動器,其中,該光盤驅動器主要包括微處理器、程序寄存器、解碼器和放大器、光學頭、各種控制馬達、驅動電路等模塊,該光盤驅動器中設計有一個通信接口,該程序寄存器中包含實現以下步驟的程序由該通信接口接收來自一個外部控制裝置的控制指令信息;由該微處理器根據該光盤驅動器與該外部控制裝置之間預定的通信協議對該控制指令信息進行解碼處理;該微處理器控制該光盤驅動器的相關部件執行該控制指令,實現相應的功能。
在本發明的實施例中,該通信接口設計有一個插座端口,該端口設置在該光盤驅動器上并用于連接該外部控制裝置的通信接口。
該通信接口可以是串行通信接口并遵循RS232串行通信協議。
本發明實現一種通過外部控制裝置直接控制操作的光盤驅動器及其控制方法,通過一個遵循預定通信協議的專用接口與遵循相應協議的外部控制裝置進行通信,光驅在不受計算機之CPU的控制下實現操作控制,從而實現對該光盤驅動器更為復雜的控制功能,可以對光盤驅動器的控制按鍵進行更為靈活的設計。一方面能夠很好地方便用戶,使其操作光驅時更為靈活便利,而且還極大地豐富了光驅的可擴展性,組合出能實現各種復雜控制的不同方案。
例如光驅在一個外部控制裝置的控制下,可以在它所在的計算機之電源未打開時由該光驅直接播放音頻光盤,在該外部控制裝置上可設置用于控制音頻光盤的播放/暫停、進到上一曲目、進到下一曲目、停止播放、光驅托架打開/閉合、音量增加和音量減少的按鍵,從而大大方便了用戶的操作使用,并節省能源。而在計算機開機運行時,用戶也可采用遙控器來控制光盤驅動器的操作,如播放視頻光盤或音頻光盤等。利用本發明,可以將光盤驅動器的控制按鍵設置在計算機的前面板上(如將外部控制裝置也設置在計算機內)或是遙控裝置上(如紅外遙控器),使用戶的操作非常方便,特別是方便了對光驅的控制操作。
以下結合
本發明的實施例。
圖2是光盤驅動器的實施例的外接端口示意圖;圖3是本發明的光盤驅動器之控制方法的流程圖;圖4是本發明的光驅與外部控制裝置連接并受控操作的實施例。
本發明的具體實施方式
如圖1所示,在該實施例中,實現本發明的光驅控制方法的軟件程序存儲于程序寄存器中,由微處理器執行該程序以實現該控制方法。微處理器上的RXD、TXD和GND引腳是實現串行通信的引腳,它們通過一個插座連接到一個外部控制裝置的通信接口。
在本發明的實施例中,在光驅PCB板布線方面做一些設計,引出光驅本身信號(包括光盤信息、曲目信息、數據信息、光驅狀態信息等)以及控制信號(執行各種按鍵功能的指令信息),用來與外部控制裝置進行通信。在此,光盤信息包括光盤類型信息、光盤內容目錄信息等,曲目信息是指音頻光盤的樂曲目錄信息,數據信息是指光盤所包含的數據信息,如音頻數據或視頻數據,光驅狀態信息是指光驅所處狀態的信息,如播放、暫停、打開托架等。在光驅的后I/O部分增加定制的通信端口,設計示意圖如圖2所示。
其中,端口1是定制的通信接口,端口2是數字音頻輸出口,端口3是模擬音頻輸出口,端口4是設置開關,端口5是ATAPI接口,端口6是電源插座,光驅在計算機未啟動時仍可得到供電(此處電源需做一些特殊設計,以滿足光驅供電要求)。定制的通信端口1的設計及PIN腳定義如下(以下提供兩種具體設計例)DVD-ROM后端定制3PIN的串行通信端口,即RXD、TXD和GND;串行數據通信1X4PIN(即為一排4個引腳)、2.54mm pitch接口插座,其中PIN1保留(廠商自定義)、PIN2為TXD、PIN3為GND、PIN4為RXD;或是2×2 PIN 2.54mm pitch接口插座,其中PIN1保留(廠商自定義)、PIN2為TXD、PIN3為GND、PIN4為RXD,如圖2所示。
PIN腳定義及接口形式除上述兩種外,還可有其他不同方法,可根據光驅后I/O設計位置的具體情況做定制。
光驅firmware根據支持功能的不同以及具體通信協議的定義做定制,以配合硬件及接口部分實現全部功能。
在本發明的一個實施例中,一種具有顯示、按鍵控制及遙控功能的不開機播放CD實施方案中使用了這種帶有串行通信端口的光驅。系統采用了單片機、紅外接收器、紅外遙控器、小LCD、7鍵控制面板等部件構成外部控制裝置,配合根據本發明之光驅以實現一套較為復雜的控制功能。其原理框圖如圖4所示。圖中的主控制板、7鍵控制面板和遙控器構成一套外部控制裝置。在該實施例中包括1.主機電源計算機電源單獨提供+12VStandBy和+5VstandBy電源(即不受電源開關控制的電源輸出)給DVD-ROM,并單獨提供+5VstandBy電源給主控制板,以保證在未打開主機電源開關時,DVD-ROM和主控制板也能獲得所需的電源。
2.DVD-ROM(即根據本發明的光盤驅動器)DVD-ROM通過串行通信端口發送標準異步串行通信數據封包(包含總曲目、當前曲目序號、曲目播放時間和音量)給主控制板上的單片機,同時也通過該端口接收單片機發送來的控制信號封包,以實現7按鍵控制功能;計算機沒有開機并且DVD-ROM中有CD碟片,但是沒有播放指令輸入時,DVD-ROM在讀取CD碟片信息后,CD碟片停轉。只有當有播放指令輸入時,DVD-ROM開始轉動碟片,播放CD,當有停止指令輸入時,停止播放CD,碟片停轉;當計算機開機并播放CD碟片時,DVD-ROM仍能夠通過串行通信端口發送數據封包,并接收控制信號封包。
3.計算機主板(未示出)主板針對實現不開機播放CD功能進行了適當的電路設計。
4.小LCD當播放CD碟片時,小LCD顯示由單片機解碼的CD碟片的總曲目、當前曲目序號、曲目播放時間和音量等。
5.7鍵控制面板主機箱前面板單獨設計DVD-ROM的7鍵控制面板,7鍵分別為播放/暫停、上一曲目、下一曲目、停止、托架打開/閉合、音量增加、音量減小。
6.紅外遙控器紅外遙控器具有7個按鍵,功能與7鍵控制面板相同。
7.單片機單片機接收DVD-ROM的數據封包解碼出CD碟片的總曲目、當前曲目序號、曲目播放時間和音量后,驅動小LCD顯示;接收7鍵控制面板的按鍵信息,編碼后發送給DVD-ROM,以實現相應的操作;接收紅外接收器發送來的按鍵信息,編碼后發送給DVD-ROM,以實現相應的操作;發送請求命令給DVD-ROM,以獲得DVD-ROM的狀態;在播放CD碟片過程中,每1秒發送1或2次請求命令給DVD-ROM,以獲得DVD-ROM中CD碟片的總曲目、當前曲目序號、曲目播放時間和音量值等。
8.紅外接收器紅外接收器接收紅外遙控器發送的按鍵信息,并將其傳送給單片機。
9.按鍵開關主控制板布置7個按鍵開關分別響應7鍵控制面板不同的按鍵信息。
由單片機及紅外接收器構成一個主控制板,由該主控制板、7鍵控制面板、小LCD和紅外遙控器構成外部控制裝置,由該外部控制裝置控制光驅在計算機開機運行時或關機后進行各種操作,如播放視頻或音頻光盤。
圖3說明本發明之實施例的控制方法的流出圖。
光盤驅動器與外部控制裝置(如7鍵控制面板)之間的通信協議包括1.異步串行通信信號的幅值定義+3.3V為“1”,0V為“0”2.異步串行通信信號傳輸率9600bps3.異步串行通信協議(1)異步串行通信幀格式,1幀為11位1位起始位(為“0”),8位數據位(低位在前),1位偶校驗位,1位停止位(為“1”)(2)發送格式①發送固定長度的命令封包(Command Packet)②主控制板發送為單個字節命令封包(CP0),命名為CONCMD。
③DVD-ROM發送為3個字節命令封包(CP0,CP1,CP2),首字節命名為DVDCMD,其余為數據字節DATA 1,...DATA n。(3)命令字定義①主控制板發送命令封包(CP0)CONCMD控制命令CP0=00000000播放/暫停鍵按下CP0=00000001上一曲目鍵按下CP0=00000010下一曲目鍵按下CP0=00000011停止鍵按下CP0=00000100托架打開/閉合鍵按下CP0=00000101音量增大鍵按下CP0=00000110音量減小鍵按下應答命令CP0=10000000數據接收正確CP0=10000001數據接收錯誤,請求重發請求命令CP0=10000010發送獲取DVD-ROM狀態請求CP0=10000011發送獲取當前CD碟片總曲目請求CP0=10000100發送獲取當前播放曲目序號請求CP0=10000101發送獲取當前曲目播放時間信息請求CP0=10000110發送獲取音量值請求②DVD-ROM發送命令封包(CP0,CP1,CP2)DVDCMD,DATA1,DATA2狀態代碼(DVD-ROM狀態)CP0=10000010,CP1=00000000目前DVD-ROM處于播放狀態,CP2=0CP0=10000010,CP1=00000001目前DVD-ROM處于暫停狀態,CP2=0CP0=10000010,CP1=00000010目前DVD-ROM處于停止狀態,CP2=0CP0=10000010,CP1=00000011目前DVD-ROM處于托架非關閉狀態,CP2=0狀態代碼(碟片狀態)CP0=10000010,CP1=00000100目前DVD-ROM中沒有碟片,CP2=0CP0=10000010,CP1=00000101目前DVD-ROM中有非CD碟片,CP2=0應答命令
CP0=10000000命令接收正確,CP1=0,CP2=0CP0=10000001命令接收錯誤請求重發,CP1=0,CP2=0數據傳送CP0=10000011發送DVD-ROM中CD碟片總曲目命令,CP1為總共有幾支曲,CP2=0CP0=10000100發送DVD-ROM中CD碟片當前播放曲目序號命令,CP1為第幾支曲,CP2=0CP0=10000101發送當前曲目播放時間信息命令,CP1分,CP2秒CP0=10000110發送DVD-ROM當前音量值命令,CP1為音量值(0-15),CP2=0(4)事件定義當DVD-ROM接收到主控制板發送的托架打開/閉合控制命令后,發送接收正確應答命令,并執行相應的操作當DVD-ROM中沒有碟片或DVD-ROM中有非CD碟片時,接收到主控制板發送的除托架打開/閉合以外的其它控制命令后,發送相應的狀態代碼(碟片狀態)當DVD-ROM處于某種DVD-ROM狀態時,接收到主控制板發送的控制命令后,發送接收正確應答命令,并執行相應的操作當DVD-ROM處于除播放和暫停以外的其它狀態時,接收到主控制板發送的音量增大或者減小控制命令后,發送接收正確應答命令,但不執行任何操作當DVD-ROM播放CD碟片的第一支曲時接收到主控制板發送上一曲控制命令,或播放CD碟片的最后一支曲時接收到主控制板發送下一曲控制命令,發送接收正確應答命令,但不執行任何操作當DVD-ROM處于暫停狀態時,接收到主控制板發送上一曲或者下一曲控制命令后,發送接收正確應答命令,并跳轉到上一曲或者下一曲的起點但不播放仍暫停當DVD-ROM接收到主控制板發送的獲取DVD-ROM狀態請求命令后,發送相應的狀態代碼當DVD-ROM接收到主控制板發送的其他請求命令后,發送相應的數據傳送命令當DVD-ROM不能識別主控制板發送的命令時,發送接受錯誤命令,請求主控制板重發命令當DVD-ROM發送的命令(不包括接收正確命令),如果沒有得到應答,則重發此命令當DVD-ROM收到主控制板發送的接收錯誤命令,則重發此命令主控制板定時每1秒鐘發送1或2次五種請求命令給DVD-ROM,以獲得所需信息當主控制板上有按鍵信息輸入時,主控制板發送控制命令給DVD-ROM當主控制板收到遙控器發出的按鍵信息后,主控制板發送控制命令給DVD-ROM當主控制板接收到DVD-ROM發送的狀態代碼或數據傳送命令后,發送接收正確應答命令當主控制板不能識別DVD-ROM發送的命令時,發送接受錯誤命令,請求DVD-ROM重發命令當主控制板發送的命令(不包括接收正確命令),如果沒有得到應答,則重發此命令當主控制板收到DVD-ROM發出的接收錯誤命令,則重發此命令。
上述通信協議的內容分別以程序及數據的方式存儲于光驅中的程序寄存器和主控制板中,并分別由光驅的處理芯片和單片機來執行。
在本發明的另一實施例中,在光驅所在的計算機開機運行后,通過紅外遙控器控制本發明的光盤驅動器播放DVD或VCD視頻光盤。并在播放過程中進行暫停、音量控制或選段播放等操作。
在本發明的實施例中,要在標準光驅的PCB布板方面要做一些改動,需要額外引出一些信號線;接口方面開了定制的4PIN串行通信端口;配合此端口要定制排線連接光驅和控制模塊部分。硬件部分的改動很小,不會有很大的成本投入。對于用戶而言沒有復雜的連線工作要做。根據要實現功能的不同,PC廠商可以自己制定相應的通信協議,而光驅廠商只需要遵循此協議寫Firmware即可實現不同的解決方案。
權利要求
1.一種通過外部控制裝置控制光盤驅動器進行操作的方法,該光盤驅動器安裝在一計算機內,該外部控制裝置的通信接口連接該光盤驅動器的通信接口,該方法包括以下步驟由該光盤驅動器中的通信接口接收來自該外部控制裝置的控制指令信息;由該光盤驅動器中的微處理器根據該光盤驅動器與該外部控制裝置之間預定的通信協議對該控制指令信息進行解碼處理;該微處理器控制該光盤驅動器的相關部件執行該控制指令,實現相應的功能。
2.根據權利要求1所述的方法,其中,該光盤驅動器根據預定的通信協議,將執行該控制指令過程中的狀態信息或該光盤驅動器中的光盤的有關信息和數據進行編碼處理并封包,并通過該通信接口發送給該外部控制裝置。
3.根據權利要求1所述的方法,其中,所述的控制指令用于在計算機正常開機運行后控制光盤驅動器進行各種操作。
4.根據權利要求1所述的方法,其中,所述的控制指令用于控制該光盤驅動器在該計算機的電源未被打開時、在該外部控制裝置的直接控制下播放音頻光盤或進行其他操作。
5.根據權利要求2所述的方法,其中,所述的光盤的有關信息和數據包括光盤信息、光盤內容目錄信息、光盤數據信息和光盤驅動器狀態信息等。
6.根據權利要求1或2所述的方法,所述的通信協議包括(1)信號傳輸率、信號幅值定義、幀長度及各位具體定義、發送/接收命令包格式、長度及具體定義;(2)控制命令字定義,按照上述幀格式詳細確定各控制指令對應的指令碼;(3)光盤驅動器狀態信息命令字定義,包括光盤驅動器的各種狀態以及光盤信息等對應的碼值;(4)事件定義,包括對光驅在某一狀態下發送或接收某一數據包的定義。
7.根據權利要求6所述的方法,所述的通信協議包括(1)為該光盤驅動器發送命令封包定義的光盤驅動器之狀態代碼及光盤之狀態代碼,至少包括對應以下狀態的狀態代碼目前該光盤驅動器處于播放狀態;目前該光盤驅動器處于暫停狀態;目前該光盤驅動器處于停止狀態;目前該光盤驅動器處于托架非關閉狀態;目前該光盤驅動器中沒有光盤;目前該光盤驅動器中有非音頻光盤;(2)為該光盤驅動器發送命令封包定義的數據傳送命令,至少包括以下命令發送光盤驅動器中CD光盤總曲目命令及總曲目數;發送光盤驅動器中CD光盤當前播放曲目序號命令及該曲目序號;發送當前曲目播放時間信息命令及播放時間;發送光盤驅動器當前音量值命令及音量值數據;(3)為該光盤驅動器發送命令封包定義的應答命令,至少包括以下應答;命令接收正確;命令接收錯誤,請求重發;(4)事件定義,包括當光盤驅動器在某一狀態下、接收到來自該控制器的某一控制命令時,發送相應的應答或狀態代碼、和/或執行相應的操作。
8.一種光盤驅動器,該光盤驅動器包括微處理器、程序寄存器、解碼器和放大器、光學頭、各種控制馬達和驅動電路,該光盤驅動器中包括一個通信接口,該程序寄存器中包含實現以下步驟的程序由該通信接口接收來自一個外部控制裝置的控制指令信息;由該微處理器根據該光盤驅動器與該外部控制裝置之間預定的通信協議對該控制指令信息進行解碼處理;該微處理器控制該光盤驅動器的相關部件執行該控制指令,實現相應的功能。
9.根據權利要求8所述的光盤驅動器,其中,該通信接口包括一個插接端口,該端口設置在該光盤驅動器上并用于連接該外部控制裝置的通信接口。
10.根據權利要求8所述的光盤驅動器,其中,該通信接口為串行通信接口并遵循RS232串行通信協議。
全文摘要
一種通過外部控制裝置控制光盤驅動器進行操作的方法,該光盤驅動器安裝在一計算機內,該外部控制裝置的通信接口連接該光盤驅動器的通信接口,該方法包括以下步驟由該通信接口接收來自該外部控制裝置的控制指令信息;由該光盤驅動器中的微處理器根據預定的通信協議對該控制指令信息進行解碼處理;該微處理器控制該光盤驅動器的相關部件執行該控制指令,實現相應的功能。本發明能大大方便用戶對光驅的操作,且在計算機關機時仍可控制光驅的操作。
文檔編號H04L29/06GK1447328SQ02107819
公開日2003年10月8日 申請日期2002年3月21日 優先權日2002年3月21日
發明者周亮, 丁科, 祝永進 申請人:聯想(北京)有限公司