?>

Hard Copy World

HCW

Q&A

Home > Forum >

Q&A

아두이노 cc3000와이파이쉴드 연결관련 질문좀드려요 ㅠㅠㅠ

페이지 정보

작성자 요타 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 작성일15-09-01 20:12 조회4,626회 댓글6건

본문

ip=0;

Serial.print(WEBSITE); Serial.print(F("->"));

whlie (ip == 0) {

if (! cc3000.getHostByName(WEBSITE,&ip)) {

Serial.println(F("Couldn't resolve!"));

}

delay(500);

이부분이 문제여서요 ㅠㅠ 시리얼 모니터를 확인해보면 네이버나 기타 일반 사이트들은 도메인네임을 받아와서 아이피정보를 알아서 잘 뺴와서 잘 진행이 되는데요 제가 직접만든 localhost:8080은 접속을 하지 못합니다... localhost를 아이피주소로 바꿔서도 다 입력해봐도 그냥  wesite -> 이부분에서 더이상 진행이 안되는데요 아무래도 도메인네임이 존재하지않아서 인식을 제대로 못하는 것 같은데 이런 경우는 어떻게 해결해야하나요?ㅠㅠ 1주일쨰 너무 답답하네요

댓글목록

최고관리자님의 댓글

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

같은 공유기에 물려있는 서버로 내부 IP 이용해서 접속도 안되나요? 다른 PC등에서 브라우저로 접속은 가능하구요?
그럼.. 가능하면 80번 포트로 변경해서 ip 로만 접속이 가능한지 테스트 해보세요.

요타꾸님의 댓글

요타꾸 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 댓글의 댓글 작성일

외부에서 사이트 접속은 가능합니다 핸드폰이나 컴퓨터 브라우져상에서는 그냥 접속이 되는데요 저 코드부분 website 여기가 도메인이 있는 페이지만 인식을 할 수 있는건가요?? 192.168.0.23:8080 이런식으로 웹사이트 부분에 쓰면 아두이노가 접속을 못합니다 ㅠㅠ 코드를 어뜨케 작성해야하나요 외부 컴터나 폰으로 접속되는걸보면 포트는 열린것같은데요  ㅠ

요타꾸님의 댓글

요타꾸 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 댓글의 댓글 작성일

임시로 무료도메인네임 지정해주는 사이트에서 페이지를 하나만들고 그 도메인네임을 웹사이트부분에 작성하면 접속을 성공합니다. 로컬호스트:8080 이런식의 주소가 gethostbyname (website,&ip) 여기서 제대로된 도멘형식 아니라 인식을 못해서 그런것인지 도통 모르겟네요..cc3000 예제파일들은 다 웹사이트 주소를 가지고 걍 gethostbyname함수로 아이피를 읽어오는 방법만되있어서 ..직접 아이피로 접속하는 스케치는 어떤형식으로 써야하는건가요?? ㅠ

최고관리자님의 댓글

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

그럼 POST 방식으로 request를 날려보세요. 아래 예제를 참고하시면 됩니다. 특히 updateTwitterStatus() 함수부분 자세히 보세요.

https://github.com/godstale/How-to-make-talking-things/blob/master/chap11/Arduino/secure_tweet/secure_tweet.ino

요타꾸님의 댓글

요타꾸 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 댓글의 댓글 작성일

void updateTwitterStatus(String tsData) {
  /* Try connecting to the website.
    Note: HTTP/1.1 protocol is used to keep the server from closing the connection before all data is read.
  */
  Adafruit_CC3000_Client www = cc3000.connectTCP(ip, 80);
  if (www.connected()) {
    여기서 저 cc3000.cnnecttcp 부분도 결국 위에
ip=0;

Serial.print(WEBSITE); Serial.print(F("->"));

whlie (ip == 0) {

if (! cc3000.getHostByName(WEBSITE,&ip)) {

Serial.println(F("Couldn't resolve!"));

}

delay(500);

이부분에서 웹사이트 주소를 통해 얻은 ip값으로 접속하는거아닌가요? 저는 아예 저 부분에서 더이상 시리얼모니터가 진행을 안합니다... 아무래도 웹사이트 주소가 없이 그냥 192.168.0.1:8080 이런식의 주소여서 ip롤 못가져오는것 같은데.. 어찌 접속을 해야 하는거죠? ㅠㅠ

하드카피님의 댓글

하드카피 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 댓글의 댓글 작성일

Adafruit_CC3000_Client www = cc3000.connectTCP(ip, 80);
위 라인에서 80을 8080으로 바꿔서 함 해보세요. 그래도 안되면... 인터넷 뒤지거나 이리저리 테스트 해보거나 해야겠네요. 당장은 잘 모르겠어요.