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

正文內(nèi)容

基于stm32和dm9000的照明控制系統(tǒng)畢業(yè)論文(參考版)

2025-07-06 10:19本頁面
  

【正文】 圖 新建工程 ,單擊 ,出現(xiàn)文本“ Text1”,在文本中編寫主程序如圖,編寫完成后,單擊保存 ,在文件名中輸入“ ”,保存該程序。 // } } 安徽建筑大學(xué)畢業(yè)設(shè)計(jì)(論文) 31 第四章 系統(tǒng)的程序調(diào)試 系統(tǒng)的主程序調(diào)試 編寫程序 根據(jù)各個(gè)程序模塊,編寫所需的程序,下面介紹一下用軟件 KeiluVision4編寫過程。 //如是是 ARP 回應(yīng),更新 ARP 表;如果是請(qǐng)求,構(gòu)造回應(yīng)數(shù)據(jù)包 /*當(dāng)上面的函數(shù)執(zhí)行后,如果需要發(fā)送數(shù)據(jù),則全局變量 uip_len 0 需要發(fā)送的數(shù)據(jù)在 uip_buf, 長(zhǎng)度是 uip_len (這是 2個(gè)全局變量 ) */ if (uip_len 0) //是 ARP 請(qǐng)求,要發(fā)送回應(yīng) { tapdev_send()。 //加以太網(wǎng)頭結(jié)構(gòu),在主動(dòng)連接時(shí)安徽建筑大學(xué)畢業(yè)設(shè)計(jì)(論文) 30 可能要構(gòu)造 ARP 請(qǐng)求 tapdev_send()。 //去除以太網(wǎng)頭結(jié)構(gòu),更新 ARP 表 uip_input()。 uip_len = tapdev_read()。 } } } /******************************************************************************* * 函數(shù)名: UipPro * 輸 入 : * 輸 出 : * 功能說明:中斷觸發(fā)讀取網(wǎng)絡(luò)接收緩存 ********************************************************************/ void UipPro(void) { /*if(ETH_INT==1)*/{ //當(dāng)網(wǎng)絡(luò)接收到數(shù)據(jù)時(shí),會(huì)產(chǎn)生中斷 rep:。arp_timer)。 //發(fā)送數(shù)據(jù)到以太網(wǎng)(設(shè)備驅(qū)動(dòng)程序) } } endif /* UIP_UDP */ /* Call the ARP timer function every 10 seconds. */ if(timer_expired(amp。 /*處理 UDP 通信事件 */ /* 如果上面的函數(shù)調(diào)用導(dǎo)致數(shù)據(jù)應(yīng)該被發(fā)送出去,全局變量uip_len 設(shè)定值 0 */ if(uip_len 0) 安徽建筑大學(xué)畢業(yè)設(shè)計(jì)(論文) 29 { uip_arp_out()。 i UIP_UDP_CONNS。 //加以太網(wǎng)頭結(jié)構(gòu),在主動(dòng)連接時(shí)可能要構(gòu)造 ARP 請(qǐng)求 tapdev_send()。 i++) { uip_periodic(i)。 /* 輪流處理每個(gè) TCP 連接 , UIP_CONNS 缺省是 10 個(gè) */ for(i = 0。 } timer_reset(amp。 (led_flag == 0x00) GPIO_WriteBit(GPIOA, GPIO_Pin_1, Bit_SET) 。 if(timer_expired(amp。 //中斷觸發(fā)讀取網(wǎng)絡(luò)接收緩存 eth_poll()。 while (1) uip_listen(HTONS(5005))。 //設(shè)置網(wǎng)絡(luò)掩碼 uip_setmask(ipaddr)。 printf(uip mask : 255,255,255,0\r\n)。 uip_ipaddr(ipaddr, 192,168,1,1)。 //設(shè)置 IP 地址 uip_sethostaddr(ipaddr)。 if 1 printf(uip ip address : 192,168,1,8\r\n)。 //UIP 協(xié)議棧初始化 server_udp_flag = SERVER_UDP_NULL。 tapdev_init()。 //發(fā) ARP 回應(yīng)到以太網(wǎng)上 } } } } // else{ //防止大包造成接收死機(jī) ,當(dāng)沒有產(chǎn)生中斷,而中斷信號(hào)始終 為低說明接收死機(jī) // if(ETH_rec_f==0) goto rep。 //發(fā)送數(shù)據(jù)到以太網(wǎng)(設(shè)備驅(qū)動(dòng)程序) } } /* 處理 arp 報(bào)文 */ else if (BUFtype == htons(UIP_ETHTYPE_ARP)) //是 ARP 請(qǐng)求包 { uip_arp_arpin()。 //IP 包處理 /* 當(dāng)上面的函數(shù)執(zhí)行后,如果需要發(fā)送數(shù)據(jù),則全局變量 uip_len 0 */ if (uip_len 0) //有帶外回應(yīng)數(shù)據(jù) { uip_arp_out()。 //從網(wǎng)絡(luò)設(shè)備讀取一個(gè) IP包 ,返回?cái)?shù)據(jù)長(zhǎng)度 if(uip_len 0) //收到數(shù)據(jù) { /* 處理 IP 數(shù)據(jù)包 (只有校驗(yàn)通過的 IP 包才會(huì)被接收 ) */ if(BUFtype == htons(UIP_ETHTYPE_IP)) { uip_arp_ipin()。 ETH_INT=0。 uip_arp_timer()。arp_timer)) { timer_reset(amp。 //加以太網(wǎng)頭結(jié)構(gòu),在主動(dòng)連接時(shí)可能要構(gòu)造 ARP 請(qǐng)求 tapdev_send()。 i++) { uip_udp_periodic(i)。 //發(fā)送數(shù)據(jù)到以太網(wǎng)(設(shè)備驅(qū)動(dòng)程序) } } 安徽建筑大學(xué)畢業(yè)設(shè)計(jì)(論文) 25 if UIP_UDP /* 輪流處理每個(gè) UDP 連接 , UIP_UDP_CONNS 缺省是 10 個(gè) */ for(i = 0。 /* 處理 TCP 通信事件 */ /* 當(dāng)上面的函數(shù)執(zhí)行后,如果需要發(fā)送數(shù)據(jù),則全局變 量 uip_len 0 需要發(fā)送的數(shù)據(jù)在 uip_buf, 長(zhǎng)度是 uip_len (這是 2個(gè)全局變量 ) */ if(uip_len 0) { uip_arp_out()。 i UIP_CONNS。periodic_timer)。 GPIO_WriteBit(GPIOA, GPIO_Pin_1, Bit_RESET)。periodic_timer)) { if( 0x02 == DHCP_SUCCESS_FLAG) { led_flag = ~led_flag。 //定時(shí)查詢 TCP 及 UDP 連接收發(fā)狀態(tài) ARP 表更 新, 并響應(yīng) } 安徽建筑大學(xué)畢業(yè)設(shè)計(jì)(論文) 24 } /**************************************************************************** * 名 稱: void eth_poll(void) * 功 能:定時(shí)查詢 TCP 連接收發(fā)狀態(tài) ARP 表更新, 并響應(yīng) * 入口參數(shù):無 * 出口參數(shù):無 * 說 明: * 調(diào)用方法:無 ****************************************************************************/ void eth_poll(void){ unsigned char i=0。 { /* 處理 uip 事件,必須插入到用戶程序的循環(huán)體中 */ UipPro()。 /* 創(chuàng)建一個(gè) TCP 監(jiān)聽端口和 監(jiān)聽端口,端口號(hào)為 1200, 80 */ uip_listen(HTONS(1200))。 dhcpc_init(amp。//UIP MAC 初始化 //UIP 初始化 uip_init()。 i++) [i] = mac_addr[i]。 /* 初始化網(wǎng)絡(luò)設(shè)備以及 UIP 協(xié)議棧,配置 IP 地址 */ //應(yīng)用層 MAC 初始化 for (i = 0。 //向串口 1 發(fā)送開機(jī)字符。arp_timer, CLOCK_SECOND * 10)。periodic_timer, CLOCK_SECOND / 2)。 //基本時(shí)鐘 clock_arch_init()。 timer_set(amp。 Usart1_Init()。 RCC_Configuration()。 struct timer t。 int i。 } struct timer periodic_timer, arp_timer。 } /**************************************************************************** * 名 稱: void RCC_Configuration(void) * 功 能:系統(tǒng)時(shí)鐘配置為 72MHZ, 外設(shè)時(shí)鐘配置 * 入口參數(shù):無 * 出口參數(shù):無 * 說 明: * 調(diào)用方法:無 ****************************************************************************/ void RCC_Configuration(void) { // RCC_APB2PeriphClockCmd( RCC_APB2Periph_AFIO , ENABLE)。 GPIO_Init(GPIOA, amp。 = GPIO_Speed_50MHz。 RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOA, ENABLE)。 } /******************************************************************************* * 函數(shù)名 : void myudp_appcall(void) ) * 參 數(shù) : * 返 回 : 無 * 功 能 : UDP 主函數(shù) **************************************************************************/ void server_udp_appcall(void) { if(uip_newdata()) { server_udp_newdata()。 } else if(strncmp(nptr,ledpoll,7)==0) led_poll()。 } else if(strncmp(nptr,ledoff 3,8)==0){ LED3_OFF()。 } else if(strncmp(nptr,ledoff 2,8)==0){ 安徽建筑大學(xué)畢業(yè)設(shè)計(jì)(論文) 21 LED2_OFF()。 } else if(strncmp(nptr,ledoff 1,8)==0){ LED1_OFF()。 } else if(strncmp(nptr,ledon 3,7)==0){ LED3_ON()。 } else if(strncmp(nptr,ledon 2,7)==0){ LED2_ON()。 else if(strncmp(nptr,ledon 1,7)==0){ LED1_ON()。 //取得數(shù)據(jù)起始指針 if(len4)myudp_send(Please check the mand!\n,26)。 len = uip_datalen()。 //發(fā)送 n個(gè)數(shù)據(jù) } /******************************************************************************* * 函數(shù)名 : void UDP_newdata(void) 安徽建筑大學(xué)畢業(yè)設(shè)計(jì)(論文) 20 * 參 數(shù) : * 返 回 : 無 * 功 能 : UDP 數(shù)據(jù)包發(fā)送 ******************
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1