KR101435982B1 - Keyboard apparatus with hardware macro features using attachable macro storing cartridge - Google Patents

Keyboard apparatus with hardware macro features using attachable macro storing cartridge Download PDF

Info

Publication number
KR101435982B1
KR101435982B1 KR1020130099539A KR20130099539A KR101435982B1 KR 101435982 B1 KR101435982 B1 KR 101435982B1 KR 1020130099539 A KR1020130099539 A KR 1020130099539A KR 20130099539 A KR20130099539 A KR 20130099539A KR 101435982 B1 KR101435982 B1 KR 101435982B1
Authority
KR
South Korea
Prior art keywords
macro
key
removable
storage cartridge
sequence
Prior art date
Application number
KR1020130099539A
Other languages
Korean (ko)
Inventor
배정식
조상래
Original Assignee
주식회사 스카이디지탈
배정식
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 스카이디지탈, 배정식 filed Critical 주식회사 스카이디지탈
Priority to KR1020130099539A priority Critical patent/KR101435982B1/en
Application granted granted Critical
Publication of KR101435982B1 publication Critical patent/KR101435982B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/08Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers from or to individual record carriers, e.g. punched card, memory card, integrated circuit [IC] card or smart card

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

A keyboard device supporting a hardware macro feature and having an attachable macro storing cartridge interface according to the present invention may include a keyboard scan part generating a key scan code according to a key event; a macro controller; an attachable macro storing cartridge interface; and a keyboard interface. The macro controller generates a time stamp based on relative time of key events whenever the key events are sensed when capturing the macro; stores a macro sequence composed of key event-time stamp pairs at a macro register; reads the macro sequence stored at the macro register when executing the macro; generates the macro key scan code, corresponding to each of the key events constituting the macro sequence, at time corresponding to the time stamp forming a pair with each of the key events or at preset intervals; and outputs the macro key scan code combined with a key scan code inputted from the key scan part or as it is. Also, the macro controller can bypass and output the key scan code according to the key event when not executing the macro. The attachable macro storing cartridge interface performs interfacing between the macro controller and the attachable macro storing cartridge to recognize and access the attachable macro storing cartridge including a non-volatile memory.

Description

착탈식 매크로 저장 카트리지를 가지는 하드웨어 매크로 키보드 장치{KEYBOARD APPARATUS WITH HARDWARE MACRO FEATURES USING ATTACHABLE MACRO STORING CARTRIDGE}TECHNICAL FIELD [0001] The present invention relates to a hardware macro keyboard device having a removable macro storage cartridge,

본 발명은 컴퓨터 키보드 장치에 관한 것으로, 더욱 상세하게는, 매크로 기능을 가진 컴퓨터 키보드 장치에 관한 것이다.The present invention relates to a computer keyboard apparatus, and more particularly, to a computer keyboard apparatus having a macro function.

매크로(macro)는 여러 명령문을 묶어서 순차적으로 처리되도록 미리 정의하여 두는 기능 또는 키보드에서 하나의 키로 미리 정의된 일련의 명령을 실행시키는 기능을 가리킨다.A macro refers to the ability to predefine multiple statements to be processed sequentially, or to execute a series of predefined commands with a single key on the keyboard.

만약 키보드 장치를 통해 동일한 텍스트를 반복적으로 입력하는 작업을 해야 하거나, 복잡한 조합의 키들을 눌러야 할 경우에, 매크로 기능을 통해 간단히 하나 의 키로 순차적인 복수의 키 입력 또는 복잡한 키 입력 조합을 입력한 것과 같은 효과를 얻을 수 있다.If you need to repeat typing the same text through a keyboard device, or if you need to press a complex combination of keys, you can use the macro function to simply input multiple sequential keystrokes or complex keystroke combinations with a single key The same effect can be obtained.

좁은 의미의 매크로 기능은 예를 들어 워드프로세서와 같은 어플리케이션 내에서 자체적으로 제공되는 매크로 기능이다. 이 경우 매크로 기능이 어플리케이션 외부에는 영향을 미치지 못한다.The macro function in the narrow sense is a macro function that is provided by itself in an application such as a word processor, for example. In this case, the macro function does not affect the outside of the application.

이와 달리, 좀더 범용적으로 매크로 기능을 제공하기 위해서, 예를 들어 실제 키보드 장치의 특정한 키 입력이 있을 때에 키보드 디바이스의 개조된 드라이버나 제3자(third-party) 어플리케이션에서 매크로 기능을 실행하면, 어플리케이션의 종류나 지원 여부에 구애받지 않고 어플리케이션 외적으로 매크로 기능을 이용할 수 있다.Alternatively, in order to provide a more general macro function, for example, when a macro function is executed in a modified driver of a keyboard device or a third-party application when there is a specific key input of the actual keyboard device, Macro functions can be used outside the application regardless of the type of application or support.

이러한 범용적인 매크로 기능은, 키보드 장치나 마우스 등을 통해 컴퓨터에 입력되는 키 정보들이 운영체제에서 인터럽트나 메시지라는 형태로 취급되고 처리되는 점을 이용한다. 키보드 장치에서 실제로 특정한 단축 키가 눌려지면, 개조된 키보드 디바이스 드라이버나 제3자 어플리케이션이 키보드 인터럽트나 메시지를 생성함으로써 운영체제나 일반 어플리케이션으로 하여금 마치 실제로 키보드 장치를 통해 키 코드들이 입력된 것처럼 인식시킬 수 있다.This general macro function utilizes the point that key information inputted to a computer through a keyboard device or a mouse is handled and processed in the form of an interrupt or a message in the operating system. When a particular hotkey is actually pressed on the keyboard device, the modified keyboard device driver or third-party application generates a keyboard interrupt or message to allow the operating system or general application to recognize the keycode as if it had actually been input through the keyboard device have.

한편, 매크로 기능을 온전히 사용하기 위해서는 먼저 유용한 매크로 시퀀스가 만들어져야 하는데, 통상적으로 매크로 시퀀스는 다소 사용자 특화적이어서 사용자가 직접 키들을 눌러 매크로 시퀀스를 기록하여야 한다.In order to fully utilize the macro function, a useful macro sequence must first be created. Normally, the macro sequence is somewhat user-specific, and the user must manually write the macro sequence by pressing the keys.

그런데, 예를 들어 프로리그가 개최될 정도로 인기 컴퓨터 게임들에서는, 게임 실력자가 사용하는 일련의 키 입력을 보고 따라 연습하려는 초보자들이 흔히 존재한다. 어떤 컴퓨터 게임에서는 캐릭터가 특수한 동작을 하게 하려면 일정한 시퀀스의 키들을 정확하게 입력하여야 하지만, 난이도가 높아 실패하기 쉽다.However, for example, in popular computer games where professional leagues are held, there are often beginners who want to see and practice a series of keystrokes used by game players. In a computer game, a character must correctly input a certain sequence of keys in order to perform a specific operation, but it is likely to fail due to its high degree of difficulty.

그러한 경우에, 난이도가 높은 매크로 시퀀스를 사용자가 직접 작성하는 것은 사실상 불가능하기 때문에 매크로 기능 자체에 대한 흥미가 떨어져, 잠재성이 큰 매크로 기능의 활용도를 떨어뜨리는 요인이 된다.In such a case, since it is virtually impossible for the user to directly write a macro sequence having a high degree of difficulty, the macro function itself is not interested in the macro function, which is a factor that lowers the utilization of the macro function having a high potential.

본 발명이 해결하고자 하는 과제는 하드웨어 매크로 기능을 가지는 키보드 장치에 착탈식 매크로 저장 카트리지를 장착함으로써, 매크로를 쉽게 배포하고 획득하는 수단을 제공하는 데에 있다.A problem to be solved by the present invention is to provide a means for easily distributing and acquiring a macro by mounting a removable macro storage cartridge in a keyboard device having a hardware macro function.

본 발명의 일 측면에 따른 착탈식 매크로 저장 카트리지 인터페이스를 가지는 하드웨어 매크로 지원 키보드 장치는,A hardware macro-enabled keyboard device having a detachable macro storage cartridge interface according to an aspect of the present invention includes:

키 이벤트에 따른 키 스캔 코드를 생성하는 키보드 스캔부;A keyboard scan unit for generating a key scan code according to a key event;

