⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ucoslwip.c

📁 ucos for linux reference source
💻 C
字号:
/***************************************************************************                                                                         **   PROJECT     : uCOS_LwIP (TCP/IP stack)                                **                                                                         **   MODULE      : UCOSLWIP.c                                              **                                                                         **   AUTHOR      : Michael Anburaj                                         **                 URL  : http://geocities.com/michaelanburaj/             **                 EMAIL: michaelanburaj@hotmail.com                       **                                                                         **   PROCESSOR   : Any                                                     **                                                                         **   TOOL-CHAIN  : GCC                                                     **                                                                         **   DESCRIPTION :                                                         **   This the base code for supporting uC/OS-II LwIP application.          **                                                                         ***************************************************************************/#include "frmwrk_cfg.h"#include "sysdefs.h"#include "os_cpu.h"#include <string.h>#include "consol.h"#include "frmwrk.h"#include "lwip/mem.h"#include "lwip/memp.h"#include "lwip/sys.h"#include "lwip/stats.h"#include "lwip/tcpip.h"#include "lwip/ip_addr.h"#include "ethif_saa9730.h"#include "eth_saa9730.h"#define NETIF_Init ETHIF_Init/* ********************************************************************* *//* Global definitions *//* ********************************************************************* *//* File local definitions */void LAPP_vInit(void);#define START_TASK_PRIO APP_THREAD_START_PRIO+0/* ********************************************************************* *//* Local functions */static void vTcpipInitDone(void *arg){  sys_sem_t *sem;  sem = arg;  sys_sem_signal(*sem);}struct netif _stNetif;static void vTaskStart(void *data){//        FRMWRK_vStartTicker(OS_TICKS_PER_SEC);  /* The Tick timer is started much earlier */  struct ip_addr ipaddr, netmask, gw;  sys_sem_t sem;  struct netif *pstNetif;  data = data;                            /* Prevent compiler warning */  CONSOL_Printf("uC/OS-II, The Real-Time Kernel MIPS Ported version\n");  CONSOL_Printf("Jean J. Labrosse/ (Ported by) Michael Anburaj\n");  CONSOL_Printf("LwIP #1\n");  sem = sys_sem_new(0);  tcpip_init(vTcpipInitDone, &sem);  sys_sem_wait(sem);  sys_sem_free(sem);  CONSOL_Printf("TCP/IP initialized.\n");  IP4_ADDR(&gw, 192,168,0,1);  IP4_ADDR(&ipaddr, 192,168,0,103);  IP4_ADDR(&netmask, 255,255,255,0);  pstNetif = netif_add(&_stNetif, &ipaddr, &netmask, &gw, NULL, NETIF_Init, tcpip_input);  LWIP_ASSERT("vTaskStart: netif_add error, pstNetif != 0\n", pstNetif != 0);  netif_set_default(pstNetif);  netif_set_up(pstNetif); /* Required only for static IP case */  printf("Addr:%x %x %x\n",ipaddr,netmask,gw);  LAPP_vInit();  /* Loop forever. */  while(1)  {      //OSTimeDly(10);      //CONSOL_SendChar('.');      /* wait forever */      ETH_vWaitOnRxPacket(0);  }}/* ********************************************************************* *//* Global functions */void UAPP_vMain (void){    OSInit();                               /* Initialize uC/OS-II                                     */    sys_init();    mem_init();    memp_init();    pbuf_init();     CONSOL_Printf("System initialized.\n");    sys_thread_new(vTaskStart, NULL, START_TASK_PRIO);    FRMWRK_vStartTicker(OS_TICKS_PER_SEC);  /* Start the uC/OS-II system tick */    OSStart();                              /* Start multitasking                                       */}/* ********************************************************************* */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -