问题标签 [lwip]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1655 浏览

tcp - 从 TCP 接收数据(FreeRTOS、LWIP)

当我启动这个程序(见下文)时,一切正常。但是当我禁用将数据返回到 TPCIP 时,程序运行不佳。

这是程序,工作正常:[1]:http ://s27.postimg.org/seixg63hf/problem_2.jpg

这个功能在这里:

在任务 FreeRTOS 中实现了完整的通信:

但是当我只能从 TCP 读取数据,并且我不想将数据返回到 TCPIP 时,程序运行不佳。: [2]:http ://s21.postimg.org/wlhqh31g5/problem_1.jpg

0 投票
1 回答
679 浏览

gprs - NCP 期间 GPRS PPP 失败

我现在使用的是 lwip-1.4.1,调制解调器是 SIM900。我在 NCP 期间遇到了一些麻烦。这是SIM900和MCU之间交换的数据。

发送: 7E FF 7D 23 C0 21 7D 21 7D 21 7D 20 7D 34 7D 22 7D 26 7D 20 7D 20 7D 20 7D 20 7D 25 7D 26 7D 2B 3F 7D 38 7D 3C 7D 27 7D 2226 7D //LCP

接收: 7E FF 7D 23 C0 21 7D 21 7D 21 7D 20 7D 2E 7D 22 7D 26 7D 20 7D 2A 7D 20 7D 20 7D 23 7D 24 C0 23 F3 4D 7E //LCP

接收: 7E FF 7D 23 C0 21 7D 24 7D 21 7D 20 7D 2E 7D 25 7D 26 7D 2B 3F 7D 38 7D 3C 7D 27 7D 22 7D 28 7D 22 9C B5 7E //LCP

发送:7E FF 7D 23 C0 21 7D 22 7D 21 7D 20 7D 2E 7D 22 7D 26 7D 20 7D 2A 7D 20 7D 20 7D 23 7D 24 C0 23 CD CE 7E //LCP

发送:7E FF 7D 23 C0 21 7D 21 7D 22 7D 20 7D 2A 7D 22 7D 26 7D 20 7D 20 7D 20 7D 20 5F AD 7E //LCP

接收: 7E FF 7D 23 C0 21 7D 22 7D 22 7D 20 7D 2A 7D 22 7D 26 7D 20 7D 20 7D 20 7D 20 36 D9 7E //LCP

发送:7E FF 03 C0 23 01 01 00 0E 04 6E 6F 6E 65 04 6E 6F 6E 65 DE 60 7E //PAP

接收:7E FF 03 C0 23 02 01 00 0D 08 4C 6F 67 69 6E 20 4F 4B 67 DC 7E //PAP

发送:7E FF 03 80 21 01 01 00 16 03 06 00 00 00 00 81 06 00 00 00 00 83 06 00 00 00 00 6E DB 7E // IPCP

然后什么都没发生...

LCP 协商成功,我已经完成了 PAP 身份验证。问题是在发送 IPCP 请求后,GPRS 调制解调器没有回复 IP 地址。但是,调制解调器仍处于 GPRS 状态,也就是说,GPRS 不会向我发送终止请求。

0 投票
1 回答
4955 浏览

microcontroller - 使用 LWIP 和 FREERTOS 的 TCP/IP

我想允许使用 FREERTOS 中的 LwIP 堆栈通过 TCP/IP 进行网络通信。我正在使用 stm32f4 发现板作为我的带有 LCD 接口的设备,并希望与我的电脑进行通信。我是 LwIP 的新手。有没有人有源代码或者可以向我提出任何建议。谢谢

0 投票
1 回答
568 浏览

javascript - 使用 LWIP 在 NodeJS 中生成缩略图

我在一个摄影社交媒体网站上工作,我正在为每张图片生成缩略图。图像在页面上以合适的尺寸显示,因此质量不能降低太多(例如 www.prsmphoto.com/user/tyler)。

目前我正在使用这个:image.scale(.15);

这在降低文件大小方面做得不错。但是,这会破坏看起来很糟糕的较小图像的质量。我应该如何处理这个?我很难绕过它。

0 投票
0 回答
56 浏览

apache - 其他国家/地区未响应 HTTP GET 请求

我有一台嵌入式设备,它从印度向位于西班牙的 Web 服务器发送 HTTP GET 请求以下载文件,它在印度完美运行。我的设备可以下载文件。

但是当我把我的二进制文件交给西班牙的朋友,他们有相同的嵌入式设备时,他的设备无法从网络服务器下载文件。

在搜索了这个问题后,我的大脑现在一片空白。具有相同固件和相同服务器的两个相同设备如何表现不同。

请注意,西班牙的设备可以 ping 服务器并下载小文件(大约 3-4KB)。但它不能下载更大的文件(100KB)左右。

我不知道可能是什么问题。

0 投票
0 回答
100 浏览

android - 将android连接到tcp-ip进行数据传输

