女人被狂躁到高潮视频免费无遮挡,内射人妻骚骚骚,免费人成小说在线观看网站,九九影院午夜理论片少妇,免费av永久免费网址

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]VxWorks網(wǎng)絡(luò)驅(qū)動(dòng)配置及分析

VxWorks支持兩種形式的網(wǎng)絡(luò)驅(qū)動(dòng),一種是BSD驅(qū)動(dòng)支持通用的BSD4.4網(wǎng)絡(luò),API,結(jié)構(gòu)等和大多數(shù)BSD網(wǎng)絡(luò)的驅(qū)動(dòng)類似.另一種是END網(wǎng)絡(luò)驅(qū)動(dòng),是VxWorks獨(dú)有的,根據(jù)VxWorksMUX接口編程,不過END驅(qū)動(dòng)在底層也要轉(zhuǎn)換成BSD的形式.

VxWorks網(wǎng)絡(luò)驅(qū)動(dòng)可參見VxWorks網(wǎng)絡(luò)驅(qū)動(dòng)

1.BSD4.4網(wǎng)絡(luò)驅(qū)動(dòng)設(shè)置.

網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)的調(diào)用主要在/target/src/config/usrNetwork.c文件中,下面說明BSD4.4驅(qū)動(dòng)在VxWorks系統(tǒng)調(diào)用.

主要調(diào)用過程如下:

VxWorks系統(tǒng)執(zhí)行的第一個(gè)任務(wù)targetconfigallusrConfig.c文件中usrRoot()=======>>targetsrcconfigusrNetwork.c文件中的usrNetInit

()通過數(shù)組表netIf[]初始化相應(yīng)的BSD網(wǎng)卡驅(qū)動(dòng).

在usrNetwork.c中的調(diào)用過程如下:

usrNetInit()函數(shù)中調(diào)用usrNetIfAttach():

#ifdefINCLUDE_BSD

if(!attached)

{

if((usrNetIfAttach(pNetDev,params.unitNum,pBootString)!=OK))

return(ERROR);

attached=TRUE;

}

#endif/*INCLUDE_BSD*/

usrNetIfAttach()函數(shù)中調(diào)用數(shù)組表usrNetIfTbl

for(pNif=usrNetIfTbl;pNif->ifName!=0;pNif++)

{

if(strcmp(buf,pNif->ifName)==0)

break;

}

網(wǎng)絡(luò)BSD驅(qū)動(dòng)數(shù)組表usrNetIfTbl在文件/target/src/config/usrNetwork.c中的定義初始化:

...

LOCALNETIFnetIf[]=/*網(wǎng)絡(luò)接口,定義網(wǎng)卡驅(qū)動(dòng)*/

{

/*下面是定義包含的各種網(wǎng)絡(luò)驅(qū)動(dòng)*/

#ifdefINCLUDE_DC/*從DEC芯片啟動(dòng),即系統(tǒng)有NVRAM存在,現(xiàn)在已過時(shí)*/

{"dc",dcattach,(char*)IO_ADRS_DC,INT_VEC_DC,INT_LVL_DC,

DC_POOL_ADRS,DC_POOL_SIZE,DC_DATA_WIDTH,DC_RAM_PCI_ADRS,

DC_MODE},

#endif/*INCLUDE_DC*/

#ifdefINCLUDE_FEI/*如果定義了INCLUDE_FEI,初始化Intel網(wǎng)卡*/

{"fei",feiattach,(char*)FEI_POOL_ADRS,0,0,0,0},

#endif/*INCLUDE_FEI*/

#ifdefINCLUDE_EX/*Excelan網(wǎng)卡*/

{"ex",exattach,(char*)IO_ADRS_EX,INT_VEC_EX,INT_LVL_EX,

IO_AM_EX_MASTER,IO_AM_EX},

#endif/*INCLUDE_EX*/

#ifdefINCLUDE_ENP/*CMC網(wǎng)卡*/

{"enp",enpattach,(char*)IO_ADRS_ENP,INT_VEC_ENP,INT_LVL_ENP,

IO_AM_ENP},

#endif/*INCLUDE_ENP*/

...

}

