完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
我有一个问题与下面的代码…事实上,下面的代码运行,但我的问题是,如果我想添加一个第五测试。此代码生成一些动态HTML来填充在设备上运行的一些“测试模式”。这些是单选按钮,有一些代码用来检查正在使用的按钮。这是在pic32mz ef)/.ony 1.07.1上运行的。如果进行这些更改,test=5,向生成器[4][0]=添加另一行,并将字节数更改为1000,则将结束一个永无休止的循环。缓冲区中的最大字节数是多少?如何编写比800字节更多的字节?
|
|
相关推荐
12个回答
|
|
|
您需要将打印划分为更小的块(例如,每个i打印一个打印)并将回调pos设置为i,或者您可以将整个字符串保存在静态内存中,并在每次使用回调pos打印ne中的偏移量时,将整个字符串打印为tx缓冲区中的尽可能多的空间。如果在回调之间保留一个静态字符串,则需要记住几个客户机可以调用服务器,因此需要为每个可能的HTTP连接保留一个字符串,这样就更容易进行动态打印。在代码中,调用回调HTTP1打印,直到打印所有文本。/ Ruben
|
|
|
|
|
|
谢谢马克斯,这很有帮助。我知道我现在需要做什么了。我没有完全做到你所做的,但这就是我所做的。行计数需要在函数的范围之外,所以它知道它在哪里。TopPIpHypPyPrtTyToRealType(HtpHyCon句柄Cal句柄){char HTML(300);UINT8YT T i;γIFDEF MyMeint int测试=5;CHAR*Builder [测试] [2 ];Builder(0)[0 ] =“Test1”;Builder [0 ] [1 ]=“0”;Builder [1 ] [0 ] =构建器[1][1][1][1] =1;构建器[2][0][0][0][2][1]][1][1][1][1][1][1][1][1][1][1][1][1] =1] =1] =1"1;构建器[1][1][1][1][1][1]][1][1]][1]][1]] =1][1][1][1]][1] =1][1]]]]]]]]]]]][4]][1]] =1][1] =1][1] =1][1] =1][1] =1]SocketGet(connH)<200u){andle){{.}}//需要一些方法来检查活动选项strcpy(html,“<标签id=item47474747474747_”;strcat(html,builder[linecount][1]]];strcat(html,builder[builder[linecount]]]];strcat(html,"_label\>\>>\\&&&<输入类型=\\\\\\\\");}{strcat(html,html,“id=\item47\item47id=\item47\\itemml,id=\item4747474747474747474747474747474747474747\\\\””””””);}strcrcrcrcatstrcat(html,id id=\\\\\"id="item47_";strcat(html,builder[linecount][1]);strcat(html,"_.">";strcat(html,builder[linecount][0]);strcat(html,"");TCPIP_TCP_StringPut(TCPIP_HTTP_CurrentConnectionSocketGet(connHandle),(const uint8_t*)html);linecount+;if(linecount==test){linecount=0;TCPIP_HTTP_CurrentConnectionCallbackPosSet(connHandl)e,0x00);}
|
|
|
|
|
|
使用回线POS(LeNeCuNT)(-1)。这样,即使两个客户端同时访问(http)这个HTTP打印,您的函数也能工作。否则,它们将使用相同的变量来计算。
|
|
|
|
|
|
我想我明白这里发生了什么,但我不太确定。这个回调是怎么工作的?我可以让它工作在一个简单的情况下,一切都打印一次。但是,如果我必须打印多个项目,它打破。
|
|
|
|
|
|
这个回调实际如何工作?我很困惑。什么是回调位置?从读取DOC,它是真的还是假的,你如何使用它来“定位”代码从哪里运行。
|
|
|
|
|
|
它可以是你想要的任何东西。如果将其设置为非零值,则将再次调用回调(HTTP_Print...)函数,其值与将其设置为last的值相同。它可以用作字符串(因此它的名称)中的位置计数器,其中您只能发送字符串的一部分(与tx缓冲区中当前可用的空间一样多)。然后将位置值设置为字符串中的哪个字符在下一次回调时开始。这个问题在于,您需要将字符串保存在内存中,并且字符串必须以某种方式附加到回调函数之间关联的连接上。因此,我宁愿等待最多的空闲空间,然后直接生成字符串并直接发送。/ Ruben
|
|
|
|
|
|
在发送字符串之前或之后设置回调位置吗?
|
|
|
|
|
|
好的,明白了。-已经更改了使用回调值的位置。这是有道理的。
|
|
|
|
|
|
这给了我很多好处。我得到的输出是零首头……头颅不断重复。在完成了“头”之后,它就有了0x02的回调。我故意让它回来后,通过强迫返回。每次运行数据段时,它都会通过一个调用来增加调用。直到它到达7,它将完成。虽然代码不在其中,但是它将在数据数组上进行交互。但是,由于某些原因,它的返回值为0x01。这就意味着这个循环不断地重复它自己,我迷失了为什么会发生这种情况。这不起作用,我不明白为什么没有!
|
|
|
|
|
|
将“i=TCPIP_HTTP_CurrentConnectionCallbackPosGet(connHandle+0x01);”更改为“i=TCPIP_HTTP_CurrentConnectionCallbackPosGet(connHandle)+0x01;”在将回调pos设置为7之后,将(对于尾部)读取回调pos,以便它会执行最后一个数据+最后一个回调的尾部。你可以在回调检查POS & Gt的另一个内部做它,=2和lt=6。您还需要在tx缓冲区中检查可用空间。在将回调pos设置为1.
|
|
|
|
|
|
哦,我觉得很傻!-)
|
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
454 浏览 0 评论
5793 浏览 9 评论
2334 浏览 8 评论
2224 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3529 浏览 3 评论
1121浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
1095浏览 1评论
我是Microchip 的代理商,有PIC16F1829T-I/SS 技术问题可以咨询我,微信:A-chip-Ti
872浏览 1评论
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
466浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 17:52 , Processed in 0.956483 second(s), Total 94, Slave 77 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
3183