글

웹소켓 프레임 설명 ( frezi )

발췌( http://prezi.com/h3gk0t0bs3sy/websocket/# )

[HTML5] WebSocket 서버의 handshake

이미지
발췌 [HTML5] WebSocket 서버 순서도 blocking socket을 기준으로 함. 발췌 [HTML5] WebSocket 서버의 handshake WebSocket protocol 문서중 서버의 handshake에 필요한 내용을 발로 번역함. 원문:  http://www.whatwg.org/specs/web-socket-protocol/ 아래 내용은 클라이언트에서 최초 접속 후 open status 로 가기 위한 handshake 과정이다. handshake가 완료되고 open된 상태 이후에 나머지 law data 송수신은 IRC 프로토콜을 차용하든 직접 규약을 정하든, 서비스별 WebSocket 서버와 클라이언트가 정의한 subprotocol에 의한 통신을 하면 됨. 6.1 Reading the client's opening handshake 앞으로 문서에서 예제로 사용할 클라이언트 handshake 데이터는 아래 블록에 있는 데이터를 기준으로 한다. GET /echo HTTP/1.1 Upgrade: WebSocket Connection: Upgrade Host: localhost:8888 Origin: http://example.com Sec-WebSocket-Key1: 3e6b263  4 17 80 Sec-WebSocket-Key2: 17  9 G`ZD9   2 2b 7X 3 /r90 WjN}|M(6 Line 1   - 첫번째 라인은 항상 'GET' + 공백문자(U+0020) 로 시작해야 하며 모든 데이터는 UTF-8 인코딩이어야 한다.   - 공백문자(U+0020)를 기준으로 토큰을 나눈다고 가정했을 때,     - 두번째 토큰인 /echo 는 resource이다. 시작은 항상 슬래쉬(/ = U+002F)이며 resource에 포함될 수 있는 문자의 범위는 U+0021 ~ U+007E 이다.   ...

모드버스(Modbus) 슬레이브 제작

이미지
발췌:  http://blog.daum.net/nnjjyy105/456 모드버스(Modbus) 슬레이브 제작 수개월전 제작된 모드버스 마스터에 이어 저자인 오브레이는 사이프레스(Cypress) PSoC 마이크로콘트롤러에서 구현되는 모드버스 슬레이브 제작에 착수하였다. 사용자 설정 변경을 가능케 하거나 CRC 생성 속도를 높이기 위한 슬레이브 제작에 필요한 3개의 방법을 설명할 것이다. 모드버스 마스터 제작(“일반 모드버스 시물레이터,” 서킷 셀라 200/201, 2007)에 대한 글을 2회 연재한 후, 약간 연관이 있는 세 번째 글로 모드버스 슬레이브에 대해 다루어야겠다고 생각했었다. 하지만 그 실행에 시간이 상당히 소요되었고 또 다른 모드버스 프로젝트를 준비하는 단계였으므로 이러한 나의 논리에는 약간 모순이 있었다.  사이프레스 세미콘덕터 CY8C27243 PSoC 마이크로콘트롤러에서 구현되는 모드버스 슬레이브를 제작하였지만, 거의 대부분 C 언어로 개발되었다 (그림 1 참조). 따라서, 다른 마이크로콘트롤러로의 포팅에는 문제가 없다. PSoC는 순환 중복 검사(CRC)를 하드웨어적으로 생성하고, 범용적인 소프트웨어 접근법에 덧붙여, CRC 생성 속도를 현저히 높일 수 있는 독특한 접근법에 대해 설명할 것이다. 세 번째 접근법에서는 설정을 동적으로 바꾸는 PSoC의 유연성을 보여주도록 하겠다. 모드버스 개요  모드버스는 I/O 공간을 단일 비트 디지털(코일) 레지스터 또는 16 비트 레지스터로 분류한다. 홀딩 레지스터와 인풋 레지스터(16비트)의 해석은 슬레이브의 설계자에게 맡겨진다. 이러한 레지스터는 ADC 값 또는 다른 기능에 사용될 수 있으며, 슬레이브의 설계 (16 비트 레지스터 양식에 맞도록 데이터 변형이 필요), 릴레이, 근접 센서에 의해 결정이 된다. 마스터 콘트롤러는 직렬 네트워크에 지정되는 슬레이브에 포함된 레지스터를 통해 읽기와 쓰기를 수행한다.  슬레이브의 레지스터 맵도 슬레이브...

Windows Serial Port Programming

이미지
http://blog.daum.net/pg365/51 Windows Serial Port Programming Windows API 를 사용한 시리얼 포트 통신 프로그래밍은 생각보다 간단하지만 , 처음 시작할 때  접근하기가 어려운 면이 있습니다 . 그래서 여기에서 간단히 소개합니다 .  시리얼 통신 프로그래밍이 어떻게 작성되는지와 이를 사용하기 위한 올바른 접근 법을 제시합니다 . 1.  시리얼 포트 열기 시리얼 포트를 열기위해  Windows 에서 제공하는 파일 입출력 함수를 사용합니다 .  먼저 , windows.h  헤더 파일을 인클루드 한 후 아래와 같이  CreateFile()  함수로 시리얼 포트를 오픈 합니다 . HANDLE   hSerial ; hSerial   =   CreateFile ( "\\\\.\\COM1" ,      GENERIC_READ   |   GENERIC_WRITE ,      0 ,      0 ,      OPEN_EXISTING ,      FILE_ATTRIBUTE_NORMAL ,      0 ) ; if   ( hSerial = = INVALID_HANDLE_VALUE ) {      // 에러 발생 } 이 함수를 잠깐 살펴보면 , HANDLE  타입의 변수를 선언하고  CreateFile()  함수를 불러 초기화 합니다 . CreateFile()  함수의 첫 번째 인자는 열고자 하는 시리얼 포트의 이름을 지정하는데 , "\\\\.\\COM1...

apk 파일 디컴파일하기 ( decompile apk )

http://blog.naver.com/PostView.nhn?blogId=man8408&logNo=110111707630