매크로 캡처 시에, 상기 키보드 스캔부로부터 키 이벤트가 감지될 때마다 상기 키 이벤트의 상대적 시각을 기초로 타임 스탬프를 생성하고, 상기 키 이벤트-타임 스탬프 쌍들로 구성된 매크로 시퀀스를 매크로 레지스터에 저장하며, 매크로 실행 시에, 상기 매크로 레지스터에 저장된 매크로 시퀀스를 읽어들이고 상기 매크로 시퀀스를 구성하는 각각의 키 이벤트들에 상응하는 매크로 키 스캔 코드를 각각의 키 이벤트가 짝을 이룬 타임 스탬프에 상응하는 시점에 또는 미리 지정된 간격으로 생성하여, 그대로 또는 상기 키보드 스캔부로부터 입력된 키 스캔 코드를 조합하여 출력하고, 매크로 실행 시가 아닌 때에는 상기 키 이벤트에 따른 키 스캔 코드를 바이패스하여 출력하는 매크로 제어부;Generating a time stamp based on the relative time of the key event each time a key event is detected from the keyboard scan unit at the time of macro capture, storing a macro sequence composed of the key event-time stamp pairs in a macro register, The macro sequence stored in the macro register is read and a macro key scan code corresponding to each key event constituting the macro sequence is read out at a time corresponding to a time stamp corresponding to each key event, A macro control unit for generating a key scan code at a predetermined interval and outputting a key scan code input from the keyboard scan unit as a combination and outputting a key scan code according to the key event when the macro is not being executed;

상기 매크로 제어부가 비휘발성 메모리를 포함하는 착탈식 매크로 저장 카트리지를 인식하고 액세스할 수 있도록 상기 매크로 제어부와 상기 착탈식 매크로 저장 카트리지 사이를 인터페이스하는 착탈식 매크로 저장 카트리지 인터페이스; 및A removable macro storage cartridge interface for interfacing between the macro control unit and the removable macro storage cartridge so that the macro control unit can recognize and access a removable macro storage cartridge including a nonvolatile memory; And

상기 출력된 매크로 키 스캔 코드 또는 바이패스된 키 스캔 코드를 기초로 생성된 키 코드를 호스트 장치로 전송하는 키보드 인터페이스를 포함할 수 있다.And a keyboard interface for transmitting the generated key code to the host device based on the output macro key scan code or the bypassed key scan code.

일 실시예에 따라, 상기 착탈식 매크로 저장 카트리지 인터페이스를 통해 상기 착탈식 매크로 저장 카트리지가 인식된 후에, 상기 착탈식 매크로 저장 카트리지 내의 비휘발성 메모리에 저장된 매크로 시퀀스가 상기 매크로 레지스터에 복사될 수 있다.According to one embodiment, after the removable macro storage cartridge is recognized through the removable macro storage cartridge interface, the macro sequence stored in the non-volatile memory in the removable macro storage cartridge may be copied to the macro register.

일 실시예에 따라, 매크로 캡처 시에 상기 매크로 레지스터에 저장된 매크로 시퀀스는, 상기 착탈식 매크로 저장 카트리지 인터페이스를 통해 상기 착탈식 매크로 저장 카트리지가 인식된 후에, 상기 착탈식 매크로 저장 카트리지 내의 비휘발성 메모리에 복사될 수 있다.According to one embodiment, the macro sequence stored in the macro register at the time of macro capture may be copied to non-volatile memory in the removable macro storage cartridge after the removable macro storage cartridge is recognized via the removable macro storage cartridge interface have.

일 실시예에 따라, 상기 매크로 제어부는, According to one embodiment, the macro control unit includes:

사용자가 매크로 시퀀스의 캡처를 지시하기 위한 매크로 활성화 키, 캡처된 매크로 시퀀스의 저장을 지시하기 위한 매크로 저장 키, 저장된 매크로 시퀀스의 실행을 지시하기 위한 매크로 실행 키, 저장된 매크로 시퀀스의 소거를 지시하기 위한 매크로 소거 키 중 적어도 하나를 포함하는 매크로 제어 키 어레이를 더 포함할 수 있다.A macro activation key for instructing the capture of the macro sequence, a macro storing key for instructing storage of the captured macro sequence, a macro execution key for instructing execution of the stored macro sequence, And a macro erase key.

본 발명의 다른 측면에 따른 착탈식 매크로 저장 카트리지 인터페이스를 가지는 하드웨어 매크로 지원 키보드 장치를 이용한 하드웨어 매크로 제공 방법은According to another aspect of the present invention, there is provided a hardware macro providing method using a hardware macro supporting keyboard device having a detachable macro storage cartridge interface

매크로 캡처를 위해, 키 이벤트가 감지될 때마다 상기 키 이벤트에 상응하는 키 스캔 코드가 입력되는 상대적 시각을 기초로 타임 스탬프를 생성하는 단계;Generating a time stamp based on a relative time at which a key scan code corresponding to the key event is input every time a key event is detected for macro capture;

상기 키 이벤트-타임 스탬프 쌍들로 구성된 매크로 시퀀스를 상기 하드웨어 매크로 지원 키보드 장치 내부에 제공되는 매크로 레지스터에 저장하는 단계;Storing a macro sequence composed of the key event-time stamp pairs in a macro register provided in the hardware macro support keyboard device;

상기 매크로 레지스터에 저장된 매크로 시퀀스를 상기 착탈식 매크로 저장 카트리지 인터페이스를 통해 액세스되는 착탈식 매크로 저장 카트리지에 저장하는 단계;Storing a macro sequence stored in the macro register in a removable macro storage cartridge accessed via the removable macro storage cartridge interface;

매크로 실행을 위해, 상기 착탈식 매크로 저장 카트리지 인터페이스를 통해 액세스되는 상기 착탈식 매크로 저장 카트리지로부터 매크로 시퀀스를 상기 매크로 레지스터에 복사하는 단계;Copying a macro sequence from the removable macro storage cartridge accessed via the removable macro storage cartridge interface to the macro register for macro execution;

상기 매크로 레지스터에 유지되는 매크로 시퀀스들 중에서 사용자에 의해 선택된 매크로 시퀀스를 구성하는 각각의 키 이벤트들에 상응하는 매크로 키 스캔 코드를 각각의 키 이벤트가 짝을 이룬 타임 스탬프에 상응하는 시점에, 또는 미리 지정된 시간 간격으로 생성하여 출력하는 단계; 및A macro key scan code corresponding to each of the key events constituting the macro sequence selected by the user among the macro sequences held in the macro register is stored at a time point corresponding to a time stamp paired with each key event, Generating and outputting at a specified time interval; And

출력된 매크로 키 스캔 코드를 기초로 키 코드를 생성하여 호스트 장치로 전송하는 단계를 포함할 수 있다.Generating a key code based on the output macro key scan code, and transmitting the generated key code to the host device.

본 발명의 착탈식 매크로 저장 카트리지를 가지는 하드웨어 매크로 키보드 장치에 따르면, 사용자가 스스로 생성하거나 입수한 매크로 시퀀스를 서로 다른 컴퓨터에서 이동하면서 사용할 수 있다.According to the hardware macro keyboard apparatus having the detachable macro storage cartridge of the present invention, macro sequences generated or obtained by the user can be used while moving in different computers.

본 발명의 착탈식 매크로 저장 카트리지를 가지는 하드웨어 매크로 키보드 장치에 따르면, 다양한 용도에 따라 매크로 시퀀스들을 저장한 매크로 저장 카트리지들을 가지고 교체하면서 사용할 수 있다.According to the hardware macro keyboard apparatus having the removable macro storage cartridge of the present invention, macro storage cartridges storing macro sequences according to various purposes can be used while being replaced.

본 발명의 착탈식 매크로 저장 카트리지를 가지는 하드웨어 매크로 키보드 장치에 따르면, 사용자들이 각자의 키 입력 시퀀스를 저장한 매크로들을 배포하고, 입수하고, 이용할 수 있어서, 예를 들어 프로게이머와 같은 실력자는 자신만의 독보적인 키 입력 시퀀스를 저장한 매크로 저장 카트리지를 초보자들에게 상업적으로 판매할 수도 있다.According to the hardware macro keyboard device having the detachable macro storage cartridge of the present invention, users can distribute, obtain, and use macros storing their respective key input sequences so that, for example, a competitor such as a pro- It is also possible to commercially sell cartridges that store unique keystroke sequences to beginners.

