<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>S12 / MagniV MicrocontrollersのトピックRe: DHCP not working on NE64!  Please Help!</title>
    <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/DHCP-not-working-on-NE64-Please-Help/m-p/212685#M8870</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I hooked up wireshark and noticed the NE64 sends out a discover message but nothing else.&amp;nbsp; I used wireshark to see how the computer handles dhcp, and it sends about five different DHCP related messages.&amp;nbsp; So my question is why am i not getting past the DHCP Discover message?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 14 Jul 2010 23:25:32 GMT</pubDate>
    <dc:creator>chinniwhites</dc:creator>
    <dc:date>2010-07-14T23:25:32Z</dc:date>
    <item>
      <title>DHCP not working on NE64!  Please Help!</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/DHCP-not-working-on-NE64-Please-Help/m-p/212684#M8869</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I just bought an NE64 dev board and am currently in the process of trying to get to accept a dhcp address.&amp;nbsp; I hacked apart the connecterapp and NE64_Vend_OpenTcp to try to make my own project.&amp;nbsp; Please let me know what i am doing wrong here.&amp;nbsp; Here is what i got so far:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;/**************************************************************************&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Copyright (C) 2003 Freescale Semiconductor, Inc.&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; and 2000-2002 Viola Systems Ltd.&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; All Rights Reserved&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;* File Name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Main.c&lt;BR /&gt;&amp;nbsp;* Project Name&amp;nbsp;&amp;nbsp; : Connector_App.mcp&lt;BR /&gt;&amp;nbsp;* Description&amp;nbsp;&amp;nbsp;&amp;nbsp; : This file contains main() for the Connector_App demo&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; code for the MC9S12NE64.&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; It does initializations and calls functions in the&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Connector_App.c application code. The Connector_App.c&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; file contains code for IO communication and UDP&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; protocol functions on the MC9S12NE64.&lt;BR /&gt;&amp;nbsp;*&lt;BR /&gt;&amp;nbsp;* *** NOTE: This project is for demonstration purposes only. It excludes&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; portions of the complete OpenTCP Stack for other protocols,&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; such as http, bootp, dns, etc. The complete version of this&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; stack is also included in the MC9S12NE64 Resource CD.&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;* *** NOTE: All header files have been removed from the Connector_App.mcp&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; project due to the 32-file limit of CodeWarrior Special&amp;nbsp;&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Edition. However, all the header files are included in your&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; working folder and can be viewed by highlighting it's name&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; in a source file, right clicking, and choosing "Find and&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Open File..." You may also just type the name of the file&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; in any source file and do this.&lt;BR /&gt;&amp;nbsp;*&lt;BR /&gt;&amp;nbsp;* Version : 1.1&lt;BR /&gt;&amp;nbsp;* Date&amp;nbsp;&amp;nbsp;&amp;nbsp; : 07/21/04&lt;BR /&gt;&amp;nbsp;*&lt;BR /&gt;&amp;nbsp;***************************************************************************/&lt;/P&gt;&lt;P&gt;#include "Connector_App.h"&lt;/P&gt;&lt;P&gt;#include "ne64api.h"&lt;BR /&gt;#include "ne64config.h"&lt;BR /&gt;#include "ne64debug.h"&lt;BR /&gt;#include "ne64driver.h"&lt;BR /&gt;#include "mBuf.h"&lt;/P&gt;&lt;P&gt;#include "debug.h"&lt;BR /&gt;#include "datatypes.h"&lt;BR /&gt;#include "timers.h"&lt;BR /&gt;#include "system.h"&lt;BR /&gt;#include "ethernet.h"&lt;BR /&gt;#include "arp.h"&lt;BR /&gt;#include "dhcpc.h"&lt;BR /&gt;#include "icmp.h"&lt;BR /&gt;#include "ip.h"&lt;BR /&gt;#include "udp.h"&lt;BR /&gt;#include "tcp_ip.h"&amp;nbsp;&lt;/P&gt;&lt;P&gt;#include "address.h"&lt;/P&gt;&lt;P&gt;#include "MC9S12NE64.h"&lt;BR /&gt;/* Including used modules for compiling procedure */&lt;/P&gt;&lt;P&gt;/* Network Interface definition. Must be somewhere so why not here? :-)*/&lt;BR /&gt;struct netif localmachine;&lt;/P&gt;&lt;P&gt;extern void RTI_Init (void);&lt;BR /&gt;extern void RTI_Enable (void);&lt;BR /&gt;//extern void porth_isr_handler (void);&lt;/P&gt;&lt;P&gt;extern&amp;nbsp;tU08&amp;nbsp;gotlink;&lt;BR /&gt;extern UINT8 dhcpc_state;&lt;BR /&gt;void Wait_for_UpdTcp(void);&lt;/P&gt;&lt;P&gt;#if USE_SWLED&lt;BR /&gt;tU16 LEDcounter=0;&lt;BR /&gt;#endif&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;//============================================================&lt;BR /&gt;tU08 OldSwitchValue=255;&lt;BR /&gt;tU16 Pot=0;&lt;BR /&gt;tU16 OldPot=1050;&lt;BR /&gt;tU08 OldB1=255;&lt;BR /&gt;tU08 OldB2=255;&lt;BR /&gt;//============================================================&lt;BR /&gt;//Initialize ATD&lt;BR /&gt;//============================================================&lt;BR /&gt;void ATD_init(void)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ATDCTL2 =&amp;nbsp; ATDCTL2_ADPU_MASK | ATDCTL2_AFFC_MASK;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ATDCTL3_S1C = 8;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 8 ch seq.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ATDCTL3_FIFO = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; // no FIFO&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ATDCTL3_FRZ = 3;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Freeze immediately in BDM&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ATDCTL4 =&amp;nbsp; ATDCTL4_PRS2_MASK |ATDCTL4_PRS1_MASK | ATDCTL4_PRS0_MASK;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ATDCTL4 = ATDCTL4 &amp;amp; ~ATDCTL4_SRES8_MASK; //10 bit&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ATDCTL5 = ATDCTL5_SCAN_MASK;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;//============================================================&lt;BR /&gt;// Initialize Port for LEDs, Switch, and Buttons&lt;BR /&gt;//============================================================&lt;BR /&gt;void demoinit(void)&lt;BR /&gt;&amp;nbsp;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //LEDS&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DDRG_DDRG0 = 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DDRG_DDRG1 = 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;PTG_PTG0 = 1;&amp;nbsp;//turn off&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;PTG_PTG1 = 1;&amp;nbsp;//turn off&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //SWITCH (RUN/LOAD)&amp;nbsp;&amp;nbsp; 0:input&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DDRG_DDRG4 = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //BUTTON2&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DDRH_DDRH4 = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIEH_PIEH4 = 1;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //PIEH4 Interrupt Enable&lt;BR /&gt;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;//============================================================&lt;BR /&gt;/* main */&lt;BR /&gt;//============================================================&lt;BR /&gt;void main(void)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp; //INT16 len;&lt;BR /&gt;&amp;nbsp; long timeout;&lt;BR /&gt;&amp;nbsp; char Got_dhcp=TRUE;&lt;/P&gt;&lt;P&gt;&amp;nbsp; /* System clock initialization */&lt;BR /&gt;&amp;nbsp; CLKSEL=0;&lt;BR /&gt;&amp;nbsp; CLKSEL_PLLSEL = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Select clock source from XTAL */&lt;BR /&gt;&amp;nbsp; PLLCTL_PLLON = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Disable the PLL */&lt;BR /&gt;&amp;nbsp; SYNR = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Set the multiplier register */&lt;BR /&gt;&amp;nbsp; REFDV = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Set the divider register */&lt;BR /&gt;&amp;nbsp; PLLCTL = 192;&lt;BR /&gt;&amp;nbsp; PLLCTL_PLLON = 1;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Enable the PLL */&lt;BR /&gt;&amp;nbsp; while(!CRGFLG_LOCK);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Wait */&lt;BR /&gt;&amp;nbsp; CLKSEL_PLLSEL = 1;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Select clock source from PLL */&lt;/P&gt;&lt;P&gt;&amp;nbsp; INTCR_IRQEN = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Disable the IRQ interrupt. IRQ interrupt is enabled after CPU reset by default. */&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;/* initialize processor-dependant stuff (I/O ports, timers...).&lt;BR /&gt;&amp;nbsp; * Most important things to do in this function as far as the TCP/IP&lt;BR /&gt;&amp;nbsp; * stack concerns:&lt;BR /&gt;&amp;nbsp; *&amp;nbsp; - initializing some timer so it executes decrement_timers&lt;BR /&gt;&amp;nbsp; * &amp;nbsp;on every 10ms (TODO: Throw out this dependency from several files&lt;BR /&gt;&amp;nbsp; *&amp;nbsp;so that frequency can be adjusted more freely!!!)&lt;BR /&gt;&amp;nbsp; *&amp;nbsp; - not mess too much with ports allocated for Ethernet controller&lt;BR /&gt;&amp;nbsp; */&lt;BR /&gt;&amp;nbsp; _INIT_DEBUG();&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; ATD_init();&lt;BR /&gt;&amp;nbsp; demoinit();&lt;BR /&gt;&amp;nbsp; RTI_Init();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;/* Ethernet (MAC) address */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;localmachine.localHW[0] = hard_addr[0];&lt;BR /&gt;&amp;nbsp;&amp;nbsp;localmachine.localHW[1] = hard_addr[1];&lt;BR /&gt;&amp;nbsp;&amp;nbsp;localmachine.localHW[2] = hard_addr[2];&lt;BR /&gt;&amp;nbsp;&amp;nbsp;localmachine.localHW[3] = hard_addr[3];&lt;BR /&gt;&amp;nbsp;&amp;nbsp;localmachine.localHW[4] = hard_addr[4];&lt;BR /&gt;&amp;nbsp;&amp;nbsp;localmachine.localHW[5] = hard_addr[5];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;/* Init system services&amp;nbsp;&amp;nbsp;*/&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;timer_pool_init();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Initialize all buffer descriptors */&lt;BR /&gt;&amp;nbsp;mBufInit ();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp; /* Initialize all network layers&amp;nbsp;*/&lt;BR /&gt;&amp;nbsp; EtherInit();&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; //Enable RTI&lt;BR /&gt;&amp;nbsp;RTI_Enable ();&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; //Initialize required network protocols &amp;nbsp;&lt;BR /&gt;&amp;nbsp; (void)arp_init();&lt;BR /&gt;&amp;nbsp; (void)udp_init();&lt;BR /&gt;&amp;nbsp; (void)tcp_init();&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; while (!gotlink){&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; /* if using DHCP, following network variables should be initialized to zero&lt;BR /&gt;&amp;nbsp;&amp;nbsp; * during startup (or to previously-assigned parameters if they are stored&lt;BR /&gt;&amp;nbsp;&amp;nbsp; * somewhere - in FLASH maybe...)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; */&lt;BR /&gt;&amp;nbsp; /* Note: If enabled, this function initializes the DHCP protocol */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;localmachine.localip = 0;&lt;BR /&gt;&amp;nbsp;localmachine.defgw = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;localmachine.netmask = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; (void)dhcpc_init();&lt;BR /&gt;&amp;nbsp;timeout = 1600000; // This timeout is Application,and frequency dependent&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; while (dhcpc_state != DHCP_STATE_BOUND){&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; dhcpc_run();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Wait_for_UpdTcp();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//wait for it&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; timeout--;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (timeout == 0)&lt;BR /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; Got_dhcp = FALSE;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; break;&lt;BR /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;if(Got_dhcp==FALSE){&lt;BR /&gt;&amp;nbsp;&amp;nbsp; /* Set our network information. This is for static configuration.*&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * if using BOOTP or DHCP this will be a bit different.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;/* IP address */&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;localmachine.localip = *((UINT32 *)ip_address);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;/* Default gateway */&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;localmachine.defgw&amp;nbsp;&amp;nbsp; = *((UINT32 *)ip_gateway);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;/* Subnet mask */&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;localmachine.netmask = *((UINT32 *)ip_netmask);&lt;BR /&gt;&amp;nbsp;}&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;/* main loop */&lt;BR /&gt;&amp;nbsp;DEBUGOUT("&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;Entering to MAIN LOOP&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;\n\r");&lt;BR /&gt;&amp;nbsp;for (;&lt;A href="http://freescale.i.lithium.com/i/smilies/16x16_smiley-wink.gif"&gt;&lt;IMG alt=":smileywink:" class="emoticon emoticon-smileywink" src="http://freescale.i.lithium.com/i/smilies/16x16_smiley-wink.gif" title="Smiley Wink" /&gt;&lt;/A&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #if USE_SWLED&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UseSWLedRun();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #endif&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; if (gotlink) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;/* Try to receive Ethernet Frame&amp;nbsp;*/&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Wait_for_UpdTcp();&lt;BR /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;/* Application main loops */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;/* manage arp cache tables */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;arp_manage();&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if(Got_dhcp==TRUE){&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dhcpc_run ();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PTG_PTG1 = 0;&amp;nbsp;//turn on LED2&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;else{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; PTG_PTG0 = 0;&amp;nbsp;//turn on LED1&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;/* Application main loops */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;/* TCP/IP stack Periodic tasks here... */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //udp_demo_run();&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;//---------------end of main----------------------------------------&lt;BR /&gt;//---------------start of function declarations&lt;/P&gt;&lt;P&gt;void Wait_for_UpdTcp(void){&lt;BR /&gt;INT16 Pack_len;&lt;/P&gt;&lt;P&gt;&amp;nbsp;if( NETWORK_CHECK_IF_RECEIVED() == TRUE )&amp;nbsp;&lt;BR /&gt;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;switch( received_frame.protocol)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case PROTOCOL_ARP:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; process_arp (&amp;amp;received_frame);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;break;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case PROTOCOL_IP:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Pack_len = process_ip_in(&amp;amp;received_frame);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(Pack_len &amp;lt; 0)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;break;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;switch (received_ip_packet.protocol)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case IP_ICMP:&lt;BR /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;process_icmp_in (&amp;amp;received_ip_packet, Pack_len);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case IP_UDP:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; process_udp_in (&amp;amp;received_ip_packet,Pack_len);&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case IP_TCP:&lt;BR /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;process_tcp_in (&amp;amp;received_ip_packet, Pack_len);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;break;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;default:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;break;&lt;BR /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;break;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; default:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;break;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* discard received frame */&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;NETWORK_RECEIVE_END();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;}&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Jul 2010 21:28:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/DHCP-not-working-on-NE64-Please-Help/m-p/212684#M8869</guid>
      <dc:creator>chinniwhites</dc:creator>
      <dc:date>2010-07-13T21:28:15Z</dc:date>
    </item>
    <item>
      <title>Re: DHCP not working on NE64!  Please Help!</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/DHCP-not-working-on-NE64-Please-Help/m-p/212685#M8870</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I hooked up wireshark and noticed the NE64 sends out a discover message but nothing else.&amp;nbsp; I used wireshark to see how the computer handles dhcp, and it sends about five different DHCP related messages.&amp;nbsp; So my question is why am i not getting past the DHCP Discover message?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Jul 2010 23:25:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/DHCP-not-working-on-NE64-Please-Help/m-p/212685#M8870</guid>
      <dc:creator>chinniwhites</dc:creator>
      <dc:date>2010-07-14T23:25:32Z</dc:date>
    </item>
  </channel>
</rss>

