KR101583275B1 - A method for operating a smart-phone, and computer readable recording medium storing remote control programs using the same - Google Patents

A method for operating a smart-phone, and computer readable recording medium storing remote control programs using the same Download PDF

Info

Publication number
KR101583275B1
KR101583275B1 KR1020130126154A KR20130126154A KR101583275B1 KR 101583275 B1 KR101583275 B1 KR 101583275B1 KR 1020130126154 A KR1020130126154 A KR 1020130126154A KR 20130126154 A KR20130126154 A KR 20130126154A KR 101583275 B1 KR101583275 B1 KR 101583275B1
Authority
KR
South Korea
Prior art keywords
mode
mouse
keyboard
input signal
generating
Prior art date
Application number
KR1020130126154A
Other languages
Korean (ko)
Other versions
KR20150046660A (en
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 KR1020130126154A priority Critical patent/KR101583275B1/en
Publication of KR20150046660A publication Critical patent/KR20150046660A/en
Application granted granted Critical
Publication of KR101583275B1 publication Critical patent/KR101583275B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • 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
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03543Mice or pucks
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/40Circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality

Abstract

본 발명의 실시예에 따른 스마트폰의 동작 방법은 키보드 모드와 마우스 모드 중 어느 하나가 선택되는 단계 및 상기 선택된 모드에서 입력되는 키보드 입력 신호와 마우스 입력 신호 중 어느 하나가 전송될 전송 방식을 결정하는 단계를 포함한다.A method of operating a smartphone according to an exemplary embodiment of the present invention includes selecting either a keyboard mode or a mouse mode and determining a transmission mode in which one of a keyboard input signal and a mouse input signal input in the selected mode is to be transmitted .

Description

스마트폰의 동작 방법 및 이를 이용한 원격 제어 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체{A method for operating a smart-phone, and computer readable recording medium storing remote control programs using the same}[0001] The present invention relates to a method of operating a smart phone and a computer-readable recording medium storing a remote control program using the same,

본 발명의 개념에 따른 실시예는 스마트폰의 동작 방법 및 이를 이용한 원격 제어 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체에 관한 것으로, 보다 상세하게는 스마트폰을 이용해 스마트 장치의 입력 장치로 이용할 수 있는 스마트폰의 동작 방법 및 이를 이용한 원격 제어 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체에 관한 것이다.An embodiment according to the concept of the present invention relates to a method of operating a smartphone and a computer-readable recording medium storing a remote control program using the same, and more particularly to a computer- The present invention relates to a method of operating a smart phone and a computer readable recording medium storing a remote control program using the same.

최근 TV, 냉장고, 에어컨 등 가전 제품들은 기본적인 기능 이외에 부가적인 기능들을 포함하여 출시되고 있다. 특히, 상기 부가적인 기능은 입력 장치인 리모트 컨트롤러(remote controller)를 통한 세부적인 제어가 필수적인 다양한 기능들을 포함한다. 그러나, 상기 리모트 컨트롤러는 컴퓨터에 사용되는 키보드나 마우스에 비해 문자 입력의 어려움, 신속하고 정확한 제어의 어려움 등의 문제점을 안고 있다.Recently, home appliances such as TVs, refrigerators, and air conditioners have been released including basic functions as well as additional functions. In particular, the additional functions include various functions in which detailed control through a remote controller, which is an input device, is essential. However, the remote controller has problems such as difficulty in inputting characters and difficulty in quick and accurate control as compared with a keyboard or a mouse used in a computer.

또한, 사람의 몸에 부착하여 사용되는 웨어러블 컴퓨터(wearable computer)는 입력 장치로 음성 인식 기술을 이용하나, 상기 음성 인식 기술의 음성 인식률은 상대적으로 낮은 편이므로 불편함을 야기한다. In addition, a wearable computer used for attaching to a human body uses speech recognition technology as an input device, but the speech recognition rate of the speech recognition technology is relatively low, which is inconvenient.

본 발명이 이루고자 하는 과제는 스마트폰을 스마트 장치를 제어하기 위한 입력 장치 즉, 키보드 또는 마우스로 이용할 수 있는 스마트폰의 동작 방법 및 이를 이용한 원격 제어 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체를 제공함에 있다.The present invention provides a method of operating a smart phone that can use a smart phone as an input device for controlling a smart device, that is, a keyboard or a mouse, and a computer-readable recording medium storing a remote control program using the same .

본 발명의 실시예에 따른 스마트폰의 동작 방법은 키보드 모드와 마우스 모드 중 어느 하나가 선택되는 단계 및 상기 선택된 모드에서 입력되는 키보드 입력 신호와 마우스 입력 신호 중 어느 하나가 전송될 전송 방식을 결정하는 단계를 포함한다.A method of operating a smartphone according to an exemplary embodiment of the present invention includes selecting either a keyboard mode or a mouse mode and determining a transmission mode in which one of a keyboard input signal and a mouse input signal input in the selected mode is to be transmitted .

실시예에 따라 상기 선택된 모드에 대응하는 GUI(Graphic User Interface)를 제공하는 단계를 더 포함한다.And providing a GUI (Graphic User Interface) corresponding to the selected mode according to an embodiment.

실시예에 따라 상기 키보드 모드에 대응하는 키보드 GUI에 포함된 복수의 키(key)들 각각에 대응하는 상기 키보드 입력 신호를 생성하는 단계를 더 포함한다.And generating the keyboard input signal corresponding to each of the plurality of keys included in the keyboard GUI corresponding to the keyboard mode according to the embodiment.

실시예에 따라 상기 키보드 입력 신호를 생성하는 단계는 상기 복수의 키(key)들 각각에 대응하는 위치의 터치 스크린에 터치가 감지된 경우 상기 위치에 대응하는 코드를 생성하는 단계 및 상기 코드를 프리앰블(preamble), 식별자(delimiter) 및 CRC(Cyclic Redundancy Checking) 코드를 포함하는 패킷으로 패킷화하는 단계를 포함한다.The generating of the keyboard input signal according to an embodiment may include generating a code corresponding to the position when a touch is detected on a touch screen at a position corresponding to each of the plurality of keys, a packet including a preamble, a delimiter, and a cyclic redundancy checking (CRC) code.

실시예에 따라 상기 패킷은 리틀 엔디안(little endian) 방식의 패킷이다.According to an embodiment, the packet is a little endian packet.

실시예에 따라 상기 마우스 모드에 대응하는 마우스 GUI에 포함된 복수의 버튼들 및 자이로 센서(gyro sensor) 각각에 대응하는 상기 마우스 입력 신호를 생성하는 단계를 더 포함한다.And generating the mouse input signal corresponding to each of the plurality of buttons and the gyro sensor included in the mouse GUI corresponding to the mouse mode according to the embodiment.

실시예에 따라 상기 마우스 입력 신호를 생성하는 단계는 이동 모드에서 상기 복수의 버튼들 중 좌 버튼에 대응하는 위치의 터치 스크린에 터치가 감지된 경우 상기 좌 버튼에 대응하는 코드를 생성하는 단계, 상기 이동 모드에서 상기 자이로 센서가 상기 스마트폰의 X 축 또는 Y 축을 중심으로 기울어진 회전각을 감지하고, 상기 회전각에 따라 결정되는 방향과 속도에 대응하는 코드를 생성하는 단계, 및 상기 코드들을 프리앰블, 식별자 및 CRC 코드를 포함하는 패킷으로 패킷화하는 단계를 포함한다.The generating of the mouse input signal may include generating a code corresponding to the left button when a touch is detected on a touch screen at a position corresponding to a left button among the plurality of buttons in a moving mode, Sensing the rotation angle of the gyro sensor inclined about the X axis or the Y axis of the smartphone in a moving mode and generating a code corresponding to a direction and a speed determined according to the rotation angle, , An identifier, and a CRC code.

실시예에 따라 상기 방향과 상기 속도에 대응하는 코드를 생성하는 단계는 상기 X 축 또는 상기 Y 축을 중심으로 기울어진 상기 회전각의 부호에 따라 상기 방향에 대응하는 코드를 생성하는 단계 및 상기 X 축 또는 상기 Y 축을 중심으로 기울어진 상기 회전각의 크기에 따라 상기 속도에 대응하는 코드를 생성하는 단계를 포함한다.The generating of the code corresponding to the direction and the velocity according to the embodiment may include generating a code corresponding to the direction according to the sign of the rotation angle inclined about the X axis or the Y axis, Or generating a code corresponding to the velocity according to the magnitude of the rotation angle tilted about the Y axis.

실시예에 따라 상기 마우스 입력 신호를 생성하는 단계는 상기 회전각의 기준이 되는 기준선을 재설정하는 단계를 더 포함한다.The step of generating the mouse input signal according to the embodiment may further include the step of resetting a reference line serving as a reference of the rotation angle.

실시예에 따라 상기 마우스 입력 신호를 생성하는 단계는 정지 모드에서 상기 복수의 버튼들 중 좌 버튼 또는 우 버튼에 대응하는 위치의 터치 스크린에 터치가 감지된 경우 상기 좌 버튼 또는 상기 우 버튼에 대응하는 코드를 생성하는 단계, 상기 정지 모드에서 상기 복수의 버튼들 중 스크롤 버튼에 대응하는 위치의 터치 스크린에 터치의 이동이 감지된 경우 상기 터치의 이동에 대응하는 코드를 생성하는 단계 및 상기 코드들을 프리앰블, 식별자 및 CRC 코드를 포함하는 패킷으로 패킷화하는 단계를 포함한다.The generating of the mouse input signal may include generating a mouse input signal corresponding to the left button or the right button when a touch is detected on a touch screen at a position corresponding to a left button or a right button among the plurality of buttons in the stop mode Generating a code corresponding to the movement of the touch when a movement of the touch is detected on a touch screen at a position corresponding to a scroll button among the plurality of buttons in the stop mode, , An identifier, and a CRC code.

실시예에 따라 상기 전송 방식은 블루투스(bluetooth), 와이파이(WiFi), IR(Infrared Ray) 통신, RF(Radio Frequency) 통신 및 초음파 통신 중 어느 하나이다.According to an exemplary embodiment of the present invention, the transmission method is one of Bluetooth, WiFi, IR (infrared ray) communication, RF (Radio Frequency) communication and ultrasonic communication.

실시예에 따라 상기 초음파 통신은 20 KHz 근방의 주파수 대역을 이용한다.According to the embodiment, the ultrasonic communication uses a frequency band in the vicinity of 20 KHz.

본 발명의 실시예에 따른 원격 제어 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체는 키보드 모드와 마우스 모드 중 어느 하나의 모드를 결정하는 모드 결정부 및 상기 결정된 모드에서 입력되는 키보드 입력 신호와 마우스 입력 신호 중 어느 하나가 전송될 전송 방식을 결정하는 전송 결정부를 포함한다.A computer readable recording medium storing a remote control program according to an exemplary embodiment of the present invention includes a mode determination unit for determining a mode of a keyboard mode or a mouse mode, And a transmission determination unit for determining a transmission mode to which one of the signals is to be transmitted.

실시예에 따라 상기 원격 제어 프로그램은 상기 결정된 모드가 상기 키보드 모드인 경우 상기 키보드 모드에 대응하는 키보드 GUI를 제공하고, 상기 키보드 GUI에 포함된 복수의 키(key)들 각각에 대응하는 상기 키보드 입력 신호를 생성하는 키보드 모드 실행부를 더 포함한다.According to an embodiment, the remote control program provides a keyboard GUI corresponding to the keyboard mode when the determined mode is the keyboard mode, and provides the keyboard input corresponding to each of the plurality of keys included in the keyboard GUI, And a keyboard mode execution unit for generating a signal.

실시예에 따라 상기 키보드 모드 실행부는 상기 복수의 키(key)들 각각에 대응하는 위치의 터치 스크린에 터치가 감지된 경우 상기 위치에 대응하는 코드를 생성하고, 상기 코드를 프리앰블(preamble), 식별자(delimiter) 및 CRC(Cyclic Redundancy Checking) 코드를 포함하는 패킷으로 패킷화한다.According to an embodiment, the keyboard mode execution unit may generate a code corresponding to the position when a touch is detected on a touch screen corresponding to each of the plurality of keys, and transmit the code to a preamble, delimiters, and CRC (Cyclic Redundancy Checking) codes.

실시예에 따라 상기 패킷은 리틀 엔디안(little endan) 방식의 패킷이다.According to an embodiment, the packet is a little endian packet.

실시예에 따라 상기 원격 제어 프로그램은 상기 결정된 모드가 상기 마우스 모드인 경우 상기 마우스 모드에 대응하는 마우스 GUI를 제공하고, 상기 마우스 GUI에 포함된 복수의 버튼들 및 자이로 센서(gyro sensor) 각각에 대응하는 상기 마우스 입력 신호를 생성하는 마우스 모드 실행부를 더 포함한다.According to an embodiment, the remote control program provides a mouse GUI corresponding to the mouse mode when the determined mode is the mouse mode, and corresponds to each of a plurality of buttons and a gyro sensor included in the mouse GUI And a mouse mode execution unit for generating the mouse input signal.

실시예에 따라 상기 마우스 모드 실행부는 이동 모드에서 상기 복수의 버튼들 중 좌 버튼에 대응하는 위치의 터치 스크린에 터치가 감지된 경우 상기 좌 버튼에 대응하는 코드를 생성하고, 상기 이동 모드에서 상기 자이로 센서가 상기 스마트폰의 X 축 또는 Y 축을 중심으로 기울어진 회전각을 감지하고, 상기 회전각에 따라 결정되는 방향과 속도에 대응하는 코드를 생성하고, 상기 코드들을 프리앰블, 식별자 및 CRC 코드를 포함하는 패킷으로 패킷화한다.The mouse mode execution unit may generate a code corresponding to the left button when a touch is detected on a touch screen corresponding to a left button among the plurality of buttons in a moving mode, A sensor detects a tilt angle of the smartphone about an X axis or a Y axis, generates a code corresponding to a direction and a speed determined according to the rotation angle, and includes codes including a preamble, an identifier, and a CRC code Into packets.

실시예에 따라 상기 마우스 모드 실행부는 상기 방향과 상기 속도에 대응하는 코드를 생성하는 경우 상기 X 축 또는 상기 Y 축을 중심으로 기울어진 상기 회전각의 부호에 따라 상기 방향에 대응하는 코드를 생성하고, 상기 X 축 또는 상기 Y 축을 중심으로 기울어진 상기 회전각의 크기에 따라 상기 속도에 대응하는 코드를 생성한다.The mouse mode execution unit may generate a code corresponding to the direction according to the sign of the rotation angle inclined about the X axis or the Y axis when generating the code corresponding to the direction and the velocity, And generates a code corresponding to the velocity according to the magnitude of the rotation angle tilted about the X axis or the Y axis.

실시예에 따라 상기 마우스 모드 실행부는 상기 회전각의 기준이 되는 기준선을 재설정한다.According to an embodiment, the mouse mode execution unit resets a reference line serving as a reference of the rotation angle.

실시예에 따라 상기 마우스 모드 실행부는 정지 모드에서 상기 복수의 버튼들 중 좌 버튼 또는 우 버튼에 대응하는 위치의 터치 스크린에 터치가 감지된 경우 상기 좌 버튼 또는 상기 우 버튼에 대응하는 코드를 생성하고, 상기 정지 모드에서 상기 복수의 버튼들 중 스크롤 버튼에 대응하는 위치의 터치 스크린에 터치의 이동이 감지된 경우 상기 터치의 이동에 대응하는 코드를 생성하고, 상기 코드들을 프리앰블, 식별자 및 CRC 코드를 포함하는 패킷으로 패킷화한다.The mouse mode execution unit may generate a code corresponding to the left button or the right button when a touch is detected on the touch screen at a position corresponding to the left button or the right button among the plurality of buttons in the stop mode And generating a code corresponding to the movement of the touch when the movement of the touch is detected on the touch screen at a position corresponding to the scroll button among the plurality of buttons in the stop mode and setting the codes as a preamble, Packetized with the included packet.

실시예에 따라 상기 전송 방식은 블루투스(bluetooth), 와이파이(WiFi), IR(Infrared Ray) 통신, RF(Radio Frequency) 통신 및 초음파 통신 중 어느 하나이다.According to an exemplary embodiment of the present invention, the transmission method is one of Bluetooth, WiFi, IR (infrared ray) communication, RF (Radio Frequency) communication and ultrasonic communication.

실시예에 따라 상기 초음파 통신은 20 KHz 근방의 주파수 대역을 이용한다.According to the embodiment, the ultrasonic communication uses a frequency band in the vicinity of 20 KHz.

본 발명의 실시예에 따른 원격 제어 시스템의 동작 방법은 키보드 모드와 마우스 모드 중 어느 하나가 선택되는 단계, 상기 선택된 모드에서 입력되는 키보드 입력 신호와 마우스 입력 신호 중 어느 하나가 전송될 전송 방식을 결정하는 단계 및 상기 키보드 입력 신호와 상기 마우스 입력 신호를 기초로 신드롬을 생성하고, 상기 신드롬과 1:1로 사상되는 1 비트 에러 또는 2 비트 에러에 대해 에러 정정을 수행하는 단계를 포함한다.A method of operating a remote control system according to an embodiment of the present invention includes selecting a keyboard mode and a mouse mode, determining whether a keyboard input signal and a mouse input signal input in the selected mode are to be transmitted, Generating a syndrome based on the keyboard input signal and the mouse input signal, and performing error correction on a 1-bit error or 2-bit error mapped to the syndrome in a 1: 1 manner.

본 발명의 실시예에 따른 스마트폰의 동작 방법 및 이를 이용한 원격 제어 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체에 의하면, 스마트폰이 사용자에 의해 선택되는 키보드 모드 또는 마우스 모드로 동작하면서 다양한 무선 통신 방식을 통해 스마트 장치의 입력 장치로 사용됨으로써 스마트 장치를 편리하고 정확하게 제어할 수 있는 효과가 있다.According to an operation method of a smartphone and a computer-readable recording medium storing a remote control program using the same, the smartphone operates in a keyboard mode or a mouse mode selected by a user, The smart device can be conveniently and accurately controlled by being used as an input device of the smart device.

도 1은 본 발명의 실시예에 따른 원격 제어 시스템의 블록도이다.
도 2는 도 1에 도시된 스마트폰을 상세히 설명하기 위한 블록도이다.
도 3은 키보드 모드에서 제공되는 키보드 GUI의 일 실시예를 나타낸 도면이다.
도 4는 키보드 모드에서 생성되는 키보드 입력 신호의 일 실시예를 나타낸 도면이다.
도 5는 마우스 모드에서 제공되는 마우스 GUI의 일 실시예를 나타낸 도면이다.
도 6은 스마트폰의 Y 축을 중심으로 기울어진 회전각에 따른 코드의 생성 방법을 설명하기 위한 도면이다.
도 7은 스마트폰의 X 축을 중심으로 기울어진 회전각에 따른 코드의 생성 방법을 설명하기 위한 도면이다.
도 8은 마우스 모드에서 생성되는 마우스 입력 신호의 일 실시예를 나타낸 도면이다.
도 9는 마우스 모드에서 생성되는 마우스 입력 신호의 다른 실시예를 나타낸 도면이다.
도 10은 도 1에 도시된 스마트폰의 동작 방법을 설명하기 위한 흐름도이다.
1 is a block diagram of a remote control system according to an embodiment of the present invention.
FIG. 2 is a block diagram for explaining the smartphone shown in FIG. 1 in detail.
3 is a diagram illustrating an embodiment of a keyboard GUI provided in a keyboard mode.
4 is a diagram illustrating an embodiment of a keyboard input signal generated in a keyboard mode.
5 is a diagram illustrating an embodiment of a mouse GUI provided in a mouse mode.
6 is a diagram for explaining a method of generating a code according to a rotation angle inclined with respect to a Y-axis of a smartphone.
FIG. 7 is a diagram for explaining a method of generating a code according to a rotation angle inclined about the X-axis of a smartphone.
8 is a diagram illustrating an embodiment of a mouse input signal generated in a mouse mode.
9 is a diagram showing another embodiment of a mouse input signal generated in the mouse mode.
FIG. 10 is a flowchart illustrating an operation method of the smartphone shown in FIG. 1. FIG.

본 명세서 또는 출원에 개시되어 있는 본 발명의 실시 예들에 대해서 특정한 구조적 내지 기능적 설명들은 단지 본 발명에 따른 실시 예를 설명하기 위한 목적으로 예시된 것으로, 본 발명에 따른 실시 예들은 다양한 형태로 실시될 수 있으며 본 명세서 또는 출원에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다. Specific structural and functional descriptions of the embodiments of the present invention disclosed herein are for illustrative purposes only and are not to be construed as limitations of the scope of the present invention. And should not be construed as limited to the embodiments set forth herein or in the application.

본 발명에 따른 실시예는 다양한 변경을 가할 수 있고 여러가지 형태를 가질 수 있으므로 특정실시 예들을 도면에 예시하고 본 명세서 또는 출원에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예를 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. The embodiments according to the present invention are susceptible to various changes and may take various forms, so that specific embodiments are illustrated in the drawings and described in detail in this specification or application. It is to be understood, however, that it is not intended to limit the embodiments according to the concepts of the present invention to the particular forms of disclosure, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.

제1 및/또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.The terms first and / or second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are intended to distinguish one element from another, for example, without departing from the scope of the invention in accordance with the concepts of the present invention, the first element may be termed the second element, The second component may also be referred to as a first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다. It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between. Other expressions that describe the relationship between components, such as "between" and "between" or "neighboring to" and "directly adjacent to" should be interpreted as well.

본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가가능성을 미리 배제하지 않는 것으로 이해되어야 한다. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, the terms "comprises ", or" having ", and the like, specify that the presence of stated features, integers, , Steps, operations, components, parts, or combinations thereof, as a matter of principle.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as ideal or overly formal in the sense of the art unless explicitly defined herein Do not.

이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, the present invention will be described in detail with reference to the preferred embodiments of the present invention with reference to the accompanying drawings. Like reference symbols in the drawings denote like elements.

도 1은 본 발명의 실시예에 따른 원격 제어 시스템의 블록도이다.1 is a block diagram of a remote control system according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 실시예에 따른 원격 제어 시스템(10)은 스마트폰(smart phone; 100) 및 스마트 장치(smart device; 200-1, 200-2, 200-3, 200-4 또는 200-5)를 포함할 수 있다. 1, a remote control system 10 according to an embodiment of the present invention includes a smart phone 100 and smart devices 200-1, 200-2, 200-3, 200-4 Or 200-5).