도 1은 본 발명의 일 실시예에 따른 착탈식 매크로 저장 카트리지 인터페이스를 가지는 하드웨어 매크로 지원 키보드 장치를 예시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 착탈식 매크로 저장 카트리지 인터페이스를 가지는 하드웨어 매크로 지원 키보드 장치를 이용한 하드웨어 매크로 제공 방법을 예시한 순서도이다.
1 is a block diagram illustrating a hardware macro-enabled keyboard device having a detachable macro storage cartridge interface according to an embodiment of the present invention.
FIG. 2 is a flowchart illustrating a hardware macro providing method using a hardware macro supporting keyboard device having a detachable macro storage cartridge interface according to an embodiment of the present invention. Referring to FIG.

본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.For the embodiments of the invention disclosed herein, specific structural and functional descriptions are set forth for the purpose of describing an embodiment of the invention only, and it is to be understood that the embodiments of the invention may be practiced in various forms, The present invention should not be construed as limited to the embodiments described in Figs.

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. The same reference numerals are used for the same constituent elements in the drawings and redundant explanations for the same constituent elements are omitted.

도 1은 본 발명의 일 실시예에 따른 착탈식 매크로 저장 카트리지 인터페이스를 가지는 하드웨어 매크로 지원 키보드 장치를 예시한 블록도이다.1 is a block diagram illustrating a hardware macro-enabled keyboard device having a detachable macro storage cartridge interface according to an embodiment of the present invention.

도 1을 참조하면, 착탈식 매크로 저장 카트리지 인터페이스를 가지는 하드웨어 매크로 지원 키보드 장치(10)는 키보드 스캔부(11), 매크로 제어부(12), 키보드 인터페이스(13) 및 착탈식 매크로 저장 카트리지 인터페이스(14)를 포함할 수 있다.Referring to FIG. 1, a hardware macro supporting keyboard device 10 having a detachable macro storage cartridge interface includes a keyboard scanning unit 11, a macro control unit 12, a keyboard interface 13, and a removable macro storage cartridge interface 14 .

키보드 스캔부(11)는 예를 들어 사용자가 키 캡을 누를 때 접점이 접촉하면서 활성화되는 전기 신호를 검출하여 어떤 키 캡이 눌렸는지(make) 식별하며 또는 반대로 사용자가 키 캡에서 손을 뗐을 때에는 접점이 탈락하면서 비활성화되는 전기 신호를 검출하여 어떤 키 캡이 눌림 해제되었는지(break) 식별할 수 있다.The keyboard scanning unit 11 detects an electrical signal that is activated when the user touches the key cap, for example, when the contact is contacted, thereby identifying which key cap has been pressed, or conversely, when the user touches the key cap An electrical signal that is deactivated while the contact is dropped can be detected to identify which key cap has been depressed.

키보드 스캔부(11)는 고가인 키보드의 경우에는 모든 키들에 대해 개별적인 접점과 도체 라인을 이용하도록 설계되기도 하지만, 저렴하게 제작할 경우에는 매트릭스 형태로 접점들이 행 또는 열 별로 도체 라인들을 공유하도록 설계될 수도 있다.The keyboard scan unit 11 may be designed to use individual contacts and conductor lines for all keys in the case of expensive keyboards, but in the case of inexpensive manufacture, the contacts are designed to share conductor lines per row or column It is possible.

키보드 스캔부(11)는 눌림 또는 눌림 해제가 식별될 때마다 키들의 키 스캔 코드들을 스캐닝하고, 스캔된 키 스캔 코드를 매크로 제어부(12)로 출력한다.The keyboard scanning unit 11 scans the key scan codes of the keys each time a pressed or unclosed position is identified, and outputs the scanned key scan code to the macro control unit 12. [

매크로 제어부(12)는 일련의 매크로 제어 키들, 즉 예를 들어 매크로 활성화 키(122), 매크로 저장 키(123), 매크로 실행 키(124), 매크로 소거 키(125) 등을 가지는 매크로 제어 키 어레이(121), 타이머(126), 매크로 레지스터(127), 키 스캔 코드 조합부(128)를 포함할 수 있다.The macro control unit 12 includes a macro control key array 12 having a series of macro control keys, for example, a macro activation key 122, a macro storage key 123, a macro execution key 124, a macro erasure key 125, A timer 126, a macro register 127, and a key scan code combination unit 128. The timer 121,

매크로 제어부(12)는 사용자가 매크로 제어 키들(122 내지 125) 중 어느 한 키라도 활성화하면, 해당하는 매크로 기능 및 매크로 실행 모드에 따라, 매크로 캡처 시에는 키보드 스캔부(11)로부터 키 이벤트가 감지될 때마다 키 이벤트의 상대적 시각을 기초로 타임 스탬프를 생성하고, 키 이벤트-타임 스탬프 쌍들로 구성된 매크로 시퀀스를 착탈식 매크로 저장 카트리지 인터페이스(14)를 통해 착탈식 매크로 저장 카트리지(15) 내의 비휘발성 메모리(151)에 저장하며, 매크로 실행을 위해서는, 착탈식 매크로 저장 카트리지 인터페이스(14)를 통해 착탈식 매크로 저장 카트리지(15) 내의 비휘발성 메모리(151)에 저장된 매크로 시퀀스를 읽어들이고 매크로 시퀀스를 구성하는 각각의 키 이벤트들에 상응하는 매크로 키 스캔 코드를 각각의 키 이벤트가 짝을 이룬 타임 스탬프에 상응하는 시점에 생성하여 그대로 또는 입력된 키보드 스캔부(11)의 키 스캔 코드를 조합하여 키보드 인터페이스(13)로 출력하고, 매크로 캡처 기능 또는 실행 기능을 수행하지 않을 때에는 키 이벤트에 따른 키 스캔 코드를 바이패스하여 출력할 수 있다.When the user activates one of the macro control keys 122 to 125, the macro control unit 12 detects a key event from the keyboard scanning unit 11 at the time of macro capture according to the corresponding macro function and macro execution mode Generates a time stamp based on the relative time of the key event each time it is executed, and transmits the macro sequence composed of key event-time stamp pairs to the nonvolatile memory (not shown) in the removable macro storage cartridge 15 via the removable macro storage cartridge interface 14 151). In order to execute a macro, the macro sequence stored in the nonvolatile memory 151 in the removable macro storage cartridge 15 is read through the removable macro storage cartridge interface 14, and each key The macro key scan code corresponding to the events is sent to each key event pair When the macro capture function or the execution function is not performed, a key corresponding to the key event is generated and output to the keyboard interface 13 in combination with the key scan code of the input keyboard scanning unit 11, The scan code can be bypassed and output.

매크로 제어부(12)의 동작은 아래에서 좀더 상세하게 설명된다.The operation of the macro control unit 12 will be described in more detail below.

매크로 제어 키들(122 내지 125)은 각 기능별로 별도로 둘 수도 있지만, 인식 방식을 달리 하여 서로 다른 기능들을 하나의 키에 통합할 수도 있다. Although the macro control keys 122 to 125 may be separately provided for each function, the different functions may be integrated into one key by different recognition methods.

예를 들어, 사용자가 특정 매크로 시퀀스의 저장과 실행을 동시에 지시하지는 않을 것이므로, 다시 말해 사용자는 일단 매크로 시퀀스를 저장한 후에 그 매크로 시퀀스를 실행하려고 할 것이므로, 매크로 저장 키(123)와 매크로 실행 키(124)는 실제로 하나의 키로 구현할 수 있다. 또한 예를 들어, 매크로 소거 키(125)는 소거하려는 매크로 시퀀스에 관련된 매크로 저장 키(123)를 길게 누르는 식으로 대체할 수 있을 것이다.For example, since the user will not simultaneously instruct the storing and execution of a specific macro sequence, that is, the user will try to execute the macro sequence after storing the macro sequence once, the macro storing key 123 and the macro execution key (124) may actually be implemented with a single key. Also, for example, the macro erase key 125 may be replaced by a long depression of the macro store key 123 associated with the macro sequence to be erased.