将 Android 设备连接到 tcp/ip 有没有好的解决方案?到目前为止,我找到的解决方案包括:root 手机、实际的 Internet 连接、小部件或现有应用程序。我不能做任何这些事情。

我正在尝试通过串行端口将数据接收到没有第三方连接的 android 应用程序中,而无需植根设备。我愿意承认 tcp/ip 可能不是最好的答案,但我确实需要数据包和 ack 之类的东西。

我正在考虑实现应用程序级轻量级 ip (LWIP),但问题是:没有看到一个好的软件解决方案来从另一端的堆栈中获取信息。想法?

0 投票
2 回答
900 浏览

c - LwIP 实施

我正在为没有操作系统的嵌入式系统(Zybo)实现 TCP 客户端,而且我完全是 LwIP 的新手。在google了一段时间后,我发现了一些如何使用它的示例。

我想知道是否有任何方法可以通过它发送 C 结构,以及是否有任何可用的示例。该服务器是在 Linux 下的另一个 Zybo 板上实现的,它处理许多结构来控制状态机,因此它非常关键。

提前致谢。

0 投票
1 回答
702 浏览

c - 如果输入字符串长度超过 19 个字节,LwIP 套接字上的 UDP 服务器将陷入硬故障

我认为是因为 NULL 指针异常。我的嵌入式系统由 STM32F4、FreeRTOS 和 LwIP 组成。核心取自 ST 示例。这是简单UDP服务器的线程代码。

recvfrom()如果输入消息长度超过 19 个字节,程序控制永远不会从函数返回。并且永远不会从第 行文件中的函数sys_arch_mbox_fetch(&conn->recvmbox, &buf, 0);中的函数返回。 请帮助解决这个问题。netconn_recv_data()api_lib.c371

0 投票
0 回答
640 浏览

assembly - 使用 QEMU 运行 LWIP TCP/IP 堆栈

我在这里有一个简单的类 UNIX 内核:= http://www.oxkernel.com/download.html

我们尝试向它添加 LWIP TCP/IP 堆栈。我正在尝试在 Linux 下的 QEMU 中运行它。

这是 QEMU 的命令行:=

emu-system-i386 -fda vmox.img -net nic,model=ne2k_isa -net user -net dump -redir tcp:7777::7777

这运行并到达 TCP 堆栈说它已建立连接的地步。但是,它实际上阻止了等待响应。

我尝试在该端口(7777)和主机操作系统上运行一个简单的客户端,并且能够捕获数据包。

tcpdump 具有以下输出:=

tcpdump -nnxr qemu-vlan0.pcap reading from file qemu-vlan0.pcap, link-type EN10MB (Ethernet) 05:04:20.600573 ARP, Request who-has 10.0.2.15 tell 10.0.2.2, length 28 0x0000: 0001 0800 0604 0001 5255 0a00 0202 0a00 0x0010: 0202 0000 0000 0000 0a00 020f 05:04:26.572629 ARP, Request who-has 10.0.2.15 tell 10.0.2.2, length 28 0x0000: 0001 0800 0604 0001 5255 0a00 0202 0a00 0x0010: 0202 0000 0000 0000 0a00 020f

但是,我们永远不会摆脱连接建立等待(它等待信号量完成,这仅在有正确的 TCP 输入时才会发生)。

我相信 ne2000 驱动程序没有从网卡获取任何数据。

我将 iobase 设置为 0xC000,并且在除 PIT IRQ 之外的每个 IRQ 上都注册了驱动程序。我仍然没有得到任何数据。我什至从计时器调用 isr 并对其进行轮询,但我仍然没有得到任何数据。

我尝试了 ne2k_pci 和 ne2k_isa 设备,但仍然没有数据。ne2k 驱动程序基于此代码 :=

https://github.com/dreamcat4/lwip/blob/master/contrib/ports/old/ti_c6711/netif/ne2kif.c

有人可以帮我吗 ?谢谢

0 投票
0 回答
1597 浏览

c - LwIP 轻量级 IP - pbuf_alloc 返回 null。PBUF_POOL_IS_EMPTY

我目前在 Freescale K60 项目上使用lwIP来帮助我们的以太网 TCP 实施,并在 lwipopts.h 中设置了以下选项。

我遇到了一个问题,即从 PC 客户端到设备的前 9 条消息已成功读取并传递到应用程序级别,但在第 10 次尝试时失败了,我们不再通过以太网连接收到任何消息。

在追查这个之后,我发现在 pbuf.c 内部,PBUF_POOL_IS_EMPTY()由于调用

进一步检查表明,memp_tab发布后的值如下

的价值memp_tab[9]是一个担忧。

在我看来,这一切就像我们的内存在使用后没有被重新分配,尽管我们包含了 memp_malloc 调用。有什么方法可以在使用后重新分配这个内存,在调用中这将允许我们使用函数超过声明的用途。