專利名稱:刷新率自動修改方法
技術領域:
本發明是關于一種刷新率自動修改方法。
背景技術:
用戶在購買計算機時可能分別購買顯示器和PC主機,或在使用的過程中將CRT顯示器更換成LCD顯示器,這時可能出現如下情況當LCD顯示器接上的前已安裝好操作系統的PC時,且操作系統設定的刷新率高于LCD顯示器,這時畫面無法正常顯示,通常黑色屏幕上提示“Can’t Support This Video Mode”或相似的提示。主要原因在于LCD顯示器所支持的刷新率相對較低,而CRT顯示器的刷新率相對較高。對于大部分操作系統而言,無法通過在安全模式下修改刷新率。用戶只能另找一臺能支持更高刷新率的顯示器或重新安裝操作系統,對PC有更深了解的人可能采用一些其它的方法來解決,而對于大多數普通用戶來說,他們首先就是尋求供貨商的幫助,這樣給供貨商帶來大量的客服工作。因此需在計算機出貨時配帶一光盤,光盤帶有Video Mode修改程序,當用戶將光盤插入計算機的光驅內,程序自動運行并修改Video Mode為顯示器支持的最佳Video Mode,從而使顯示器正常顯示。
因此需要提供一種刷新率自動修改的裝置及方法,修改VideoMode為顯示器支持的最佳Video Mode,從而使顯示器正常顯示。
發明內容本發明的主要目的在于提供一種刷新率自動修改方法,其可自動修改操作系統的刷新率。
本發明揭露一種刷新率自動修改方法,其提供一主機、一顯示器、及一連接至主機的存儲器。顯示器與主機相連。該主機上有一光驅用于讀取光盤上的信息。存儲器存儲有在修改分辨率及刷新率過程中生成和利用的資料,如顯示器的擴展顯示標識資料(ExtendedDisplay Identification Data,EDID)信息、依據EDID標準建立的Bit值與分辨率及刷新率間的對應表,其中,EDID是由視頻電子標準協會(Video Electronics Standard Association,VESA)定義的128Bytes數據,顯示器通過這些數據來通知主機它的Identify和Capabilities,即EDID是主機與顯示器間的通訊協議。EDID中第35、36Byte中每一Bit對應相應的分辨率及刷新率。每一生產廠家對其生產的每一款顯示器都定義了其支持的分辨率及刷新率,包含有分辨率及刷新率信息的EDID存儲于顯示器的一芯片中。該刷新率自動修改裝置的各組成部分間相互協調工作用于當顯示器不支持操作系統設定的VideoMode時自動修改其分辨率及刷新率。
本發明刷新率自動修改方法包括以下步驟(a)插入光盤并自動運行程序;(b)調用應用程序接口,獲取并記錄操作系統當前設定的分辨率及刷新率;(c)調用BIOS中功能號為4F15BL01的INT 10中斷功能,獲取顯示器中EDID信息;(d)擷取EDID中第35、36兩個字節;(e)查找上述字節中為“1”的Bit;(f)查找上述為“1”的Bit對應的分辨率及刷新率,其中為“1”的Bit至少有一位,這些數據構成數組;(g)在上述數組中查找分辨率與操作系統當前設定的分辨率一致的數據;(h)判斷是否查找到相應的數據,如查找到則記錄相應的匹配數組;(i)比較上述匹配數組中各刷新率的高低,將上述匹配數組中刷新率最高的數據記為最匹配數據;(j)將操作系統中的分辨率及刷新率分別修改成與上述最匹配數據中的分辨率及刷新率一致。
通過利用本發明的系統及方法,其可自動修改操作系統當前設定的刷新率,以解決顯示器不支持操作系統刷新率問題,從而減少客服工作量。
圖1是實施本發明刷新率自動修改方法的硬件架構圖。
圖2是本發明的Bit值與分辨率與刷新率對應表。
圖3是本發明刷新率自動修改方法的作業流程圖。
具體實施方式如圖1所示,是實施本發明刷新率自動修改方法的硬件架構圖。其中,該硬件架構包括一主機1、一顯示器6、及一連接至主機1的存儲器5。顯示器6與主機1相連。主機1上設有一光驅4用于讀取光盤8中信息,光盤8存儲有修改刷新率的程序。存儲器5存儲有在修改分辨率及刷新率過程中生成和利用的資料,如顯示器6的擴展顯示標識資料(Extended Display Identification Data,EDID)信息、依據EDID標準建立的Bit值與分辨率及刷新率間的對應表3(如圖2所示),其中,EDID是由視頻電子標準協會(Video Electronics StandardAssociation,VESA)定義的128Bytes數據,顯示器6通過這些數據來通知主機1其Identify和Capabilities,即EDID是主機1與顯示器6間的通訊協議。EDID中第35、36Byte中每一Bit對應相應的分辨率及刷新率。每一生產廠家對其生產的每一款顯示器都定義了其支持的分辨率及刷新率,包含有分辨率及刷新率信息的EDID存儲于顯示器的一芯片中。該刷新率自動修改裝置的各組成部分間相互協調工作用于當顯示器6不支持操作系統設定的Video Mode時自動修改其分辨率及刷新率。
如圖2所示,是本發明的Bit值與分辨率及刷新率對應表。該對應表3包括EDID中第35個字節及第36個字節。其中每一字節分別有8個Bit(即7~0),每一位都用二進制“0”或“1”來表示;當每個Bit為“1”時都對應著一個數據;如當IBM生產的某一款顯示器中第35個字節中7和6這兩個Bit上的數值為“1”時其對應的數據分別為720×400@70Hz和720×400@88Hz,前者表示分辨率為720×400而刷新率為70Hz,后者表示分辨率為720×400而刷新率為88Hz。其中每一位對應的分辨率及刷新率由視頻電子標準協會規定的。
如圖3所示,是本發明刷新率自動修改方法的作業流程圖。當用戶將光盤8插入光驅4開始運行程序后(步驟S401);主機1調用應用程序接口,獲取操作系統(Operating System)當前設定的分辨率及刷新率;并記錄下該分辨率及刷新率(步驟S402);調用BIOS中功能號(Function No.)為4F15BL01的INT 10中斷功能(僅當中斷其它正執行的功能時才能獲取EDID信息),并獲取顯示器6中的EDID信息(步驟S403);擷取EDID中第35、36兩個字節(步驟S404);查找兩字節中每一位為“1”的Bit(步驟S405);在對應表3中查找第35、36兩個字節中為“1”的Bit對應的分辨率及刷新率,其中為“1”的Bit至少有一位,該對應的分辨率及刷新率構成數組(步驟S406);在上述組成的數組中查找操作系統當前設定的分辨率(步驟S407);判斷是否查找到(步驟S408);如果查找到,則將上述數組中分辨率與操作系統設定的分辨率一致的數組記錄為匹配數組(步驟S409);如果沒有查找到,則將上述數組中分辨率與設定的分辨率最接近的數組記錄為匹配數組(步驟S410);將上述所得的匹配數組中的刷新率進行比較,并記錄刷新率最高的數據為最匹配數據(步驟S411);將操作系統分辨率及刷新率分別按照最匹配數據中的分辨率及刷新率修改(步驟S412)。
權利要求
1.一種刷新率自動修改方法,其提供一帶有光驅的主機、一顯示器及一存儲有自動修改刷新率程序的光盤,其特征在于,該方法包括如下步驟運行光盤中修改刷新率程序;調用應用程序接口,獲取并記錄操作系統當前設定的分辨率及刷新率;調用BIOS中功能號為4F15BL01的INT10中斷功能,獲取顯示器中擴展顯示標識資料的信息;擷取擴展顯示標識資料中第35、36兩個字節;查找上述兩個字節中為“1”的Bit;查找每個為“1”的Bit對應的分辨率及刷新率,其中為“1”的Bit至少有一位,這些數據構成數組;從存儲于主機的存儲器中的Bit值與分辨率及刷新率對應表中查找在上述數組中的分辨率與操作系統當前設定的分辨率一致的數據;判斷是否查找到相應的數據,如查找到則記錄相應的匹配數組;比較上述匹配數組中各刷新率的高低,將上述匹配數組中刷新率最高的數據記為最匹配數據;將操作系統中的分辨率及刷新率分別修改成與上述最匹配數據中的分辨率及刷新率一致。
2.如權利要求1所述的刷新率自動修改方法,其特征在于,其中查找步驟還包括當未查找到分辨率與操作系統當前設定的分辨率一致的數據時,則將分辨率最接近的數據記錄為匹配數組。
3.如權利要求1所述的刷新率自動修改方法,其特征在于,其中擴展顯示標識資料是所述的顯示器與主機間的通訊協議。
全文摘要
本發明揭露了一種刷新率自動修改方法。該方法包括以下步驟插入光盤并自動運行程序;調用應用程序接口,獲取并記錄操作系統當前設定的分辨率及刷新率;調用BIOS中功能號為4F15BL01的INT10中斷功能,獲取顯示器中EDID信息;擷取EDID中第35、36兩個字節;記錄每個為“1”的Bit對應的數據,這些數據構成數組;在上述數組中查找分辨率與操作系統當前設定的分辨率一致的數據;判斷是否查找到相應的數據,如查找到則記錄相應的匹配數組;比較上述匹配數組中各刷新率的高低,將上述匹配數組中刷新率最高的數據記為最匹配數據;將操作系統中的分辨率及刷新率分別修改成與上述最匹配數據中的分辨率及刷新率一致。通過利用本發明,其可自動修改操作系統當前設定的刷新率,以解決顯示器不支持操作系統刷新率問題。
文檔編號G06F13/10GK1766859SQ200410052070
公開日2006年5月3日 申請日期2004年10月30日 優先權日2004年10月30日
發明者王劍鋒 申請人:鴻富錦精密工業(深圳)有限公司, 鴻海精密工業股份有限公司