|
lwip网页显示问题 |
魔法學徒 一級 |
最近在开发lwip,可以ping通。但是通过打印,看到单片机端已经发送成功,但是网页没有显示。三次握手成功了,网页发起请求之后,提示tcp Retransmission
|
一派掌門 二十級 |
2樓
發表于: 2024-5-10 15:38
你的硬件用的是stm32原生的eth外设吗?如果是的话要注意,lwip默认的网页内容是存在flash里面的,eth无法通过dma访问flash里面的内容,必须要先拷贝到sram里面再用dma传出去。
|
|
一派掌門 二十級 |
3樓
發表于: 2024-5-10 15:41
还有就是,lwip里面的网页是分成几段,组合成一个链表传给ethernetif.c的low_level_output函数的。在用for循环memcpy拷贝到一个数组的时候一定要注意拷贝的目的地址的下标是不是总是0。
|
|
魔法學徒 一級 |
在哪里拷贝网页数据呢,还有是生成的fsdata.c中的数组是在哪里调用的呢?
|
|
魔法學徒 一級 |
|
|
一派掌門 二十級 |
6樓
發表于: 2024-5-11 11:17
试试看这个代码行不行:
https://zh.purasbar.com/post.php?t=24569
|
|
魔法學徒 一級 |
|
|
魔法學徒 一級 |
|
|
魔法學徒 一級 |
|
|
一派掌門 二十級 |
10樓
發表于: 2024-5-11 11:59
实在不行,也可以试一下把p链表的所有内容复制到一个数组中,然后只用Txbuffer[0]一整个发出去,不分段。
|
|