실시예에 따라서, 매크로 제어 키들(122 내지 125) 중 일부는 키보드 스캔부(11) 내의 일반 키들에 의해 대체될 수도 있다.Depending on the embodiment, some of the macro control keys 122 to 125 may be replaced by generic keys in the keyboard scan unit 11. [

예를 들어, 매크로 활성화 키(122)를 누른 상태에서 어떤 일반 키를 누르면, 해당 키에 의해 대표되는 매크로 시퀀스가 해당 키의 이름으로 캡처되고 저장될 수 있다. 이 경우에 매크로 저장 키(123)가 불필요할 수 있다.For example, if a general key is pressed while the macro activation key 122 is depressed, the macro sequence represented by the key may be captured and stored in the name of the corresponding key. In this case, the macro storing key 123 may be unnecessary.

예를 들어, 추후에 해당 매크로 시퀀스를 실행하기 위해서는 매크로 실행 키(124)와 해당 키를 눌러서 매크로 시퀀스를 불러올 수 있다.For example, in order to execute the macro sequence at a later time, a macro sequence key can be called by pressing the macro execution key 124 and the corresponding key.

타이머(126)는 매크로 시퀀스로 캡처할 키 스캔 코드가 입력되는 상대적 타이밍을 기초로 타임 스탬프를 생성하고 매크로 레지스터(127)에 제공할 수 있다.The timer 126 may generate a timestamp based on the relative timing at which the key scan code to be captured in the macro sequence is input and provide it to the macro register 127.

매크로 레지스터(127)는, 사용자에 의해 매크로 제어 키 어레이(121)의 매크로 활성화 키(122)가 활성화된 동안에, 키보드 스캔부(11)에서 전달되는 키 스캔 코드들을 수신하고, 키 눌림 이벤트 또는 키 해제 이벤트와 각 이벤트에 관하여 타이머(126)에 의해 식별된 타임 스탬프를 수신하며, 키 스캔 코드와 그에 상응하는 타임 스탬프를 짝지어 키 이벤트-타임 스탬프 쌍들로 구성된 하나의 매크로 시퀀스를 생성하고 저장한다. The macro register 127 receives the key scan codes transmitted from the keyboard scanning unit 11 while the macro activation key 122 of the macro control key array 121 is activated by the user, Receives a timestamp identified by the timer 126 with respect to the release event and each event, and generates and stores a macro sequence composed of key event-timestamp pairs in which the key scan code and its corresponding timestamp are paired .

매크로 레지스터(127)는 저장된 매크로 시퀀스를 전원이 공급되는 동안 매크로 레지스터(127) 내에 유지할 수 있고, 또한 매크로 시퀀스가 생성된 후에 자동으로 또는 호스트 컴퓨터나 사용자의 지시에 따라 착탈식 매크로 저장 카트리지 인터페이스(14)를 통해 착탈식 매크로 저장 카트리지(15)에 장착된 비휘발성 메모리(151)에 생성된 매크로 시퀀스의 사본을 저장할 수 있다.The macro register 127 can hold the stored macro sequence in the macro register 127 while the power is being supplied and can also store the macro sequence automatically after the macro sequence is generated or in accordance with the instructions of the host computer or user, To store the copy of the generated macro sequence in the nonvolatile memory 151 mounted on the removable macro storage cartridge 15. [

또한, 역으로 매크로 레지스터(127)는 착탈식 매크로 저장 카트리지 인터페이스(14)를 통해 착탈식 매크로 저장 카트리지(15)에 장착된 비휘발성 메모리(151)로부터, 착탈식 매크로 저장 카트리지(15)가 인식된 후에 자동으로 또는 호스트 컴퓨터나 사용자의 지시에 따라, 매크로 시퀀스들을 독출하여, 적어도 전원이 공급되는 동안에, 매크로 레지스터(127) 내에 유지할 수 있다.Conversely, in the macro register 127, after the removable macro storage cartridge 15 is recognized from the non-volatile memory 151 mounted on the removable macro storage cartridge 15 via the detachable macro storage cartridge interface 14, Or in accordance with the instructions of the host computer or the user, to keep the macro sequences in the macro register 127, at least during power up.

이 경우에, 매크로 레지스터(127)는, 착탈식 매크로 저장 카트리지(15)가 삽입되기 전에 매크로 레지스터(127) 내에 유지하던 매크로 시퀀스에 대해, 착탈식 매크로 저장 카트리지(15)에 장착된 비휘발성 메모리(151)로부터 독출된 매크로 시퀀스들을 우선할 수 있다. 다시 말해, 매크로 레지스터(127)는, 착탈식 매크로 저장 카트리지(15)가 삽입되면, 그때까지 유지하던 매크로 시퀀스들을 버리고 착탈식 매크로 저장 카트리지(15)에 장착된 비휘발성 메모리(151)로부터 독출된 매크로 시퀀스들을 유지할 수 있다.In this case, the macro register 127 stores the macro sequence held in the macro register 127 before the removable macro storage cartridge 15 is inserted into the nonvolatile memory 151 ) May be prioritized. In other words, when the removable macro storage cartridge 15 is inserted, the macro register 127 discards the macro sequences that have been held until then, and outputs the macro sequence read from the nonvolatile memory 151 mounted in the detachable macro storage cartridge 15 Lt; / RTI >

실시예에 따라, 매크로 레지스터(127)도 비휘발성 소자로 구현될 수 있다.Depending on the embodiment, the macro register 127 may also be implemented as a non-volatile device.

한편, 각각의 매크로 시퀀스는 사용자에 의해 매크로 제어 키 어레이(121)의 매크로 활성화 키(122)가 한 차례 활성화된 동안에 저장되는 키 이벤트-타임 스탬프 쌍들로써 구성된다.On the other hand, each macro sequence is configured as key event-time stamp pairs that are stored by the user while the macro activation key 122 of the macro control key array 121 is activated once.

매크로 레지스터(127)가 유지하는 적어도 하나의 매크로 시퀀스 중에 특정한 매크로 시퀀스는 특정한 매크로 저장 키(123) 및 특정한 매크로 실행 키(124)에 연동될 수 있다.Of the at least one macro sequence held by the macro register 127, a specific macro sequence may be linked to a specific macro storage key 123 and a specific macro execution key 124.

예를 들어, 도 1에서는 매크로 저장 키(123)나 매크로 실행 키(124)가 하나만 예시되지만, 만약 실제로 네 개의 매크로 저장 키(123) 또는 매크로 실행 키(124)가 제공된다면, 각각의 매크로 저장 키(123)에 의해 연동되는 매크로 시퀀스가 매크로 레지스터(127)에 서로 구별되도록 저장될 수 있다. For example, only one macro save key 123 or macro execute key 124 is illustrated in FIG. 1, but if four macro save keys 123 or macro execute keys 124 are actually provided, A macro sequence interlocked by the key 123 can be stored in the macro register 127 so as to be distinguished from each other.

매크로 레지스터(127)에 새로 저장된 매크로 시퀀스는, 비휘발성 메모리(151)의 저장 용량이 부족하게 되지 않는 한, 착탈식 매크로 저장 카트리지 인터페이스(14)를 통해 착탈식 매크로 저장 카트리지(15) 내의 비휘발성 메모리(151)에 복사될 수 있다.The macro sequence newly stored in the macro register 127 is transferred to the nonvolatile memory 151 via the removable macro storage cartridge interface 14 as long as the storage capacity of the nonvolatile memory 151 is insufficient 151).

한편, 특정 매크로 실행 키(124)가 눌리면 매크로 레지스터(127)가 특정 매크로 실행 키(124)에 의해 연동되는 매크로 시퀀스를 읽어서 매크로 처리부(128)에 전달할 수 있다.On the other hand, when the specific macro execution key 124 is pressed, the macro register 127 can read the macro sequence linked by the specific macro execution key 124 and transmit the read macro sequence to the macro processing unit 128.

매크로 레지스터(127)에 유지되던 매크로 시퀀스의 소거를 위해서는, 예를 들어, 사용자에 의해 매크로 제어 키 어레이(121)의 매크로 소거 키(125)가 활성화된 동안에, 소거하고자 하는 매크로 시퀀스가 연동되는 매크로 저장 키(123)가 눌리면, 매크로 레지스터(127)가 해당 매크로 저장 키(123)에 연동되는 매크로 시퀀스를 소거할 수 있다. 이때, 매크로 레지스터(127)에 유지되던 매크로 시퀀스가 삭제되더라도, 착탈식 매크로 저장 카트리지(15) 내의 비휘발성 메모리(151)에 저장되어 있는 원본 매크로 시퀀스는 삭제되지 않는다.In order to erase the macro sequence held in the macro register 127, for example, when the macro macro key 125 of the macro control key array 121 is activated by the user, When the storage key 123 is pressed, the macro register 127 can erase the macro sequence interlocked with the macro storing key 123. At this time, even if the macro sequence held in the macro register 127 is deleted, the original macro sequence stored in the non-volatile memory 151 in the removable macro storage cartridge 15 is not deleted.

