简单修改了STM32407中UDP实验的udp_demo_senddata(struct udp_pcb *upcb),想实现ADC采集然后把数据传到网络调试助手上,发现不可行,请问有什么解决办法吗?修改部分代码如下。//const u8 *tcp_demo_sendbuf="Explorer STM32407 UDP demo send data";
修改为 u8 tcp_demo_sendbuf;
//UDP服务器发送数据void udp_demo_senddata(struct udp_pcb *upcb)
{
struct pbuf *ptr;
u16 adcx;
//增加的ADC代码
adcx=Get_Adc(ADC_Channel_5);
tcp_demo_sendbuf=adcx;
LCD_ShowxNum(134,130,adcx,4,16,0);
//sprintf((char*)tcp_demo_sendbuf,"%d",adcx);
ptr=pbuf_alloc(PBUF_TRANSPORT,strlen((char*)tcp_demo_sendbuf),PBUF_POOL); //éêÇëÄú′æ
if(ptr)
{
pbuf_take(ptr,(char*)tcp_demo_sendbuf,strlen((char*)tcp_demo_sendbuf)); //½«tcp_demo_sendbufÖDμÄêy¾Y′ò°ü½øpbuf½á11ÖD
udp_send(upcb,ptr); //udp·¢Ëíêy¾Y
pbuf_free(ptr);//êí·ÅÄú′æ
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
数据类型的问题,UDP传输的是ASCLL数据,但又不知把采集的数据(比如3.3V的4096数值)如何转化成ascll码数据。
一周热门 更多>