일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- cloud
- AT+MEVTFORM
- KT
- Cat M1
- Gainspan
- WizFi210
- IoTMakers
- SKT
- 안드로이드
- WiFi
- ThingPlug
- IOT
- C Script
- NB-IoT
- WizFi250
- WizFi310
- MQTT
- SSL Server
- OpenSSL
- 오픈 하우스
- WIZwiki-W7500
- PicoC
- micropython
- SerialPassthrough
- ESP8266
- W7500
- Neul
- LoRa
- script
- AT+FSOCK
- Today
- Total
IoT Wireless
WizFi250 GPIO and ADC with Smartphone 본문
오늘은 스마트폰으로 WizFi250-EVB에 연결된 LED를 제어하고, 가변 저항값을 읽어오는 예제를 설명하겠다. 별도의 MCU나 보드 없이 스마트폰의 앱이 직접 WizFi250-EVB과 연동한다는 것에 의미를 두자.
먼저, WizFi250에 추가된 GPIO와 ADC 명령어에 대해서 알아보자.
추가된 명령어들은 F/W 버전 1.0.3.1에서 사용할 수 있다.
<GPIO>
아래의 명령을 이용하면, WizFi250-EVB에 있는 GPIO 1번을 제어할 수 있다.
AT+FGPIO=1,1,0 [OK] AT+FGPIO=1,1,1 [OK] 첫번째 옵션 : Input/Output을 지정하는 옵션 두번째 옵션 : GPIO 번호 세번째 옵션 : High/Low
<ADC>
아래의 명령을 이용하면, WizFi250에 있는 ADC의 값을 읽을 수 있다.
WizFi250에는 12bit의 ADC를 지원하고 있고, WizFi250-EVB에 있는 GPIO 5번을 사용하고 있다.
가변 저항을 돌리면 ADC 값이 0~4095까지 변경되는 것을 확인할 수 있다.
AT+FGETADC=? 0 AT+FGETADC=? 1344 AT+FGETADC=? 3548 AT+FGETADC=? 4095
테스트에는 WizFi250-EVB, GPIO 제어 테스트를 위한 LED와 저항, ADC 테스트를 위한 가변 저항 등이 사용되었다. 자세한 연결도는 아래를 참조하기 바란다.
이번에는 위의 기능을 구현하는 안드로이드 앱에 대해서 간단히 설명해 보겠다.
WizFi250을 Air Command mode로 변경하기 위해서 아래의 2가지 방법이 모두 가능하다.
두 가지 방법 모두 WizFi250 Air Command 접속을 위하여 TCP 50001 번을 사용하는 예제이다.
AT+WSET=0,wizohp [OK] AT+WSEC=0,,wiznet218 [OK] AT+WNET=1 [OK] AT+WJOIN Joining : wizohp Successfully joined : wizohp [Link-Up Event] IP Addr : 192.168.13.29 Gateway : 192.168.13.1 [OK] AT+MAIRCMD=O,T,50001,1 [OK]B. WizFi250-EVB의 Function 버튼을 이용하여 AP mode & Air Command mode 구동시키기
Set AP Mode & Web Server Launch [OK] [Link-Down Event] WizFi250 Version 1.0.3.1 (WIZnet Co.Ltd) [Link-Up Event] IP Addr : 192.168.12.1 Gateway : 192.168.12.1
자, 이번에는 스마트폰 앱으로 WizFi250 Air Command에 접속해보자.
스마트폰 앱에서 Configuration을 선택한 후에, WizFi250의 IP와 Port 번호를 입력한 후 Connect 한다.
public void onClick(View view) { if (view.getId() == R.id.buttonLed1) { addText("Toggle LED\n", Color.RED, Color.TRANSPARENT); if ( toggle_led1 ) { sendDataToSack("WizFi250AirCmd:AT+FGPIO=1,1,1\r"); toggle_led1=!toggle_led1; } else { sendDataToSack("WizFi250AirCmd:AT+FGPIO=1,1,0\r"); toggle_led1=!toggle_led1; } } else if (view.getId() == R.id.buttonLed2) { addText("Get ADC\n", Color.RED, Color.TRANSPARENT); sendDataToSack("WizFi250AirCmd:AT+FGETADC=?\r"); } else if (view.getId() == R.id.buttonLed3) { addText("WiFi Status\n", Color.RED, Color.TRANSPARENT); sendDataToSack("WizFi250AirCmd:AT+MINFO\rAT+MMAC=?\rAT+WSTAT\rAT+WNET=?\rAT+WSEC=?\r"); } }
'WiFi module' 카테고리의 다른 글
WizFi250 automatic re-association (0) | 2015.04.07 |
---|---|
PubNub with WizFi250 (0) | 2015.02.12 |
WizFi250 OTA F/W Update 후에, CUSTOM Code 입력하기 (0) | 2015.01.13 |
WizFi250 <Air Command mode> 개요 (0) | 2014.11.24 |
WizFi250 UDP Broadcast Test (0) | 2014.11.14 |