Webserver project now uses the board LEDs to indicate the current IP configuration state.

Don't double-read data from the attached disk in the incomplete StandaloneProgrammer project when in host mode.
This commit is contained in:
Dean Camera 2010-03-09 05:15:08 +00:00
parent a61c7f671d
commit ce260ae786
9 changed files with 28 additions and 18 deletions

View file

@ -156,7 +156,10 @@ void DHCPClientApp_Callback(void)
uip_setnetmask((uip_ipaddr_t*)&AppState->DHCPClient.DHCPOffer_Data.Netmask);
uip_setdraddr((uip_ipaddr_t*)&AppState->DHCPClient.DHCPOffer_Data.GatewayIP);
AppState->DHCPClient.CurrentState = DHCP_STATE_AddressLeased;
/* Indicate to the user that we now have a valid IP configuration */
HaveIPConfiguration = true;
AppState->DHCPClient.CurrentState = DHCP_STATE_AddressLeased;
}
break;

View file

@ -77,7 +77,7 @@ const MIME_Type_t MIMETypes[] =
{.Extension = "pdf", .MIMEType = "application/pdf"},
};
/** FAT Fs structure to hold the internal state of the FAT driver for the dataflash contents. */
/** FATFs structure to hold the internal state of the FAT driver for the dataflash contents. */
FATFS DiskFATState;

View file

@ -46,6 +46,7 @@ struct timer ARPTimer;
/** MAC address of the RNDIS device, when enumerated */
struct uip_eth_addr MACAddress;
bool HaveIPConfiguration;
/** Configures the uIP stack ready for network traffic. */
void uIPManagement_Init(void)
@ -62,8 +63,10 @@ void uIPManagement_Init(void)
/* DHCP/Server IP Settings Initialization */
#if defined(ENABLE_DHCP_CLIENT)
HaveIPConfiguration = false;
DHCPClientApp_Init();
#else
HaveIPConfiguration = true;
uip_ipaddr_t IPAddress, Netmask, GatewayIPAddress;
uip_ipaddr(&IPAddress, DEVICE_IP_ADDRESS[0], DEVICE_IP_ADDRESS[1], DEVICE_IP_ADDRESS[2], DEVICE_IP_ADDRESS[3]);
uip_ipaddr(&Netmask, DEVICE_NETMASK[0], DEVICE_NETMASK[1], DEVICE_NETMASK[2], DEVICE_NETMASK[3]);
@ -169,7 +172,7 @@ static void uIPManagement_ProcessIncomingPacket(void)
}
}
LEDs_SetAllLEDs(LEDMASK_USB_READY);
LEDs_SetAllLEDs(LEDMASK_USB_READY | ((HaveIPConfiguration) ? LEDMASK_UIP_READY : LEDMASK_UIP_READY_NOCONFIG));
}
/** Manages the currently open network connections, including TCP and (if enabled) UDP. */

View file

@ -63,6 +63,8 @@
/* External Variables: */
extern struct uip_eth_addr MACAddress;
extern bool HaveIPConfiguration;
/* Function Prototypes: */
void uIPManagement_Init(void);
void uIPManagement_ManageNetwork(void);