設(shè)置方法:

從以上可以看出BSD網(wǎng)絡(luò)驅(qū)動(dòng)只需在BSP配置文件config.h中將網(wǎng)絡(luò)(#defineINCLUDE_NETWORK)BSD網(wǎng)卡宏定義(#defineINCLUDE_xxx)和一些I/O參數(shù)(一般不需要)加入,則在文件usrNetwork.c中進(jìn)行相應(yīng)的初始化.

如:在VxWorks加入支持intel的網(wǎng)卡驅(qū)動(dòng).在config.h中加入"#defineINCLUDE_FEI".

主要網(wǎng)卡定義如下:

#defineINCLUDE_ENE/*includeEagle/NovellNE2000interface*/

#defineINCLUDE_ELT/*include3COMEtherLinkIIIinterface*/

#defineINCLUDE_ESMC/*includeSMC91c9xEthernetinterface*/

#defineINCLUDE_FEI/*includeIntelEtherExpressPRO100BPCI*/

#defineINCLUDE_ELC/*includeSMCElite16interface*/

#defineINCLUDE_EEX/*includeINTELEtherExpressinterface*/

#defineINCLUDE_EEX32/*includeINTELEtherExpressflash32*/

#defineINCLUDE_EX/*includeExcelanEthernetinterface*/

#defineINCLUDE_ENP/*includeCMCEthernetinterface*/

#defineINCLUDE_SM_NET/*includebackplanenetinterface*/

#defineINCLUDE_SM_SEQ_ADDR/*sharedmemorynetworkautoaddresssetup*/

#defineINCLUDE_EL_3C90X_END/*3comfastetherLinkXLPCI*/

#defineINCLUDE_LN_97X_END/*AMD79C972ENDDRIVER*/

....

2.END網(wǎng)絡(luò)驅(qū)動(dòng)設(shè)置.

END網(wǎng)絡(luò)設(shè)備的初始化主要通過定義在文件configNet.h中的一個(gè)數(shù)組表實(shí)現(xiàn).初始化網(wǎng)絡(luò)時(shí)muxDevLoad()會(huì)按這個(gè)表的定義把end初始化安裝到VxWorks系統(tǒng).

主要調(diào)用過程:

VxWorks系統(tǒng)執(zhí)行的第一個(gè)任務(wù)targetconfigallusrConfig.c文件中usrRoot()=======>>targetsrcconfigusrNetwork.c文件(該文件初始化TCP/IP)中usrNetInit(BOOT_LINE_ADRS)(該函數(shù)作用是添加MUXEND)========>>pcooki=pCookie=muxDevLoad(pDevTbl->unit,.....)其中pDevTbl在BSP網(wǎng)絡(luò)配置文件configNet.h中定義.END_TBL_ENTRYendDevTbl[]={...},該表定義了網(wǎng)絡(luò)設(shè)備的具體參數(shù).

configNet.h部分定義如下所示:

#defineDEC_LOAD_FUNCdec21x40EndLoad/*定義加載網(wǎng)絡(luò)設(shè)備的入口程序*/

#defineDEC_BUFF_LOAN1

/*網(wǎng)絡(luò)設(shè)備硬件的物理定義數(shù)據(jù)串,一般BSP已經(jīng)定義,不到必要時(shí),無需更改*/

/*

*: ::::::

*:

*/

#defineDEC_LOAD_STRING

"0x81020000:0x80000000:0x12:0x12:-1:-1:-1:0:0x80800

000"

IMPORTEND_OBJ*DEC_LOAD_FUNC(char*,void*);

/*網(wǎng)絡(luò)END設(shè)備表*/

END_TBL_ENTRYendDevTbl[]=

{0,DEC_LOAD_FUNC,DEC_LOAD_STRING,DEC_BUFF_LOAN,NULL,FALSE},

{0,END_TBL_END,NULL,0,NULL,FALSE},

};

