Pergunta

Eu estou tentando executar o código de exemplo para o servidor tftp. Eu fico sem queixas quando sintetizar meu hardware ou compilar o código. No entanto, quando eu adicionar a instrução lwip_init (), ele parece parar de trabalhar (ele não sai qualquer um dos comandos de impressão). Isso é muito frustrante e eu não tenho idéia do que está causando isso. Alguma ideia? Graças

#include <stdio.h>
#include "xenv_standalone.h"
#include "xparameters.h"
#include "platform.h"
#include "netif/xadapter.h"
#include "lwip/init.h"

#define EMAC_BASEADDR  XPAR_LLTEMAC_0_BASEADDR 

int main()
{
    print("-- Starting main() -- \r\n");

    struct netif *netif, server_netif;
    struct ip_addr ipaddr, netmask, gw;

    /* the mac address of the board. this should be unique per board */
    unsigned char mac_ethernet_address[] = { 0x00, 0x0a, 0x35, 0x00, 0x01, 0x02 };

    netif = &server_netif;

    microblaze_init_icache_range(0, XPAR_MICROBLAZE_0_CACHE_BYTE_SIZE);
    microblaze_init_dcache_range(0, XPAR_MICROBLAZE_0_DCACHE_BYTE_SIZE);

    /* enable caches */
    XCACHE_ENABLE_ICACHE();
    XCACHE_ENABLE_DCACHE();

    platform_setup_interrupts();

    /* initliaze IP addresses to be used */
    IP4_ADDR(&ipaddr,  192, 168,   1, 10);
    IP4_ADDR(&netmask, 255, 255, 255,  0);
    IP4_ADDR(&gw,      192, 168,   1,  1);

    print_app_header();
    print_ip_settings(&ipaddr, &netmask, &gw);

    lwip_init();

    ...
}

EDIT em resposta a vicky:

talvez você possa explicar alguma coisa porque você pode estar certo. Quando eu compilá-lo sem lwip_init (), eu recebo:

text data bss dec  hex
7214 356 1104 8674 21e2

e com lwip_init () eu recebo:

text data bss   dec    hex
9726 356 559080 569162 8af4a

que é MUITO maior. Pena que não pode dar uma advertência sobre este

Foi útil?

Solução

Presumivelmente (supondo que você está fazendo uma limpeza reconstruir) que está ligando em lotes de coisas novas quando você começar a chamar funções lwIP, então sua imagem mudou. Tem sua imagem transbordou qualquer de suas limitações (o tamanho do programa, tamanho de dados, tamanho da pilha ...)?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top