출처 : http://muosys.egloos.com/172966 우리가 인터페이스로 USB를 선택한 이유는 다른 여타의 인터페이스들과 마찬가지로 디바이스가 컴퓨터와 통신할 필요가 있기 때문이다. 다만 USB가 넓은 대역폭, Plug&Play등의 장점을 가지기 때문에 다른 인터페이스들에 비해 선호될 뿐이다. Serial(RS232)을 이용하여 우리가 만든 디바이스와 컴퓨터(Win32 Application)간의 통신이 어떻게 이루어 질까? 아마 대부분의 행자들이 알고 있겠지만, 파일 입출력을 할 때와 동일하게 ReadFile(…), WriteFile(…)을 이용하여 디바이스에 데이터를 주거나 받는다. ReadFile이나 WriteFile을 호출하기 위해서는 파일핸들이 필요하므로 CreateFile(.COM..
출처 : http://muosys.egloos.com/145166 gpif waveform을 다 그렸다면, 이제 gpif.c 파일을 생성하여 이를 우리의 프로젝트에 포함시킬 차례이다. 메뉴의 Tools->Export to GPIF.c file을 선택하면 나타나는 대화상자에서 원하는 위치를 지정하고, (프로젝트가 위치한 폴더가 좋으리라.) 파일 이름을 gpif.c로 해서 “저장” 버튼을 누르자. Keil u-Vision을 열고, 왼쪽 창에서 “Source Group 1”을 선택한 후 마우스 오른버튼을 클릭하면, “Add Files to Group ‘Source Group 1’ ”이란 메뉴가 나타나는데, 이를 클릭하여 앞서 저장한 gpif.c파일을 선택하여 “Add” 버튼을 눌러 준다. 그리고나서 (우리의 ..
출처 : http://muosys.egloos.com/142813 Ori님이 지적해 주신대로 본좌가 제공한 UniHigh v1.7소스코드를 컴파일하려고 하면 에러가 발생할 것이다. C:CypressUSBExamplesFX2UniHigh1.7gpif.c와 C:CypressUSBTargetIncfx2regs.h의 autopointer1에 대한 정의가 불일치하는 문제 땜에 발생한 에러이다. gpif.c의 정의를 헤더파일에 맞추어 고쳐주는 것이 정석이겠으나, 우리가 waveform을 손봐서 새로 gpif.c를 생성할 때마다 이를 매번 고쳐주어야 하기 땜에, 본좌처럼 아예 fx2regs.h의 정의를 gpif.c의 정의에 맞추어 고쳐주는 것이 나중에 작업하기가 편할 것이다. fx2regs.h의 AUTOPTR1H/L..
출처 : http://muosys.egloos.com/125743 오늘은 GPIF를 가지고 데이터를 전송하기 위한 준비 학습을 해 보자. 본론에 들어가기 앞서, 어제 강의에서 설명하지 않은 parallel.exe의 소스 코드를 살짜쿵 건드려주고 넘어가자. Parallel.exe의 기본적인 골격은 MFC 위저드로 만든 Dialog base 어플리케이션이다. 거기에 버튼과 에디트박스 몇 개를 리소스에 추가하고 CParallelDlg에 몇 개의 멤버변수와 다음의 멤버함수를 추가한 것이다. VOID SendData(PCHAR pBuffer, DWORD dwBufLen) VOID OnButtonTransfer() VOID OnButtonFile() BOOL GetPreviousFile( CString &FileN..
- Total
- Today
- Yesterday
- Linux
- 프리랜서로 살아남는 법
- 3D Engine
- win32
- Embedded System
- 막장로그
- Information Processor
- medical
- 나비효과
- 짤방 및 아이콘
- BadCode
- Tech News
- WDB
- Web Programming
- Network Inspector
- 야마꼬툰
- Reverse Engineering
- Mabinogi
- Battle
- network
- C#
- humor
- Military
- diary
- cartoon
- Life News
- Assembly
- wallpaper
- USB Lecture
- console
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |