亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? 00000026.htm

?? 水木社區(qū) embeded 版精華區(qū) 下載
?? HTM
字號(hào):
<?xml version="1.0" encoding="gb2312"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"/><title>單片機(jī)與TCP/IP網(wǎng)絡(luò) (八)               jacobw </title></head><body><center><h1>BBS 水木清華站∶精華區(qū)</h1></center><a name="top"></a>發(fā)信人:&nbsp;turbolinux&nbsp;(hoho~神啊,救救我吧...),&nbsp;信區(qū):&nbsp;Embedded&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />標(biāo)&nbsp;&nbsp;題:&nbsp;單片機(jī)與TCP/IP網(wǎng)絡(luò)&nbsp;(八)&nbsp;<br />發(fā)信站:&nbsp;BBS&nbsp;水木清華站&nbsp;(Fri&nbsp;Jul&nbsp;13&nbsp;00:35:57&nbsp;2001)&nbsp;<br />&nbsp;<br /> &nbsp;&nbsp;單片機(jī)與TCP/IP網(wǎng)絡(luò)&nbsp;<br />--版主&nbsp;老古&nbsp;<a href="http://www.laogu.com">http://www.laogu.com</a>&nbsp;<br />&nbsp;<br />(八)網(wǎng)卡初始化&nbsp;<br />&nbsp;<br />&nbsp;<br />------------------------------------------------------------------------&nbsp;<br />--------&nbsp;<br />&nbsp;<br />----&nbsp;完成復(fù)位之后,你要對(duì)網(wǎng)卡的工作參數(shù)進(jìn)行設(shè)置.以使網(wǎng)卡開始工作.&nbsp;<br />先介紹一個(gè)子函數(shù)&nbsp;<br />#define&nbsp;reg00&nbsp;XBYTE[0xc000]&nbsp;//對(duì)應(yīng)于地址240H&nbsp;為命令寄存器CR地址&nbsp;<br />&nbsp;<br />void&nbsp;page(uchar&nbsp;pagenumber)&nbsp;<br />{&nbsp;uchar&nbsp;data&nbsp;temp;&nbsp;&nbsp;<br />temp=reg00;//command&nbsp;register&nbsp;&nbsp;<br />temp=temp&amp;0x3f;&nbsp;<br />pagenumber=pagenumber&nbsp;&lt;&lt;6;&nbsp;&nbsp;<br />temp=temp&nbsp;|&nbsp;pagenumber;&nbsp;<br />reg00=temp;&nbsp;<br />}&nbsp;<br />作用是選擇指定的頁,網(wǎng)卡共有4頁寄存器,Ne2000兼容的有3頁。第四頁可以不用&nbsp;<br />。&nbsp;&nbsp;<br />&nbsp;<br />reg00命令寄存器:CR,command&nbsp;register,地址偏移量00H,為一個(gè)字節(jié)&nbsp;<br />&nbsp;<br />位&nbsp;7&nbsp;6&nbsp;5&nbsp;4&nbsp;3&nbsp;2&nbsp;1&nbsp;0&nbsp;&nbsp;<br />名字&nbsp;PS1&nbsp;PS0&nbsp;RD2&nbsp;RD1&nbsp;RD0&nbsp;TXP&nbsp;STA&nbsp;STP&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;<br />PS1和PS0這兩個(gè)位用來選擇寄存器頁,PS1&nbsp;PS0=00時(shí)選擇寄存器頁0,=01時(shí)選擇寄存&nbsp;<br />器頁1,&nbsp;=10時(shí)選擇寄存器頁2,=11時(shí)選擇寄存器頁3.&nbsp;<br />上面的程序的參數(shù)為pagenumber,用來指定第幾頁。&nbsp;<br />temp=reg00&nbsp;;//讀入命令寄存器的值。&nbsp;<br />temp=temp&amp;0x3f;//將高2位,即PS1,PS0清0&nbsp;<br />pagenumber=pagenumber&lt;&lt;6;//將低2位移至高端&nbsp;<br />temp=temp|pagenumber,&nbsp;//寫入高2位&nbsp;<br />reg00=temp;&nbsp;//設(shè)置第幾頁&nbsp;<br />&nbsp;<br />當(dāng)然也可以寫成更加簡單的幾句:&nbsp;<br />temp=reg00&amp;0x3f;&nbsp;<br />pagenumber=pagenumber&lt;&lt;6;&nbsp;<br />reg00=temp|pagenumber;&nbsp;&nbsp;<br />&nbsp;<br />但這樣對(duì)讀者來說不好理解。&nbsp;<br />從執(zhí)行的速度來說,上面的代碼也不是最快的。但作者主要講述原理,而不是探討&nbsp;<br />最快的實(shí)現(xiàn)。&nbsp;<br />--RD2,RD1,RD0這3個(gè)位代表要執(zhí)行的功能。&nbsp;<br />=001&nbsp;讀網(wǎng)卡內(nèi)存&nbsp;<br />=010&nbsp;寫網(wǎng)卡內(nèi)存&nbsp;<br />=011&nbsp;發(fā)送網(wǎng)卡數(shù)據(jù)包&nbsp;<br />=1**&nbsp;完成或結(jié)束DMA的讀寫操作&nbsp;<br />---TXP這個(gè)位寫入1時(shí)發(fā)送數(shù)據(jù)包,發(fā)完自動(dòng)清零&nbsp;<br />---STA,STP這兩個(gè)位用來啟動(dòng)命令或停止命令&nbsp;<br />=10&nbsp;啟動(dòng)命令&nbsp;<br />=01&nbsp;停止命令&nbsp;<br />&nbsp;<br />下面介紹網(wǎng)卡的初始化子程序:&nbsp;<br />void&nbsp;ne2000init()&nbsp;<br />{&nbsp;reg00=0x22;&nbsp;//選擇頁0的寄存器,執(zhí)行命令&nbsp;<br />reg01=0x4c;&nbsp;//寄存器Pstart&nbsp;<br />reg02=0x80;&nbsp;//Pstop&nbsp;<br />reg03=0x4c;&nbsp;//BNRY&nbsp;<br />reg04=0x45;&nbsp;//TPSR&nbsp;<br />reg0c=0xcc;&nbsp;//RCR&nbsp;<br />reg0d=0xe0;&nbsp;//TCR&nbsp;<br />reg0e=0xc8;&nbsp;//DCR&nbsp;數(shù)據(jù)配置寄存器&nbsp;8位數(shù)據(jù)dma&nbsp;&nbsp;<br />reg0f=0x00;&nbsp;//IMR&nbsp;disable&nbsp;all&nbsp;interrupt&nbsp;&nbsp;<br />page(1);&nbsp;//選擇頁1的寄存器&nbsp;<br />reg07=0x4d;&nbsp;//CURR&nbsp;<br />reg08=0x00;&nbsp;//MAR0&nbsp;<br />reg09=0x41;&nbsp;//MAR1&nbsp;<br />reg0a=0x00;&nbsp;//MAR2&nbsp;<br />reg0b=0x80;&nbsp;//MAR3&nbsp;<br />reg0c=0x00;&nbsp;//MAR4&nbsp;<br />reg0d=0x00;&nbsp;//MAR5&nbsp;<br />reg0e=0x00;&nbsp;//MAR6&nbsp;<br />reg0f=0x00;&nbsp;//MAR7&nbsp;<br />}&nbsp;&nbsp;<br />&nbsp;<br />PSTART&nbsp;接收緩沖區(qū)的起始頁的地址。&nbsp;<br />PSTOP&nbsp;接收緩沖區(qū)的結(jié)束頁地址。(該頁不用于接收)&nbsp;<br />BNRY&nbsp;指向最后一個(gè)已經(jīng)讀取的頁(讀指針)&nbsp;<br />CURR&nbsp;當(dāng)前的接收結(jié)束頁地址。(寫指針)&nbsp;<br />&nbsp;<br />--網(wǎng)卡含有16K字節(jié)的RAM,地址為0x4000-0x7fff(指的是網(wǎng)卡上的存儲(chǔ)地址,而&nbsp;<br />不是ISA總線的地址,是網(wǎng)卡工作用的存儲(chǔ)器),每256個(gè)字節(jié)稱為一頁,共有64頁&nbsp;<br />。頁的地址就是地址的高8位,頁地址為0x40--0x7f&nbsp;。這16k的ram的一部分用來存&nbsp;<br />放接收的數(shù)據(jù)包,一部分用來存儲(chǔ)待發(fā)送的數(shù)據(jù)包。當(dāng)然也可以給用戶使用。(例&nbsp;<br />如把網(wǎng)卡設(shè)置成使用8K的ram,另外8K的ram就可以用來給單片機(jī)作為存儲(chǔ)器,但我&nbsp;<br />沒有這樣做,原因是操作網(wǎng)卡上的ram比較復(fù)雜)&nbsp;<br />---在我的程序中使用0x40-0x4B為網(wǎng)卡的發(fā)送緩沖區(qū),共12頁,剛好可以存儲(chǔ)&nbsp;<br />2個(gè)最大的以太網(wǎng)包。使用0x4c-0x7f為網(wǎng)卡的接收緩沖區(qū),共52頁。因此&nbsp;<br />PSTART=0x4c,PSTOP=0x80(0x80為停止頁,就是直到0x7f,是接收緩沖區(qū),不包括&nbsp;<br />0x80)&nbsp;剛開始,網(wǎng)卡沒有接收到任何數(shù)據(jù)包,所以,BNRY設(shè)置為指向第一個(gè)接收&nbsp;<br />緩沖區(qū)的頁0x4c)&nbsp;&nbsp;<br />這四個(gè)寄存器用于接收的設(shè)置。&nbsp;<br />--CURR是網(wǎng)卡寫內(nèi)存的指針。它指向當(dāng)前正在寫的頁的下一頁。那么初始化它就&nbsp;<br />應(yīng)該指向0x4c+1=0x4d&nbsp;。網(wǎng)卡寫完接收緩沖區(qū)一頁,就將這個(gè)頁地址加一,&nbsp;<br />CURR=CURR+1。這是網(wǎng)卡自動(dòng)加的。當(dāng)加到最后的空頁(這里是0x80,PSTOP)時(shí),&nbsp;<br />將CURR置為接收緩沖區(qū)的第一頁(這里是0x4c,PSTART),也是網(wǎng)卡自動(dòng)完成的。&nbsp;<br />當(dāng)CURR=BNRY時(shí),表示緩沖區(qū)全部被存滿,數(shù)據(jù)沒有被用戶讀走,這時(shí)網(wǎng)卡將停止&nbsp;<br />往內(nèi)存寫數(shù)據(jù),新收到的數(shù)據(jù)包將被丟棄不要,而不覆蓋舊的數(shù)據(jù)。此時(shí)實(shí)際上出&nbsp;<br />現(xiàn)了內(nèi)存溢出。&nbsp;<br />---而BNRR要由用戶來操作。用戶從網(wǎng)卡讀走一頁數(shù)據(jù),要將BNRY加一,然后再&nbsp;<br />寫到BNRY寄存器。&nbsp;當(dāng)BNRY加到最后的空頁(0x80,PSTOP)時(shí),同樣要將BNRY變成&nbsp;<br />第一個(gè)接收頁(PSTART,0x4c)BNRY=0x4c;&nbsp;<br />---CURR和BNRY主要用來控制緩沖區(qū)的存取過程,保證能順次寫入和讀出)。&nbsp;<br />當(dāng)CURR=BNRY+1(或當(dāng)BNRY=0x7f&nbsp;,CURR=0x4c)時(shí),網(wǎng)卡的接收緩沖區(qū)里沒有數(shù)據(jù)&nbsp;<br />,表示沒有收到數(shù)據(jù)包。&nbsp;用戶通過這個(gè)判斷知道沒有包可以讀。當(dāng)上述條件不成&nbsp;<br />立時(shí),表示接收到新的數(shù)據(jù)包。然后用戶應(yīng)該讀取數(shù)據(jù)包,直到上述條件成立時(shí),&nbsp;<br />表示所以數(shù)據(jù)包已經(jīng)讀完,此時(shí)停止讀取數(shù)據(jù)包。&nbsp;<br />--TPSR&nbsp;為發(fā)送頁的起始頁地址。初始化為指向第一個(gè)發(fā)送緩沖區(qū)的頁,0x40。&nbsp;<br />&nbsp;<br />--RCR&nbsp;接收配置寄存器,設(shè)置為使用接收緩沖區(qū),僅接收自己的地址的數(shù)據(jù)包(&nbsp;<br />以及廣播地址數(shù)據(jù)包)和多點(diǎn)播送地址包,小于64字節(jié)的包丟棄(這是協(xié)議的規(guī)定&nbsp;<br />,設(shè)置成接收是用于網(wǎng)絡(luò)分析),校驗(yàn)錯(cuò)的數(shù)據(jù)包不接收。&nbsp;<br />--TCR&nbsp;發(fā)送配置寄存器,啟用crc自動(dòng)生成和自動(dòng)校驗(yàn),工作在正常模式。&nbsp;<br />--DCR&nbsp;數(shù)據(jù)配置寄存器,設(shè)置為使用FIFO緩存,普通模式,8位數(shù)據(jù)傳輸模式,&nbsp;<br />字節(jié)順序?yàn)楦呶蛔止?jié)在前,低位字節(jié)在后(符合我們的習(xí)慣)(如果用16位的單片&nbsp;<br />機(jī),設(shè)置成16位的數(shù)據(jù)總線操作會(huì)更快,但80c52是8位總線的單片機(jī))&nbsp;<br />--IMR&nbsp;中斷屏蔽寄存器,設(shè)置成0x00,屏蔽所有的中斷。設(shè)置成0xff將允許中斷&nbsp;<br />)&nbsp;<br />--MAR0--MAR8是設(shè)置多點(diǎn)播送的參數(shù),這點(diǎn)我也不是很清楚,我從電腦讀出來&nbsp;<br />是什么數(shù),我也將這8個(gè)寄存器設(shè)置成這幾個(gè)數(shù).&nbsp;由于我們不使用多點(diǎn)播送,所以&nbsp;<br />不要緊,只要保證網(wǎng)卡能正常工作就可以了。&nbsp;<br />--PAGE2的寄存器是只讀的,所以不可以設(shè)置,不用設(shè)置,PAGE3的寄存器不是&nbsp;<br />NE2000兼容的,所以也不用設(shè)置。&nbsp;&nbsp;<br />&nbsp;<br />(未完)&nbsp;<br />&nbsp;&nbsp;<br />&nbsp;<br />--&nbsp;<br />&nbsp;<br />※&nbsp;來源:·BBS&nbsp;水木清華站&nbsp;smth.org·[FROM:&nbsp;166.111.174.125]&nbsp;<br /><a href="00000025.htm">上一篇</a><a href="javascript:history.go(-1)">返回上一頁</a><a href="index.htm">回到目錄</a><a href="#top">回到頁首</a><a href="00000027.htm">下一篇</a></h1></center><center><h1>BBS 水木清華站∶精華區(qū)</h1></center></body></html>

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国内精品在线播放| 免播放器亚洲一区| av男人天堂一区| 综合婷婷亚洲小说| 欧美图区在线视频| 国精产品一区一区三区mba桃花| 欧美国产一区二区| 在线观看免费亚洲| 激情文学综合丁香| 亚洲天堂免费在线观看视频| 欧美日韩午夜影院| 极品美女销魂一区二区三区| 亚洲欧美色一区| 日韩午夜在线影院| 色噜噜狠狠一区二区三区果冻| 秋霞影院一区二区| 亚洲视频网在线直播| 日韩午夜av一区| 97精品电影院| 老司机精品视频在线| 伊人色综合久久天天人手人婷| 亚洲国产精品高清| 精品国产免费久久| 日韩午夜三级在线| 日韩一区二区在线观看视频| 欧美影视一区二区三区| 91视频免费看| 成人国产精品免费观看| 国产美女精品一区二区三区| 蜜桃视频一区二区| 三级精品在线观看| 天天综合天天做天天综合| 一区二区国产视频| 亚洲在线视频网站| 亚洲在线视频免费观看| 一区二区在线观看不卡| 亚洲人成影院在线观看| 国产精品福利影院| 国产精品夫妻自拍| 亚洲日本免费电影| 亚洲欧洲日韩在线| 亚洲精选在线视频| 亚洲一区二区三区四区中文字幕| 亚洲欧美成人一区二区三区| 有码一区二区三区| 亚洲国产精品久久人人爱| 亚洲一区中文日韩| 日韩影视精彩在线| 九九九久久久精品| 国产精品亚洲综合一区在线观看| 国产黑丝在线一区二区三区| 国产99久久久国产精品免费看 | 国产一区 二区| 国产主播一区二区三区| 国产乱码精品一区二区三| 国产99久久久国产精品潘金网站| 成人免费精品视频| 91猫先生在线| 欧美三级蜜桃2在线观看| 欧美日韩三级在线| 欧美大肚乱孕交hd孕妇| 国产欧美日韩在线看| 中文字幕一区二区三区av| 亚洲综合在线观看视频| 天天色 色综合| 国产一区高清在线| 暴力调教一区二区三区| 在线免费观看日本一区| 91精品国产品国语在线不卡| 久久久久综合网| 国产精品久久免费看| 亚洲成人激情av| 久久91精品国产91久久小草| av欧美精品.com| 91精品中文字幕一区二区三区| www日韩大片| 一区二区三区在线免费观看| 视频一区二区中文字幕| 丰满白嫩尤物一区二区| 欧美日韩高清一区| 国产日产欧美一区| 亚洲第一狼人社区| 国产精品一区二区你懂的| 色综合久久88色综合天天6| 日韩亚洲欧美成人一区| 亚洲图片激情小说| 麻豆成人久久精品二区三区小说| gogo大胆日本视频一区| 3d动漫精品啪啪1区2区免费 | 自拍偷拍亚洲激情| 久久99深爱久久99精品| 91国内精品野花午夜精品 | 国产精品久久毛片av大全日韩| 亚洲va欧美va国产va天堂影院| 国产二区国产一区在线观看| 欧美美女网站色| 中文字幕中文字幕一区| 美女国产一区二区| 精品视频在线免费看| 欧美国产成人精品| 老鸭窝一区二区久久精品| 欧美三级视频在线播放| 中文字幕电影一区| 久久99精品久久久久久动态图| 91国偷自产一区二区开放时间| 国产日韩亚洲欧美综合| 奇米一区二区三区| 色香蕉久久蜜桃| 中文字幕在线免费不卡| 国产美女主播视频一区| 91精品婷婷国产综合久久竹菊| 亚洲视频一二三区| 国产**成人网毛片九色| 日韩欧美中文一区二区| 亚洲国产精品综合小说图片区| 99在线精品免费| 国产亲近乱来精品视频| 国产一区高清在线| 欧美成人aa大片| 美腿丝袜亚洲三区| 91精品国产免费| 日韩激情中文字幕| 欧美美女一区二区三区| 亚洲尤物在线视频观看| 日本高清不卡aⅴ免费网站| 亚洲天堂久久久久久久| www.欧美日韩| 欧美极品xxx| 国产精品主播直播| 国产午夜精品在线观看| 国内精品视频666| 精品国内片67194| 麻豆成人久久精品二区三区小说| 欧美一区二区在线不卡| 日本一区中文字幕| 日韩视频在线永久播放| 久色婷婷小香蕉久久| 日韩亚洲欧美高清| 国内久久精品视频| 久久人人97超碰com| 国产精品1区二区.| 国产欧美日韩在线| 成人av集中营| 亚洲精品国产高清久久伦理二区| 91网站在线观看视频| 亚洲人成网站精品片在线观看| 99久久精品免费观看| 亚洲精品一卡二卡| 欧美三区在线视频| 麻豆国产91在线播放| 久久亚洲一级片| 9l国产精品久久久久麻豆| 亚洲精品久久7777| 欧美日韩国产123区| 激情都市一区二区| 国产精品毛片无遮挡高清| 色欧美88888久久久久久影院| 亚洲精品美腿丝袜| 91精品国产综合久久久久久| 激情综合一区二区三区| 国产日韩精品一区二区三区| 色综合天天在线| 日本不卡不码高清免费观看| 欧美xxxx老人做受| 成人av电影在线观看| 亚洲大片精品永久免费| 日韩视频在线观看一区二区| 国产黄色精品视频| 一区二区理论电影在线观看| 日韩色视频在线观看| 成人性生交大片免费| 亚洲国产欧美一区二区三区丁香婷| 日韩精品一区二区三区在线播放| 风间由美一区二区三区在线观看 | av高清久久久| 日韩av中文字幕一区二区| 国产性做久久久久久| 欧美怡红院视频| 国产一区二区成人久久免费影院| 亚洲色图在线看| 精品久久人人做人人爰| 91免费观看在线| 极品少妇xxxx偷拍精品少妇| 亚洲精品国产第一综合99久久 | 久久在线观看免费| 91免费看片在线观看| 日本中文字幕一区二区视频| 国产精品美女视频| 日韩一区二区在线观看视频播放| 成人不卡免费av| 三级久久三级久久久| 久久国内精品自在自线400部| 国产欧美日韩一区二区三区在线观看| 欧美视频三区在线播放| 国产ts人妖一区二区| 蜜臀久久99精品久久久画质超高清| 一区在线观看免费| 欧美精品一区二区三区在线| 欧美亚日韩国产aⅴ精品中极品| 国产精品1区2区3区在线观看|