스마트폰(100)은 사용자의 입력에 따른 신호를 무선 통신 방식으로 스마트 장치(200-1~200-5)로 전송할 수 있다. 스마트폰(100)은 전화 기능, 카메라 기능, 동영상 또는 음악 재생 기능, GPS 기능, 어플리케이션(application) 실행 기능 등이 통합된 통상적인 스마트폰으로 구현될 수 있다. The smartphone 100 can transmit a signal according to a user's input to the smart devices 200-1 to 200-5 in a wireless communication manner. The smartphone 100 may be implemented as a general smartphone integrated with a telephone function, a camera function, a moving picture or music reproduction function, a GPS function, an application execution function, and the like.

상기 무선 통신 방식은 전자기파 통신 방식과 초음파 통신 방식을 포함할 수 있다. 상기 전자기파 통신 방식은 IR(Infrared Ray) 통신 방식, 블루투스(bluetooth) 통신 방식, 와이파이(WiFi) 통신 방식, RF(Radio Frequency) 통신 중 어느 하나일 수 있다. 스마트폰(100)은 각각의 전자기파 통신 방식에 대응하는 IR 통신 모듈, 블루투스 통신 모듈, 와이파이 통신 모듈 및 RF 통신 모듈을 포함할 수 있다. 상기 초음파 통신 방식은 가청 주파수 범위를 벗어나는 특정 주파수 대역(예컨대, 20 KHz 근방; 19 KHz 또는 21 KHz)을 이용해 신호를 송수신하는 방식을 의미한다. 스마트폰(100)은 초음파 통신 방식에 대응하는 마이크와 스피커를 포함할 수 있다.The wireless communication method may include an electromagnetic wave communication method and an ultrasonic communication method. The electromagnetic wave communication method may be any one of an infrared (IR) communication method, a bluetooth communication method, a WiFi communication method, and an RF (Radio Frequency) communication method. The smartphone 100 may include an IR communication module, a Bluetooth communication module, a Wi-Fi communication module, and an RF communication module corresponding to respective electromagnetic wave communication methods. The ultrasonic communication method refers to a method of transmitting and receiving a signal using a specific frequency band (for example, around 20 KHz; 19 KHz or 21 KHz) outside the audible frequency range. The smartphone 100 may include a microphone and a speaker corresponding to an ultrasonic communication method.

상기 사용자의 입력에 따른 신호는 키보드 모드 또는 마우스 모드에서 사용자의 입력에 따라 생성되는 신호를 의미한다. 상기 키보드 모드 및 상기 마우스 모드는 각각 키보드 GUI(Graphic User Interface) 및 마우스 GUI를 이용한 사용자의 입력에 대응하는 입력 신호가 생성되는 일련의 과정을 의미한다.The signal according to the input of the user means a signal generated according to a user's input in a keyboard mode or a mouse mode. The keyboard mode and the mouse mode represent a series of processes in which an input signal corresponding to a user's input using a keyboard GUI (Graphic User Interface) and a mouse GUI is generated, respectively.

스마트 장치(200-1~200-5)는 스마트폰(100)과 신호를 상기 무선 통신 방식으로 송수신할 수 있는 장치로서, 특히, 스마트폰(100)이 전송한 사용자의 입력에 따른 신호에 의해 제어될 수 있다. 예컨대, 스마트 장치(200-1~200-5)는 스마트 TV(smart TV; 200-1), 노트북(notebook; 200-2), 냉장고(200-3), 에어콘(200-4) 또는 자동차(200-5)일 수 있다. 이외에도 스마트 장치(200-1~200-5)는 입는 로봇(robot), 군용 헬멧 고글 등의 웨어러블 컴퓨터(wearable computer) 또는 네비게이터(navigator) 등 스마트폰(100)과 신호를 상기 무선 통신 방식으로 송수신할 수 있는 장치일 수 있다.The smart devices 200-1 to 200-5 are devices capable of transmitting and receiving a signal to and from the smartphone 100 by the wireless communication method, Lt; / RTI > For example, the smart devices 200-1 to 200-5 may include a smart TV 200-1, a notebook 200-2, a refrigerator 200-3, an air conditioner 200-4, 200-5). In addition, the smart devices 200-1 to 200-5 can transmit and receive a signal to and from the smartphone 100, such as a wearable computer or a navigator, such as a robot, a military helmet goggle, It may be a device that can do this.

실시예에 따라 스마트 장치(200-1~200-5)는 후술할 표 1에서 설명하는 바와 같이 스마트 장치(200-1~200-5)는 스마트폰(100)이 전송한 사용자의 입력에 따른 신호(도 2의 키보드 입력 신호와 마우스 입력 신호)를 기초로 신드롬을 생성하고, 상기 신드롬과 1:1로 사상되는 1 비트 에러 또는 2 비트 에러에 대해 에러 정정을 수행할 수 있다.The smart devices 200-1 to 200-5 are connected to the smart devices 200-1 to 200-5 according to the input of the user transmitted by the smartphone 100, A syndrome is generated based on a signal (a keyboard input signal and a mouse input signal in FIG. 2), and error correction is performed for a 1-bit error or a 2-bit error mapped in a 1: 1 manner with the syndrome.

