用于poe交換機的poe驅(qū)動系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及計算機技術(shù)領(lǐng)域,并且特別涉及一種用于POE交換機的POE驅(qū)動系統(tǒng)。
【背景技術(shù)】
[0002] POE是PowerOverEthernet(以太網(wǎng)供電)的縮寫,是一種實現(xiàn)在傳輸網(wǎng)絡(luò)數(shù)據(jù) 的同時也可以對終端設(shè)備進行供電的技術(shù)。
[0003] 交換機作為網(wǎng)絡(luò)傳輸過程中的比較復(fù)雜功能強大的中間設(shè)備,可以在其上添加 POE的功能,成為帶POE功能的交換機,具有除了可以對ro終端設(shè)備進行信息傳輸交換外還 可以對ro設(shè)備供電的功能。因此,如何實現(xiàn)交換機與POE芯片之間的通信就成為一個必須 解決的問題。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的目的在于提供一種用于POE交換機的POE驅(qū)動系統(tǒng)。
[0005] 本發(fā)明實施例提供一種用于POE交換機的POE驅(qū)動系統(tǒng),其特征在于,包括API接 口、命令交互協(xié)議接口、UART驅(qū)動接口、架構(gòu)配置模塊,其中,所述命令交互協(xié)議接口連接于 所述API接口,所述UART驅(qū)動接口連接于所述命令交互協(xié)議接口,所述架構(gòu)配置模塊連接 于所述API接口、所述命令交互協(xié)議接口以及所述UART驅(qū)動接口,
[0006] 所述API接口用于對POE系統(tǒng)進行配置;
[0007] 所述命令交互協(xié)議接口用于實現(xiàn)在主處理器與所述POE系統(tǒng)之間通過UART方式 進行交互的消息協(xié)議;
[0008] 所述UART驅(qū)動接口用于通過UART方式實現(xiàn)所述主處理器與所述POE系統(tǒng)間的通 信;以及
[0009] 所述架構(gòu)配置模塊用于提供配置控制函數(shù)。
[0010] 優(yōu)選地,所述API接口包括:信息獲取接口、POE初始化接口、POE中斷任務(wù)處理接 口、POE系統(tǒng)配置接口、顯示接口以及調(diào)用接口。
[0011] 優(yōu)選地,所述API接口的所述POE中斷任務(wù)處理接口執(zhí)行的中斷包括端口檢測失 敗中斷、端口錯誤中斷、端口由于功率管理而關(guān)閉的中斷、端口欠載中斷、端口過載中斷和 溫度告警中斷。
[0012] 優(yōu)選地,所述API接口通過所述調(diào)用命令交互協(xié)議接口來實現(xiàn)。
[0013] 優(yōu)選地,所述UART驅(qū)動接口包括UART消息發(fā)送與接收接口、復(fù)位命令消息傳輸接 口以及POE固件下載接口。
[0014] 優(yōu)選地,所述命令交互協(xié)議接口通過調(diào)用所述UART驅(qū)動接口的所述UART消息發(fā) 送與接收接口來實現(xiàn)。
[0015] 優(yōu)選地,所述架構(gòu)配置模塊包括延時函數(shù)、中斷初始化函數(shù)、中斷處理函數(shù)、按鍵 處理函數(shù)、UART初始化函數(shù)。
[0016] 本發(fā)明提供的用于POE交換機的POE驅(qū)動系統(tǒng),通過API接口、命令交互協(xié)議接 口、UART驅(qū)動接口、架構(gòu)配置模塊實現(xiàn)了交換機與POE芯片之間的通信,并提供與POE初始 化、POE復(fù)位、特殊中斷處理等相關(guān)的多種函數(shù)處理,實現(xiàn)了交換機與POE芯片之間的有效 交互。
【附圖說明】
[0017] 為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以 根據(jù)這些附圖獲得其他的附圖。
[0018]圖1是本發(fā)明一實施例提供的用于POE交換機的POE驅(qū)動系統(tǒng)的結(jié)構(gòu)框圖。
【具體實施方式】
[0019] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對 本發(fā)明進行進一步詳細說明。應(yīng)當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。
[0020] 圖1是本發(fā)明一實施例提供的用于POE交換機的POE驅(qū)動系統(tǒng)的結(jié)構(gòu)示意圖。 如圖1所示,用于POE交換機的POE驅(qū)動系統(tǒng)100包括:API(ApplicationProgramming Interface,應(yīng)用程序編程接口)接口 110、命令交互協(xié)議接口 120、UART(Universal AsynchronousReceiver/Transmitter,通用異步收發(fā)傳輸器)驅(qū)動接口 130以及架構(gòu)配置 模塊140,其中,命令交互協(xié)議接口 120連接于API接口 110,UART驅(qū)動接口 130連接于命 令交互協(xié)議接口 120,架構(gòu)配置模塊140連接于API接口 110、命令交互協(xié)議接口 120以及 UART驅(qū)動接口 130。
[0021] 在本發(fā)明一實施例中,API接口 110用于對POE系統(tǒng)進行配置,具體地,API接口 110用于提供對POE系統(tǒng)的指定功能進行配置和獲取特定信息的接口函數(shù),包括:(1)信息 獲取接口,用于更方便地獲取指定信息、系統(tǒng)狀態(tài)或系統(tǒng)配置;(2)POE初始化接口;(3)POE 中斷任務(wù)處理接口;(4)POE系統(tǒng)配置接口,僅在POE默認參數(shù)為原始出廠設(shè)置時執(zhí)行,用于 將POE系統(tǒng)中各參數(shù)配置為需要的狀態(tài),然后保存系統(tǒng)配置,保存在非易失性存儲介質(zhì)中; (5)顯示接口,用于顯示POE相關(guān)信息;(6)上層固定調(diào)用的調(diào)用接口。優(yōu)選地,API接口 110通過調(diào)用命令交互協(xié)議接口 120來實現(xiàn)。
[0022] 在本發(fā)明一實施例中,命令交互協(xié)議接口 120用于實現(xiàn)在主處理器與POE系統(tǒng)之 間通過UART方式進行交互的消息協(xié)議,是對POE系統(tǒng)進行配置或信息狀態(tài)獲取的基礎(chǔ)接 口。優(yōu)選地,命令交互協(xié)議接口 120通過調(diào)用UART驅(qū)動接口 130的UART消息發(fā)送與接收 接口來實現(xiàn)。
[0023] 在本發(fā)明一實施例中,UART驅(qū)動接口 130用于通過UART方式實現(xiàn)主處理器與所 述POE系統(tǒng)間的通信,主要包括UART消息發(fā)送與接收接口、復(fù)位命令消息傳輸接口以及POE 固件下載接口。
[0024] 在本發(fā)明一實施例中,架構(gòu)配置模塊140用于提供配置控制函數(shù),具體地,通過架 構(gòu)配置模塊140可以提取在POE驅(qū)動系統(tǒng)中與操作系統(tǒng)平臺、CPU架構(gòu)相關(guān)的內(nèi)容,還可以 提供POE驅(qū)動系統(tǒng)的配置控制。優(yōu)選地,架構(gòu)配置模塊140包括:延時函數(shù)、中斷初始化函 數(shù)、中斷處理函數(shù)、按鍵處理函數(shù)、UART初始化函數(shù)。架構(gòu)配置模塊140中的函數(shù)被API接 口 110、命令交互協(xié)議接口 120以及UART驅(qū)動接口 130調(diào)用。
[0025] POE系統(tǒng)初始化
[0026] 優(yōu)選地,在本發(fā)明一實施例中,在系統(tǒng)啟動過程中,API接口110中的POE初始化 接口用于執(zhí)行如下所示的方法來對POE系統(tǒng)進行初始化:
[0027] 步驟Sl :使能POE系統(tǒng),控制POE系統(tǒng)與主處理器連接的GPIO管腳,發(fā)送使能信 號。
[0028] 具體地,在本發(fā)明一實施例中,步驟Sl中的方法通過函數(shù)poeChipEnableO實現(xiàn)。
[0029] 步驟S2:第一次檢查POE系統(tǒng)狀態(tài)是否正常,其中,如果POE系統(tǒng)狀態(tài)正常則流程 前進到步驟S3;如果POE系統(tǒng)狀態(tài)不正常則流程返回到步驟S2。
[0030] 具體地,在本發(fā)明一實施例中,步驟S2中的方法通過函數(shù) getSystemStatus(&sysStat)實現(xiàn)。
[0031] 步驟S3:初始化POE中斷,包括初始化POE中斷處理任務(wù)、POE中斷處理函數(shù)掛接、 POE中斷管腳初始化、以及按鍵初始化。
[0032] 具體地,在本發(fā)明一實施例中,步驟S3中的方法通過函數(shù)poelntlnitO實現(xiàn)。
[0033] 步驟S4:進行POE系統(tǒng)設(shè)置,具體地,根據(jù)讀取的userbyte字節(jié)判斷是否進行 POE系統(tǒng)設(shè)置,如果userbyte值為OxFF,則執(zhí)行POE系統(tǒng)設(shè)置;否則不執(zhí)行。
[0034] 具體地,在本發(fā)明一實施例中,步驟S4中的方法通過函數(shù)poeSystemSettingO實 現(xiàn)。
[0035] 步驟S5:對POE復(fù)位。
[0036] 具體地,在本發(fā)明一實施例中,對TO69200MCU芯片和ro69208PoE芯片進行復(fù)位, 通過函數(shù)PoeResetO實現(xiàn)。
[0037] 步驟S6:第二次次檢查POE系統(tǒng)狀態(tài)是否正常,具體地,如果POE系統(tǒng)狀態(tài)不正常 則打印出對應(yīng)的錯誤信息,并標記PoeOK的值。
[0038] 具體地,在本發(fā)明一實施例中,步驟S6中的方法通過函數(shù) getSystemStatus(&sysStat)實現(xiàn)。
[0039] 如果無任何錯誤,貝Ij在最開始的打印"PoEinitialization. "后打印"0K! "。
[0040] POE系統(tǒng)配詈
[0041] 優(yōu)選地,在本發(fā)明一實施例中,API接口 110中的POE系統(tǒng)配置接口對POE系統(tǒng)執(zhí) 行如表1所示的配置。