매크로 시퀀스의 실행을 위해서는, 예를 들어, 사용자에 의해 매크로 제어 키 어레이(121)의 특정 매크로 실행 키(124)가 눌린 이벤트가 감지되면, 매크로 레지스터(127)가 눌린 매크로 실행 키(124)에 연동되는 매크로 시퀀스를 읽어서 매크로 처리부(128)로 전달한다.In order to execute the macro sequence, for example, when an event in which the specific macro execution key 124 of the macro control key array 121 is pressed by the user is detected, the macro register 127 is pressed to the macro execution key 124 And transmits the read macro sequence to the macro processing unit 128.

매크로 처리부(128)는, 기록된 타이밍을 이용하는 매크로 실행 모드에서는, 매크로 레지스터(127)에서 제공된 매크로 시퀀스를 구성하는 키 이벤트들에 상응하는 매크로 키 스캔 코드를 해당 키 이벤트가 짝을 이룬 타임 스탬프에 상응하는 시점에 생성할 수 있고, 기록된 타이밍을 이용하지 않는 매크로 실행 모드에서는 매크로 레지스터(127)에서 제공된 매크로 시퀀스를 구성하는 키 이벤트들에 상응하는 매크로 키 스캔 코드를 미리 지정된 타이밍에 따라 생성할 수 있다.In the macro execution mode using the recorded timing, the macro processing unit 128 sets the macro key scan code corresponding to the key events constituting the macro sequence provided in the macro register 127 to a time stamp matching the corresponding key event In a macro execution mode which can be generated at a corresponding time and does not use the recorded timing, a macro key scan code corresponding to key events constituting the macro sequence provided in the macro register 127 is generated according to a predetermined timing .

본 발명의 일부 실시예들에서, 매크로 키 스캔 코드들은 사용자가 매크로 시퀀스를 캡처하기 위해 키를 눌렀던 타이밍들과 동일한 타이밍을 가지고 생성되므로, 매크로 시퀀스를 실행하면 매우 자연스럽게 사용자의 키 입력을 재현할 수 있다.In some embodiments of the present invention, since the macro key scan codes are generated with the same timing as the timings at which the user pressed the key to capture the macro sequence, executing the macro sequence naturally reproduces the user's key input .

예를 들어, 게임이나 음악 연주 어플리케이션 등에서는 키 터치 타이밍의 미묘한 차이가 결과적으로 상당한 차이를 일으킬 수 있다. 키 이벤트를 타임 스탬프와 함께 기록 및 재생함으로써, 단순히 손으로 키를 누르는 작업을 대신하는 수준이 아니라 사용자의 키 터치 느낌을 재현할 수 있는 효과가 발생한다.For example, in a game or a musical performance application, a subtle difference in key touch timing can result in a significant difference. The key event is recorded and reproduced together with the time stamp, so that the user can reproduce the feeling of the key touch rather than the level of simply pressing the key by hand.

본 발명은 숙련자의 키 터치 느낌을 캡처한 매크로 시퀀스를 착탈식 매크로 저장 카트리지(15)를 통해 사용자가 자신의 키보드 장치에서 재현시킬 수 있다.The present invention allows a user to reproduce a macro sequence capturing the feel of keytouch of a skilled person in his / her keyboard device via a removable macro storage cartridge 15.

한편 매크로 처리부(128)는 사용자가 일반적인 키 입력 중이거나 또는 매크로 캡처 중에는 키보드 스캔부(11)에서 제공되는 키 스캔 코드를 키보드 인터페이스(13)로 그대로 바이패스(by-pass)할 수 있다.Meanwhile, the macro processing unit 128 can bypass the key scan code provided by the keyboard scanning unit 11 to the keyboard interface 13 as it is during the general key input or macro capture by the user.

이를 위해, 매크로 처리부(128)는, 만약 사용자가 매크로 활성화 키(122)를 눌러 매크로 캡처 기능을 활성화하면, 키보드 스캔부(11)의 키 스캔 코드를 매크로 레지스터(127)로 전달하고, 만약 사용자가 매크로 실행 키(124)를 눌러 매크로 실행 기능을 활성화하면 매크로 실행 모드에 따라, 매크로 레지스터(127)에서 읽힌 매크로 실행 대상인 매크로 시퀀스에 기초하여 매크로 키 스캔 코드를 상응하는 타임 스탬프의 타이밍에 맞추거나 맞추지 않고 생성하여 키보드 인터페이스(13)로 보내거나, 매크로 실행 대상인 매크로 시퀀스에 기초하여 타임 스탬프의 타이밍에 맞추거나 맞추지 않고 생성된 매크로 키 스캔 코드와 입력된 키보드 스캔부(11)의 키 스캔 코드를 조합하여 키보드 인터페이스(13)로 전달할 수 있다.For this, the macro processing unit 128 transmits the key scan code of the keyboard scanning unit 11 to the macro register 127 if the user activates the macro capture function by pressing the macro activation key 122, If the macro execution key 124 is pressed to activate the macro execution function, the macro key scan code is adjusted to the timing of the corresponding timestamp based on the macro sequence to be executed in the macro read in the macro register 127 The generated macro key scan code and the key scan code of the inputted keyboard scan unit 11 are generated without matching the timing of the timestamp on the basis of the macro sequence which is the macro execution target, Can be transmitted to the keyboard interface 13 in combination.

또한 본 발명의 하드웨어 매크로 지원 키보드 장치(10)는 다양한 매크로 실행 모드들을 가질 수 있다.The hardware macro support keyboard device 10 of the present invention may have various macro execution modes.

예를 들어, 패스트 매크로 실행 모드에서, 매크로 처리부(128)는 매크로 시퀀스에 기록된 타임 스탬프의 타이밍을 고려하지 않고 소정의 정해진 시간 간격, 예를 들어 1ms 간격으로 매크로 키 스캔 코드들을 생성하여 키보드 인터페이스(13)로 전송한다.For example, in the fast macro execution mode, the macro processing unit 128 generates macro key scan codes at predetermined fixed time intervals, for example, 1 ms intervals, without considering the timing of the time stamp recorded in the macro sequence, (13).

반면에, 타이밍 매크로 실행 모드에서는, 매크로 처리부(128)는 매크로 시퀀스에 기록된 타임 스탬프의 타이밍을 고려하여, 타임 스탬프의 타이밍에 따라 매크로 키 스캔 코드들을 생성하여 키보드 인터페이스(13)로 전송할 수 있다.On the other hand, in the timing macro execution mode, the macro processing unit 128 may generate the macro key scan codes according to the timing of the time stamp, and transmit the generated macro key scan codes to the keyboard interface 13 in consideration of the timing of the time stamp recorded in the macro sequence .

매크로 처리부(128)가 설정된 매크로 실행 모드에 따라 생성한 매크로 키 스캔 코드는 키보드 인터페이스(13)로 전달된다.The macro key scan code generated in accordance with the macro execution mode set by the macro processing unit 128 is transmitted to the keyboard interface 13.

만약 매크로 실행 중에 키보드 입력이 있을 경우에 매크로 처리부(128)의 동작은 다음과 같이 설명될 수 있다.If there is a keyboard input during the execution of the macro, the operation of the macro processing unit 128 can be described as follows.

