[Arduino]WIZ550 ioShield-A 기반의 FTP Server 구현(SD Card 사용)

Posted by 카이젠8501 카이젠8501
2014.08.27 08:42 IT 개발/DIY 프로젝트

[Arduino]WIZ550 ioShield-A 기반의 FTP Server 구현(SD Card 사용)


Hardware

  • Arduino Due, WIZ550 ioShield-A, Sd card, LAN Cable

Canon | Canon EOS 600D | Normal program | Pattern | 1/60sec | F/2.8 | 0.00 EV | 40.0mm | ISO-320 | Off Compulsory | 2014:08:27 08:43:50


Canon | Canon EOS 600D | Normal program | Pattern | 1/60sec | F/2.8 | 0.00 EV | 40.0mm | ISO-400 | Off Compulsory | 2014:08:27 08:40:36


Software

1. Download Arduino Sketch V.1.5.7

  1. Arduino Due를 사용하기 위해서는 1.5.x 이상의 Arduino IDE를 사용해야 한다.


2. Download Arduino Ethernet Driver for using WIZ550io

  1. Download Arduino Ethernet Driver
  2. Copy the ethernet driver to Arduino Directory ( arduino-1.5.7/libraries/ )

    • 기존에 설치되어 있는 Ethernet 폴더를 Ethernet_old로 변경
    • 다운 받은 Ethernet library를 arduino-1.5.7/liibraries/ 경로에 복사


  3. 주의 : 다운받은 Ethernet Library에서 WIZ550io를 사용하기 위해서는 arduino-1.5.7/libraries/utility/w5100.h을 아래와 같이 수정해야 한다.


3. Download Arduino FTP Server for using WIZ550io

  1. Download FTP Server Library (It is written by me)
  2. SD library 수정

    1. arduino-1.5.7/libraries/SD/src/SD/SD.h의 SDClass 멤버 변수를 public으로 수정


  3. WIZ550io_FTPServer_UsingSDCard.ino을 열고 Arduino Due Board에 Upload 한다.


  4. Upload 한 application을 실행하고 Serial Monitor로 Log message를 확인 한다.

4. Run FTP Client using app of smart phone



5. Log Message on Serial Monitor



저작자 표시
신고
이 댓글을 비밀 댓글로

[FRDM-KL25Z]WIZ550 ioShield-A Porting Guide

Posted by 카이젠8501 카이젠8501
2014.08.20 20:25 IT 개발/mbed


1. Hardware
WIZ550 ioShield-A는 Arduino Board에 호환되도록 설계되어 있는 Shield 형태의 WIZ550io Interface Board이다.
FRDM-KL25Z Board 역시, 기존의 Arduino Shield 들을 FRDM-KL25Z Board에서 그대로 사용할 수 있도록 Arduino Board의 Pin Map과 유사하게 설계되어 있으며, WIZ550 ioShield-A 역시 FRDM-KL25Z에 Shield 형태로 장착 하면 된다.

여기서 약간의 문제가 있는데..
Arduino Board의 경우 Board 하단에 6개의 핀(N_RESET, SCK, MISO, GND, MOSI, +5V)이 존재한다. WIZ550 ioShield-A의 SPI Pin들(MOSI,MISO,SCK 등)은 Board 하단에만 패턴이 연결되어 있다. 
이런 문제로 FRDM-KL25Z에 장착하기 위해서는 아래 그림과 같은 작업을 해야 한다. ( 곧, WIZ550 ioShield-A는 Revision 될 예정 임 )



위 작업을 마친 후, 아래 그림과 같이 FRDM-KL25Z 와 WIZ550 ioShield-A를 연결하면, FRDM-KL25Z Board에서 Ethernet을 사용 할 수 있다.


LG Electronics | LG-F320S | Center-weighted average | 1/30sec | F/2.4 | 0.00 EV | 4.0mm | ISO-50 | Flash did not fire | 2014:08:20 20:43:33



2. Software
이미 WIZ550io의 Library가 준비되어 있기 때문에, mbed Board에서 쉽게 사용 할 수 있다.

첫번째 단계로 mbed web Compiler에서 새로운 프로젝트를 생성한다.




다음 단계로, 생성된 프로젝트에 mbed Library를 추가 한다. ( mbed library는 FRDM-KL25Z를 구동하기 위한 Driver들이 구현되어 있다.)






다음 단계로, WIZ550 ioShield-A를 위한 W5500 Library를 내 프로젝트에 Import 한다.
Import를 위한 방법은 아래와 같다.

▼ mbed 홈페에지의 검색창에 W5500을 검색한다.



▼ 검색된 내용 중, W5500-Ethernet-Interface Makers 팀의 W5500Interface를 클릭한다.



▼ W5500Interface 페지이에서, Import this library를 클릭하면, Library를 추가할 프로젝트 리스트를 볼 수 있다.



▼ 출력된 리스트 중, 조금 전 생성한 프로젝트를 Target Path로 설정한 후 확인 버튼을 클릭 한다.







WIZ550 ioShield-A로 간단한 예제를 구동하기 위해 WebSocketClient library를 Import 하였다. import 방법은 W5500 Library와 동일 하다.







아래와 같이, 프로젝트에 main.cpp 파일을 생성하고 코드를 구현하면 끝.





아래는 main.cpp 파일의 내용이다. 



mbed Web Compiler에서 컴파일 후, 생성된 바이너리를 Board에 다운로드 하면 아래와 같이 mbed에서 제공하는 websocket 데모용 페이지에 데이터를 송/수신 하는 것을 확인 할 수 있다.




저작자 표시
신고
이 댓글을 비밀 댓글로