专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
STM32
原子407板子的UDP测试,遇到些问题。求教
2019-07-21 00:43
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
STM32/STM8
10466
10
1407
买探索者的时候没买LCD,现在测UDP,那个目标地址怎么设置。
电脑的IP安装教程里面设置的是192.168.1.100,调试助手打开是下面这个,还有本地端口都是默认的。对UDP测试有影响么?
程序运行。调试助手显示发送成功,但是网络数据接收没有内容,是什么情况?
发现程序里面的LCD和按键部分基本对我现在的情况没用,该怎么测UDP.
友情提示:
此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
10条回答
dop101
2019-07-22 08:29
回复【10楼】 正点原子 :
---------------------------------
因为没有路由所以用的是静态IP,我用的完全是咱们程序里面的两个远端IP,192.168.1.100和静态IP192.168.1.30。开发板也是探索者的,所以开发板的IP应该 是192.168.1.30了,ping 192.168.1.30是ping不通的。
这是电脑设置的
下面是网络调试助手显示的,通过开发板给它发送的数据是成功了。
我之前以为调试助手下面发的网址应该是给开发板,然后开发板网址在回到调试助手上面显示,好像不是这样
while(res==0)
{
key=KEY_Scan(0);
if(key==WKUP_PRES)break;
if(key==KEY0_PRES)//KEY0按下了,发送数据
{
udp_demo_senddata(udppcb);
}
if(udp_demo_flag&1<<6)//是否收到数据?
{
LCD_Fill(30,250,lcddev.width-1,lcddev.height-1,WHITE);//清上一次数据
LCD_ShowString(30,250,lcddev.width-30,lcddev.height-230,16,udp_demo_recvbuf);//显示接收到的数据
udp_demo_flag&=~(1<<6);//标记数据已经被处理了.
}
按键通过udp_demo_senddata函数发送的是咱们程序本身定义好的数据,
调试助手下面的网址应该是通过那个If显示在LCD上,是这么,我没有买LCD的。
原子哥总结下我的理解你给我看看对不对:
1.远端IP是192.168.1.100,开发板IP是静态IP192.168.1.30。但是没PING通,按道理说开发板给电脑端发送数据是不能 成功了。但是成功了,是怎么回事?
因为我没有LCD所以ludp_demo.c下面的设置远端IP我给屏蔽了,这样远端IP只能是192.168.1.100了吧
//设置远端IP地址
void udp_demo_set_remoteip(void)
{
u8 *tbuf;
// u16 xoff;
// u8 key;
// LCD_Clear(WHITE);
// POINT_COLOR=RED;
// LCD_ShowString(30,30,200,16,16,"Explorer STM32F4");
// LCD_ShowString(30,50,200,16,16,"UDP Test");
// LCD_ShowString(30,70,200,16,16,"Remote IP Set");
// LCD_ShowString(30,90,200,16,16,"KEY0:+ KEY2:-");
// LCD_ShowString(30,110,200,16,16,"KEY_UP:OK");
tbuf=mymalloc(SRAMIN,100); //申请内存
if(tbuf==NULL)return;
//前三个IP保持和DHCP得到的IP一致
lwipdev.remoteip[0]=lwipdev.ip[0];
lwipdev.remoteip[1]=lwipdev.ip[1];
lwipdev.remoteip[2]=lwipdev.ip[2];
// sprintf((char*)tbuf,"Remote IP:%d.%d.%d.",lwipdev.remoteip[0],lwipdev.remoteip[1],lwipdev.remoteip[2]);//远端IP
// LCD_ShowString(30,150,210,16,16,tbuf);
// POINT_COLOR=BLUE;
// xoff=strlen((char*)tbuf)*8+30;
// LCD_ShowxNum(xoff,150,lwipdev.remoteip[3],3,16,0);
//// while(1)
// {
// key=KEY_Scan(0);
// if(key==WKUP_PRES)break;
// else if(key)
// {
// if(key==KEY0_PRES)lwipdev.remoteip[3]++;//IP增加
// if(key==KEY2_PRES)lwipdev.remoteip[3]--;//IP减少
// LCD_ShowxNum(xoff,150,lwipdev.remoteip[3],3,16,0X80);//显示新IP
// }
// }
2.我想实现是下面调试助手发送那个网址可以在上面显示,怎么实现啊。
有点长,麻烦原子哥给看下。
加载中...
查看其它10个回答
一周热门
更多
>
相关问题
STM32F4上I2C(在PROTEUS中模拟)调试不通的问题
6 个回答
芯片供应紧张,准备换个MCU,MM32L系列替换STM32L系列的怎么样?
7 个回答
STM32同时使用两个串口进行数据收发时数据丢包的问题
5 个回答
STM32F103串口通信死机问题
4 个回答
STM32WLE5CC连接SX1268在LoRa模式下能与 SX1278互通吗?
2 个回答
相关文章
ST公司第一款无线低功耗单片机模块有效提高物联网设计生产效率
0个评论
如何实现对单片机寄存器的访问
0个评论
通过USB用STM32片内自带Bootloader下载程序及注意事项
0个评论
欲练此功必先自宫之STM32汇编启动,放慢是为了更好的前行
0个评论
×
关闭
采纳回答
向帮助了您的知道网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
STM32
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
×
付费偷看金额在0.1-10元之间
确定
×
关闭
您已邀请
0
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
回复【10楼】 正点原子 :
---------------------------------
因为没有路由所以用的是静态IP,我用的完全是咱们程序里面的两个远端IP,192.168.1.100和静态IP192.168.1.30。开发板也是探索者的,所以开发板的IP应该 是192.168.1.30了,ping 192.168.1.30是ping不通的。
这是电脑设置的
下面是网络调试助手显示的,通过开发板给它发送的数据是成功了。
我之前以为调试助手下面发的网址应该是给开发板,然后开发板网址在回到调试助手上面显示,好像不是这样
while(res==0)
{
key=KEY_Scan(0);
if(key==WKUP_PRES)break;
if(key==KEY0_PRES)//KEY0按下了,发送数据
{
udp_demo_senddata(udppcb);
}
if(udp_demo_flag&1<<6)//是否收到数据?
{
LCD_Fill(30,250,lcddev.width-1,lcddev.height-1,WHITE);//清上一次数据
LCD_ShowString(30,250,lcddev.width-30,lcddev.height-230,16,udp_demo_recvbuf);//显示接收到的数据
udp_demo_flag&=~(1<<6);//标记数据已经被处理了.
}
按键通过udp_demo_senddata函数发送的是咱们程序本身定义好的数据,
调试助手下面的网址应该是通过那个If显示在LCD上,是这么,我没有买LCD的。
原子哥总结下我的理解你给我看看对不对:
1.远端IP是192.168.1.100,开发板IP是静态IP192.168.1.30。但是没PING通,按道理说开发板给电脑端发送数据是不能 成功了。但是成功了,是怎么回事?
因为我没有LCD所以ludp_demo.c下面的设置远端IP我给屏蔽了,这样远端IP只能是192.168.1.100了吧
//设置远端IP地址
void udp_demo_set_remoteip(void)
{
u8 *tbuf;
// u16 xoff;
// u8 key;
// LCD_Clear(WHITE);
// POINT_COLOR=RED;
// LCD_ShowString(30,30,200,16,16,"Explorer STM32F4");
// LCD_ShowString(30,50,200,16,16,"UDP Test");
// LCD_ShowString(30,70,200,16,16,"Remote IP Set");
// LCD_ShowString(30,90,200,16,16,"KEY0:+ KEY2:-");
// LCD_ShowString(30,110,200,16,16,"KEY_UP:OK");
tbuf=mymalloc(SRAMIN,100); //申请内存
if(tbuf==NULL)return;
//前三个IP保持和DHCP得到的IP一致
lwipdev.remoteip[0]=lwipdev.ip[0];
lwipdev.remoteip[1]=lwipdev.ip[1];
lwipdev.remoteip[2]=lwipdev.ip[2];
// sprintf((char*)tbuf,"Remote IP:%d.%d.%d.",lwipdev.remoteip[0],lwipdev.remoteip[1],lwipdev.remoteip[2]);//远端IP
// LCD_ShowString(30,150,210,16,16,tbuf);
// POINT_COLOR=BLUE;
// xoff=strlen((char*)tbuf)*8+30;
// LCD_ShowxNum(xoff,150,lwipdev.remoteip[3],3,16,0);
//// while(1)
// {
// key=KEY_Scan(0);
// if(key==WKUP_PRES)break;
// else if(key)
// {
// if(key==KEY0_PRES)lwipdev.remoteip[3]++;//IP增加
// if(key==KEY2_PRES)lwipdev.remoteip[3]--;//IP减少
// LCD_ShowxNum(xoff,150,lwipdev.remoteip[3],3,16,0X80);//显示新IP
// }
// }
2.我想实现是下面调试助手发送那个网址可以在上面显示,怎么实现啊。
有点长,麻烦原子哥给看下。
一周热门 更多>