만약 제1 매크로 시퀀스의 실행 중에 키보드 스캔부(11)로부터 키 스캔 코드의 입력이 있을 경우에는, 매크로 처리부(128)는 설정된 매크로 실행 모드에 따라, 키보드 스캔부(11)의 키 스캔 코드를 무시하고 생성된 제1 매크로 키 스캔 코드를 우선적으로 키보드 인터페이스(13)로 전달하거나, 제1 매크로 키 스캔 코드의 생성을 종료하고 키보드 스캔부(11)의 키 스캔 코드를 우선적으로 키보드 인터페이스(13)로 전달하거나, 만약 입력된 키 스캔 코드가 제2 매크로 시퀀스의 실행에 관한 것이라면 제1 매크로 키 스캔 코드의 생성을 종료하고 제2 매크로 시퀀스의 실행에 따라 제2 매크로 키 스캔 코드를 생성하여 키보드 인터페이스(13)로 전달하거나, 또는 제1 매크로 키 스캔 코드와 키보드 스캔부(11)의 키 스캔 코드를 조합하여 키보드 인터페이스(13)로 전달한다.If there is input of the key scan code from the keyboard scanning unit 11 during execution of the first macro sequence, the macro processing unit 128 ignores the key scan code of the keyboard scanning unit 11 in accordance with the set macro execution mode And transmits the generated first macro key scan code to the keyboard interface 13 or generates the first macro key scan code and transmits the key scan code of the keyboard scan unit 11 to the keyboard interface 13 first, Or if the inputted key scan code is related to the execution of the second macro sequence, generation of the first macro key scan code is terminated, and a second macro key scan code is generated according to the execution of the second macro sequence, Or transmits the first macro key scan code and the key scan code of the keyboard scan unit 11 to the keyboard interface 13 in combination .

예를 들어 실시예에 따라, 제1 매크로 시퀀스를 실행 중에 사용자의 키 눌림이 있을 경우에, 매크로 제어부(12)의 매크로 처리부(128)는 제1 매크로 키 스캔 코드 생성을 종료하고 사용자의 키 눌림에 상응하는 키 스캔 코드를 우선적으로 키보드 인터페이스(13)로 전달할 수 있다.For example, according to the embodiment, when a user presses a key during execution of the first macro sequence, the macro processing unit 128 of the macro control unit 12 ends generation of the first macro key scan code, To the keyboard interface 13 in advance.

다른 실시예에서, 제1 매크로 시퀀스를 실행 중에 사용자의 키 눌림이 있을 경우에, 매크로 제어부(12)의 매크로 처리부(128)는 제1 매크로 키 스캔 코드의 생성을 지속하면서 생성된 제1 매크로 키 스캔 코드와 사용자의 키 눌림에 상응하는 키 스캔 코드를 동등하게, 생성된 순서대로 조합하여, 키보드 인터페이스(13)로 전달할 수 있다.The macro processing unit 128 of the macro control unit 12 continues to generate the first macro key scan code and generates the first macro key in response to the user's key pressed while the first macro sequence is being executed, The scan code and the key scan code corresponding to the key depression of the user can be equivalently combined in the order in which they are generated and transmitted to the keyboard interface 13. [

또 다른 실시예에서, 제1 매크로 시퀀스를 실행 중에 사용자가 제2 매크로 시퀀스에 상응하는 다른 매크로 실행 키(124)를 누른 경우에는, 매크로 제어부(12)의 매크로 처리부(128)는 제1 매크로 시퀀스의 제1 매크로 키 스캔 코드 생성을 종료하고, 제2 매크로 시퀀스의 제2 매크로 키 스캔 코드를 생성하여 제2 매크로 키 스캔 코드들을 키보드 인터페이스(13)로 전달할 수 있다. 실시예에 따라, 제2 매크로 시퀀스가 완료된 후에 다시 제1 매크로 시퀀스의 매크로 키 스캔 코드 생성을 재개할 수도 있다.In another embodiment, when the user presses another macro execution key 124 corresponding to the second macro sequence during the execution of the first macro sequence, the macro processing unit 128 of the macro control unit 12 sets the first macro sequence The second macro key scan code of the second macro sequence may be generated and the second macro key scan codes may be transmitted to the keyboard interface 13. According to the embodiment, the generation of the macro key scan code of the first macro sequence may be resumed after the completion of the second macro sequence.

키보드 인터페이스(13)는 USB 키보드 인터페이스 또는 PS/2 키보드 인터페이스로서, 키보드 스캔부(11)로부터 키 눌림 또는 눌림 해제에 상응하는 키 스캔 코드 또는 실행된 매크로에 상응하는 키 스캔 코드를 수신하여 USB HID 포맷 또는 PS/2 포맷으로 호스트 컴퓨터에 전송하거나, 또는 호스트 컴퓨터로부터 USB HID 포맷 또는 PS/2 포맷으로 제어 메시지를 수신하여 수신된 제어 메시지를 매크로 제어부(12)에 전달할 수 있다.The keyboard interface 13 is a USB keyboard interface or PS / 2 keyboard interface that receives a key scan code corresponding to a pressed or unpressed key from the keyboard scanning unit 11 or a key scan code corresponding to an executed macro, Format or PS / 2 format to the host computer, or may receive the control message from the host computer in the USB HID format or PS / 2 format and transmit the received control message to the macro controller 12.

착탈식 매크로 저장 카트리지 인터페이스(14)는 매크로 제어부(12)가 착탈식 매크로 저장 카트리지(15)를 인식하고 액세스할 수 있도록 인터페이스하며, 예를 들어, CF, SD와 같은 시장 표준 비휘발성 메모리 인터페이스 또는 전용 비휘발성 메모리 인터페이스로 구현될 수 있다.The removable macro storage cartridge interface 14 interfaces the macro control unit 12 for recognizing and accessing the removable macro storage cartridge 15 and may be a market standard nonvolatile memory interface such as CF, Volatile memory interface.

