周六要交作品,恳请大神指点有关Ethernet W5100与mega2560的连接-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 11457|回复: 15

[已解决] 周六要交作品,恳请大神指点有关Ethernet W5100与mega2560的连接

[复制链接]
发表于 2014-5-14 17:02 | 显示全部楼层 |阅读模式
10金币
本帖最后由 渣渣来学习 于 2014-5-14 17:02 编辑

我们使用的Ethernet W5100网络扩展板是旧版的,无法与mega2560直接堆叠,所以我们将两者的SCK,MISO,MOSI,SS引脚用杜邦线相连,下载好程序后,串口始终没有反应。这是我们的测试程序,就是奈何大神书上的程序,MAC我们也已经改过了,可是串口还是没有信息。这是代码,跪求好人给个指点,不胜感激!
/*
OpenJumper DHCP Example
http://www.openjumper.com/
http://x.openjumper.com/ethernet/

*/

#include <SPI.h>
#include <Ethernet.h>

// 设置MAC地址
byte mac[] = { 0x00, 0xAA, 0xBB, 0xCC, 0xDE, 0x02 };

void setup() {
// 初始化串口通信
  Serial.begin(9600);
  // 开启Ethernet连接:
  if (Ethernet.begin(mac) == 0) {
    Serial.println("Failed to configure Ethernet using DHCP");
    // 连接失败,便进入一个死循环(相当于结束程序运行)
for(;;);
  }
  // 输出你的本地IP地址
  Serial.print("My IP address: ");
  for (byte thisByte = 0; thisByte < 4; thisByte++) {
    // 将四个字节的IP地址逐字节输出
    Serial.print(Ethernet.localIP()[thisByte], DEC);
Serial.print(".");
  }
  Serial.println();
}

void loop() {
}

发表于 2014-5-15 16:02 | 显示全部楼层
你还是用例程里面的代码吧。这个ip设置也没有,初始化也没有。奇怪的代码。。。
 楼主| 发表于 2014-5-15 16:24 来自手机 | 显示全部楼层
首先谢谢您的关注!我用的是奈何大神书中的范例,获取ip地址并串口输出的。我们把这个板子和可以兼容堆叠的uno连一起,确实可以实现这个功能。。。
 楼主| 发表于 2014-5-15 16:27 来自手机 | 显示全部楼层
.oο麽麽茶㊣ 发表于 2014-5-15 16:02
你还是用例程里面的代码吧。这个ip设置也没有,初始化也没有。奇怪的代码。。。 ...

首先谢谢您的关注!我用的是奈何大神书中的范例,获取ip地址并串口输出的,代码是没有问题的吧,而且我们把这个板子和可以兼容堆叠的uno连一起,确实可以实现这个功能。。。
发表于 2014-5-16 09:46 | 显示全部楼层
渣渣来学习 发表于 2014-5-15 16:27
首先谢谢您的关注!我用的是奈何大神书中的范例,获取ip地址并串口输出的,代码是没有问题的吧,而且我们 ...

我的W5100和UNO、2560都试过。用的是例程里的UDP和TCP两个,都没什么问题啊。。就换了个IP。什么都没改。。然后上位机用的是SocketTool工具。
 楼主| 发表于 2014-5-16 11:17 | 显示全部楼层
.oο麽麽茶㊣ 发表于 2014-5-16 09:46
我的W5100和UNO、2560都试过。用的是例程里的UDP和TCP两个,都没什么问题啊。。就换了个IP。什么都没改。 ...

唉,我们又买了一个w5100,借助路由器,连上了2560之后,串口老是输出Failed to configure Ethernet using DHCP,请问大神这是什么问题啊?
发表于 2014-5-16 11:34 | 显示全部楼层
渣渣来学习 发表于 2014-5-16 11:17
唉,我们又买了一个w5100,借助路由器,连上了2560之后,串口老是输出Failed to configure Ethernet usin ...

把初始化mac的地方修改一下。不要判断,直接初始化后打印获取到的IP。如果没有,修改一下mac地址试试。
0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED 用这个看一下。
发表于 2014-5-16 11:34 | 显示全部楼层
看spi章节,把扩展板的引脚弄到2560对应的spi引脚即可
发表于 2014-5-16 11:42 | 显示全部楼层
网络通信分为UDP  TCP。  UDP需要端口,有IP可以指定发送,没有可以广播。 TCP需要指定IP和端口,利用connect1对1的通信。奈何给的的这个代码又不能UDP,也不能TCP。。看不懂。。
 楼主| 发表于 2014-5-16 15:00 | 显示全部楼层
coloz 发表于 2014-5-16 11:34
看spi章节,把扩展板的引脚弄到2560对应的spi引脚即可

奈何大神能来指导,真的太开心了!!!!!我们几个渣渣调这个板子从早上一直到现在,可还是没有进展,。。。。我们试过把MOSI MISO SCK SS连接好,可是还是不能出现应有的信息。于是于是,我们又买了一个可以直接和2560堆叠的新版ethernet,可是运行以上程序后,一直是反馈Failed to configure Ethernet using DHCP。我们借来一个Uno,程序一样,但是串口就是直接反馈的ip地址。。。我们找不到原因,恳请大神指点一二。。。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-12-5 03:52 , Processed in 0.072383 second(s), 13 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表