TWI790505B - 嵌入式系統之週邊隨插即用的驅動程式安裝方法與對應之嵌入式開發系統 - Google Patents
嵌入式系統之週邊隨插即用的驅動程式安裝方法與對應之嵌入式開發系統 Download PDFInfo
- Publication number
- TWI790505B TWI790505B TW109141291A TW109141291A TWI790505B TW I790505 B TWI790505 B TW I790505B TW 109141291 A TW109141291 A TW 109141291A TW 109141291 A TW109141291 A TW 109141291A TW I790505 B TWI790505 B TW I790505B
- Authority
- TW
- Taiwan
- Prior art keywords
- embedded system
- driver
- development board
- system development
- firmware
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/658—Incremental updates; Differential updates
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
- G06F9/4413—Plug-and-play [PnP]
- G06F9/4415—Self describing peripheral devices
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Input Circuits Of Receivers And Coupling Of Receivers And Audio Equipment (AREA)
Abstract
本發明關於一種嵌入式系統之週邊隨插即用的驅動程式安裝方法與對應之嵌入式開發系統,此嵌入式系統之週邊隨插即用的驅動程式安裝方法包括下列步驟:判斷週邊設備是否連上嵌入式系統主機;當週邊設備是否連上嵌入式系統主機,擷取該週邊設備的機碼;連上一韌體更新伺服器;根據該週邊設備的機碼,在一雲端資料庫取得對應該機碼之驅動程式;將該驅動程式包裝成一韌體,並回傳至嵌入式系統主機;以及對嵌入式系統主機進行一韌體更新。
Description
本發明係關於一種嵌入式系統的技術,更進一步來說,本發明係關於一種嵌入式系統之週邊隨插即用的驅動程式安裝方法與對應之嵌入式開發系統。
隨插即用是桌上型電腦最基本的功能之一。當週邊裝置插上電腦時,作業系統會自動偵測其型號並搜尋驅動程式,使用者不需手動設定組態與安裝驅動程式。然而,在無作業系統或採用即時作業系統的環境中,系統其並無偵測週邊裝置的能力,更無法自動安裝驅動程式。
使用者必須手動將驅動程式與主程式包裝成韌體,再燒入系統中。這對於經常更換週邊的使用者相當不便,例如在創作與教學場域,創客與學生在利用嵌入式開發板開發作品的過程中,常需要更換不同週邊裝置,每次更換裝置時都需要手動將驅動程式與主程式燒錄至系統中。對於不熟悉嵌入式系統的使用者而言,是一項費時又費力的工程。
本發明的一目的在於提供一種嵌入式系統之週邊隨插即用的驅動程式安裝方法與嵌入式平台韌體資料傳輸方法,簡化嵌入式系統安裝驅動程式的流程,特別是針對無作業系統或採用即時作業系統的嵌入式系統。使用者不需具備嵌入式系統相關知識,即可透過本發明實施例所提供的伺服器、韌體更新程式以及自動程序來安裝驅動程式。達到週邊裝置隨插即用的效果,故可以讓不熟悉嵌入式系統的初階開發使用者能方便使用。
本發明提出一種嵌入式系統之週邊隨插即用的驅動程式安裝方法,此嵌入式系統之週邊隨插即用的驅動程式安裝方法包括:判斷嵌入式系統開發板是否連接到一電腦主機;判斷週邊設備是否連上嵌入式系統主機;當週邊設備連上嵌入式系統主機,擷取該週邊設備的機碼;連上一雲端資料庫伺服器;根據該週邊設備的機碼,在該
雲端資料庫伺服器取得對應該機碼之驅動程式;以及對嵌入式系統主機進行一韌體更新。
本發明另外提出一種嵌入式系統開發系統,此嵌入式系統開發系統包括一嵌入式系統開發板、一電腦主機以及一雲端資料庫伺服器。此雲端資料庫伺服器儲存有多數個週邊設備的驅動程式。當嵌入式系統開發板電性連接該電腦主機,判斷是否有週邊設備連上嵌入式系統開發板。當該電腦主機判斷有週邊設備是否連上該嵌入式系統開發板,擷取該週邊設備的機碼,並連上該雲端資料庫伺服器。根據該週邊設備的機碼,在該雲端資料庫伺服器取得對應該機碼之驅動程式,以對嵌入式系統主機進行一韌體更新。
依照本發明較佳實施例所述之嵌入式系統之週邊隨插即用的驅動程式安裝方法以及嵌入式系統開發系統,上述週邊設備包括一CMOS感測模組。在一較佳實施例中,對嵌入式系統主機進行一韌體更新包括:將該驅動程式包裝成一韌體,並回傳至嵌入式系統開發板;以及對嵌入式系統主機進行一韌體更新。
依照本發明較佳實施例所述之嵌入式系統之週邊隨插即用的驅動程式安裝方法以及嵌入式系統開發系統,上述對嵌入式系統主機進行一韌體包括:將該驅動程
式透過一更新程式傳送至該嵌入式系統開發板;以及該嵌入式系統開發板針對該驅動程式對應的快閃記憶體叢集區塊(Cluster),利用該驅動程式,進行部分韌體更新。
本發明的精神在於透過上述步驟,使用者僅需要將週邊裝置連接上嵌入式系統主機,電腦主機便可以藉由特定程式,根據機碼下載驅動程式,並且依照需求,打包成韌體或直接傳到開發板進行部分更新,方便使用者快速開發,也減低開發者的負擔。
為讓本發明之上述和其他目的、特徵和優點能更明顯易懂,下文特舉較佳實施例,並配合所附圖式,作詳細說明如下。
101:嵌入式系統開發板
102~104:週邊裝置
105:電腦主機
106:雲端資料庫伺服器
S200~S206、S300~S306:本發明實施例的嵌入式系統之週邊隨插即用的驅動程式安裝方法之流程步驟
第1圖繪示為本發明一較佳實施例的嵌入式系統開發系統之示意圖。
第2圖繪示為嵌入式系統之週邊隨插即用的驅動程式安裝方法的流程圖。
第3圖繪示為本發明一較佳實施例的嵌入式系統之週邊隨插即用的驅動程式安裝方法的流程圖。
第1圖繪示為本發明一較佳實施例的嵌入式系統開發系統之示意圖。第2圖繪示為嵌入式系統之週邊隨插即用的驅動程式安裝方法的流程圖。請同時參考第1圖以及第2圖,本發明實施例之嵌入式系統開發系統包括一嵌入式系統開發板101與數個週邊裝置102~104、一電腦主機105以及一雲端資料庫伺服器106。電腦主機105與嵌入式系統開發板101連線且具有一韌體更新程式,安裝於該電腦主機105中,用以從雲端資料庫伺服器106取得驅動程式,並具有將上述驅動程式整合成韌體,且下載至該嵌入式系統開發板101中之功能。雲端資料庫伺服器106則用以儲存各種不同週邊裝置的驅動程式。上述週邊裝置102~104可以例如是伺服馬達、液晶顯示模組、CMOS感測模組或網路模組等等。
以先前技術來說,由於安裝驅動程式的步驟複雜,因此,使用者必須具備嵌入式系統開發經驗,才能為週邊設備安裝驅動程式。一般來說,在先前技術中,使用者必須先在主程式中引入該驅動程式函式庫,加入初始化程序,再重新編譯程式並包裝為韌體,最後燒錄至嵌入式系統主機上。之後該嵌入式系統開機時才能使用該週邊設備。
然而,在此本發明的實施例中,將此流程自
動化,使用者只須將嵌入式系統開發板101與電腦主機105連結,並開啟韌體更新程式,韌體更新程式會自動尋找嵌入式系統開發板101上所連接的週邊之機碼,並根據上述機碼,連接到雲端資料庫伺服器106下載驅動程式,並依照使用者的設定,可以自動包裝為韌體,之後藉由韌體更新程式燒錄至嵌入式開發板101上,進行韌體更新,以完成驅動程式的安裝。
第2圖繪示為本發明一較佳實施例的嵌入式系統之週邊隨插即用的驅動程式安裝方法的流程圖。請參考第2圖,此嵌入式系統之週邊隨插即用的驅動程式安裝方法包括下列步驟:
步驟S200:開始。
步驟S201:判斷週邊設備是否連接上嵌入式系統主機101。
步驟S202:當判斷有週邊設備時,嵌入式系統開發板101取得所有週邊設備的機碼(ID),並傳送至電腦主機105。舉例來說,假設使用者替換CMOS感測模組時,該模組板上的機碼(ID)會傳送至電腦主機105端的開發工具。
步驟S203:根據該週邊設備的機碼,在一雲端資料庫取得對應該機碼之驅動程式。電腦主機105端的
開發工具中的更新模組(Upgrade modules)功能會在雲端資料庫搜尋驅動程式。
步驟S204:將該驅動程式包裝成一韌體,並回傳至嵌入式系統主機。
步驟S205:對嵌入式系統主機進行一韌體更新,完成驅動程式安裝。承上,電腦主機105端的開發工具中的更新模組(Upgrade modules)會將驅動程式與系統主程式合併打包成為韌體,回傳給嵌入式系統開發板101,嵌入式系統開發板101再進行燒錄。過程中使用者不需碰觸嵌入式系統端的程式,也不用手動整合與包裝韌體,如此,新的CMOS感測模組即可運作,確實達成隨插即用之效果。
步驟S206:結束。
上述更新模組例如是一個安裝於電腦主機105端的韌體更新程式,當電腦主機105與開發板101連結並執行此韌體更新程式時,上述步驟S200~S206將被執行。因此,韌體更新程式在雲端資料庫搜尋出所有週邊設備最新版本的驅動程式,並燒錄於開發板101中,以自動化地完成開發板101上所有週邊設備的驅動程式更新。
上述實施例中,雖然是以CMOS感測模組做舉例,所屬技術領域具有通常知識者應當知道,週邊裝置
可以有很多不同類型,如電子羅盤、藍芽接收裝置等。本發明不以此為限。
上述實施例是以將驅動程式整體包裝成一個韌體並更新整個嵌入式系統開發板101的方式,以下本實施例提供另一種部分更新的方式。
第3圖繪示為本發明一較佳實施例的嵌入式系統之週邊隨插即用的驅動程式安裝方法的流程圖。請參考第3圖,此嵌入式系統之週邊隨插即用的驅動程式安裝方法包括下列步驟:
步驟S300:開始。
步驟S301:判斷週邊設備是否連接上嵌入式系統開發板101。
步驟S302:當判斷有週邊設備時,嵌入式系統開發板101取得所有週邊設備的機碼(ID),並傳送至電腦主機105。舉例來說,假設使用者替換CMOS感測模組時,該插入的CMOS感測模組的機碼(ID)會傳送至電腦主機105端的開發工具。
步驟S303:根據該週邊設備的機碼,在一雲端資料庫取得對應該機碼之驅動程式。電腦主機105端的開發工具中的更新模組(Upgrade modules)功能會在雲端資料庫搜尋驅動程式。
步驟S304:將該驅動程式傳至嵌入式系統開發板101。
步驟S305:找出該驅動程式所對應儲存的快閃記憶體叢集區塊(Cluster),並進行一驅動程式更新,完成驅動程式安裝。承上,電腦主機105端的開發工具中的更新模組(Upgrade modules)會將驅動程式傳給嵌入式系統開發板101,嵌入式系統開發板101再根據原本儲存上述驅動程式的快閃記憶體叢集區塊(Cluster),將新的驅動程式複寫。如此,新的CMOS感測模組的驅動程式即被更新,也確實達成隨插即用之效果。由於在格式化時,快閃記憶體叢集區塊便已經定義完成,而一般驅動程式的佔用空間較小,幾乎不可能佔據整個快閃記憶體叢集區塊,故在更新時,僅需要更新具有舊版驅動程式的快閃記憶體叢集區塊,便可以完成更新。
步驟S306:結束。
在上述第3圖的實施例中,是假設替換CMOS感測模組,需進行驅動程式的更新。然而,當雲端資料庫提供新版的驅動程式時,應用上述第3圖的實施例也可以進行驅動程式的更新。因此,在本發明的另一實施例中,當電腦主機105取得所有週邊設備的機碼時,電腦主機105會比對目前開發板101上已經安裝的驅動程式版
本與雲端資料庫的版本,若發現有更新的驅動程式版本時,則執行上述S303,取得最新版本的驅動程式,並執行步驟S304與S305,以將新版本的驅動程式安裝於對應的記憶體位置。
綜上所述,本發明的精神在於透過上述步驟,使用者僅需要將週邊裝置連接上嵌入式系統主機,電腦主機便可以藉由特定程式,根據機碼下載驅動程式,並且依照需求,打包成韌體或直接傳到開發板進行部分更新,方便使用者快速開發,也減低開發者的負擔。
在較佳實施例之詳細說明中所提出之具體實施例僅用以方便說明本發明之技術內容,而非將本發明狹義地限制於上述實施例,在不超出本發明之精神及以下申請專利範圍之情況,所做之種種變化實施,皆屬於本發明之範圍。因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
101:嵌入式系統主機
102~104:週邊裝置
105:電腦主機
106:雲端資料庫
Claims (6)
- 一種嵌入式系統之週邊隨插即用的驅動程式安裝方法,包括:判斷嵌入式系統開發板是否連接到一電腦主機;判斷週邊設備是否連上嵌入式系統主機;當週邊設備連上嵌入式系統主機,擷取該週邊設備的機碼;連上一雲端資料庫伺服器;根據該週邊設備的機碼,在該雲端資料庫伺服器取得對應該機碼之驅動程式;以及對嵌入式系統開發板進行一韌體更新,其中,對嵌入式系統開發板進行一韌體更新包括:將該驅動程式透過一更新程式傳送至該嵌入式系統開發板;以及該嵌入式系統開發板針對該驅動程式對應的快閃記憶體叢集區塊(Cluster),利用該驅動程式,進行部分韌體更新。
- 如請求項第1項所記載之嵌入式系統之週邊隨插即用的驅動程式安裝方法,該週邊設備包括: 一CMOS感測模組。
- 如請求項第1項所記載之嵌入式系統之週邊隨插即用的驅動程式安裝方法,其中,對嵌入式系統開發板進行一韌體更新包括:將該驅動程式包裝成一韌體,並回傳至嵌入式系統開發板;以及更新嵌入式系統開發板的韌體。
- 一種嵌入式系統開發系統,包括:一嵌入式系統開發板;一電腦主機;一雲端資料庫伺服器,儲存有多數個週邊設備的驅動程式;其中,當該嵌入式系統開發板電性連接該電腦主機,判斷是否有週邊設備連上嵌入式系統開發板;其中,當該電腦主機判斷有週邊設備連上該嵌入式系統開發板,擷取該週邊設備的機碼,並連上該雲端資料庫伺服器; 其中,根據該週邊設備的機碼,在該雲端資料庫伺服器取得對應該機碼之驅動程式,以對嵌入式系統主機進行一韌體更新,其中,在一雲端資料庫取得對應該機碼之驅動程式,以對嵌入式系統主機進行一韌體更新包括:該電腦主機將該驅動程式透過一更新程式傳送至該嵌入式系統開發板;以及該嵌入式系統開發板針對該驅動程式對應的快閃記憶體叢集區塊(Cluster),利用該驅動程式,進行部分韌體更新。
- 如請求項第4項所記載之嵌入式系統開發系統,該週邊設備包括:一CMOS感測模組。
- 如請求項第4項所記載之嵌入式系統開發系統,在一雲端資料庫取得對應該機碼之驅動程式,以對嵌入式系統主機進行一韌體更新包括:該電腦主機將該驅動程式包裝成一韌體,並回傳至嵌入式系統開發板;以及 該嵌入式系統開發板進行一韌體更新。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW109123344 | 2020-07-10 | ||
| TW109123344 | 2020-07-10 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW202203008A TW202203008A (zh) | 2022-01-16 |
| TWI790505B true TWI790505B (zh) | 2023-01-21 |
Family
ID=79172596
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW109141291A TWI790505B (zh) | 2020-07-10 | 2020-11-25 | 嵌入式系統之週邊隨插即用的驅動程式安裝方法與對應之嵌入式開發系統 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US20220012046A1 (zh) |
| TW (1) | TWI790505B (zh) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20240228074A1 (en) | 2023-01-10 | 2024-07-11 | Skydio, Inc. | Attachment Interface And Attachments For An Unmanned Aerial Vehicle |
| US12190097B2 (en) * | 2023-01-19 | 2025-01-07 | Dell Products, L.P. | Systems and methods for updating peripheral devices |
| US12386630B1 (en) * | 2024-02-01 | 2025-08-12 | Dell Products Lp | System and method for registering and relaying custom events and notices from node device to node device in peripheral device workspaces managed by a remote peripheral device cloud orchestrator server |
| CN118227142B (zh) * | 2024-05-24 | 2024-07-30 | 湖南华自信息技术有限公司 | 一种服务器及固件自动编译方法 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101221511A (zh) * | 2008-01-25 | 2008-07-16 | 中兴通讯股份有限公司 | 一种终端设备应用软件的自动安装及升级方法 |
| TWI401603B (zh) * | 2009-08-06 | 2013-07-11 | Tatung Co | 驅動程式的安裝方法、系統及編譯裝置 |
| TW201624274A (zh) * | 2014-12-24 | 2016-07-01 | Embux Technology Co Ltd | 自適應軟體安裝系統及實施方法 |
| US20170046147A1 (en) * | 2015-08-11 | 2017-02-16 | Fuji Xerox Co., Ltd. | Systems and methods for assisted driver, firmware and software download and installation |
| US20180032324A1 (en) * | 2016-07-28 | 2018-02-01 | GM Global Technology Operations LLC | Remote vehicle update installation scheduling |
| TW202009778A (zh) * | 2018-08-27 | 2020-03-01 | 香港商阿里巴巴集團服務有限公司 | 韌體升級方法及裝置 |
-
2020
- 2020-11-25 US US17/104,815 patent/US20220012046A1/en not_active Abandoned
- 2020-11-25 TW TW109141291A patent/TWI790505B/zh active
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101221511A (zh) * | 2008-01-25 | 2008-07-16 | 中兴通讯股份有限公司 | 一种终端设备应用软件的自动安装及升级方法 |
| TWI401603B (zh) * | 2009-08-06 | 2013-07-11 | Tatung Co | 驅動程式的安裝方法、系統及編譯裝置 |
| TW201624274A (zh) * | 2014-12-24 | 2016-07-01 | Embux Technology Co Ltd | 自適應軟體安裝系統及實施方法 |
| US20170046147A1 (en) * | 2015-08-11 | 2017-02-16 | Fuji Xerox Co., Ltd. | Systems and methods for assisted driver, firmware and software download and installation |
| US20180032324A1 (en) * | 2016-07-28 | 2018-02-01 | GM Global Technology Operations LLC | Remote vehicle update installation scheduling |
| TW202009778A (zh) * | 2018-08-27 | 2020-03-01 | 香港商阿里巴巴集團服務有限公司 | 韌體升級方法及裝置 |
Also Published As
| Publication number | Publication date |
|---|---|
| TW202203008A (zh) | 2022-01-16 |
| US20220012046A1 (en) | 2022-01-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI790505B (zh) | 嵌入式系統之週邊隨插即用的驅動程式安裝方法與對應之嵌入式開發系統 | |
| KR100901903B1 (ko) | 네트워크를 통한 펌웨어의 셀프-모니터링 및 업데이팅 | |
| CN1855050B (zh) | 用于管理可移动媒体设备的固件的装置和方法 | |
| US7065560B2 (en) | Verification of computer program versions based on a selected recipe from a recipe table | |
| JPH10260927A (ja) | 周辺機器のインタフェース方法及びインタフェース装置 | |
| TW201525858A (zh) | 基板管理控制器與其韌體載入方法 | |
| US7779427B2 (en) | Automated application configuration using device-provided data | |
| TWI602121B (zh) | 更新伺服器映像檔的技術 | |
| JP5500999B2 (ja) | 情報処理装置およびその制御方法およびプログラム | |
| US7681183B2 (en) | Method, system, and program product for checking control model and/or control program | |
| TWI707274B (zh) | 用於更新系統之rom編碼之電腦實施方法、電腦系統以及電腦可讀取媒體 | |
| KR20090017307A (ko) | 펌웨어를 자동으로 업데이트하는 임베디드 장치 및시스템과 그에 따른 방법 | |
| TW201314574A (zh) | 用於電腦系統之基本輸入輸出系統程式更新方法及更新裝置 | |
| CN100390737C (zh) | 自动更新及备份bios的方法 | |
| US8818969B2 (en) | Information processing apparatus and server, control method, and recording medium | |
| US9058184B2 (en) | Run time generation and functionality validation of device drivers | |
| CN120407031A (zh) | 系统启动方法、装置、设备、存储介质和程序产品 | |
| CN109002309A (zh) | 一种硬件升级方法及相关装置 | |
| TW201504945A (zh) | 更新週邊設備的連接管理程式的方法及主機 | |
| KR100585753B1 (ko) | 실행 코드 업그레이드 장치 및 방법 | |
| KR102902477B1 (ko) | 정보를 제공하는 전자 장치의 동작 방법 및 이를 지원하는 전자 장치 | |
| KR100677932B1 (ko) | 전자기기 업그레이드 시스템과 그 제어방법 | |
| TWI401603B (zh) | 驅動程式的安裝方法、系統及編譯裝置 | |
| KR20110047341A (ko) | 모바일 디바이스의 컴퓨터 접속 방법 | |
| KR20060028893A (ko) | 모니터 펌웨어 업그레이드 장치 및 방법 |