도 2는 도 1에 도시된 스마트폰을 상세히 설명하기 위한 블록도이다.FIG. 2 is a block diagram for explaining the smartphone shown in FIG. 1 in detail.

도 1 및 도 2를 참조하면, 스마트폰(100)은 하드웨어 영역(hardware area)과 소프트웨어 영역(software area)을 포함할 수 있다. 1 and 2, the smartphone 100 may include a hardware area and a software area.

하드웨어 영역은 중앙 처리부(CPU:Central Processing Unit, 102), 입력부(input device, 104), 디스플레이부(display unit, 108) 및 네트워크 인터페이스(network interface, 109)를 포함할 수 있다.The hardware area may include a central processing unit (CPU) 102, an input device 104, a display unit 108, and a network interface 109.

중앙 처리부(102)는 스마트폰(100)의 전반적인 동작을 제어할 수 있다. 중앙 처리부(102)는 입력 장치(104)를 통해 입력되는 사용자의 명령에 따라 키보드 모드 또는 마우스 모드에서의 동작을 처리할 수 있다.The central processing unit 102 can control the overall operation of the smartphone 100. [ The central processing unit 102 may process an operation in a keyboard mode or a mouse mode according to a user's command input through the input device 104. [

입력부(104)는 터치 스크린(touch screen; 105) 및 자이로 센서(gyro sensor; 106)를 포함할 수 있다.The input unit 104 may include a touch screen 105 and a gyro sensor 106.

터치 스크린(105)은 터치 패널 상에 사용자가 터치하는 위치를 감지하고, 상기 위치에 상응하는 터치 신호를 생성할 수 있다.The touch screen 105 may sense a position of a user's touch on the touch panel and may generate a touch signal corresponding to the position.

자이로 센서(106)는 중력 방향에 대해 스마트폰(100)이 기울어진 회전각을 감지하고, 상기 회전각에 상응하는 회전 신호를 생성할 수 있다.The gyro sensor 106 may sense the angle of rotation of the smartphone 100 with respect to the direction of gravity and generate a rotation signal corresponding to the angle of rotation.

디스플레이부(108)는 중앙 처리부(102)로부터 데이터를 전송받아 키보드 GUI 또는 마우스 GUI를 디스플레이할 수 있다.The display unit 108 may receive data from the central processing unit 102 and display a keyboard GUI or a mouse GUI.

네트워크 인터페이스(109)는 스마트폰(100)의 무선 통신 방식을 통한 스마트 장치(200-1~200-5)와의 데이터 송수신을 담당할 수 있다. 상기 무선 통신 방식은 도 1에서 설명한 바와 같이 전자기파 통신 방식과 초음파 통신 방식을 포함할 수 있으며, 이를 위해 네트워크 인터페이스(109)는 IR 통신 모듈, 블루투스 통신 모듈, 와이파이 통신 모듈, RF 통신 모듈, 마이크 및 스피커를 포함할 수 있다.The network interface 109 can transmit and receive data to / from the smart devices 200-1 to 200-5 through the wireless communication method of the smartphone 100. [ 1, the network interface 109 may include an IR communication module, a Bluetooth communication module, a Wi-Fi communication module, an RF communication module, a microphone and a wireless communication module. Speakers.

소프트웨어 영역은 중앙 처리부(102)에 의해 실행될 수 있는 프로그램의 형태로 스마트폰(100)에 포함된 메모리(memory, 미도시)에 저장될 수 있다. 상기 메모리는 플래시 메모리(flash memory) 등의 비휘발성 메모리(non-volatile memory) 또는 DRAM(Dynamic Random Access Memory)등의 휘발성 메모리로 구현될 수 있다.The software area may be stored in a memory (not shown) included in the smartphone 100 in the form of a program that can be executed by the central processing unit 102. [ The memory may be implemented as a non-volatile memory such as a flash memory or a volatile memory such as a dynamic random access memory (DRAM).

실시예에 따라 소프트웨어 영역은 스마트폰의 어플리케이션(application)으로 구현될 수 있고, 본 명세서에서 설명되는 키보드 모드와 마우스 모드를 제공하는 어플리케이션을 '스마트 입력 앱'이라 가정한다. 즉, 상기 소프트웨어 영역은 스마트폰(100)에 설치되어 스마트 장치(200-1~200-5)를 제어하기 위한 원격 제어 프로그램의 일종이다.According to the embodiment, the software area may be implemented as an application of a smart phone, and an application providing a keyboard mode and a mouse mode described herein is assumed to be a " smart input application. &Quot; That is, the software area is a kind of remote control program installed in the smartphone 100 to control the smart devices 200-1 to 200-5.

소프트웨어 영역은 모드 결정부(110), 키보드 모드 실행부(120), 마우스 모드 실행부(130) 및 전송 결정부(140)를 포함할 수 있다.The software area may include a mode determination unit 110, a keyboard mode execution unit 120, a mouse mode execution unit 130, and a transmission determination unit 140.

모드 결정부(110)는 키보드 모드 또는 마우스 모드를 선택할 수 있는 GUI를 제공할 수 있다. 사용자는 키보드 모드 또는 마우스 모드 중 어느 하나를 선택할 수 있다. 모드 결정부(110)는 사용자가 선택한 모드에 따라 키보드 모드 실행부(120) 또는 마우스 모드 실행부(130)를 활성화 할 수 있다.The mode determination unit 110 may provide a GUI capable of selecting a keyboard mode or a mouse mode. The user can select either the keyboard mode or the mouse mode. The mode determination unit 110 may activate the keyboard mode execution unit 120 or the mouse mode execution unit 130 according to the mode selected by the user.

키보드 모드 실행부(120)는 사용자에 의해 키보드 모드가 선택된 경우 활성화되며, 키보드 모드 실행부(120)는 상기 키보드 모드에 대응하는 키보드 GUI를 디스플레이부(108)를 통해 제공할 수 있다.The keyboard mode execution unit 120 is activated when the keyboard mode is selected by the user and the keyboard mode execution unit 120 can provide the keyboard GUI corresponding to the keyboard mode through the display unit 108. [

상기 키보드 GUI는 도 3에 도시된 것처럼 복수의 키(key)들을 포함할 수 있다. 사용자가 상기 복수의 키들 중 특정 키를 누르는 경우, 터치 스크린(105)은 사용자가 터치하는 위치를 감지하고 상기 위치에 상응하는 터치 신호를 생성할 수 있다. 키보드 모드 실행부(120)는 상기 터치 신호가 키보드 GUI 상의 어느 키에 해당하는지 판단하여 판단 결과에 따라 키보드 GUI 상의 특정 키에 상응하는 코드를 생성할 수 있다.The keyboard GUI may include a plurality of keys as shown in FIG. When the user presses a specific key among the plurality of keys, the touch screen 105 may sense a position touched by the user and generate a touch signal corresponding to the position. The keyboard mode execution unit 120 may determine which key on the keyboard GUI the touch signal corresponds to and generate a code corresponding to a specific key on the keyboard GUI according to the determination result.

키보드 모드 실행부(120)는 상기 생성된 코드를 패킷화하여, 패킷 단위의 키보드 입력 신호를 생성할 수 있다. The keyboard mode execution unit 120 may packetize the generated code to generate a keyboard input signal in units of packets.

상기 키보드 GUI와 상기 키보드 입력 신호와 관련된 키보드 모드 실행부(120)의 상세한 동작은 도 3과 도 4를 참조하여 후술하기로 한다.The detailed operation of the keyboard GUI and the keyboard mode execution unit 120 related to the keyboard input signal will be described later with reference to FIG. 3 and FIG.

마우스 모드 실행부(130)는 사용자에 의해 마우스 모드가 선택된 경우 활성화되며, 마우스 모드 실행부(130)는 상기 마우스 모드에 대응하는 마우스 GUI를 디스플레이부(108)를 통해 제공할 수 있다.The mouse mode execution unit 130 is activated when the mouse mode is selected by the user and the mouse mode execution unit 130 can provide the mouse GUI corresponding to the mouse mode through the display unit 108. [

상기 마우스 GUI는 도 5에 도시된 것처럼 복수의 버튼(button)들을 포함할 수 있다. 사용자가 상기 복수의 버튼들 중 특정 버튼을 누르는 경우, 터치 스크린(105)은 사용자가 터치하는 위치를 감지하고 상기 위치에 상응하는 터치 신호를 생성할 수 있다. 마우스 모드 실행부(130)는 상기 터치 신호가 마우스 GUI 상의 어느 버튼에 해당하는지 판단하여 판단 결과에 따라 마우스 GUI 상의 특정 버튼에 상응하는 코드를 생성할 수 있다. The mouse GUI may include a plurality of buttons as shown in FIG. When the user presses a specific button among the plurality of buttons, the touch screen 105 may sense a position touched by the user and generate a touch signal corresponding to the position. The mouse mode execution unit 130 may determine which button on the mouse GUI the touch signal corresponds to and generate a code corresponding to a specific button on the mouse GUI according to the determination result.

또한, 사용자가 스마트폰(100)을 중력 방향에 대해 일정 각도 이상 기울이는 경우, 자이로 센서(106)가 스마트폰(100)이 기울어진 회전각을 감지하여 상기 회전각에 상응하는 회전 신호를 생성하고, 마우스 모드 실행부(130)는 상기 회전각의 부호와 크기에 대응하는 코드를 생성할 수 있다.In addition, when the user tilts the smartphone 100 more than a predetermined angle with respect to the gravity direction, the gyro sensor 106 senses the tilted rotation angle of the smartphone 100 and generates a rotation signal corresponding to the rotation angle , The mouse mode execution unit 130 may generate a code corresponding to the sign and magnitude of the rotation angle.

마우스 모드 실행부(130)는 상기 생성된 코드를 패킷화하여, 패킷 단위의 마우스 입력 신호를 생성할 수 있다. The mouse mode execution unit 130 may packetize the generated code to generate a mouse input signal in units of packets.

상기 마우스 GUI와 상기 마우스 입력 신호와 관련된 마우스 모드 실행부(130)의 상세한 동작은 도 5 내지 도 9를 참조하여 후술하기로 한다.The detailed operation of the mouse mode execution unit 130 related to the mouse GUI and the mouse input signal will be described later with reference to FIGS. 5 to 9. FIG.

전송 결정부(140)는 키보드 모드 실행부(120) 또는 마우스 모드 실행부(130)가 생성한 키보드 입력 신호 또는 마우스 입력 신호가 전송될 전송 방식을 결정할 수 있다. 상기 전송 방식은 도 1에서 설명한 무선 통신 방식 즉, 전자기파 통신 방식과 초음파 통신 방식일 수 있다. The transmission determination unit 140 may determine a transmission mode to which the keyboard input signal or the mouse input signal generated by the keyboard mode execution unit 120 or the mouse mode execution unit 130 is to be transmitted. The transmission method may be a wireless communication method described with reference to FIG. 1, that is, an electromagnetic wave communication method and an ultrasonic communication method.

전송 결정부(140)는 복수의 무선 통신 방식들 중 어느 하나를 선택할 수 있는 GUI를 제공할 수 있다. 전송 결정부(140)는 사용자가 상기 GUI를 통해 선택한 무선 통신 방식에 따라 상기 전송 방식을 결정할 수 있다. 전송 결정부(140)는 상기 결정된 전송 방식에 따라 네트워크 인터페이스(108)가 상기 키보드 입력 신호 또는 상기 마우스 입력 신호를 스마트 장치(200-1~200-5)로 전송하도록 제어할 수 있다.The transmission determination unit 140 may provide a GUI that can select any one of a plurality of wireless communication schemes. The transmission determination unit 140 may determine the transmission mode according to the wireless communication scheme selected by the user through the GUI. The transmission determination unit 140 may control the network interface 108 to transmit the keyboard input signal or the mouse input signal to the smart devices 200-1 to 200-5 according to the determined transmission mode.

도 3은 키보드 모드에서 제공되는 키보드 GUI의 일 실시예를 나타낸 도면이다.3 is a diagram illustrating an embodiment of a keyboard GUI provided in a keyboard mode.

도 1 내지 도 3을 참조하면, 키보드 GUI(300)는 키보드 모드에서 디스플레이부(108)에 의해 스마트폰(100)의 화면 상에 표시될 수 있다. 1 to 3, the keyboard GUI 300 may be displayed on the screen of the smartphone 100 by the display unit 108 in the keyboard mode.

키보드 GUI(300)는 복수의 키들(310)과 마우스 모드 전환 버튼(320)을 포함할 수 있다. 복수의 키들(310)은 통상적인 PC(Personal Computer) 또는 노트북의 키보드와 동일한 배열과 위치로 표시될 수 있다. 이로 인해, 사용자는 키보드를 조작하는 듯한 실제감을 느낄 수 있다.The keyboard GUI 300 may include a plurality of keys 310 and a mouse mode switching button 320. The plurality of keys 310 may be displayed in the same arrangement and position as a conventional personal computer (PC) or a keyboard of a notebook computer. As a result, the user can feel the actual feeling as if the user is operating the keyboard.

사용자가 복수의 키들(310) 중 특정키(예컨대, 알파벳 A)를 터치하는 경우, 터치 스크린(105)은 사용자가 터치하는 위치를 감지하고 상기 위치에 상응하는 터치 신호를 생성할 수 있다. 키보드 모드 실행부(120)는 상기 터치 신호가 키보드 GUI(300) 상의 어느 키에 해당하는지 판단하여 판단 결과에 따라 키보드 GUI 상의 특정 키에 상응하는 코드를 생성할 수 있다. 예컨대, 상기 터치 신호가 키보드 GUI(300) 상의 알파벳 A에 해당할 경우 키보드 모드 실행부(120)는 알파벳 A에 해당하는 이진 코드(0x 1C = 0001 1100(2))를 생성할 수 있다.When the user touches a specific key (e.g., alphabet A) among the plurality of keys 310, the touch screen 105 may sense a position touched by the user and generate a touch signal corresponding to the touched position. The keyboard mode execution unit 120 may determine which key on the keyboard GUI 300 the touch signal corresponds to and generate a code corresponding to a specific key on the keyboard GUI according to the determination result. For example, when the touch signal corresponds to the alphabet A on the keyboard GUI 300, the keyboard mode execution unit 120 may generate a binary code corresponding to the alphabet A (0x 1C = 0001 1100 (2)).

사용자가 마우스 모드 전환 버튼(320)을 터치하는 경우, 터치 스크린(105)은 사용자가 터치하는 위치를 감지하고 상기 위치에 상응하는 터치 신호를 생성할 수 있다. 키보드 모드 실행부(120)는 상기 터치 신호가 마우스 모드 전환 버튼(320)에 해당하는 경우 마우스 모드 실행부(130)가 실행될 수 있다.When the user touches the mouse mode switching button 320, the touch screen 105 may sense a position touched by the user and generate a touch signal corresponding to the position. The keyboard mode execution unit 120 may execute the mouse mode execution unit 130 when the touch signal corresponds to the mouse mode switching button 320. [

도 4는 키보드 모드에서 생성되는 키보드 입력 신호의 일 실시예를 나타낸 도면이다. 4 is a diagram illustrating an embodiment of a keyboard input signal generated in a keyboard mode.

도 1 내지 도 4를 참조하면, 키보드 모드 실행부(120)가 생성하는 키보드 입력 신호(packet1)가 도시되어 있다. 키보드 입력 신호(packet1)는 1 byte 또는 2 byte 단위로 구성될 수 있으나, 본 발명의 범위는 이에 한정되지 않는다.1 to 4, a keyboard input signal (packet1) generated by the keyboard mode execution unit 120 is shown. The keyboard input signal (packet1) may be configured in units of 1 byte or 2 bytes, but the scope of the present invention is not limited thereto.

도 4에서는 특정 키에 대응하는 코드 이외의 부가 정보를 포함하는 2 byte 단위의 키보드 입력 신호(packet1)를 설명하기로 한다. 키보드 입력 신호(packet1)는 프리앰블(preamble), 식별자(delimiter), 문자 데이터(charactor data) 및 CRC(Cyclic Redundancy Checking) 코드를 포함하는 하나의 패킷으로 구성될 수 있다. 실시예에 따라 키보드 입력 신호(packet1)는 최상위 비트부터 앞에 나오는 방식인 빅 엔디안(bic endian) 방식의 패킷 또는 최하위 비트부터 앞에 나오는 방식인 리틀 엔디안(little endian) 방식의 패킷으로 구현될 수 있다.4, a description will be given of a keyboard input signal (packet1) in units of 2 bytes including additional information other than code corresponding to a specific key. The keyboard input signal packet1 may be composed of one packet including a preamble, an identifier, character data, and a cyclic redundancy checking (CRC) code. According to the embodiment, the keyboard input signal (packet1) may be implemented as a bic endian type packet, which precedes the most significant bit, or a little endian type packet, which precedes the least significant bit.

프리앰블은 무선 채널에서 간헐적으로 발생하는 패킷이 존재할 때, 스마트 장치(200-1~200-5)가 비트 동기를 잡을 수 있도록 최소한의 길이를 유지해야 한다.The preamble must maintain a minimum length so that the smart devices 200-1 to 200-5 can receive bit synchronization when there are intermittently generated packets in the wireless channel.

식별자는 비트 동기를 획득한 후에 패킷의 동기를 획득하기 위한 비트 패턴을 의미한다. 또한, 식별자는 현재의 모드 정보 즉, 키보드 모드에서의 정보인지 또는 마우스 모드에서의 정보인지에 대한 정보를 포함한다. 예컨대, 식별자에 포함된 마지막 비트가 0인 경우 현재의 모드는 키보드 모드이고, 1인 경우 현재의 모드는 마우스 모드일 수 있다.The identifier is a bit pattern for acquiring the synchronization of the packet after acquiring the bit synchronization. In addition, the identifier includes information on current mode information, that is, information in the keyboard mode or information in the mouse mode. For example, if the last bit included in the identifier is 0, the current mode is the keyboard mode, and if it is 1, the current mode may be the mouse mode.

프리앰블과 식별자 각각의 패턴과 길이는 '스마트 입력 앱'의 환경 설정에서 그 값을 결정할 수 있도록 프로그램될 수 있다.The pattern and length of each preamble and identifier can be programmed to determine its value in the configuration of the 'smart input application'.

문자 데이터는 키보드 모드 실행부(120)가 생성하는 키보드 GUI 상의 특정 키에 상응하는 코드일 수 있다. 예컨대, 상기 코드는 기존의 유선 키보드에서 사용되는 8 bit의 키보드 매핑 값을 그대로 따른다. 즉, 알파벳 A가 터치된 경우 상기 문자 데이터는 0x 1C(0001 1100)이고, 알파벳 B가 터치된 경우 상기 문자 데이터는 0x 32(0011 0010)의 값을 가진다.The character data may be a code corresponding to a specific key on the keyboard GUI generated by the keyboard mode execution unit 120. For example, the code follows the 8 bit keyboard mapping value used in a conventional wired keyboard. That is, when the alphabet A is touched, the character data is 0x1C (0001 1100), and when the alphabet B is touched, the character data has a value of 0x32 (0011 0010).

CRC 코드는 주변의 잡음에 의해 키보드 입력 신호(packet1)가 무선 전송 도중 왜곡될 수 있으므로, 스마트 장치(200-1~200-5) 측에서 에러를 정정하기 위한 에러 정정 코드이다. The CRC code is an error correction code for correcting an error in the smart devices 200-1 to 200-5 because the keyboard input signal (packet1) may be distorted during radio transmission due to surrounding noise.

예컨대, CRC 코드가 프리앰블과 식별자를 제외한 문자 데이터에 대해 생성된다고 가정하고 CRC 코드의 생성 방법을 설명하기로 한다.For example, it is assumed that a CRC code is generated for character data excluding a preamble and an identifier, and a CRC code generation method will be described.

CRC 코드의 생성 방법은 8 bit의 문자 데이터를 8 비트만큼 왼쪽으로 자리이동(8bit shift left)을 하고, 나머지가 들어갈 빈 자리에는 일단 0000 0000을 채워둔다. 상기 문자 데이터의 8bit와 상기 채워진 8bit(0000 0000) 즉, 16 비트를 생성다항식으로 나눈 후에 발생하는 나머지가 CRC 코드로 생성된다. 상기 생성 다항식은 g(x)=x8+x2+x+1에 해당하며, 상기 생성 다항식에 해당하는 이진 코드는 1 0000 0111이다. 나눗셈을 수행할 때, 자리 올림이나 빌림이 없는 XOR(exclusive OR) 연산이 사용된다. In the CRC code generation method, the 8-bit character data is shifted to the left by 8 bits (8-bit shift left), and the remaining space is filled with 0000 0000. The remainder generated after dividing the 8 bits of the character data and the filled 8 bits (0000 0000), i.e., 16 bits, by the generator polynomial is generated as a CRC code. The generator polynomial corresponds to g (x) = x8 + x2 + x + 1, and the binary code corresponding to the generator polynomial is 1 0000 0111. When performing division, an XOR (exclusive OR) operation with no carry or lease is used.

스마트 장치(200-1~200-5)는 프리앰블과 식별자를 통해 패킷 동기를 추출한 후, 문자 데이터와 CRC 코드에 대하여 상기 생성 다항식에 해당하는 이진 코드(1 0000 0111)를 이용하여 나눗셈을 수행한다. 이때, 자리 올림이나 빌림이 없는 XOR 연산을 이용한다. 16 비트의 문자 데이터와 CRC 코드를 상기 생성 다항식에 해당하는 이진 코드(1 0000 0111)로 나누면 8비트의 나머지가 발생하는데 이를 신드롬 (Syndrome)이라 하며 256 가지의 증상이 존재할 수 있다. 이 신드롬 값에 따라 에러가 없는 경우, 1 개의 에러 비트가 존재하는 단일 비트 에러, 2 개의 에러 비트가 존재하는 두 비트 에러, 3 개 이상의 에러 비트가 존재하는 에러로 분류할 수 있다. The smart devices 200-1 to 200-5 extract packet synchronization using the preamble and the identifier, and then perform division using the binary code (0000 0111) corresponding to the generation polynomial for the character data and the CRC code . At this time, XOR operation without carry-up or lease is used. If the 16-bit character data and the CRC code are divided by the binary code (0000 0111) corresponding to the generator polynomial, the remaining 8 bits are generated. This is called a syndrome and 256 kinds of symptoms may exist. If there is no error according to the syndrome value, it can be classified into a single bit error in which one error bit exists, a two bit error in which two error bits exist, and an error in which there are three or more error bits.

이 중에서 16 비트의 문자 데이터와 CRC 코드에 존재할 수 있는 16 가지의 모든 단일 비트 에러는 각 신드롬과 1대1로 사상(mapping)되므로 에러 정정이 가능하며, 이 방법은 국제적으로 널리 사용되는 방법이다. 여기서 추가적으로 2 비트 에러를 정정하는 방법을 제시하고자 한다.Among them, 16 all single bit errors that can exist in 16 bit character data and CRC code are mapped to each syndrome one by one, so that error correction is possible and this method is widely used internationally . Here, we propose a method to further correct 2-bit error.

Figure 112013095532709-pat00001
Figure 112013095532709-pat00001

표 1은 각 신드롬과 유일하게 사상 즉, 1대1로 사상되는 두 비트 에러의 위치를 나타낸다. 16 비트의 문자 데이터와 CRC 코드에 존재할 수 있는 120 가지의 두 비트 에러 중에서 표 1에 나타난 48 종류는 신드롬과 1 대 1로 사상되고, 나머지 72 종류는 신드롬과 다 대 1로 사상된다. 예컨대, 신드롬이 0001 0001일 때 문자 데이터와 CRC 코드에 가능한 에러는 0000 0000 0001 0001 만이 존재하며, 신드롬이 0000 0011일 때 문자 데이터와 CRC 코드에 가능한 에러는 0000 0000 0000 0011 또는 0000 0001 0000 0100가 존재한다. 이 때, 표 1에 나타난 48 가지의 두 비트 에러는 정정 가능하게 된다. 그러므로 표 1과 같은 신드롬을 가질 때는 에러 위치에 해당하는 2 바이트 값과 수신된 2 바이트의 패킷을 XOR 연산하면 2 비트의 에러를 수정할 수 있게 된다. 이는 매우 단순하게 2 비트 에러까지도 수정할 수 있는 효율적인 방법이다.도 5는 마우스 모드에서 제공되는 마우스 GUI의 일 실시예를 나타낸 도면이다. 도 6은 스마트폰의 Y 축을 중심으로 기울어진 회전각에 따른 코드의 생성 방법을 설명하기 위한 도면이다. 도 7은 스마트폰의 X 축을 중심으로 기울어진 회전각에 따른 코드의 생성 방법을 설명하기 위한 도면이다. Table 1 shows the positions of the two bit errors that are mapped to each syndrome, that is, one-to-one. Among the 120 types of two bit errors that can exist in 16 bit character data and CRC code, 48 types shown in Table 1 are mapped to the syndrome and one to one, and the remaining 72 types are mapped to the syndrome and many to one. For example, when the syndrome is 0001 0001, only errors 0000 0000 0001 0001 exist in the character data and the CRC code. When the syndrome is 0000 0011, possible errors in the character data and the CRC code are 0000 0000 0000 0011 or 0000 0001 0000 0100 exist. At this time, the 48 two-bit errors shown in Table 1 become correctable. Therefore, when a syndrome as shown in Table 1 is obtained, an error of two bits can be corrected by XORing a 2-byte value corresponding to an error position and a received 2-byte packet. This is an efficient way to modify even a 2 bit error very simply. Figure 5 is an illustration of an embodiment of a mouse GUI provided in a mouse mode. 6 is a diagram for explaining a method of generating a code according to a rotation angle inclined with respect to a Y-axis of a smartphone. FIG. 7 is a diagram for explaining a method of generating a code according to a rotation angle inclined about the X-axis of a smartphone.

도 1 내지 도 7을 참조하면, 마우스 GUI(400)는 복수의 버튼들(410, 420, 430)과 키보드 모드 전환 버튼(440)을 포함할 수 있다. 복수의 버튼들(410, 420, 430)은 좌 버튼(410), 우 버튼(420) 및 스크롤 버튼(430)을 포함하며, 각각의 버튼들은 통상적인 PC 또는 노트북에 사용되는 3 버튼 마우스와 동일한 배열과 위치로 표시될 수 있다. 이로 인해, 사용자는 마우스를 조작하는 듯한 실제감을 느낄 수 있다.Referring to FIGS. 1 to 7, the mouse GUI 400 may include a plurality of buttons 410, 420, and 430, and a keyboard mode switching button 440. The plurality of buttons 410, 420, and 430 include a left button 410, a right button 420, and a scroll button 430, and each button is the same as a conventional 3-button mouse used in a PC or a notebook It can be displayed as an array and position. As a result, the user can feel the actual feeling as if the user is operating the mouse.

사용자가 좌 버튼(410) 또는 우 버튼(420)을 터치하는 경우, 터치 스크린(105)은 사용자가 터치하는 위치를 감지하고 상기 위치에 상응하는 터치 신호를 생성할 수 있다. 마우스 모드 실행부(130)는 상기 터치 신호가 마우스 GUI(400) 상의 어느 버튼에 해당하는지 판단하여 판단 결과에 따라 마우스 GUI 상(400)의 좌 버튼 또는 우 버튼에 상응하는 코드를 생성할 수 있다. When the user touches the left button 410 or the right button 420, the touch screen 105 may sense a position touched by the user and generate a touch signal corresponding to the position. The mouse mode execution unit 130 may determine which button on the mouse GUI 400 the touch signal corresponds to and generate a code corresponding to the left button or the right button of the mouse GUI image 400 according to the determination result .

사용자가 스크롤 버튼(430)을 터치한 상태에서 상/하/좌/우로 이동하면서 터치하는 경우, 터치 스크린(105)은 사용자의 터치의 이동을 감지하고 상기 터치의 이동에 상응하는 터치 신호를 생성할 수 있다. 마우스 모드 실행부(130)는 상기 터치 신호가 마우스 GUI(400) 상의 스크롤 버튼(430)에 해당하는 경우 이후 연속적으로 입력되는 터치 신호가 스크롤 버튼(430)의 상/하/좌/우 중 어디에 해당하는지, 얼마나 빠르게 입력되는지 판단하여 판단 결과에 따라 위로 스크롤, 아래로 스크롤, 좌로 스크롤 및 우로 스크롤 중 어느 하나와 그 방향으로의 속도에 상응하는 코드를 생성할 수 있다. When the user touches the scroll button 430 while moving upward / downward / leftward / rightward, the touch screen 105 senses movement of the user's touch and generates a touch signal corresponding to the movement of the touch can do. When the touch signal corresponds to the scroll button 430 on the mouse GUI 400, the mouse mode execution unit 130 outputs a touch signal continuously inputted to the mouse mode execution unit 430 in any of the up, down, left, and right directions of the scroll button 430 It is possible to generate a code corresponding to the speed in any one of the upward scrolling, the downward scrolling, the leftward scrolling, and the rightward scrolling according to the determination result.

사용자가 스마트폰(100)의 X 축 또는 Y 축을 중심으로 기울이는 경우 자이로 센서(106)는 기울어진 회전각을 감지하여 회전 신호를 생성할 수 있다. 스마트폰(100)의 화면을 정면으로 보았을 때, 스마트폰(100)의 오른쪽 방향은 X 축으로 정의되고, 스마트폰(100)의 위쪽 방향은 Y 축으로 정의되고, 스마트폰(100)의 화면의 위쪽 방향은 Z 축으로 정의된다고 가정한다.When the user tilts about the X axis or the Y axis of the smartphone 100, the gyro sensor 106 may sense a tilted rotation angle and generate a rotation signal. The right direction of the smartphone 100 is defined as the X axis and the upward direction of the smartphone 100 is defined as the Y axis when the screen of the smartphone 100 is viewed in front, Is defined as the Z-axis.

상기 회전각은 스마트폰(100)의 X 축 또는 Y 축을 중심으로 기울어진 각을 의미하고, +180 도 ~ -180 도의 범위를 가질 수 있다.The rotation angle refers to an angle that is inclined with respect to the X axis or the Y axis of the smartphone 100, and may have a range from +180 degrees to -180 degrees.

마우스 모드 실행부(130)는 자이로 센서(106)가 생성한 회전 신호에 대응하는 스마트폰(100)의 X 축 또는 Y 축을 중심으로 기울어진 회전각에 따라 결정되는 방향과 속도에 대응하는 코드를 생성할 수 있다.The mouse mode execution unit 130 generates a code corresponding to the direction and speed determined according to the rotation angle inclined about the X axis or the Y axis of the smartphone 100 corresponding to the rotation signal generated by the gyro sensor 106 Can be generated.

도 6에 도시된 바와 같이 Y 축을 중심으로 기울어진 회전각은 다수의 구간들(α, β0~βn, -β0~-βn, δ) 중 어느 하나에 해당할 수 있다. 도 7에 도시된 바와 같이 X 축을 중심으로 기울어진 회전각은 다수의 구간들(α, β0~βn, -β0~-βn, δ) 중 어느 하나에 해당할 수 있다. As shown in FIG. 6, the rotation angle inclined about the Y-axis may correspond to any one of a plurality of intervals (?,? 0 to? N, -β0 to-? N,?). As shown in FIG. 7, the rotation angle inclined with respect to the X axis may correspond to any one of a plurality of sections (?,? 0 to? N, -β0 to -βn, and?).

마우스 모드 실행부(130)는 Y 축을 중심으로 기울어진 회전각과 X 축을 중심으로 기울어진 회전각이 모두 α 또는 δ 구간에 해당할 경우 정지 모드로 판단할 수 있다.The mouse mode execution unit 130 can determine that the mouse mode is the stop mode when the rotation angle inclined about the Y axis and the rotation angle inclined about the X axis all correspond to the alpha or delta interval.

마우스 모드 실행부(130)는 정지 모드에서는 좌 버튼(410)과 우 버튼(420) 또는 스크롤 버튼(430)에 대응하는 위치에 터치 또는 터치의 이동이 감지되는지 여부에 따라 좌 버튼(410)과 우 버튼(420) 또는 상/하/좌/우 스크롤에 대응하는 코드를 생성할 수 있다.In the stop mode, the mouse mode execution unit 130 displays the left button 410 and the right button 420 according to whether a movement of a touch or a touch is detected at a position corresponding to the left button 410, the right button 420, Right button 420 or a code corresponding to the up / down / left / right scroll.

마우스 모드 실행부(130)는 Y 축을 중심으로 기울어진 회전각과 X 축을 중심으로 기울어진 회전각 중 어느 하나라도 α 구간과 δ 구간 이외의 구간에 해당할 경우 이동 모드로 판단할 수 있다. The mouse mode execution unit 130 can determine the movement mode when any one of the rotation angle inclined about the Y axis and the rotation angle inclined about the X axis corresponds to a section other than the alpha section and the delta section.

이동 모드에서 마우스 모드 실행부(130)는 Y 축을 중심으로 기울어진 회전각의 부호가 (+)인 경우(도 6의 β0~βn 구간), 마우스 포인터의 왼쪽으로 이동에 대응하는 코드를 생성할 수 있다. 이동 모드에서 마우스 모드 실행부(130)는 Y 축을 중심으로 기울어진 회전각의 부호가 (-)인 경우(도 6의 -β0~-βn 구간), 마우스 포인터의 오른쪽으로 이동에 대응하는 코드를 생성할 수 있다. In the moving mode, the mouse mode execution unit 130 generates a code corresponding to the movement of the mouse pointer to the left when the sign of the rotation angle inclined about the Y-axis is positive (in the period of? 0 to? N in FIG. 6) . In the moving mode, the mouse mode execution unit 130 generates a code corresponding to the movement of the mouse pointer to the right when the sign of the tilt angle about the Y axis is negative (-β0 to -βn in FIG. 6) Can be generated.

이동 모드에서 마우스 모드 실행부(130)는 X 축을 중심으로 기울어진 회전각의 부호가 (+)인 경우(도 7의 β0~βn 구간), 마우스 포인터의 아래쪽으로 이동에 대응하는 코드를 생성할 수 있다. 이동 모드에서 마우스 모드 실행부(130)는 X 축을 중심으로 기울어진 회전각의 부호가 (-)인 경우(도 7의 -β0~-βn 구간), 마우스 포인터의 위쪽으로 이동에 대응하는 코드를 생성할 수 있다. In the moving mode, the mouse mode execution unit 130 generates a code corresponding to the downward movement of the mouse pointer when the sign of the rotation angle inclined about the X-axis is positive (in the period of? 0 to? N in FIG. 7) . In the moving mode, when the sign of the angle of inclination about the X-axis is negative (-? 0 to -.beta.n section in FIG. 7), the mouse mode execution unit 130 outputs a code corresponding to the upward movement of the mouse pointer Can be generated.

이동 모드에서 마우스 모드 실행부(130)는 Y 축을 중심으로 기울어진 회전각의 크기가 도 6의 β0~βn 구간 중 어느 구간에 해당하는지에 따라 β0~βn 구간 각각에 해당하는 속도에 대응하는 코드를 생성할 수 있다. 이동 모드에서 마우스 모드 실행부(130)는 Y 축을 중심으로 기울어진 회전각의 크기가 도 6의 -β0~-βn 구간 중 어느 구간에 해당하는지에 따라 -β0~-βn 구간 각각에 해당하는 속도에 대응하는 코드를 생성할 수 있다.In the moving mode, the mouse mode execution unit 130 generates a code corresponding to the velocity corresponding to each of the? 0 to? N sections, depending on which section of the? 0 to? N section of FIG. 6 corresponds to the magnitude of the rotational angle inclined about the Y- Lt; / RTI > In the moving mode, the mouse mode execution unit 130 determines a speed corresponding to each of -β0 to -βn intervals depending on which of the -β0 to -βn intervals in FIG. 6 corresponds to the magnitude of the rotational angle inclined about the Y axis Lt; / RTI >

이동 모드에서 마우스 모드 실행부(130)는 X 축을 중심으로 기울어진 회전각의 크기가 도 7의 β0~βn 구간 중 어느 구간에 해당하는지에 따라 β0~βn 구간 각각에 해당하는 속도에 대응하는 코드를 생성할 수 있다. 이동 모드에서 마우스 모드 실행부(130)는 X 축을 중심으로 기울어진 회전각의 크기가 도 7의 -β0~-βn 구간 중 어느 구간에 해당하는지에 따라 -β0~-βn 구간 각각에 해당하는 속도에 대응하는 코드를 생성할 수 있다.In the moving mode, the mouse mode execution unit 130 generates a code corresponding to the velocity corresponding to each of the sections? 0 to? N according to which section of the? 0 to? N section of FIG. 7 corresponds to the magnitude of the rotational angle inclined about the X- Lt; / RTI > In the moving mode, the mouse mode execution unit 130 determines a speed corresponding to each of -β0 to -βn intervals according to which of the -β0 to -βn intervals in FIG. 7 the magnitude of the rotational angle inclined about the X- Lt; / RTI >

예컨대, Y 축(또는 X 축)을 중심으로 기울어진 회전각의 크기가 β0(또는 -β0) 구간에 해당할 경우 마우스 포인터의 이동 속도는 최저속(예컨대, 초당 2mm)에 해당하고, βn(또는 -βn) 구간에 해당할 경우 마우스 포인터의 이동 속도는 최고속(예컨대, 초당 12.8cm)에 해당할 수 있다. 즉, 각 구간은 β0(또는 -β0) 구간에서 βn(또는 -βn) 구간으로 갈수록 순차적으로 증가하는 마우스 포인터의 이동 속도를 의미할 수 있다.For example, when the magnitude of the tilt angle about the Y axis (or the X axis) corresponds to the interval of? 0 (or -?0), the moving speed of the mouse pointer corresponds to the lowest speed (e.g., 2 mm per second) Or-beta n), the moving speed of the mouse pointer may correspond to the highest speed (e.g., 12.8 cm per second). That is, each interval may mean the moving speed of the mouse pointer sequentially increasing from β0 (or -β0) to βn (or -βn) intervals.

실시예에 따라 회전각의 기준이 되는 기준선은 '스마트 입력 앱'의 환경 설정에서 재설정할 수 있도록 프로그램될 수 있다. 상기 기준선은 도 6에서 회전각이 0 도인 X 축으로, 도 7에서 회전각이 0 도인 Y 축으로 디폴트(default)로 설정될 수 있다. 사용자는 사용자의 사용 습관, 자세 등에 따라 '스마트 입력 앱'의 환경 설정에서 상기 기준선을 재설정할 수 있다. 예컨대, 사용자에 의해 마우스 GUI(400)의 좌 버튼(410)과 우 버튼(420)이 동시에 2 초 이상 터치되는 경우 현재의 X 축 및 Y 축이 기준선으로 재설정될 수 있다.According to an embodiment, the reference line that is the basis of the rotation angle can be programmed to be reset in the configuration of the 'smart input application'. The reference line may be set to the X axis with a rotation angle of 0 degrees in FIG. 6 and to the Y axis with a rotation angle of 0 degrees in FIG. 7 as a default. The user can reset the reference line in the environment setting of the " smart input application " according to the user's usage habit, posture and the like. For example, when the left button 410 and the right button 420 of the mouse GUI 400 are simultaneously touched by the user for 2 seconds or more, the current X-axis and Y-axis can be reset to the reference line.

도 8은 마우스 모드에서 생성되는 마우스 입력 신호의 일 실시예를 나타낸 도면이다. 도 9는 마우스 모드에서 생성되는 마우스 입력 신호의 다른 실시예를 나타낸 도면이다. 8 is a diagram illustrating an embodiment of a mouse input signal generated in a mouse mode. 9 is a diagram showing another embodiment of a mouse input signal generated in the mouse mode.

도 1 내지 도 9를 참조하면, 마우스 모드 실행부(130)가 생성하는 이동 모드의 마우스 입력 신호(packet2)와 정지 모드의 마우스 입력 신호(packet3)가 도시되어 있다. 이동 모드의 마우스 입력 신호(packet2)와 정지 모드의 마우스 입력 신호(packet3)는 각각 1 byte 또는 2 byte 단위로 구성될 수 있으나, 본 발명의 범위는 이에 한정되지 않는다.Referring to FIGS. 1 to 9, a mouse input signal (packet 2) in a moving mode and a mouse input signal (packet 3) in a stop mode generated by the mouse mode execution unit 130 are shown. The mouse input signal (packet2) in the moving mode and the mouse input signal (packet3) in the stop mode can be configured in 1 byte or 2 byte units, respectively, but the scope of the present invention is not limited thereto.

도 8과 9에서는 특정 버튼 또는 마우스의 이동에 해당하는 코드 이외의 부가 정보를 포함하는 2 byte 단위의 마우스 입력 신호들을 설명하기로 한다. 이동 모드의 마우스 입력 신호(packet2)와 정지 모드의 마우스 입력 신호(packet3)는 각각 프리앰블, 식별자 및 CRC 코드를 포함할 수 있으며 도 4의 프리앰블, 식별자 및 CRC 코드와 실질적으로 동일하다.8 and 9, a description will be given of mouse input signals in units of 2 bytes including additional information other than code corresponding to a specific button or mouse movement. The mouse input signal (packet2) in the moving mode and the mouse input signal (packet3) in the stop mode may include a preamble, an identifier and a CRC code, respectively, and are substantially the same as the preamble, identifier and CRC code in FIG.

이동 모드의 마우스 입력 신호(packet2)는 이동 모드 정보(예컨대, 8비트)를 포함할 수 있다. 상기 이동 모드 정보는 마우스 모드 정보(S), 좌 버튼 정보(LB), X 축 방향 정보(DRx), X 축 속도 정보(SPx), Y 축 방향 정보(DRy) 및 Y 축 속도 정보(SPy)를 포함할 수 있다. The mouse input signal (packet2) in the moving mode may include moving mode information (e.g., 8 bits). The movement mode information includes mouse mode information S, left button information LB, X axis direction information DRx, X axis velocity information SPx, Y axis direction information DRy, and Y axis velocity information SPy. . ≪ / RTI >

마우스 모드 정보(S)는 이동 모드인지 정지 모드인지에 대한 정보(예컨대, 1비트)이며, 예컨대 S=1일 때 이동 모드이고 S=0일 때 정지 모드임을 의미할 수 있다.The mouse mode information S is information (for example, 1 bit) indicating whether the mode is a moving mode or a stop mode. For example, the mouse mode information S may indicate a moving mode when S = 1 and a stop mode when S =

좌 버튼 정보(LB)는 좌 버튼(410)이 터치되고 있는지에 대한 정보(예컨대, 1비트)이며, 예컨대, LB=1일 때 좌 버튼(410)이 터치되고 있고, LB=0일 때 좌 버튼(410)이 터치되지 않음을 의미할 수 있다. 즉, LB가 1일 때는 마우스의 드래깅(dragging) 동작을 의미하며, LB가 0일 때는 마우스의 일반적인 이동 동작을 의미한다.Left button information LB is information (e.g., 1 bit) indicating whether the left button 410 is touched. For example, when LB = 1, the left button 410 is touched, It may mean that the button 410 is not touched. That is, when LB = 1, it means a dragging operation of the mouse, and when LB = 0, it means a general movement operation of the mouse.

X 축 방향 정보(DRx)와 X 축 속도 정보(SPx)는 회전각이 도 7의 복수의 구간들(α, β0~βn, -β0~-βn, δ) 중 어느 구간에 해당하는지에 대한 정보(예컨대, 1비트와 2비트)이다. 예컨대, n=2일 때 α와 δ 구간은 정지 구간, β0/-β0는 아래/위 최저속 구간, β1/-β1는 아래/위 중간속 구간, β2/-β2는 아래/위 최고속 구간으로 정의될 수 있다. 예컨대, 회전각이 β0 구간에 속하는 경우 X 축 방향 정보(DRx)는 1이고 X 축 속도 정보(SPx)는 01일 수 있다. 회전각이 β2 구간에 속하는 경우 X 축 방향 정보(DRx)는 1이고 X 축 속도 정보(SPx)는 11일 수 있다. 회전각이 -β1 구간에 속하는 경우 X 축 방향 정보(DRx)는 0이고 X 축 속도 정보(SPx)는 10일 수 있다.The X-axis direction information DRx and the X-axis velocity information SPx are information about which section of the rotation angle corresponds to the plurality of sections?,? 0 to? N, -β0 to -βn, and? (E.g., 1 bit and 2 bits). For example, when n = 2, α and δ are the stopping interval, β0 / -β0 is the lower / uppermost slowest interval, β1 / -β1 is the lower / upper middle speed interval, . ≪ / RTI > For example, when the rotation angle belongs to the beta zone, the X axis direction information DRx may be 1 and the X axis velocity information SPx may be 01. [ When the rotation angle belongs to the? 2 section, the X axis direction information DRx is 1 and the X axis velocity information SPx is 11. When the rotation angle belongs to the -β1 section, the X axis direction information DRx is 0 and the X axis velocity information SPx is 10.

Y 축 방향 정보(DRy)와 Y 축 속도 정보(SPy)는 회전각이 도 6의 복수의 구간들(α, β0~βn, -β0~-βn, δ) 중 어느 구간에 해당하는지에 대한 정보(예컨대, 1비트와 2비트)이다. 예컨대, n=2일 때 α와 δ 구간은 정지 구간, β0/-β0는 좌/우 최저속 구간, β1/-β1는 좌/우 중간속 구간, β2/-β2는 좌/우 최고속 구간으로 정의될 수 있다. 예컨대, 회전각이 β0 구간에 속하는 경우 Y 축 방향 정보(DRy)는 0이고 X 축 속도 정보(SPx)는 01일 수 있다. 회전각이 β2 구간에 속하는 경우 Y 축 방향 정보(DRy)는 0이고 Y 축 속도 정보(SPy)는 11일 수 있다. 회전각이 -β1 구간에 속하는 경우 Y 축 방향 정보(DRy)는 1이고 Y 축 속도 정보(SPy)는 10일 수 있다.The Y-axis direction information DRy and the Y-axis velocity information SPy are information about the rotation angles of the plurality of sections?,? 0 to? N, -β0 to -βn, and? (E.g., 1 bit and 2 bits). For example, when n = 2, α and δ are the stopping interval, β0 / -β0 is the left / right lowest velocity interval, β1 / -β1 is the left / right middle velocity interval, . ≪ / RTI > For example, when the rotation angle belongs to the section? 0, the Y-axis direction information DRy may be 0 and the X-axis velocity information SPx may be 01. When the rotation angle belongs to the? 2 section, the Y-axis direction information DRy is 0 and the Y-axis velocity information SPy is 11. If the rotation angle belongs to the -β1 section, the Y-axis direction information DRy may be 1 and the Y-axis velocity information SPy may be 10.

보다 세밀한 마우스 포인터의 이동을 위해 X 축 속도 정보(SPx)와 Y 축 속도 정보(SPy) 각각은 보다 많은 수의 비트를 포함할 수 있음은 물론이다.It is needless to say that each of the X-axis velocity information SPx and the Y-axis velocity information SPy may include a larger number of bits for more precise movement of the mouse pointer.

정지 모드의 마우스 입력 신호(packet3)는 정지 모드 정보(예컨대, 8비트)를 포함할 수 있다. 상기 정지 모드 정보는 마우스 모드 정보(S), 버튼 정보(BS), 스크롤 방향 정보(TBLR) 및 스크롤 속도 정보(SPs)를 포함할 수 있다. The mouse input signal (packet3) in the stop mode may include stop mode information (e.g., 8 bits). The stop mode information may include mouse mode information S, button information BS, scroll direction information TBLR, and scroll speed information SPs.

마우스 모드 정보(S)는 이동 모드의 마우스 입력 신호(packet2)의 마우스 모드 정보(S)와 실질적으로 동일하다.The mouse mode information S is substantially the same as the mouse mode information S of the mouse input signal packet2 in the movement mode.

버튼 정보(BS)는 좌 버튼(410) 또는 우 버튼(420)이 터치되고 있는지에 대한 정보(예컨대, 3비트)이며, 예컨대, BS=000일 때 좌 버튼(410)이 1 회 터치(싱글 클릭)되고 있음을 의미할 수 있고, BS=001일 때 좌 버튼(410)이 2 회 터치(더블 클릭)되고 있음을 의미할 수 있다. BS=010일 때 우 버튼(420)이 1 회 터치(싱글 클릭)되고 있음을 의미할 수 있고, BS=011일 때 스크롤 버튼(430)이 터치(스크롤 동작)되고 있음을 의미할 수 있다.The button information BS is information (e.g., 3 bits) indicating whether the left button 410 or the right button 420 is touched. For example, when BS = 000, the left button 410 is pressed once Quot;), and it may mean that the left button 410 is touched twice (double-clicked) when BS = 001. It means that the right button 420 is touched (single-clicked) once when BS = 010, and that the scroll button 430 is touched (scrolled) when BS = 011.

스크롤 방향 정보(TBLR)는 스크롤 방향이 상/하/좌/우 방향 중 어느 방향인지에 대한 정보(예컨대, 2비트)이다. 예컨대, TBLR이 각각 00/01/10/11일 때, 스크롤 방향은 각각 상/하/좌/우 방향일 수 있다.The scroll direction information TBLR is information (for example, 2 bits) indicating whether the scroll direction is the up / down / left / right direction. For example, when TBLR is 00/01/10/11, the scroll direction may be up / down / left / right direction respectively.

스크롤 속도 정보(SPs)는 스크롤 방향을 따라 얼마나 빠르게 연속적으로 터치 신호가 입력되는지에 대한 정보(예컨대, 2비트)이다. 예컨대, SPs이 각각 00/01/10/11일 때, 스크롤의 속도는 각각 정지/저속 이동/중간 이동/고속 이동일 수 있다. 상기 스크롤의 속도에 따라 스크롤로 이동되는 페이지(예컨대, 웹페이지, 문서의 페이지)의 양이 결정될 수 있다.The scroll speed information SPs is information (e.g., 2 bits) indicating how quickly and continuously the touch signal is input along the scroll direction. For example, when SPs are 00/01/10/11, respectively, the scroll speed may be still / low speed / intermediate / fast. The amount of pages (e.g., web pages, pages of a document) that are to be scrolled may be determined according to the speed of the scrolling.

도 10은 도 1에 도시된 스마트폰의 동작 방법을 설명하기 위한 흐름도이다.FIG. 10 is a flowchart illustrating an operation method of the smartphone shown in FIG. 1. FIG.

도 1 내지 도 10을 참조하면, 모드 결정부(110)는 키보드 모드 또는 마우스 모드를 선택할 수 있는 GUI를 제공하고, 사용자는 키보드 모드 또는 마우스 모드 중 어느 하나를 선택할 수 있다(S400). 모드 결정부(110)는 사용자가 선택한 모드에 따라 키보드 모드 실행부(120) 또는 마우스 모드 실행부(130)를 활성화 할 수 있다.1 to 10, the mode determination unit 110 provides a GUI for selecting a keyboard mode or a mouse mode, and the user can select either a keyboard mode or a mouse mode (S400). The mode determination unit 110 may activate the keyboard mode execution unit 120 or the mouse mode execution unit 130 according to the mode selected by the user.

키보드 모드 실행부(120)는 상기 키보드 모드에 대응하는 키보드 GUI(300)를 디스플레이부(108)를 통해 출력할 수 있다(S410).The keyboard mode execution unit 120 may output the keyboard GUI 300 corresponding to the keyboard mode through the display unit 108 (S410).

사용자가 복수의 키들(310) 중 특정 키를 누르는 경우, 터치 스크린(105)은 사용자가 터치하는 위치를 감지하고 상기 위치에 상응하는 터치 신호를 생성할 수 있다. 키보드 모드 실행부(120)는 상기 터치 신호가 키보드 GUI 상의 어느 키에 해당하는지 판단하여 판단 결과에 따라 키보드 GUI 상의 특정 키에 상응하는 코드를 생성할 수 있다(S420).When the user presses a specific key among the plurality of keys 310, the touch screen 105 may sense a position touched by the user and generate a touch signal corresponding to the position. The keyboard mode execution unit 120 may determine which key on the keyboard GUI corresponds to the touch signal and generate a code corresponding to the specific key on the keyboard GUI according to the determination result (S420).

키보드 모드 실행부(120)는 상기 생성된 코드를 도 4와 같이 패킷화하여, 패킷 단위의 키보드 입력 신호를 생성할 수 있다(S430). The keyboard mode execution unit 120 may generate the keyboard input signal by packetizing the generated code as shown in FIG. 4 (S430).

마우스 모드 실행부(130)는 상기 마우스 모드에 대응하는 마우스 GUI(400)를 디스플레이부(108)를 통해 출력할 수 있다(S440).The mouse mode execution unit 130 may output the mouse GUI 400 corresponding to the mouse mode through the display unit 108 (S440).

마우스 모드 실행부(130)는 자이로 센서(106)가 감지하는 Y 축을 중심으로 기울어진 회전각과 X 축을 중심으로 기울어진 회전각이 모두 α 또는 δ 구간에 해당할 경우 정지 모드로 판단하고, 어느 하나라도 α 구간과 δ 구간 이외의 구간에 해당할 경우 이동 모드로 판단할 수 있다.The mouse mode execution unit 130 determines that the mode is the stop mode when the rotation angle inclined about the Y axis detected by the gyro sensor 106 and the rotation angle inclined about the X axis are both in the range of? It can be determined that the mode is the moving mode if it corresponds to the interval other than the interval a and the interval δ.

이동 모드에서 사용자가 좌 버튼(410)을 터치하는 경우, 터치 스크린(105)은 사용자가 터치하는 위치를 감지하고 상기 위치에 상응하는 터치 신호를 생성할 수 있다. 마우스 모드 실행부(130)는 상기 터치 신호가 마우스 GUI(400) 상의 어느 버튼에 해당하는지 판단하여 판단 결과에 따라 마우스 GUI 상(400)의 좌 버튼에 상응하는 코드를 생성할 수 있다(S450).When the user touches the left button 410 in the moving mode, the touch screen 105 may sense a position touched by the user and generate a touch signal corresponding to the position. The mouse mode execution unit 130 may determine which button on the mouse GUI 400 the touch signal corresponds to and generate a code corresponding to the left button of the mouse GUI image 400 according to the determination result (S450) .

이동 모드에서 마우스 모드 실행부(130)는 자이로 센서(106)가 감지하는 Y 축을 중심으로 기울어진 회전각과 X 축을 중심으로 기울어진 회전각의 부호와 크기에 대응하는 코드를 생성할 수 있다(S460).In the moving mode, the mouse mode execution unit 130 can generate a code corresponding to the sign and magnitude of the rotation angle tilted about the Y axis and the rotation angle tilted about the X axis sensed by the gyro sensor 106 (S460 ).

정지 모드에서 사용자가 좌 버튼(410) 또는 우 버튼(420)을 터치하는 경우, 터치 스크린(105)은 사용자가 터치하는 위치를 감지하고 상기 위치에 상응하는 터치 신호를 생성할 수 있다. 마우스 모드 실행부(130)는 상기 터치 신호가 마우스 GUI(400) 상의 어느 버튼에 해당하는지 판단하여 판단 결과에 따라 마우스 GUI 상(400)의 좌 버튼 또는 우 버튼에 상응하는 코드를 생성할 수 있다(S470). When the user touches the left button 410 or the right button 420 in the stop mode, the touch screen 105 may sense a position touched by the user and generate a touch signal corresponding to the position. The mouse mode execution unit 130 may determine which button on the mouse GUI 400 the touch signal corresponds to and generate a code corresponding to the left button or the right button of the mouse GUI image 400 according to the determination result (S470).

정지 모드에서 사용자가 스크롤 버튼(430)을 터치한 상태에서 상/하/좌/우로 이동하면서 터치하는 경우, 터치 스크린(105)은 사용자의 터치의 이동을 감지하고 상기 터치의 이동에 상응하는 터치 신호를 생성할 수 있다. 마우스 모드 실행부(130)는 상기 터치 신호가 마우스 GUI(400) 상의 스크롤 버튼(430)에 해당하는 경우 이후 연속적으로 입력되는 터치 신호가 스크롤 버튼(430)의 상/하/좌/우 중 어디에 해당하는지, 얼마나 빠르게 입력되는지 판단하여 판단 결과에 따라 위로 스크롤, 아래로 스크롤, 좌로 스크롤 및 우로 스크롤 중 어느 하나와 그 방향으로의 속도에 상응하는 코드를 생성할 수 있다(S480).In the stop mode, when the user touches the scroll button 430 while moving upward / downward / leftward / rightward, the touch screen 105 senses movement of the user's touch and touches the touch corresponding to the movement of the touch Signal can be generated. When the touch signal corresponds to the scroll button 430 on the mouse GUI 400, the mouse mode execution unit 130 outputs a touch signal continuously inputted to the mouse mode execution unit 430 in any of the up, down, left, and right directions of the scroll button 430 (Step S480), and then generates a code corresponding to the speed of the scroll in the upward direction, the scroll in the downward direction, the scroll in the left direction, and the scroll right direction according to the determination result.

마우스 모드 실행부(130)는 상기 생성된 코드들을 도 8 또는 도 9와 같이 패킷화하여, 패킷 단위의 마우스 입력 신호를 생성할 수 있다(S490).  The mouse mode execution unit 130 may packetize the generated codes as shown in FIG. 8 or 9 to generate a mouse input signal in units of packets (S490).

전송 결정부(140)는 복수의 무선 통신 방식들 중 어느 하나를 선택할 수 있는 GUI를 제공할 수 있다. 전송 결정부(140)는 사용자가 상기 GUI를 통해 선택한 무선 통신 방식에 따라 상기 전송 방식을 결정할 수 있다(S500).The transmission determination unit 140 may provide a GUI that can select any one of a plurality of wireless communication schemes. The transmission determination unit 140 may determine the transmission mode according to the wireless communication method selected by the user through the GUI (S500).

전송 결정부(140)는 상기 결정된 전송 방식에 따라 네트워크 인터페이스(108)가 상기 키보드 입력 신호 또는 상기 마우스 입력 신호를 스마트 장치(200-1~200-5)로 전송하도록 제어할 수 있다(S510).The transmission determination unit 140 may control the network interface 108 to transmit the keyboard input signal or the mouse input signal to the smart devices 200-1 to 200-5 according to the determined transmission method (S510) .

본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.The present invention can also be embodied as computer-readable codes on a computer-readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored.

컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 본 발명에 따른 객체 정보 추정 방법을 수행하기 위한 프로그램 코드는 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 전송될 수도 있다. Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like. (E.g., transmission over the Internet).

또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The computer readable recording medium may also be distributed over a networked computer system so that computer readable code can be stored and executed in a distributed manner. And functional programs, codes, and code segments for implementing the present invention can be easily inferred by programmers skilled in the art to which the present invention pertains.

본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.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 embodiments, but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims. Accordingly, the true scope of the present invention should be determined by the technical idea of the appended claims.

스마트폰(100) 네트워크 인터페이스(109)
중앙처리부(102) 모드 결정부(110)
입력부(104) 키보드 모드 실행부(120)
터치 스크린(105) 마우스 모드 실행부(130)
자이로 센서(106) 전송 결정부(140)
디스플레이부(108)
The smartphone 100 network interface 109,
The central processing unit (102) mode determination unit (110)
The input unit 104, the keyboard mode execution unit 120,
The touch screen 105 mouse mode execution unit 130,
The gyro sensor 106 transmission determination unit 140 determines,
The display unit 108,

Claims (24)

키보드 모드와 마우스 모드 중 어느 하나를 선택할 수 있는 GUI(Graphic User Interface)를 제공하고, 상기 키보드 모드와 상기 마우스 모드 중 어느 하나가 결정되는 단계;
상기 결정된 모드가 상기 마우스 모드인 경우 상기 마우스 모드에 대응하는 마우스 GUI를 제공하고, 상기 마우스 GUI에 포함된 복수의 버튼들 및 자이로 센서(gyro sensor) 각각에 대응하는 상기 마우스 입력 신호를 생성하는 단계;
복수의 전송 방식들 중 어느 하나를 선택 할 수 있는 GUI를 제공하고, 상기 선택된 모드에서 입력되는 키보드 입력 신호와 마우스 입력 신호 중 어느 하나가 전송될 전송 방식을 결정하고, 상기 결정된 전송 방식에 따라 상기 마우스 입력 신호를 스마트 장치로 전송하는 단계를 포함하며,
상기 마우스 입력 신호를 생성하는 단계는
스마트폰의 기준선을 중심으로 기울어진 회전각이 특정 구간에 속하는지에 따라 정지 모드인지 이동 모드인지를 결정하는 단계; 및
상기 키보드 모드인지 상기 마우스 모드인지를 나타내는 정보 및 상기 이동모드인지 상기 정지 모드인지를 나타내는 정보를 포함하는 패킷을 생성하는 단계를 포함하고,
상기 기준선은 사용자의 입력에 의해 재설정될 수 있는 스마트폰의 동작 방법.
A GUI (Graphic User Interface) capable of selecting either a keyboard mode or a mouse mode is provided, and one of the keyboard mode and the mouse mode is determined.
Providing a mouse GUI corresponding to the mouse mode when the determined mode is the mouse mode and generating the mouse input signal corresponding to each of a plurality of buttons and gyro sensors included in the mouse GUI ;
The method comprising: providing a GUI capable of selecting any one of a plurality of transmission schemes, determining a transmission scheme to which one of a keyboard input signal and a mouse input signal input in the selected mode is to be transmitted, Transmitting a mouse input signal to a smart device,
The step of generating the mouse input signal
Determining whether the mobile phone is in a stop mode or a moving mode according to whether a rotation angle inclined around a reference line of the smart phone belongs to a specific section; And
Generating a packet including information indicating whether the portable terminal is in the keyboard mode or the mouse mode and information indicating whether the portable terminal is in the moving mode or the idle mode,
Wherein the reference line can be reset by a user's input.
삭제delete 제1항에 있어서,
상기 키보드 모드에 대응하는 키보드 GUI에 포함된 복수의 키(key)들 각각에 대응하는 상기 키보드 입력 신호를 생성하는 단계를 더 포함하는 스마트폰의 동작 방법.
The method according to claim 1,
Generating the keyboard input signal corresponding to each of a plurality of keys included in a keyboard GUI corresponding to the keyboard mode.
제3항에 있어서,
상기 키보드 입력 신호를 생성하는 단계는
상기 복수의 키(key)들 각각에 대응하는 위치의 터치 스크린에 터치가 감지된 경우 상기 위치에 대응하는 코드를 생성하는 단계 및
상기 코드를 프리앰블(preamble), 식별자(delimiter) 및 CRC(Cyclic Redundancy Checking) 코드를 포함하는 패킷으로 패킷화하는 단계를 포함하는 스마트폰의 동작 방법.
The method of claim 3,
The step of generating the keyboard input signal
Generating a code corresponding to the position when a touch is detected on a touch screen at a position corresponding to each of the plurality of keys;
Packetizing the code into a packet including a preamble, an identifier, and a cyclic redundancy checking (CRC) code.
제4항에 있어서,
상기 패킷은 리틀 엔디안(little endian) 방식의 패킷인 스마트폰의 동작 방법.
5. The method of claim 4,
Wherein the packet is a little endian packet.
삭제delete 제1항에 있어서,
상기 마우스 입력 신호를 생성하는 단계는
상기 이동 모드에서 상기 복수의 버튼들 중 좌 버튼에 대응하는 위치의 터치 스크린에 터치가 감지된 경우 상기 좌 버튼에 대응하는 코드를 생성하는 단계;
상기 이동 모드에서 상기 자이로 센서가 상기 스마트폰의 X 축 또는 Y 축을 중심으로 기울어진 회전각을 감지하고, 상기 회전각에 따라 결정되는 방향과 속도에 대응하는 코드를 생성하는 단계; 및
상기 코드들을 프리앰블, 식별자 및 CRC 코드를 포함하는 패킷으로 패킷화하는 단계를 더 포함하는 스마트폰의 동작 방법.
The method according to claim 1,
The step of generating the mouse input signal
Generating a code corresponding to the left button when a touch is detected on a touch screen corresponding to a left button among the plurality of buttons in the movement mode;
Sensing the tilted rotation angle of the gyro sensor about the X axis or the Y axis in the movement mode and generating a code corresponding to a direction and a speed determined according to the rotation angle; And
Packetizing the codes into a packet including a preamble, an identifier and a CRC code.
제7항에 있어서,
상기 방향과 상기 속도에 대응하는 코드를 생성하는 단계는
상기 X 축 또는 상기 Y 축을 중심으로 기울어진 상기 회전각의 부호에 따라 상기 방향에 대응하는 코드를 생성하는 단계; 및
상기 X 축 또는 상기 Y 축을 중심으로 기울어진 상기 회전각의 크기에 따라 상기 속도에 대응하는 코드를 생성하는 단계를 포함하는 스마트폰의 동작 방법.
8. The method of claim 7,
The step of generating a code corresponding to said direction and said velocity
Generating a code corresponding to the direction according to the sign of the rotation angle inclined about the X axis or the Y axis; And
And generating a code corresponding to the velocity according to a magnitude of the rotation angle inclined about the X-axis or the Y-axis.
삭제delete 제1항에 있어서,
상기 마우스 입력 신호를 생성하는 단계는
상기 정지 모드에서 상기 복수의 버튼들 중 좌 버튼 또는 우 버튼에 대응하는 위치의 터치 스크린에 터치가 감지된 경우 상기 좌 버튼 또는 상기 우 버튼에 대응하는 코드를 생성하는 단계;
상기 정지 모드에서 상기 복수의 버튼들 중 스크롤 버튼에 대응하는 위치의 터치 스크린에 터치의 이동이 감지된 경우 상기 터치의 이동에 대응하는 코드를 생성하는 단계; 및
상기 코드들을 프리앰블, 식별자 및 CRC 코드를 포함하는 패킷으로 패킷화하는 단계를 더 포함하는 스마트폰의 동작 방법.
The method according to claim 1,
The step of generating the mouse input signal
Generating a code corresponding to the left button or the right button when a touch is detected on a touch screen at a position corresponding to a left button or a right button among the plurality of buttons in the stop mode;
Generating a code corresponding to the movement of the touch when movement of the touch is detected on the touch screen at a position corresponding to the scroll button among the plurality of buttons in the stop mode; And
Packetizing the codes into a packet including a preamble, an identifier and a CRC code.
제1항에 있어서,
상기 전송 방식은 블루투스(bluetooth), 와이파이(WiFi), IR(Infrared Ray) 통신, RF(Radio Frequency) 통신 및 초음파 통신 중 어느 하나인 스마트폰의 동작 방법.
The method according to claim 1,
Wherein the transmission method is any one of a Bluetooth, a WiFi, an Infrared Ray (IR) communication, an RF (Radio Frequency) communication, and an ultrasonic communication.
제11항에 있어서,
상기 초음파 통신은 20 KHz 근방의 주파수 대역을 이용하는 스마트폰의 동작 방법.
12. The method of claim 11,
Wherein the ultrasonic communication uses a frequency band in the vicinity of 20 KHz.
키보드 모드와 마우스 모드 중 어느 하나의 모드를 선택할 수 있는 GUI(Graphic User Interface)를 제공하고, 상기 키보드 모드와 상기 마우스 모드 중 어느 하나를 결정하는 모드 결정부;
상기 결정된 모드가 상기 마우스 모드인 경우 상기 마우스 모드에 대응하는 마우스 GUI를 제공하고, 상기 마우스 GUI에 포함된 복수의 버튼들 및 자이로 센서(gyro sensor) 각각에 대응하는 상기 마우스 입력 신호를 생성하는 마우스 모드 실행부; 및
상기 결정된 모드에서 입력되는 키보드 입력 신호와 마우스 입력 신호 중 어느 하나가 전송될 전송 방식을 결정하고 상기 결정된 전송 방식에 따라 네트워크 인터페이스가 상기 키보드 입력 신호 또는 상기 마우스 입력 신호를 스마트 장치로 전송하는 전송 결정부를 포함하며
상기 마우스 입력 신호는
상기 키보드 모드인지 상기 마우스 모드인지를 나타내는 정보 및 상기 마우스 모드인 경우 이동 모드인지 정지 모드인지를 나타내는 정보를 포함하고,
상기 이동 모드 또는 상기 정지 모드는 스마트폰의 기준선을 중심으로 기울어진 회전각이 특정 구간에 속하는지에 따라 결정되며,
상기 기준선은 사용자의 입력에 의해 재설정될 수 있는 원격 제어 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
A mode determination unit for providing a graphical user interface (GUI) that can select one of a keyboard mode and a mouse mode, and determining either the keyboard mode or the mouse mode;
A mouse GUI corresponding to the mouse mode when the determined mode is the mouse mode, a mouse for generating a mouse input signal corresponding to each of a plurality of buttons included in the mouse GUI and a gyro sensor, A mode execution unit; And
Determining a transmission mode to which one of a keyboard input signal and a mouse input signal to be input in the determined mode is to be transmitted and determining a transmission mode in which the network interface transmits the keyboard input signal or the mouse input signal to the smart device according to the determined transmission mode Including
The mouse input signal
Information indicating whether the mouse mode is the keyboard mode or the mouse mode, and information indicating whether the mouse mode is the moving mode or the stop mode,
The movement mode or the stop mode is determined depending on whether the rotation angle inclined around the reference line of the smartphone belongs to a specific section,
Wherein the reference line stores a remote control program that can be reset by a user ' s input.
제13항에 있어서,
상기 원격 제어 프로그램은
상기 결정된 모드가 상기 키보드 모드인 경우 상기 키보드 모드에 대응하는 키보드 GUI를 제공하고, 상기 키보드 GUI에 포함된 복수의 키(key)들 각각에 대응하는 상기 키보드 입력 신호를 생성하는 키보드 모드 실행부를 더 포함하는 원격 제어 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
14. The method of claim 13,
The remote control program
And a keyboard mode execution unit for providing the keyboard GUI corresponding to the keyboard mode when the determined mode is the keyboard mode and generating the keyboard input signal corresponding to each of the plurality of keys included in the keyboard GUI A computer-readable recording medium storing a remote control program comprising:
제14항에 있어서,
상기 키보드 모드 실행부는
상기 복수의 키(key)들 각각에 대응하는 위치의 터치 스크린에 터치가 감지된 경우 상기 위치에 대응하는 코드를 생성하고,
상기 코드를 프리앰블(preamble), 식별자(delimiter) 및 CRC(Cyclic Redundancy Checking) 코드를 포함하는 패킷으로 패킷화하는 원격 제어 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
15. The method of claim 14,
The keyboard mode execution unit
Generating a code corresponding to the position when a touch is detected on a touch screen at a position corresponding to each of the plurality of keys,
And a remote control program for packetizing the code into a packet including a preamble, an identifier, and a cyclic redundancy checking (CRC) code.
제15항에 있어서,
상기 패킷은 리틀 엔디안(little endan) 방식의 패킷인 원격 제어 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
16. The method of claim 15,
Wherein the packet is a packet of little endian type.
삭제delete 제13항에 있어서,
상기 마우스 모드 실행부는
상기 이동 모드에서 상기 복수의 버튼들 중 좌 버튼에 대응하는 위치의 터치 스크린에 터치가 감지된 경우 상기 좌 버튼에 대응하는 코드를 생성하고,
상기 이동 모드에서 상기 자이로 센서가 상기 스마트폰의 X 축 또는 Y 축을 중심으로 기울어진 회전각을 감지하고, 상기 회전각에 따라 결정되는 방향과 속도에 대응하는 코드를 생성하고,
상기 코드들을 프리앰블, 식별자 및 CRC 코드를 포함하는 패킷으로 패킷화하는 원격 제어 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
14. The method of claim 13,
The mouse mode execution unit
When a touch is detected on a touch screen corresponding to a left button among the plurality of buttons in the movement mode, a code corresponding to the left button is generated,
Wherein the gyro sensor detects a tilt angle of the smartphone about an X axis or a Y axis in the movement mode, generates a code corresponding to a direction and a velocity determined according to the rotation angle,
And packetizes the codes into a packet including a preamble, an identifier, and a CRC code.
제18항에 있어서,
상기 마우스 모드 실행부는 상기 방향과 상기 속도에 대응하는 코드를 생성하는 경우 상기 X 축 또는 상기 Y 축을 중심으로 기울어진 상기 회전각의 부호에 따라 상기 방향에 대응하는 코드를 생성하고, 상기 X 축 또는 상기 Y 축을 중심으로 기울어진 상기 회전각의 크기에 따라 상기 속도에 대응하는 코드를 생성하는 원격 제어 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
19. The method of claim 18,
Wherein the mouse mode execution unit generates a code corresponding to the direction according to the sign of the rotation angle inclined about the X axis or the Y axis when the code corresponding to the direction and the speed is generated, And generates a code corresponding to the velocity according to a magnitude of the rotation angle inclined with respect to the Y axis.
삭제delete 제13항에 있어서,
상기 마우스 모드 실행부는
상기 정지 모드에서 상기 복수의 버튼들 중 좌 버튼 또는 우 버튼에 대응하는 위치의 터치 스크린에 터치가 감지된 경우 상기 좌 버튼 또는 상기 우 버튼에 대응하는 코드를 생성하고,
상기 정지 모드에서 상기 복수의 버튼들 중 스크롤 버튼에 대응하는 위치의 터치 스크린에 터치의 이동이 감지된 경우 상기 터치의 이동에 대응하는 코드를 생성하고,
상기 코드들을 프리앰블, 식별자 및 CRC 코드를 포함하는 패킷으로 패킷화하는 원격 제어 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
14. The method of claim 13,
The mouse mode execution unit
When a touch is detected on a touch screen corresponding to a left button or a right button among the plurality of buttons in the stop mode, a code corresponding to the left button or the right button is generated,
When the movement of the touch is detected on the touch screen corresponding to the scroll button among the plurality of buttons in the stop mode, a code corresponding to the movement of the touch is generated,
And packetizes the codes into a packet including a preamble, an identifier, and a CRC code.
제13항에 있어서,
상기 전송 방식은 블루투스(bluetooth), 와이파이(WiFi), IR(Infrared Ray) 통신, RF(Radio Frequency) 통신 및 초음파 통신 중 어느 하나인 원격 제어 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
14. The method of claim 13,
Wherein the transmission method is a computer-readable recording medium storing a remote control program that is one of a Bluetooth, a WiFi, an Infrared Ray (IR) communication, an RF (Radio Frequency) communication and an ultrasonic communication.
제22항에 있어서,
상기 초음파 통신은 20 KHz 근방의 주파수 대역을 이용하는 원격 제어 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
23. The method of claim 22,
Wherein the ultrasonic communication uses a frequency band in the vicinity of 20 KHz.
키보드 모드와 마우스 모드 중 어느 하나를 선택할 수 있는 GUI(Graphic User Interface)를 제공하고, 상기 키보드 모드와 상기 마우스 모드 중 어느 하나가 결정되는 단계;
상기 결정된 모드가 상기 마우스 모드인 경우 상기 마우스 모드에 대응하는 마우스 GUI를 제공하고, 상기 마우스 GUI에 포함된 복수의 버튼들 및 자이로 센서(gyro sensor) 각각에 대응하는 상기 마우스 입력 신호를 생성하는 단계;
복수의 전송 방식들 중 어느 하나를 선택 할 수 있는 GUI를 제공하고, 상기 선택된 모드에서 입력되는 키보드 입력 신호와 마우스 입력 신호 중 어느 하나가 전송될 전송 방식을 결정하고, 상기 결정된 전송 방식에 따라 상기 키보드 입력 신호 또는 상기 마우스 입력 신호를 스마트 장치로 전송하는 단계; 및
상기 키보드 입력 신호와 상기 마우스 입력 신호를 기초로 신드롬을 생성하고, 상기 신드롬과 1:1로 사상되는 1 비트 에러 또는 2 비트 에러에 대해 에러 정정을 수행하는 단계를 포함하며,
상기 마우스 입력 신호를 생성하는 단계는
스마트폰의 기준선을 중심으로 기울어진 회전각이 특정 구간에 속하는지에 따라 정지 모드인지 이동 모드인지를 결정하는 단계; 및
상기 키보드 모드인지 상기 마우스 모드인지를 나타내는 정보 및 상기 이동모드인지 상기 정지 모드인지를 나타내는 정보를 포함하는 패킷을 생성하는 단계를 포함하고,
상기 기준선은 사용자의 입력에 의해 재설정될 수 있는 원격 제어 시스템의 동작 방법.
A GUI (Graphic User Interface) capable of selecting either a keyboard mode or a mouse mode is provided, and one of the keyboard mode and the mouse mode is determined.
Providing a mouse GUI corresponding to the mouse mode when the determined mode is the mouse mode and generating the mouse input signal corresponding to each of a plurality of buttons and gyro sensors included in the mouse GUI ;
The method comprising: providing a GUI capable of selecting any one of a plurality of transmission schemes, determining a transmission scheme to which one of a keyboard input signal and a mouse input signal input in the selected mode is to be transmitted, Transmitting a keyboard input signal or the mouse input signal to a smart device; And
Generating a syndrome based on the keyboard input signal and the mouse input signal and performing error correction on a 1-bit error or 2-bit error mapped to the syndrome in a 1: 1 manner,
The step of generating the mouse input signal
Determining whether the mobile phone is in a stop mode or a moving mode according to whether a rotation angle inclined around a reference line of the smart phone belongs to a specific section; And
Generating a packet including information indicating whether the portable terminal is in the keyboard mode or the mouse mode and information indicating whether the portable terminal is in the moving mode or the idle mode,
Wherein the baseline can be reset by an input of a user.
KR1020130126154A 2013-10-22 2013-10-22 A method for operating a smart-phone, and computer readable recording medium storing remote control programs using the same KR101583275B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130126154A KR101583275B1 (en) 2013-10-22 2013-10-22 A method for operating a smart-phone, and computer readable recording medium storing remote control programs using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130126154A KR101583275B1 (en) 2013-10-22 2013-10-22 A method for operating a smart-phone, and computer readable recording medium storing remote control programs using the same

Publications (2)

Publication Number Publication Date
KR20150046660A KR20150046660A (en) 2015-04-30
KR101583275B1 true KR101583275B1 (en) 2016-01-19

Family

ID=53037968

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130126154A KR101583275B1 (en) 2013-10-22 2013-10-22 A method for operating a smart-phone, and computer readable recording medium storing remote control programs using the same

Country Status (1)

Country Link
KR (1) KR101583275B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102242455B1 (en) * 2019-07-29 2021-04-20 이주호 System for providing wireless keyboard for computer using smart-phone typing keyboard
KR102332178B1 (en) * 2019-11-04 2021-11-26 대구대학교 산학협력단 Time shortening keyboard system for disabled person and methods for use

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100891332B1 (en) * 2007-03-30 2009-03-31 삼성전자주식회사 Bose-Chaudhuri-Hocquenghem error correction method and circuit for checking error using error correction encoder
US8659553B1 (en) * 2010-09-20 2014-02-25 Google Inc. Orientation-based touchscreen display
KR20120061711A (en) * 2010-12-03 2012-06-13 삼성전자주식회사 Mobile device and computing system including the same
KR101892003B1 (en) * 2011-10-21 2018-08-28 엘지전자 주식회사 Mobile terminal and control method for the same

Also Published As

Publication number Publication date
KR20150046660A (en) 2015-04-30

Similar Documents

Publication Publication Date Title
US11042185B2 (en) User terminal device and displaying method thereof
EP2812773B1 (en) Portable device and method for controlling the same
JP5272583B2 (en) Acceleration sensor-based pairing method, system, and apparatus, and acceleration sensor-based pairing program
KR102137543B1 (en) Bendable User Terminal device and Method for displaying thereof
US9489070B2 (en) Information processing apparatus, information processing method, and program
KR20110135707A (en) Remote controller and method for controlling operation of the same
US20140240264A1 (en) Method of controlling event and electronic device thereof
US9329661B2 (en) Information processing method and electronic device
KR20200022040A (en) Display device and terminal controlling it
US20190294236A1 (en) Method and System for Processing Signals that Control a Device Using Human Breath
US20140240233A1 (en) Apparatus for providing a cursor in electronic devices and a method thereof
US9798512B1 (en) Context-based volume adjustment
JP2015502602A (en) Screen rotation control method, and terminal and touch system supporting the same
KR20150084524A (en) Display apparatus and Method for controlling display apparatus thereof
US11128926B2 (en) Client device, companion screen device, and operation method therefor
CN108228034A (en) Control method, mobile terminal and the computer readable storage medium of mobile terminal
US20110074829A1 (en) Mobile communication terminal including touch interface and method thereof
KR101583275B1 (en) A method for operating a smart-phone, and computer readable recording medium storing remote control programs using the same
KR101662740B1 (en) Apparatus and method for inputting korean based on a motion of users fingers
JP2014002719A (en) Remote control device, display device and method for controlling the same
CN107948756B (en) Video synthesis control method and device and corresponding terminal
JP6844353B2 (en) Electronic pen, pressure detection method, and program
KR102351634B1 (en) Terminal apparatus, audio system and method for controlling sound volume of external speaker thereof
US20200097117A1 (en) Inconspicuous sensing system across multiple surfaces
US9766767B2 (en) Method and apparatus for entering text in portable terminal

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
FPAY Annual fee payment

Payment date: 20181220

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20191224

Year of fee payment: 5