USB 키보드 컨트롤러 자작중 스캔코드 질문

안녕하세요?

8051을 이용해서 USB 키보드 컨트롤러를 자작중입니다. 물론 일반 키보드가 아닌 모바일용으로
들어가는 커스텀 키보드 입니다. 타겟 윈도우는 일반 윈도우 XP 구요. 한마디로 UMPC 용 키보드죠.

궁금한 점은 키보드 컨트롤러에서 스캔한 키값을 최대 6개 까지 채워서 (동시입력 최대 6개)

Byte7 ~ Byte2 : 스캔한 키값(동시 최대6개)
Byte1 : Reserved
Byte0 : Modifer Byte (동시에 눌려지는 Shift, Alt, Ctrl 등이 눌려졌는지 여부)

의 총 8 바이트를 보내는 것으로 알고 있습니다. 제가 공부하기론 PS/2 에선 Break 값이라고
해서 특정키를 때면 E0 를 붙여 스캔코드를 보내는 걸로 아는데요... USB 에선 특별히 Break
값을 보낼 필요가 없습니까?

그냥 특정키가 때지면 6개의 스캔 키값 에서 해당 키값만 삭제해서 보내면 그만인 것입니까?

두번째 질문은 마이크로 소프트의 키보드 스캔값에 대한 엑셀 파일을 받았는데...

HID Usage Page
HID Usage ID
PS/2 Set 1 Make
PS/2 Set 1 Break
PS/2 Set 2 Make
PS/2 Set 2 Break

의 항목들이 있습니다. 이중에서 제가 실제 USB 키보드에 써먹어야 할 보낼 스캔코드 값이 무엇
입니까? 제 예상은 HID Usage ID 같은데 맞습니까?

초보라서 잘 몰라서 그러니 이해해 주시고 답변 주시면 감사하겠습니다.
이전 댓글 5
악바리 2007-11-21 21:10
와우~ 컨트롤러까지 만드시는 겁니까? 제가 도움될 것이 전혀 없습니다. -_-
힝... 2007-11-21 21:15
전 8051책은 봤지만(표지만) 잠만 자서 (__) 너무먼~~~ 분야 애기가 되어 버린~~~~~~ -0-;;;;
Blank 2007-11-21 23:03
예전 기억을 떠올려서.. ^^; 제일 좋은것은 현재 돌아가고 있는 장치에 오실로스코프를 꽂아서 파형을 전부 기록하는 것입니다. 어짜피 usb라 할지라도 2가지 선(이름 기억이;;)의 diff를 이용하여 데이타 전송을 하는 것이기 때문에 파형을 찍어서 그대로 시뮬레이션 해보시고 컴퓨터단에 usb driver를 간단하게 작성하셔서 들어오는 입력을 보는것도 한가지 도움이 되겠네요.. 그럼 수고하세요~
ам-Зр 2007-11-22 10:59
도움이 될지는 모르겠지만. 하제소프트의 usb머하니 라는 프로그램을 이용하면 usb장치를 모니터링 할수 있습니다. ^^;; 물론 프리웨어 입니다.
노딜 2007-11-22 17:12
일단 USB 를 공부하셔야 하겠네요. 그리고 HID class 에 대해서도 완전히 이해하고 계셔야 합니다. USB라는게 복잡하기도 하지만,, 프로토콜에 대한 이해 없이는 한걸음도 나아가지 못하실것이라.. 단순히 키코드를 보내는 것으로 끝나는 단순한 프로토콜은 아닙니다.
← 질문답변 목록으로