主题中讨论的其他器件:HALCOGEN、
您好!
我正在开发一个项目、需要让 lwip 和 FreeRTOS 协同工作、但还没有成功。 您是否有可以与 lwip 和 FreeRTOS 配合使用的示例项目?
谢谢。。
。This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
我正在开发一个项目、需要让 lwip 和 FreeRTOS 协同工作、但还没有成功。 您是否有可以与 lwip 和 FreeRTOS 配合使用的示例项目?
谢谢。。
。尊敬的 Fatih:
Unknown 说:我正在开发一个项目,需要让 lwip 和 freeRTOS 协同工作,但我还没有成功。 您是否有可以与 lwip 和 FreeRTOS 配合使用的示例项目?
遗憾的是、 我们没有 FreeRTOS + LwIP 示例。
我们确实只有 LWIP 演示和主动 Web 服务器演示示示例代码、但没有 FreeRTOS。
--
谢谢。此致、
Jagadish。
尊敬的 Fatih:
为什么没有使用由 halcogen 创建的 EMAC 库,但这个库的特性被重写在 hkdif 中?
如果您验证 LwIP 设计及其层

应用程序将不直接使用 EMAC 功能、EMAC 将与 LwIP 接口单元连接。 这就是在 hdkif (硬件开发套件接口)模块中使用 EMAC 功能的原因。
--
谢谢。此致、
Jagadish。
您好!
感谢您提供的图表、我意识到由于我使用的队列结构无法正常工作、我解决了问题。
我成功地运行了 lwip 与 FreeRTOS、但现在遇到了以下问题。 对于如何解决这个问题、您有什么想法吗?
当我尝试连接到 MQTT 代理或将数据发送到 netconn TCP echo 服务器时、或者如果我在超时回调中调用 STS_TIMEOUT 时、我的程序会卡在 lwip 超时的 sys_timeout_abs 函数的循环中、如下所示。
static void timer(void *arg)
{
task_counter++;
sys_timeout(2000, timer, NULL);
}
static void defaultTask(void *pvParameters)
{
log_printf("program started\n");
ethernet_lwip_init(false);
while (!dhcp_supplied_address(&gnetif))
{
vTaskDelay(100);
}
sys_timeout(2000, timer, NULL);
for (;;)
{
vTaskDelay(3000);
}
}
但是、如果我将其修复为遵循它
static void timer(void *arg)
{
task_counter++;
}
static void defaultTask(void *pvParameters)
{
log_printf("program started\n");
ethernet_lwip_init(false);
while (!dhcp_supplied_address(&gnetif))
{
vTaskDelay(100);
}
for (;;)
{
vTaskDelay(3000);
sys_timeout(2000, timer, NULL);
}
}
当我像在第一个示例中那样使用它时、它也应该起作用、因为超时在 MQTT 和 lwip 的 TCP 库中被用作第一个示例
在寻找问题时、我意识到 next_timeout 的下一个是点本身、这就是它卡在无限循环中的原因。
如果您希望检查、我添加了一个示例项目。 在 main.h 中有一个名为 first_example_that_due_not_works 的定义。如果您将其设置为1,您将启用不工作代码如果您将其设置为0,您将启用工作代码。
此处是示例项目的存储库 (https://github.com/fatihyazman/TMS570LS3137_FOR_TI_SUPPORT) (所有配置都是针对 TMS570LS3137 Hercules 开发套件进行的)
谢谢。。
。