인터럽트 모드 트렌스퍼에서 인터럽트의 의미가 “끼여들기”라기 보다는 “가끔”이라는 것은 이미 언급했었다. 인터럽트 엔드포인트 디스크립터를 보면 Polling Time이라는 항목이 있는데 여기에 세팅된 시간 간격으로 호스트가 디바이스에게 전송할 데이터가 있는지 정기적으로 물어 보게 된다. USB의 구조가 호스트-슬레이브의 구조이므로, 디바이스가 호스트에게 전송할 무언가가 있다고 해서 디바이스 맘대로 호스트를 호출 할 수 없다. 노예(Slave)는 항상 주인님(Host)이 물어볼 때만 대답할 수 있다. 따라서 디바이스가 호스트에게 데이터를 보내야 할 필요가 있다면 호스트가 정기적으로 디바이스에게 보낼 데이터가 있는지를 물어보도록 만들어야 한다. 이런 때 쓰이는 Transfer Mode가 Interrupt T..
출처 : http://muosys.egloos.com/96567 먼저 UniHigh Module의 VCC, GND마킹이 반대로 인쇄되었다는 비보를 행자들에게 알려야 하겠다. Array 회로도의 핀 OUT 그림이 옳고, UniHigh PCB 중간부분 양쪽 가장자리에 인쇄된 VCC, GND는 반대로 인쇄되어 있으니, 추후 혼란을 방지하기 위해 행자들은 인쇄된 글자를 칼로 살살 긁어 지워 버리자. (그리고 빨강 메직펜과 까망 메직펜이 있으면 회로도를 보면서 VCC/GND 옆에 각각의 색으로 점을 찍어두면 더 훌륭하리라.) Array LED 가 켜지고 꺼지는 비트 설정이 반대네? 본좌. 의아해 하면서 기냥 넘어 갔드렜는데, 역쉬나. 뭔가 잘못 되어가고 있던 거시어따. 결과적으로 이틀 전에 보여준 LED 회로도도..
지금 우리는 Cypress에서 제공하는 ezusb.sys 드라이버와 EZ-USB Control Panel 어플리케이션을 이용하여 우리가 만든 펌웨어를 테스트 하고 있다. 이후 조금 더 진도가 나간 시점에서는 본좌가 만든 드라이버와 행자들이 만든 어플리케이션으로 강좌를 진행할 것이다. 물론 어플리케이션을 어떻게 코딩 해야 하는지에 대한 설명과 예제가 같이 제공될 것이다. 어플리케이션은 MFC를 이용할 생각이지만, 그냥 콘솔모드 C코딩만 했었던 행자들의 이해를 위해 간단히 설명은 하도록 하겠다. 오늘은 UniHigh v1.0의 펌웨어 소스코드를 분석해 보자. 사실 분석할 것도 없다. 그냥 Bulkloop예제를 쓱쓱 지워버린 거니까 말이다. 우선 desc.a51. HighSpeedConfigDscr와 Full..
출처 : http://muosys.egloos.com/86504 드뎌 보드땜질이 끝나고 보드가 완성되었다. Array Array 납땜 전에 이전 강좌와 이 글을 차근차근 읽어보고 납땜에 들어가자. 납땜전에 PCB의 불량유무를 먼저 검사하자. PCB 제조시 테스트를 거쳤고, 본좌가 몇개 테스트 해본 결과 이상이 없었지만. 안전한게 좋은거다. 테스트는 VCC와 GND핀 사이에 쇼트가 없는지, 각 I/O핀과 VCC, GND 핀사이에 쇼트가 없는지, 인접한 I/O 핀 사이에 쇼트가 없는지를 테스터기로 찍어보자. SMD부품 -> 큰 부품 -> USB Connector -> Pin 헤더 순으로 납땜한다. C14~C17까지의 탄탈 커페시터는 극성이 있으므로 다음과 같이 납땜한다. Array D1의 다이오드도 마찬가지..
- Total
- Today
- Yesterday
- WDB
- cartoon
- Mabinogi
- USB Lecture
- medical
- Network Inspector
- Life News
- Information Processor
- console
- wallpaper
- 나비효과
- Linux
- Assembly
- Reverse Engineering
- 짤방 및 아이콘
- Embedded System
- network
- Battle
- 3D Engine
- Web Programming
- Military
- 프리랜서로 살아남는 법
- win32
- humor
- 막장로그
- Tech News
- diary
- 야마꼬툰
- C#
- BadCode
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |