如题,在做STM32F407 + LWIP实验中,始终连接不上,程序用的原子哥的代码:
int main(void)
{
u8 t;
u8 key;
delay_init(); //延时初始化
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置系统中断优先级分组2
// uart_init(115200); //串口波特率设置
// usmart_dev.init(84); //初始化USMART
// LED_Init(); //LED初始化
// KEY_Init(); //按键初始化
// LCD_Init(); //LCD初始化
// FSMC_SRAM_Init(); //初始化外部SRAM
// BEEP_Init(); //蜂鸣器初始化
// My_RTC_Init(); //RTC初始化
// Adc_Init(); //ADC初始化
// Adc_Temperate_Init(); //内部温度传感器初始化
TIM3_Int_Init(999,839); //100khz的频率,计数1000为10ms
mymem_init(SRAMIN); //初始化内部内存池
// mymem_init(SRAMEX); //初始化外部内存池
// mymem_init(SRAMCCM); //初始化CCM内存池
// POINT_COLOR = RED; //红 {MOD}字体
lwip_test_ui(1); //加载前半部分UI
t = 0;
//先初始化lwIP(包括LAN8720初始化),此时必须插上网线,否则初始化会失败!!
// LCD_ShowString(30,110,200,16,16,"lwIP Initing...");
while(lwip_comm_init()!=0)
{
// LCD_ShowString(30,110,200,16,16,"lwIP Init failed!");
delay_ms(1200);
// LCD_Fill(30,110,230,110+16,WHITE);//清除显示
// LCD_ShowString(30,110,200,16,16,"Retrying...");
}
// LCD_ShowString(30,110,200,16,16,"lwIP Init Successed");
// //等待DHCP获取
// LCD_ShowString(30,130,200,16,16,"DHCP IP configing...");
while((lwipdev.dhcpstatus!=2)&&(lwipdev.dhcpstatus!=0XFF))//等待DHCP获取成功/超时溢出
{
lwip_periodic_handle();
}
lwip_test_ui(2);//加载后半部分UI
httpd_init(); //HTTP初始化(默认开启websever)
while(1)
{
// key=KEY_Scan(0);
// switch(key)
// {
// case KEY0_PRES://TCP Server模式
// tcp_server_test();
// lwip_test_ui(3);//重新加载UI
// break;
// case KEY1_PRES://TCP Client模式
// tcp_client_test();
// lwip_test_ui(3);//重新加载UI
// break;
// case KEY2_PRES://UDP模式
// udp_demo_test();
// lwip_test_ui(3);//重新加载UI
// break;
// }
lwip_periodic_handle();
// delay_ms(2);
// t++;
// if(t==100)LCD_ShowString(30,230,200,16,16,"Please choose a mode!");
// if(t==200)
// {
// t=0;
// LCD_Fill(30,230,230,230+16,WHITE);//清除显示
// LED0=!LED0;
// }
}
}
程序能跑到主函数,lwipdev.dhcpstatus = 0xFF,求教各位大神。
硬件和原子哥是一样的
LED没亮,Ping 也不通 。
一周热门 更多>