착탈식 매크로 저장 카트리지(15)는 비휘발성 메모리(151)를 포함하며 착탈식 매크로 저장 카트리지 인터페이스(14)를 통해 매크로 제어부(12)에 인식되고 액세스될 수 있다.The removable macro storage cartridge 15 includes a non-volatile memory 151 and can be recognized and accessed by the macro control unit 12 via the removable macro storage cartridge interface 14. [

도 2는 본 발명의 일 실시예에 따른 착탈식 매크로 저장 카트리지 인터페이스를 가지는 하드웨어 매크로 지원 키보드 장치를 이용한 하드웨어 매크로 제공 방법을 예시한 순서도이다.FIG. 2 is a flowchart illustrating a hardware macro providing method using a hardware macro supporting keyboard device having a detachable macro storage cartridge interface according to an embodiment of the present invention. Referring to FIG.

먼저 단계(S21)에서, 매크로 캡처를 위해, 키 이벤트가 감지될 때마다 키 이벤트에 상응하는 키 스캔 코드가 입력되는 상대적 시각을 기초로 타임 스탬프를 생성한다.First, in step S21, a time stamp is generated based on a relative time at which a key scan code corresponding to a key event is input for each time a key event is detected, for macro capture.

단계(S22)에서, 키 이벤트-타임 스탬프 쌍들로 구성된 매크로 시퀀스를 하드웨어 매크로 지원 키보드 장치(10) 내부에 제공되는 매크로 레지스터(127)에 저장한다.In step S22, a macro sequence composed of key event-time stamp pairs is stored in the macro register 127 provided inside the hardware macro support keyboard device 10. [

단계(S23)에서, 매크로 레지스터(127)에 저장된 매크로 시퀀스를 착탈식 매크로 저장 카트리지 인터페이스(14)를 통해 액세스되는 착탈식 매크로 저장 카트리지(15)에 저장한다.The macro sequence stored in the macro register 127 is stored in the removable macro storage cartridge 15 accessed via the removable macro storage cartridge interface 14 in step S23.

단계(S24)에서, 매크로 실행을 위해, 착탈식 매크로 저장 카트리지 인터페이스(14)를 통해 액세스되는 착탈식 매크로 저장 카트리지(15)로부터 매크로 시퀀스를 매크로 레지스터(127)에 복사한다.In step S24, the macro sequence is copied from the removable macro storage cartridge 15, which is accessed via the removable macro storage cartridge interface 14, to the macro register 127 for macro execution.

단계(S25)에서, 매크로 레지스터(127)에 유지되는 매크로 시퀀스들 중에서 사용자에 의해 선택된 매크로 시퀀스를 구성하는 각각의 키 이벤트들에 상응하는 매크로 키 스캔 코드를 각각의 키 이벤트가 짝을 이룬 타임 스탬프에 상응하는 시점에, 또는 미리 지정된 시간 간격으로 생성하여 출력한다. In step S25, a macro key scan code corresponding to each of the key events constituting the macro sequence selected by the user among the macro sequences held in the macro register 127 is stored in a time stamp corresponding to each key event Or at predetermined time intervals, and outputs them.

단계(S26)에서, 출력된 매크로 키 스캔 코드를 기초로 키 코드를 생성하여 호스트 장치로 전송한다.In step S26, a key code is generated based on the output macro key scan code and transmitted to the host device.

단계(S25) 및 단계(S26)는 미리 정해진 횟수나 사용자의 지시에 따라 반복될 수 있다.Steps S25 and S26 may be repeated according to a predetermined number of times or a user's instruction.

착탈식 매크로 저장 카트리지를 제공함으로써, 사용자는 자신의 키보드 뿐 아니라 동등한 매크로 저장 카트리지 기능을 가지는 키보드가 설치된 곳이라면 직장이든 가정이든 어디에서라도 자신이 만들어둔 매크로를 사용할 수 있다.By providing a removable macro storage cartridge, the user can use his or her own macros anywhere he or she is at home, whether it is a keyboard equipped with equivalent macro storage cartridge functionality.

실시예에 따라, 본 발명의 착탈식 매크로 저장 카트리지는 통상적인 비휘발성 플래시 메모리 장치로 구현될 수 있고, 착탈식 매크로 저장 카트리지 인터페이스는 비휘발성 플래시 메모리 인터페이스로 구현될 수 있다.According to an embodiment, the removable macro storage cartridge of the present invention can be implemented as a conventional non-volatile flash memory device, and the removable macro storage cartridge interface can be implemented as a non-volatile flash memory interface.

실시예에 따라, 착탈식 매크로 저장 카트리지 인터페이스는 착탈식 매크로 저장 카트리지 외에 일반적인 용도의 플래시 메모리 장치를 호스트 컴퓨터에서 액세스할 수 있도록 인터페이싱할 수 있다.According to an embodiment, the removable macro storage cartridge interface may interface with a flash memory device for general use in addition to a removable macro storage cartridge to be accessible from a host computer.

기존에는 매크로 시퀀스들을 사용자가 직접 항상 등록시켜야 했으나, 이러한 착탈식 매크로 저장 카트리지들을 가지고 있다가 용도에 따라 교체하면서 키보드 장치에 장착하면, 용도에 따라 미리 저장해둔 매크로 시퀀스들을 이용할 수 있으므로 상황에 맞게 매크로 기능을 활용도를 향상시킬 수 있다.In the past, the user had to manually register the macro sequences. However, since the macro sequences stored in advance can be used according to the purpose when the macro storage cartridges are mounted on the keyboard while replacing the removable macro storage cartridges, Can be utilized.

예를 들어, 숙련된 게임 사용자라면 매크로 시퀀스의 공급자로서 자신의 게임 테크닉을 실현하는 키보드 키 입력들을 가지고 매크로 시퀀스를 만들어 매크로 저장 카트리지에 저장할 수 있고, 저장된 매크로 시퀀스들을 배포할 수 있다. 이러한 배포의 방식으로서 매크로 저장 카트리지의 오프라인 교환 또는 매크로 시퀀스들의 온라인 전송을 생각해볼 수 있는데, 이러한 배포에 따른 상업적인 가치 창출 가능성도 염두에 둘 수 있다.For example, a skilled game user can create a macro sequence with keystroke key inputs that implement his game technique as a provider of a macro sequence, store it in a macro storage cartridge, and distribute stored macro sequences. As a way of this distribution, it is possible to consider the offline exchange of a macro storage cartridge or the online transmission of macro sequences, and the possibility of commercial value creation by this distribution can also be considered.

매크로 시퀀스의 수요자 입장에서, 사용자는 매크로 시퀀스를 하드웨어 매크로 기능 지원 키보드 장치 내의 저장 장소 또는 외부의 착탈식 매크로 저장 카트리지 중에서 필요 또는 하드웨어 구성에 따라 적절하게 선택된 위치에 저장할 수 있다.From the point of view of the user of the macro sequence, the user can store the macro sequence in a storage location in a hardware macro function supporting keyboard device or an external removable macro storage cartridge at a properly selected position according to necessity or hardware configuration.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명이 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이와 균등하거나 또는 등가적인 변형 모두는 본 발명 사상의 범주에 속한다 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, Modification is possible. Accordingly, the spirit of the present invention should be understood only in accordance with the following claims, and all of the equivalent or equivalent variations will fall within the scope of the present invention.

10 착탈식 매크로 저장 카트리지 인터페이스를 가지는 하드웨어 매크로 지원 키보드 장치
11 키보드 스캔부 12 매크로 제어부
121 매크로 제어 키 어레이 122 매크로 활성화 키
123 매크로 저장 키 124 매크로 실행 키
125 매크로 소거 키 126 타이머
127 매크로 저장부 128 매크로 처리부
13 키보드 인터페이스
14 착탈식 매크로 저장 카트리지 인터페이스
15 착탈식 매크로 저장 카트리지
151 비휘발성 메모리
10 Removable macro storage Hardware macro support with cartridge interface Keyboard unit
11 Keyboard scan section 12 Macro control section
121 Macro control key array 122 Macro activation key
123 Save macro key 124 Execute macro key
125 Macro erasure key 126 Timer
127 Macro storage unit 128 Macro processing unit
13 Keyboard Interface
14 Removable Macro Storage Cartridge Interface
15 Removable Macro Storage Cartridge
151 nonvolatile memory

Claims (5)

키 이벤트에 따른 키 스캔 코드를 생성하는 키보드 스캔부;
매크로 캡처 시에, 상기 키보드 스캔부로부터 키 이벤트가 감지될 때마다 상기 키 이벤트의 상대적 시각을 기초로 타임 스탬프를 생성하고, 상기 키 이벤트-타임 스탬프 쌍들로 구성된 매크로 시퀀스를 매크로 레지스터에 저장하며, 매크로 실행 시에, 상기 매크로 레지스터에 저장된 매크로 시퀀스를 읽어들이고 상기 매크로 시퀀스를 구성하는 각각의 키 이벤트들에 상응하는 매크로 키 스캔 코드를 각각의 키 이벤트가 짝을 이룬 타임 스탬프에 상응하는 시점에 또는 미리 지정된 간격으로 생성하여, 그대로 또는 상기 키보드 스캔부로부터 입력된 키 스캔 코드를 조합하여 출력하고, 매크로 실행 시가 아닌 때에는 상기 키 이벤트에 따른 키 스캔 코드를 바이패스하여 출력하는 매크로 제어부;
상기 매크로 제어부가 비휘발성 메모리를 포함하는 착탈식 매크로 저장 카트리지를 인식하고 액세스할 수 있도록 상기 매크로 제어부와 상기 착탈식 매크로 저장 카트리지 사이를 인터페이스하는 착탈식 매크로 저장 카트리지 인터페이스; 및
상기 출력된 매크로 키 스캔 코드 또는 바이패스된 키 스캔 코드를 기초로 생성된 키 코드를 호스트 장치로 전송하는 키보드 인터페이스를 포함하는 착탈식 매크로 저장 카트리지 인터페이스를 가지는 하드웨어 매크로 지원 키보드 장치.
A keyboard scan unit for generating a key scan code according to a key event;
Generating a time stamp based on the relative time of the key event each time a key event is detected from the keyboard scan unit at the time of macro capture, storing a macro sequence composed of the key event-time stamp pairs in a macro register, The macro sequence stored in the macro register is read and a macro key scan code corresponding to each key event constituting the macro sequence is read out at a time corresponding to a time stamp corresponding to each key event, A macro control unit for generating a key scan code at a predetermined interval and outputting a key scan code input from the keyboard scan unit as a combination and outputting a key scan code according to the key event when the macro is not being executed;
A removable macro storage cartridge interface for interfacing between the macro control unit and the removable macro storage cartridge so that the macro control unit can recognize and access a removable macro storage cartridge including a nonvolatile memory; And
And a keyboard interface for transmitting a key code generated based on the output macro key scan code or the bypassed key scan code to a host device.
청구항 1에 있어서, 상기 착탈식 매크로 저장 카트리지 인터페이스를 통해 상기 착탈식 매크로 저장 카트리지가 인식된 후에, 상기 착탈식 매크로 저장 카트리지 내의 비휘발성 메모리에 저장된 매크로 시퀀스가 상기 매크로 레지스터에 복사되는 것을 특징으로 하는 착탈식 매크로 저장 카트리지 인터페이스를 가지는 하드웨어 매크로 지원 키보드 장치.The removable macro storage cartridge according to claim 1, wherein a macro sequence stored in a nonvolatile memory in the removable macro storage cartridge is copied to the macro register after the removable macro storage cartridge is recognized through the removable macro storage cartridge interface Hardware macro support keyboard device with cartridge interface. 청구항 1에 있어서, 매크로 캡처 시에 상기 매크로 레지스터에 저장된 매크로 시퀀스는, 상기 착탈식 매크로 저장 카트리지 인터페이스를 통해 상기 착탈식 매크로 저장 카트리지가 인식된 후에, 상기 착탈식 매크로 저장 카트리지 내의 비휘발성 메모리에 복사되는 것을 특징으로 하는 착탈식 매크로 저장 카트리지 인터페이스를 가지는 하드웨어 매크로 지원 키보드 장치.The macro-storage device according to claim 1, wherein the macro sequence stored in the macro register at the time of macro capture is characterized by being copied to the non-volatile memory in the removable macro storage cartridge after the detachable macro storage cartridge is recognized through the detachable macro storage cartridge interface A hardware macro support keyboard device having a removable macro storage cartridge interface. 청구항 1에 있어서, 상기 매크로 제어부는,
사용자가 매크로 시퀀스의 캡처를 지시하기 위한 매크로 활성화 키, 캡처된 매크로 시퀀스의 저장을 지시하기 위한 매크로 저장 키, 저장된 매크로 시퀀스의 실행을 지시하기 위한 매크로 실행 키, 저장된 매크로 시퀀스의 소거를 지시하기 위한 매크로 소거 키 중 적어도 하나를 포함하는 매크로 제어 키 어레이를 더 포함하는 것을 특징으로 하는 착탈식 매크로 저장 카트리지 인터페이스를 가지는 하드웨어 매크로 지원 키보드 장치.
The image processing apparatus according to claim 1,
A macro activation key for instructing the capture of the macro sequence, a macro storing key for instructing storage of the captured macro sequence, a macro execution key for instructing execution of the stored macro sequence, Further comprising a macro control key array including at least one of a macro erase key and a macro erase key.
착탈식 매크로 저장 카트리지 인터페이스를 가지는 하드웨어 매크로 지원 키보드 장치를 이용한 하드웨어 매크로 제공 방법으로서,
매크로 캡처를 위해, 키 이벤트가 감지될 때마다 상기 키 이벤트에 상응하는 키 스캔 코드가 입력되는 상대적 시각을 기초로 타임 스탬프를 생성하는 단계;
상기 키 이벤트-타임 스탬프 쌍들로 구성된 매크로 시퀀스를 상기 하드웨어 매크로 지원 키보드 장치 내부에 제공되는 매크로 레지스터에 저장하는 단계;
상기 매크로 레지스터에 저장된 매크로 시퀀스를 상기 착탈식 매크로 저장 카트리지 인터페이스를 통해 액세스되는 착탈식 매크로 저장 카트리지에 저장하는 단계;
매크로 실행을 위해, 상기 착탈식 매크로 저장 카트리지 인터페이스를 통해 액세스되는 상기 착탈식 매크로 저장 카트리지로부터 매크로 시퀀스를 상기 매크로 레지스터에 복사하는 단계;
상기 매크로 레지스터에 유지되는 매크로 시퀀스들 중에서 사용자에 의해 선택된 매크로 시퀀스를 구성하는 각각의 키 이벤트들에 상응하는 매크로 키 스캔 코드를 각각의 키 이벤트가 짝을 이룬 타임 스탬프에 상응하는 시점에, 또는 미리 지정된 시간 간격으로 생성하여 출력하는 단계; 및
출력된 매크로 키 스캔 코드를 기초로 키 코드를 생성하여 호스트 장치로 전송하는 단계를 포함하는 착탈식 매크로 저장 카트리지 인터페이스를 가지는 하드웨어 매크로 지원 키보드 장치를 이용한 하드웨어 매크로 제공 방법.
A method for providing a hardware macro using a hardware macro support keyboard device having a removable macro storage cartridge interface,
Generating a time stamp based on a relative time at which a key scan code corresponding to the key event is input every time a key event is detected for macro capture;
Storing a macro sequence composed of the key event-time stamp pairs in a macro register provided in the hardware macro support keyboard device;
Storing a macro sequence stored in the macro register in a removable macro storage cartridge accessed via the removable macro storage cartridge interface;
Copying a macro sequence from the removable macro storage cartridge accessed via the removable macro storage cartridge interface to the macro register for macro execution;
A macro key scan code corresponding to each of the key events constituting the macro sequence selected by the user among the macro sequences held in the macro register is stored at a time point corresponding to a time stamp paired with each key event, Generating and outputting at a specified time interval; And
And generating a key code based on the output macro key scan code and transmitting the generated key code to a host device.
KR1020130099539A 2013-08-22 2013-08-22 Keyboard apparatus with hardware macro features using attachable macro storing cartridge KR101435982B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130099539A KR101435982B1 (en) 2013-08-22 2013-08-22 Keyboard apparatus with hardware macro features using attachable macro storing cartridge

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130099539A KR101435982B1 (en) 2013-08-22 2013-08-22 Keyboard apparatus with hardware macro features using attachable macro storing cartridge

Publications (1)

Publication Number Publication Date
KR101435982B1 true KR101435982B1 (en) 2014-09-02

Family

ID=51758919

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130099539A KR101435982B1 (en) 2013-08-22 2013-08-22 Keyboard apparatus with hardware macro features using attachable macro storing cartridge

Country Status (1)

Country Link
KR (1) KR101435982B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR200484388Y1 (en) * 2016-05-31 2017-09-01 이재진 Apparatus for terminal input

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970063726A (en) * 1996-02-08 1997-09-12 김광호 Method for manufacturing capacitor of semiconductor memory device
KR20030068662A (en) * 2002-02-15 2003-08-25 임영조 Keyboard having shortening-key function and controlling methode therefor

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970063726A (en) * 1996-02-08 1997-09-12 김광호 Method for manufacturing capacitor of semiconductor memory device
KR20030068662A (en) * 2002-02-15 2003-08-25 임영조 Keyboard having shortening-key function and controlling methode therefor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR200484388Y1 (en) * 2016-05-31 2017-09-01 이재진 Apparatus for terminal input

Similar Documents

Publication Publication Date Title
WO2021196609A1 (en) Interface operation method and apparatus, electronic device, and readable storage medium
US20090144621A1 (en) Recording, playback, and visual representation of macros
US8264381B2 (en) Continuous automatic key control
TWI512565B (en) A touch display device, a method and a recording medium which are dynamically set to touch the closed area
US20180053006A1 (en) Primary device, an accessory device, and methods for processing operations on the primary device and the accessory device
US20160179333A1 (en) System and method for changing the state of user interface element marked on physical objects
CN111833588A (en) Customizable wireless remote control adapter, method and device
WO2015113440A1 (en) System and method for changing the state of user interface element marked on physical objects
US20150294098A1 (en) Information processing device
CN104793851A (en) Method for controlling floating action button of terminal screen
KR101435982B1 (en) Keyboard apparatus with hardware macro features using attachable macro storing cartridge
US8209444B2 (en) Keyboards providing macro functions and macro function setting method using the same, and computer program products thereof
CN105528236A (en) Simulator and content recording and playing method
US20070027668A1 (en) Signal simulator for generating a string of user input signals to stimulate redundant operation of a user input device of a computerized apparatus
KR101402736B1 (en) Apparatus and method for providing keyboard with hardware macro feature
CN102645978B (en) Can simulating keyboard output signal analogue means
JP6392051B2 (en) Electronic device, method and program
TWI530825B (en) Input device and input system with macro record funcions and macro recording method thereof
CN107316259B (en) Learning monitoring method and device
TWI441080B (en) Method of input simulating and input simulating system using the same
EP3922329B1 (en) Self-learning file transmitting, data reading and writing, app communication reading and writing methods of game handle
JP7234431B1 (en) Game system, method, program, server, and player terminal for executing game on player terminal
US11403385B2 (en) Information processing system and information processing method
KR101242594B1 (en) Information processing terminal and method for setting function modes thereof
JP6672399B2 (en) Electronics

Legal Events

Date Code Title Description
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee