?>

Hard Copy World

HCW

Q&A

Home > Forum >

Q&A

아두이노 우노 이더넷 통신문제?

페이지 정보

작성자 속도감 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 작성일16-05-30 11:32 조회905회 댓글2건

본문

// Demo using DHCP and DNS to perform a web client request.
// 2011-06-08 <jc@wippler.nl> http://opensource.org/licenses/mit-license.php

#include <EtherCard.h>

// ethernet interface mac address, must be unique on the LAN
static byte mymac[] = { 0xE8,0x9A,0x8F,0xCD,0xFA,0xCC };

byte Ethernet::buffer[700];
static uint32_t timer;

const char website[] PROGMEM = "site.com";

// called when the client request is complete
static void my_callback (byte status, word off, word len) {
  Serial.println(">>>");
  Ethernet::buffer[off+300] = 0;
  Serial.print((const char*) Ethernet::buffer + off);
  Serial.println("...");
}

void setup () {
  Serial.begin(57600);
  Serial.println(F("\n[webClient]"));

  if (ether.begin(sizeof Ethernet::buffer, mymac) == 0)
    Serial.println(F("Failed to access Ethernet controller"));
  if (!ether.dhcpSetup())
    Serial.println(F("DHCP failed"));

  ether.printIp("IP:  ", ether.myip);
  ether.printIp("GW:  ", ether.gwip); 
  ether.printIp("DNS: ", ether.dnsip);

  if (!ether.dnsLookup(website))
    Serial.println("DNS failed");
   
  ether.printIp("SRV: ", ether.hisip);
}

void loop () {
  ether.packetLoop(ether.packetReceive());
 
  if (millis() > timer) {
    timer = millis() + 5000;
    Serial.println();
    Serial.print("<<< REQ ");
    ether.browseUrl(PSTR("/musa/"), "musa_insert.php?tag=12345&name=Han&date=20160530&time=2110&pos=In", "site.com", my_callback);
  }
}

 

다음과 같이 코딩했을 때 시리얼통신은 하는데 이더넷 관련한 것은 모니터에서 나오지를 않네요..

네트워크 설정은 아닌것 같고 ethercard 라이브러리 말고 ethernet 라이브러리로 해도 같은 증상입니다 ㅠ

며칠 전에는 웹서버 구동도하고 이더넷 관련 통신이 가능했었는데 며칠 후 문제가 발생하여 이렇게 글을

남깁니다 ..

 

댓글목록

최고관리자님의 댓글

최고관리자 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 작성일

setup() 함수 안에서 이더넷 초기화 할 때 문제가 발생했나보네요. 아래 코드가 문제인데
  if (ether.begin(sizeof Ethernet::buffer, mymac) == 0)
    Serial.println(F("Failed to access Ethernet controller"));
  if (!ether.dhcpSetup())
    Serial.println(F("DHCP failed"));

이더넷 연결과 공유기와의 연결, 공유기 동작 등이 이상없는지 이리저리 테스트 해봐야 할 것 같습니다. 정확한 원인은 잘 모르겠어요