freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

uip協(xié)議在單片機(jī)上的移植與實(shí)現(xiàn)-資料下載頁

2025-05-23 18:20本頁面
  

【正文】 p_arp_netmask[0])) { return。 } if((IPBUFsrcipaddr[1] amp。 uip_arp_netmask[1]) != (uip_hostaddr[1] amp。 uip_arp_netmask[1])) { return。 } uip_arp_update(IPBUFsrcipaddr, amp。(IPBUF))。 return。}*/Void uip_arp_arpin(void){if(uip_len sizeof(struct arp_hdr)) { uip_len = 0。 return。 } uip_len = 0。switch(BUFopcode) { case HTONS(ARP_REQUEST): if(BUFdipaddr[0] == uip_hostaddr[0] amp。amp。 BUFdipaddr[1] == uip_hostaddr[1]) { BUFopcode = HTONS(2)。 memcpy(BUF, BUF, 6)。 memcpy(BUF, , 6)。 memcpy(BUF, , 6)。 memcpy(BUF, BUF, 6)。 BUFdipaddr[0] = BUFsipaddr[0]。 BUFdipaddr[1] = BUFsipaddr[1]。 BUFsipaddr[0] = uip_hostaddr[0]。 BUFsipaddr[1] = uip_hostaddr[1]。 BUF = HTONS(UIP_ETHTYPE_ARP)。 uip_len = sizeof(struct arp_hdr)。 } break。 case HTONS(ARP_REPLY): if(BUFdipaddr[0] == uip_hostaddr[0] amp。amp。 BUFdipaddr[1] == uip_hostaddr[1]) { uip_arp_update(BUFsipaddr, amp。BUFshwaddr)。 } break。 } return。}*/Void uip_arp_out(void){ struct arp_entry *tabptr。 if((IPBUFdestipaddr[0] amp。 uip_arp_netmask[0]) != (uip_hostaddr[0] amp。 uip_arp_netmask[0]) || (IPBUFdestipaddr[1] amp。 uip_arp_netmask[1]) != (uip_hostaddr[1] amp。 uip_arp_netmask[1])) { ipaddr[0] = uip_arp_draddr[0]。 ipaddr[1] = uip_arp_draddr[1]。} else { ipaddr[0] = IPBUFdestipaddr[0]。 ipaddr[1] = IPBUFdestipaddr[1]。 }for(i = 0。 i UIP_ARPTAB_SIZE。 ++i) { tabptr = amp。arp_table[i]。 if(ipaddr[0] == tabptripaddr[0] amp。amp。ipaddr[1] == tabptripaddr[1]) { break。} }if(i == UIP_ARPTAB_SIZE) { memset(BUF, 0xff, 6)。 memset(BUF, 0x00, 6)。 memcpy(BUF, , 6)。 memcpy(BUF, , 6)。 BUFdipaddr[0] = ipaddr[0]。 BUFdipaddr[1] = ipaddr[1]。 BUFsipaddr[0] = uip_hostaddr[0]。 BUFsipaddr[1] = uip_hostaddr[1]。BUFopcode = HTONS(ARP_REQUEST)。 BUFhwtype = HTONS(ARP_HWTYPE_ETH)。 BUFprotocol = HTONS(UIP_ETHTYPE_IP)。 BUFhwlen = 6。 BUFprotolen = 4。 BUF = HTONS(UIP_ETHTYPE_ARP)。 uip_appdata = amp。uip_buf[40 + UIP_LLH_LEN]。 uip_len = sizeof(struct arp_hdr)。 return。 } memcpy(IPBUF, tabptr, 6)。 memcpy(IPBUF, , 6)。 IPBUF = HTONS(UIP_ETHTYPE_IP)。 uip_len += sizeof(struct uip_eth_hdr)。}(3)主函數(shù)inclduevoid main(void){ unsigned char i。 unsigned char arptimer=0。 USART_init()。 //網(wǎng)絡(luò)初始化函數(shù) nic_init()。//uip協(xié)議棧初始化 uip_init()。// init app 應(yīng)用程序初始化,如tcp或者udp ,的應(yīng)用d_init()。// init ARP cache 初始化arp協(xié)議的緩沖 uip_arp_init()。 // init periodic timer 初始化周期函數(shù)定時器 initTimer()。 //開放中斷 //主循環(huán) while(1) { uip_len = nic_poll()。 if(uip_len == 0)//如果沒有數(shù)據(jù)包 { if(timerCounter TIMERCOUNTER_PERIODIC_TIMEOUT) { timerCounter = 0。 for(i = 0。 i UIP_CONNS。 i++) { uip_periodic(i)。//周期性檢查函數(shù) if(uip_len 0) //如果包長度大于0 發(fā)送包 { uip_arp_out()。//主動發(fā)送和重發(fā)數(shù)據(jù)包在此進(jìn)行 nic_send()。 } } if(++arptimer == 20)//更新arp表 { uip_arp_timer()。 arptimer = 0。 } } } else // packet received 接收到網(wǎng)絡(luò)數(shù)據(jù)包 { // process an IP packet 處理ip數(shù)據(jù)包 if(BUFtype == htons(UIP_ETHTYPE_IP)) { uip_arp_ipin()。 uip_input()。 if(uip_len 0) { uip_arp_out()。 nic_send()。 } } // process an ARP packet 處理arp包 else if(BUFtype == htons(UIP_ETHTYPE_ARP)) { uip_arp_arpin()。 if(uip_len 0) { nic_send()。 } } }}致 謝在論文即將完成之際,我希望能夠借這個機(jī)會對在大學(xué)在校期間關(guān)心、幫助、支持和鼓勵過我的老師、同學(xué)、朋友和親人致以最誠摯的謝意和最衷心的祝福!首先,我要衷心感謝我的導(dǎo)師—趙忠彪老師的悉心指導(dǎo)。我的論文從選題到撰寫以及到最后的完成都凝集了趙老師很多辛勤的汗水,可以說,我的每一點(diǎn)成績、每一次進(jìn)步都離不開老師的啟發(fā)和教誨。趙老師在科研工作中的務(wù)實(shí)敬業(yè)精神深深地感染著我;扎實(shí)的理論知識、豐富的工程實(shí)踐,宏觀上啟迪著我的思維;淵博的知識、敏銳的洞察力、嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度將使我終身難忘。感謝許昌學(xué)院電氣信息工程學(xué)院的各位老師四年里在我的學(xué)習(xí)和生活上對我的指導(dǎo)和幫助,同時也感謝系領(lǐng)導(dǎo)和輔導(dǎo)員劉老師在平時生活和學(xué)習(xí)中給我們創(chuàng)造了良好的條件。最后,向所有曾給予我關(guān)心和幫助的老師和同學(xué)致以最衷心的感謝,向在百忙之中參加論文評審、答辯的專家和老師表示衷心的感謝和最崇高的敬意!
點(diǎn)擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1