設(shè)置方法:

由以上可看出在VxWorks添加END網(wǎng)絡(luò)驅(qū)動(dòng)

在文件config.h中添加"#defineINCLUDE_NETWORK"和"#defineINCLUDE_END".

在configNet.h中加入END驅(qū)動(dòng)的入口函數(shù)"#definexxx_LOAD_FUNCxxxxxEndLoad"和一些相關(guān)的初始化字符串.[!--empirenews.page--]

這樣就會(huì)在生成BSP包含END/MUX,系統(tǒng)網(wǎng)絡(luò)初始化調(diào)用函數(shù)muxDevLoad()會(huì)更據(jù)這個(gè)表初始化END網(wǎng)絡(luò).

文件configNet.c關(guān)于END驅(qū)動(dòng)初始化的主要內(nèi)容:

#ifdefINCLUDE_END

IMPORTintipAttach();

IMPORTEND_TBL_ENTRYendDevTbl[];/*定義這個(gè)表*/

#endif/*INCLUDE_END*/

..........

#ifdefINCLUDE_END

intcount;

END_TBL_ENTRY*pDevTbl;/*END設(shè)備列表*/

END_OBJ*pCookie=NULL;

END_OBJ*pEnd;

#endif/*INCLUDE_END*/

#ifdefined(INCLUDE_END)

muxMaxBinds=MUX_MAX_BINDS;/*初始化MUX接口*/

if(muxLibInit()==ERROR)

..........

關(guān)于DEFAULT_BOOT_LINE的解釋

這一行對配置網(wǎng)絡(luò),連通TargetServer及下載調(diào)試程序非常重要

DEFAULT_BOOT_LINE的原意是為沒有NVRAM的target設(shè)計(jì)的,這樣用戶就不需要在每次系統(tǒng)啟動(dòng)是手工輸入這些參數(shù)了.

系統(tǒng)啟動(dòng)網(wǎng)絡(luò)時(shí)xxxEndLoad()會(huì)解釋這一行并按這一行的定義進(jìn)行加載.

Emac(0,0):啟動(dòng)設(shè)備,可是是軟盤,硬盤,PCMCIA卡等其他的設(shè)備名稱如:

fd為軟盤,(0,0)表示第一個(gè)軟驅(qū),3.5寸盤.

dc則表示從DEC21x4x芯片啟動(dòng),即系統(tǒng)有NVRAM存在,這種方式現(xiàn)在已不采用.

elpci表示啟動(dòng)設(shè)備為3COMEtherLinkXLPCI網(wǎng)卡.

fei:Intel82559EtherExpress網(wǎng)卡.

ene:NE2000網(wǎng)卡

ELT:3COM以太網(wǎng)卡

EEX:Intel網(wǎng)卡

ata:ATA/IDE硬盤............

405GP:主機(jī)名

vXworks從主機(jī)加載的VxWorks文件

h=172.16.1.159主機(jī)的IP地址

e=172.16.254.52目標(biāo)機(jī)的IP地址,若網(wǎng)絡(luò)啟動(dòng)TargetServer時(shí),這個(gè)IP必須和主機(jī)上TargetServer配置的TargetIP地址一致,且設(shè)置BackEnd選項(xiàng)為wdbrpc

u=xxx用戶名,pw=xxx密碼:若通過網(wǎng)絡(luò)加載調(diào)試時(shí),主機(jī)的Ftp服務(wù)器和目標(biāo)機(jī)的用戶名和密碼必須相同

tn=vxTarget目標(biāo)機(jī)名稱

*/

#defineDEFAULT_BOOT_LINE

"Emac(0,0)405GP:vxWorksh=172.16.1.159e=172.16.254.52

u=xxxpw=xxxtn=vxTarget"

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢抑制與過流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