WO2016021743A1 - 공통 프로토콜을 이용하는 통신 단말기 및 그 제어방법 - Google Patents
공통 프로토콜을 이용하는 통신 단말기 및 그 제어방법 Download PDFInfo
- Publication number
- WO2016021743A1 WO2016021743A1 PCT/KR2014/007149 KR2014007149W WO2016021743A1 WO 2016021743 A1 WO2016021743 A1 WO 2016021743A1 KR 2014007149 W KR2014007149 W KR 2014007149W WO 2016021743 A1 WO2016021743 A1 WO 2016021743A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- packet
- field
- data
- module
- external device
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
Definitions
- the present invention relates to a communication terminal and a control method thereof, a recording medium on which a program for executing the control method is recorded, and an application stored in the medium to execute the control method in combination with hardware.
- the present invention relates to a communication terminal and a control method using the same, a recording medium on which a program for executing the control method is recorded, and an application stored in the medium in combination with hardware to execute the control method.
- a communication terminal such as a smartphone may transmit and receive predetermined data or control signals by performing a communication connection with an external device.
- a communication terminal can communicate with an external device through various wired and wireless communication methods such as universal serial bus (USB), bluetooth, and wireless fidelity (Wi-Fi).
- USB universal serial bus
- Wi-Fi wireless fidelity
- a communication protocol processing function should be provided in the communication terminal as well as the external device.
- communication protocols may vary according to external devices, and it is quite inefficient to communicate using different communication protocols depending on the external device to which the communication terminal is connected.
- the communication terminal needs to use a separate protocol to communicate with each communication module of the external device, the efficiency is also reduced in transmission speed.
- a bottleneck may occur in communication if the communication terminal transmits and receives data only after performing a communication setting process and performing a communication setting process each time the communication terminal communicates with each communication module.
- the present invention has been made to solve the above-mentioned conventional problems, and an object thereof is to provide a communication terminal and a control method for performing communication in an integrated and consistent manner regardless of the type of external device, and to execute the control method.
- the present invention provides a recording medium recording a program, and an application stored in the medium in combination with hardware to execute the control method.
- a communication terminal for communicating with an external device comprises: a first packet processor for generating a sub-protocol packet for controlling the external device; A size determining unit determining a size of a subprotocol packet generated by the first packet processing unit; A second packet processing unit generating a common protocol packet for communication with an external device, wherein the common protocol packet generated by the second packet processing unit includes: a start field indicating a start of a packet, an index field specifying a sequence of packets, And a size field including the size of the subprotocol packet determined by the size determining unit, a message field including the subprotocol packet, and an end field indicating the end of the packet.
- a control method of a communication terminal for communicating with an external device comprises the steps of: generating a sub-protocol packet for control of the external device; Determining a size of the subprotocol packet; Generating a common protocol packet for communication with an external device, wherein the common protocol packet includes a start field indicating a start of a packet, an index field specifying a sequence of packets, and a size of the determined subprotocol packet. A size field, a message field including the subprotocol packet, and an end field indicating the end of the packet.
- FIG. 1 is a schematic structural diagram of an entire communication system including a communication terminal according to an embodiment of the present invention
- FIG. 2 is a functional block diagram of the communication terminal of FIG. 1;
- 3 is a diagram illustrating a relationship between a common protocol packet and a subprotocol packet included therein;
- FIG. 4 is a diagram illustrating a structure of a common protocol packet.
- 5 is a diagram illustrating a structure of a subprotocol packet
- FIG. 6 is a diagram illustrating an example of command data that may be included in a main command field of a common protocol packet of FIG. 4.
- FIG. 7 is a diagram illustrating a configuration of a subprotocol packet
- FIG. 8 is a diagram illustrating an example of types of modules that may be included in a MOD field of a subprotocol packet.
- 9 to 14 are diagrams showing an example of a structure of a communication packet that can be generated during communication using each communication module
- 15 is a control flowchart of a communication terminal according to an embodiment of the present invention.
- each embodiment according to the present invention is only one example to help understanding of the present invention, and the present invention is not limited to these embodiments.
- the present invention may be composed of a combination of at least one or more of individual configurations, individual functions, or individual steps included in each embodiment.
- FIG. 1 A schematic configuration of an entire communication system including a communication terminal 100 according to an embodiment of the present invention is shown in FIG. 1.
- the communication terminal 100 may correspond to a smart phone, a feature phone, a personal digital assistant (PDA), or the like, and may be connected to various external devices.
- PDA personal digital assistant
- the communication terminal 100 may communicate with the refrigerator 200 connected to the home LAN in a Wi-Fi wireless communication method, or may communicate with the speaker 300 in a Bluetooth communication method, and further, in a USB (Universal Serial Bus) method. It may also be in communication with the printer 400.
- a Wi-Fi wireless communication method or may communicate with the speaker 300 in a Bluetooth communication method, and further, in a USB (Universal Serial Bus) method. It may also be in communication with the printer 400.
- USB Universal Serial Bus
- the communication terminal 100 includes a general purpose I / O (GPIO), universal asynchronous receive and transmit (UART), pulse width modulation (PWM), analog to digital converter (ADC), and inter integrated circuit (I2C) provided in an external device. ), May attempt to connect to each communication module corresponding to the SPI (Serial Peripheral Interface) or perform two-way communication with the corresponding communication modules.
- GPIO general purpose I / O
- UART universal asynchronous receive and transmit
- PWM pulse width modulation
- ADC analog to digital converter
- I2C inter integrated circuit
- the packet transmitted to the outside may have a common protocol.
- the communication terminal 100 may include a first packet processor 110, a size determiner 120, a second packet processor 130, and a storage 140.
- the storage 140 may store information on a packet format corresponding to each protocol, and control data to be transmitted to or received from an external device or data received from the external device.
- the first packet processor 110 performs a function of generating a subprotocol packet for controlling the external device.
- the sub-protocol packet is a packet for controlling communication modules corresponding to the above-described external devices GPIO, UART, PWM, ADC, I2C, SPI, or receiving predetermined data from the respective communication modules.
- GPIO Universal Serial Bus
- PWM pulse width modulator
- ADC analog to digital converter
- I2C I2C
- SPI serial to physical interface
- the size determining unit 120 determines a size of the subprotocol packet generated by the first packet processing unit 110.
- the subprotocol packet generated by the first packet processor 110 may have various sizes according to a communication protocol, and the size determiner 120 determines the total size of the subprotocol packet.
- the second packet processor 130 performs a function of generating a common protocol packet for communication with an external device.
- the common protocol packet generated by the second packet processor 130 includes a start field indicating the start of the packet, an index field specifying the order of the packets, and a size of the subprotocol packet determined by the size determining unit 120. And a size field, a message field including the subprotocol packet, and an end field indicating the end of the packet.
- the common protocol packet generated by the second packet processor 130 may further include a command field for controlling the setting of data in an external device or the acquisition of data stored in the external device.
- the STX field, the INDEX field, the CMD field, the LENGTH field, the MSG field, and the ETX field correspond to the above-described start field, index field, command field, size field, message field, and end field, respectively.
- the data stored in the command field includes data for hardware signature verification, data for hardware parameter setting, data for hardware parameter acquisition, data for module initialization and status setting, data for module status acquisition, and user message transmission. At least one of data for and data for temporary message transmission may be included.
- the command field may include any one of seven commands as shown in FIG. 6, and corresponding contents of each command are shown in FIG. 6. Specific embodiments using the command field will be described later.
- the communication terminal 100 transmits a predetermined packet to an external device as an example, but a predetermined packet may be received from the external device.
- the functional blocks of FIG. 2 perform a function for processing the received packet.
- the second packet processor 130 performs a function of distinguishing each field of the common protocol packet received from the external device, and the size determining unit 120 determines the size of the MSG field area of the received common protocol packet in the size field.
- the first packet processing unit 110 distinguishes each field of the subprotocol packet included in the MSG field of the common protocol packet and performs a function specified in the subprotocol packet. Can be.
- the aforementioned subprotocol packet specifies a module field for designating at least one module among GPIO, UART, PWM, ADC, I2C, and SPI, a module command field for setting a function / status of each module, and a channel of each module. And a module data field storing additional data related to command processing.
- a module field for designating at least one module among GPIO, UART, PWM, ADC, I2C, and SPI
- a module command field for setting a function / status of each module
- a channel of each module a module data field storing additional data related to command processing.
- An example of such a sub-protocol packet is illustrated in FIG. 3.
- the MOD field, the MOD CMD field, the Channel field, and the Module Data field of the subprotocol packet constituting the MSG field of the protocol packet correspond to the above-described module field, module command field, channel field, and module data field, respectively.
- FIGS. 4 and 5 An example of the size of each field included in the common protocol packet and the subprotocol packet is illustrated in FIGS. 4 and 5.
- the STX field, the CMD field, and the ETX field of the common protocol packet are 1 byte
- the INDEX field is 2 bytes
- the LENGTH field is 4 bytes
- the MSG field may have a variable size.
- the MOD field, the MOD CMD field, and the CHANNEL field of the subprotocol packet may each have a size of 1 byte
- the module data field may have a variable size.
- the configuration of the sub-protocol packet has the configuration as described above or as shown in Figure 7, where an example of each field will be described in detail as follows.
- data stored in a MOD field of a subprotocol packet when data stored in a MOD field of a subprotocol packet is 0x10, 0x20, 0x30, 0x40, 0x50, and 0x60, it may mean GPIO, UART, PWM, ADC, I2C, and SPI, respectively.
- FIG. 9 An example of the configuration of the subprotocol packet for the GPIO module is shown in FIG. 9, an example of the configuration of the subprotocol packet for the UART module is shown in FIG. 10, and an example of the configuration of the subprotocol packet for the PWM module Is shown in FIG. 11, an example of the configuration of the sub-protocol packet for the ADC module is shown in FIG. 12, an example of the configuration of the sub-protocol packet for the I2C module is shown in FIG. 13, and the sub-for the SPI module is shown in FIG. An example of the configuration of a protocol packet is shown in FIG.
- a predetermined communication app (APP) is installed in the communication terminal 100, and the following control process is performed by the function of the communication app.
- step S3 Upon detecting a user's control command for the external device connected to the communication terminal 100 (step S1), the communication app generates a subprotocol packet for external device control (step S3).
- the communication app generates a packet having a structure as shown in FIG. 10 when controlling the UART module provided in the external device.
- data '0x20' is stored in the first field of the subprotocol packet
- data '0x10' is stored in the second field
- the third field is stored in the corresponding channel.
- the corresponding data (for example, '0x00' in the case of the first channel) is stored, and the communication speed or other necessary data may be stored in the fourth field.
- the communication app determines the size of the subprotocol packet (step S5). That is, the communication app may determine the size by summing the size of each field generated for the control of the previously generated UART module.
- the communication app also generates a main command related to external device control (step S7). For example, when a command for initializing the UART is included in a subprotocol packet, 'CMD_SET_MODULE' illustrated in FIG. 6 may be selected as data to be included in a command field of a common protocol packet described later.
- the communication app determines the order of packet transmission to generate order data (step S9). For example, in the case of a packet to be transmitted for the first time, the communication app may generate data '0x01', and subsequently increase the order of transmission packets. To generate data.
- the communication app generates a common protocol packet including a start field, an index field, a command field, a size field, a message field, and an end field (step S11), where the start field includes data indicating the start of the packet,
- the index field may include data about the packet transmission order previously generated (for example, '0x01')
- the command field may include data corresponding to the main command generated previously (for example, 'CMD_SET_MODULE')
- the size field may include
- the data corresponding to the size of the previously generated subprotocol packet may be included
- the message field may include the above-described subprotocol packet
- the end field may include a packet indicating the end of the packet.
- the communication app may control the generated common protocol packet to be transmitted to the external device (step S13).
- the actual transmission of the packet may be made by an operating system (OS) provided in the communication terminal at the request of the communication app.
- OS operating system
- the transmission efficiency can be increased because it is not necessary to depend on a specific protocol in the process of transmitting and receiving data.
- transmitting and processing a common protocol packet having a consistent form is more important than transmitting a packet for controlling each module separately.
- the efficiency can be improved.
- the external device may prepare for the processing of the actual module command included in the sub-protocol packet by using the content of the command field included in the common protocol packet, processing efficiency may be maximized. That is, since the module instruction can be prepared through the contents of the main command field of the common protocol packet before analyzing the actual subprotocol packet, the processing speed of the module instruction can be increased.
- the process of performing each of the above-described embodiments can be performed by a program or an application stored in a predetermined recording medium (for example, computer readable).
- the recording medium includes both an electronic recording medium such as a random access memory (RAM), a magnetic recording medium such as a hard disk, an optical recording medium such as a compact disk (CD), and the like.
- the program stored in the recording medium may be executed on hardware such as a computer or a smartphone to perform the above-described embodiments.
- at least one of the functional blocks of the communication terminal 100 according to the present invention described above may be implemented by such a program or application.
- a communication process speed and efficiency are increased by using a common protocol packet in a packet communication process during communication between a communication terminal and an external device.
- a common protocol packet is used. Since there is no need to change the communication method, scalability is increased.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
Abstract
공통 프로토콜을 이용하는 통신 단말기 및 그 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체와, 하드웨어와 결합되어 그 제어방법을 실행시키기 위하여 매체에 저장된 애플리케이션을 개시한다. 본 발명의 외부 장치와 통신하는 통신 단말기의 제어방법은, 외부 장치의 제어를 위한 서브 프로토콜 패킷을 생성하는 단계와; 상기 서브 프로토콜 패킷의 크기를 판단하는 단계와; 외부 장치와 통신을 위한 공통 프로토콜 패킷을 생성하는 단계를 포함하고, 상기 공통 프로토콜 패킷은, 패킷의 시작을 알리는 시작 필드, 패킷의 순서를 지정하는 인덱스 필드, 상기 판단된 서브 프로토콜 패킷의 크기를 포함하는 크기 필드, 상기 서브 프로토콜 패킷을 포함하는 메시지 필드와, 패킷의 종료를 알리는 종료 필드를 포함한다.
Description
본 발명은 통신 단말기 및 그 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체와, 하드웨어와 결합되어 그 제어방법을 실행시키기 위하여 매체에 저장된 애플리케이션에 관한 것으로, 보다 상세하게는 공통 프로토콜을 이용하는 통신 단말기 및 그 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체와, 하드웨어와 결합되어 그 제어방법을 실행시키기 위하여 매체에 저장된 애플리케이션에 관한 것이다.
스마트폰 등의 통신 단말기는 외부 장치와 통신 연결을 수행하여 소정의 데이터, 또는 제어 신호를 송수신할 수 있다.
예를 들어 통신 단말기는 외부 장치와 USB(Universal Serial Bus), bluetooth, Wi-Fi(Wireless Fidelity) 등 다양한 유,무선 통신 방식을 통해 통신할 수 있다.
그런데, 통신 단말기와 외부 장치 간 통신이 이루어지기 위해서는 통신 프로토콜 처리 기능이 외부 장치는 물론이고 통신 단말기에도 구비되어 있어야 한다. 그런데 외부 장치에 따라서 통신 프로토콜은 다양할 수 있는데 통신 단말기가 그 연결되는 외부 장치에 따라 각기 다른 통신 프로토콜을 이용하는 통신하는 것은 상당히 비효율적이다.
특히 동일한 외부 장치라 하더라도 복수 개의 통신 모듈을 구비할 수 있는데, 통신 단말기가 그 외부 장치의 각각의 통신 모듈과 통신하기 위해 별도의 프로토콜을 이용해야 한다면 전송 속도에 있어서도 효율성을 떨어뜨리게 된다.
즉, 통신 단말기가 각각의 통신 모듈과 통신할 때마다 통신 설정 과정을 수행하고 통신 설정 과정을 수행한 이후에야 데이터의 송수신 과정이 이루어진다면 통신에 있어서 병목현상이 발생할 수 있는 것이다.
[선행기술문헌]
[특허문헌]
공개특허 10-2014-0082960
본 발명은 상기한 종래의 문제점을 해결하기 위해 안출된 것으로서, 그 목적은 외부 장치의 종류에 상관없이 통합적이고 일관된 방식으로 통신을 수행하는 통신 단말기 및 그 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체와, 하드웨어와 결합되어 그 제어방법을 실행시키기 위하여 매체에 저장된 애플리케이션을 제공하는 것이다.
상기한 목적을 달성하기 위해 본 발명에 따른 외부 장치와 통신하는 통신 단말기는, 외부 장치의 제어를 위한 서브 프로토콜 패킷을 생성하는 제1 패킷 처리부와; 상기 제1 패킷 처리부에 의해 생성된 서브 프로토콜 패킷의 크기를 판단하는 크기 판단부와; 외부 장치와 통신을 위한 공통 프로토콜 패킷을 생성하는 제2 패킷 처리부를 포함하고, 상기 제2 패킷 처리부가 생성하는 공통 프로토콜 패킷은, 패킷의 시작을 알리는 시작 필드, 패킷의 순서를 지정하는 인덱스 필드, 상기 크기 판단부에서 판단된 서브 프로토콜 패킷의 크기를 포함하는 크기 필드, 상기 서브 프로토콜 패킷을 포함하는 메시지 필드와, 패킷의 종료를 알리는 종료 필드를 포함하여 구성된다.
또, 상기한 목적을 달성하기 위해 본 발명에 따른 외부 장치와 통신하는 통신 단말기의 제어방법은, 외부 장치의 제어를 위한 서브 프로토콜 패킷을 생성하는 단계와; 상기 서브 프로토콜 패킷의 크기를 판단하는 단계와; 외부 장치와 통신을 위한 공통 프로토콜 패킷을 생성하는 단계를 포함하고, 상기 공통 프로토콜 패킷은, 패킷의 시작을 알리는 시작 필드, 패킷의 순서를 지정하는 인덱스 필드, 상기 판단된 서브 프로토콜 패킷의 크기를 포함하는 크기 필드, 상기 서브 프로토콜 패킷을 포함하는 메시지 필드와, 패킷의 종료를 알리는 종료 필드를 구성된다.
도 1은 본 발명의 일 실시예에 따른 통신 단말기를 포함하는 전체 통신 시스템의 개략 구성도이고,
도 2는 도 1의 통신 단말기의 기능 블록도이고,
도 3은 공통 프로토콜 패킷 및 그에 포함되는 서브 프로토콜 패킷의 관계를 나타낸 도면이고,
도 4는 공통 프로토콜 패킷의 구조를 나타낸 도면이고,
도 5는 서브 프로토콜 패킷의 구조를 나타낸 도면이고,
도 6은 도 4의 공통 프로토콜 패킷의 메인 명령 필드에 포함될 수 있는 명령어 데이터의 일 예를 나타낸 도면이고,
도 7은 서브 프로토콜 패킷의 구성을 나타낸 도면이고,
도 8은 서브 프로토콜 패킷의 MOD 필드에 포함될 수 있는 모듈의 종류의 일 예를 나타낸 도면이고,
도 9 내지 도 14는 각 통신 모듈을 이용한 통신시 생성될 수 있는 통신 패킷의 구조의 일 예를 나타낸 도면이고,
도 15는 본 발명의 일 실시예에 따른 통신 단말기의 제어 흐름도이다.
이하에서는 첨부도면을 참조하여 본 발명에 대해 상세히 설명한다.
이하 본 발명에 따른 각 실시예는 본 발명의 이해를 돕기 위한 하나의 예에 불과하고, 본 발명이 이러한 실시예에 한정되는 것은 아니다. 특히 본 발명은 각 실시예에 포함되는 개별 구성, 개별 기능, 또는 개별 단계 중 적어도 어느 하나 이상의 조합으로 구성될 수 있다.
본 발명의 일 실시예에 따른 통신 단말기(100)를 포함하는 전체 통신 시스템의 개략 구성은 도 1에 도시된 바와 같다.
동 도면에 도시된 바와 같이 통신 단말기(100)는 스마트폰, 피쳐폰, PDA(Personal Digital Assistants) 등에 해당할 수 있는데, 다양한 외부 장치들과 연결될 수 있다.
예를 들어 통신 단말기(100)는 와이파이 무선 통신 방식으로 댁내 랜에 연결된 냉장고(200)와 통신하거나, 블루투스 통신 방식으로 스피커(300)와 통신할 수 있고, 더 나아가 USB(Universal Serial Bus) 방식으로 프린터(400)와 통신할 수도 있다.
여기서 통신 단말기(100)는 외부 장치에 구비된 GPIO(General Purpose I/O), UART(Universal Asynchronous Receive and Transmit), PWM(Pulse Width Modulation), ADC(Analog to Digital Converter), I2C(Inter Integrated Circuit), SPI(Serial Peripheral Interface)에 대응되는 각 통신 모듈에 대한 연결을 시도하거나 해당 통신 모듈들과 쌍방향 통신을 수행할 수 있다.
다만, 통신 단말기(100) 각 통신 모듈들과 통신함에 있어서 외부로 송출하는 패킷은 공통 프로토콜을 가지도록 할 수 있다.
이러한 통신 단말기(100)의 구체적인 기능 블록은 도 2에 도시된 바와 같다.
동 도면에 도시된 바와 같이 통신 단말기(100)는 제1 패킷 처리부(110), 크기 판단부(120), 제2 패킷 처리부(130), 저장부(140)를 포함하여 구성될 수 있다.
여기서 저장부(140)에는 각 프로토콜에 대응되는 패킷 포맷에 대한 정보가 저장되어 있을 수 있고, 외부 장치와 전송할 제어 데이터 또는 외부 장치로부터 수신된 데이터가 저장될 수 있다.
제1 패킷 처리부(110)는 외부 장치의 제어를 위한 서브 프로토콜 패킷을 생성하는 기능을 수행한다.
여기서 서브 프로토콜 패킷은 상술한 외부 디바이스의 GPIO, UART, PWM, ADC, I2C, SPI에 각각 대응되는 통신 모듈을 제어하거나 해당 각 통신 모듈들로부터 소정의 데이터를 수신하기 위한 패킷이다. 이러한 서브 프로토콜 패킷의 구조에 대한 보다 상세한 설명은 후술토록 한다.
크기 판단부(120)는 제1 패킷 처리부(110)에 의해 생성된 서브 프로토콜 패킷의 크기를 판단하는 기능을 수행한다. 예를 들어 제1 패킷 처리부(110)에 의해 생성된 서브 프로토콜 패킷은 통신 프로토콜에 따라 다양한 크기를 가질 수 있는데, 크기 판단부(120)는 그 서브 프로토콜 패킷의 전체 크기를 판단하는 것이다.
제2 패킷 처리부(130)는 외부 장치와 통신을 위한 공통 프로토콜 패킷을 생성하는 기능을 수행한다.
여기서 제2 패킷 처리부(130)가 생성하는 공통 프로토콜 패킷은, 패킷의 시작을 알리는 시작 필드, 패킷의 순서를 지정하는 인덱스 필드, 상기 크기 판단부(120)에서 판단된 서브 프로토콜 패킷의 크기를 포함하는 크기 필드, 상기 서브 프로토콜 패킷을 포함하는 메시지 필드와, 패킷의 종료를 알리는 종료 필드를 포함하여 구성될 수 있다.
더 나아가, 제2 패킷 처리부(130)가 생성하는 공통 프로토콜 패킷에는 외부 장치에 데이터의 설정 또는 상기 외부장치에 저장된 데이터의 획득을 제어하기 위한 명령 필드가 더 포함될 수도 있다.
이러한 공통 프로토콜 패킷의 구성은 도 3에 도시된 바와 같다.
도 3에서 STX 필드, INDEX 필드, CMD 필드, LENGTH 필드, MSG 필드, ETX 필드가 각각 상술한 시작 필드, 인덱스 필드, 명령 필드, 크기 필드, 메시지 필드, 종료 필드에 해당한다.
여기서 명령 필드에 저장되는 데이터에는 하드웨어 서명 확인을 위한 데이터, 하드웨어 매개변수 설정을 위한 데이터, 하드웨어 매개변수 획득을 위한 데이터, 모듈 초기화 및 상태 설정을 위한 데이터, 모듈 상태 획득을 위한 데이터, 사용자 메시지 전송을 위한 데이터, 임시 메시지 전송을 위한 데이터 중 적어도 어느 하나가 포함될 수 있다.
예를 들어 명령 필드에는 도 6에 도시된 바와 같이 7개의 명령어 중 어느 하나가 포함될 수 있고, 그 각각의 명령어의 대응되는 내용은 도 6에 도시된 바와 같다. 명령 필드를 이용하는 구체적인 실시예에 대해서는 후술토록 한다.
한편, 본 실시예에서는 통신 단말기(100)가 소정의 패킷을 외부 장치에 전송하는 과정을 일 예로 설명하고 있으나, 외부 장치로부터 소정의 패킷이 통신 단말기(100)에 수신될 수도 있다. 이때 도 2의 기능 블록들은 수신된 패킷을 처리하기 위한 기능을 수행한다.
즉, 제2 패킷 처리부(130)는 외부 장치로부터 수신된 공통 프로토콜 패킷의 각 필드를 구분하는 기능을 수행하고, 크기 판단부(120)는 수신된 공통 프로토콜 패킷의 MSG 필드 영역의 크기를 크기 필드를 이용하여 확인하는 기능을 수행하며, 제1 패킷 처리부(110)는 공통 프로토콜 패킷의 MSG 필드에 포함된 서브 프로토콜 패킷의 각 필드를 구분하고 그 서브 프로토콜 패킷에서 지정된 명령을 수행하는 기능을 수행할 수 있다.
한편, 상술한 서브 프로토콜 패킷은 GPIO, UART, PWM, ADC, I2C, SPI 중 적어도 어느 하나의 모듈을 지정하는 모듈 필드, 각 모듈의 기능/상태 설정을 위한 모듈 명령 필드, 각 모듈의 채널을 지정하는 채널 필드, 명령 처리와 관련된 부가 데이터가 저장된 모듈 데이터 필드를 포함하여 구성될 수 있는데, 이러한 서브 프로토콜 패킷의 일 예는 도 3에 도시된 바와 같다.
즉, 도 3에서 프로토콜 패킷의 MSG 필드를 구성하는 서브 프로토콜 패킷의 MOD 필드, MOD CMD 필드, Channel 필드, Module Data 필드는 각각 상술한 모듈 필드, 모듈 명령 필드, 채널 필드, 모듈 데이터 필드에 해당한다.
공통 프로토콜 패킷과 서브 프로토콜 패킷에 포함된 각 필드의 크기의 일 예는 도 4 및 도 5에 도시된 바와 같다.
도 4에 도시된 바와 같이 공통 프로토콜 패킷의 STX 필드, CMD 필드와, ETX 필드는 각각 1바이트, INDEX 필드는 2 바이트이고, LENGTH 필드는 4바이트이며, MSG 필드는 가변 크기를 가질 수 있고, 도 5에 도시된 바와 같이 서브 프로토콜 패킷의 MOD 필드, MOD CMD 필드와, CHANNEL 필드는 각각 1바이트의 크기를 가지고 Module Data 필드는 가변 크기를 가질 수 있다.
한편, 서브 프로토콜 패킷의 구성은 상술한 바와 같이, 또는 도 7에 도시된 바와 같은 구성을 가지는데, 여기서 각 필드의 일 예를 구체적으로 설명하면 다음과 같다.
우선, 도 8을 참조하면, 서브 프로토콜 패킷의 MOD 필드에 저장된 데이터가 0x10, 0x20, 0x30, 0x40, 0x50, 0x60 인 경우는 각각 GPIO, UART, PWM, ADC, I2C, SPI 을 의미할 수 있다.
GPIO 모듈에 대한 서브 프로토콜 패킷의 구성의 일 예는 도 9에 도시되었고, UART 모듈에 대한 서브 프로토콜 패킷의 구성의 일 예는 도 10에 도시되었고, PWM 모듈에 대한 서브 프로토콜 패킷의 구성의 일 예는 도 11에 도시되었고, ADC 모듈에 대한 서브 프로토콜 패킷의 구성의 일 예는 도 12에 도시되었고, I2C 모듈에 대한 서브 프로토콜 패킷의 구성의 일 예는 도 13에 도시되었고, SPI 모듈에 대한 서브 프로토콜 패킷의 구성의 일 예는 도 14에 도시되었다.
이하에서는 도 15를 참조하여 본 발명의 일 실시예에 따른 통신 단말기(100)의 제어 과정을 설명한다.
본 실시예에서는 통신 단말기(100)에 소정의 통신 앱(APP)이 설치되어 있고, 이러한 통신 앱의 기능에 의해 이하 제어 과정이 이루어진다고 가정한다.
통신 단말기(100)에 연결된 외부 장치에 대한 사용자의 제어 명령을 감지하면(단계 S1), 통신 앱은 외부 장치 제어용 서브 프로토콜 패킷을 생성한다(단계 S3).
예를 들어 통신 앱은 외부 장치에 구비된 UART 모듈에 대한 제어인 경우, 도 10에 나타난 바와 같은 구조를 가지는 패킷을 생성하는 것이다.
구체적인 예로써, UART 모듈에 대한 초기화를 수행하는 경우, 서브 프로토콜 패킷의 첫 번째 필드에는 데이터 '0x20'이 저장되고, 두 번째 필드에는 데이터 '0x10'이 저장되며, 세 번째 필드에는 해당되는 채널에 해당하는 데이터(일 예로 첫 번째 채널인 경우에는 '0x00')가 저장되고, 네 번째 필드에는 통신 속도나 기타 필요한 데이터가 저장될 수 있다.
이어서 통신 앱은 서브 프로토콜 패킷의 크기를 판단한다(단계 S5). 즉, 통신 앱은 앞서 생성한 UART 모듈에 대한 제어를 위해 생성한 각 필드의 크기를 합산하여 크기를 판단할 수 있다.
또한 통신 앱은 외부 장치 제어와 관련된 메인 명령을 생성한다(단계 S7). 예를 들어 UART 초기화를 위한 명령이 서브 프로토콜 패킷에 포함되어 있는 경우 후술하는 공통 프로토콜 패킷의 명령 필드에 포함될 데이터로써 도 6에 도시된 'CMD_SET_MODULE'을 선택할 수 있다.
또한 통신 앱은 패킷 전송 순서를 판단하여 순서 데이터를 생성하는데(단계 S9), 예를 들어 최초로 전송하는 패킷인 경우에는 데이터 '0x01'을 생성할 수 있고, 그 이후의 전송 패킷에 대해서는 순서대로 증가하는 데이터를 생성할 수 있다.
이후, 통신 앱은 시작 필드, 인덱스 필드, 명령 필드, 크기 필드, 메시지 필드, 종료 필드를 포함하는 공통 프로토콜 패킷을 생성하는데(단계 S11), 여기서 시작 필드에는 패킷의 시작을 알리는 데이터가 포함되고, 인덱스 필드에는 앞서 생성한 패킷 전송 순서에 대한 데이터(일 예로 '0x01')가 포함되며, 명령 필드에는 앞서 생성한 메인 명령에 해당하는 데이터(일 예로 'CMD_SET_MODULE')가 포함될 수 있으며, 크기 필드에는 앞서 생성한 서브 프로토콜 패킷의 크기에 해당하는 데이터가 포함될 수 있고, 메시지 필드에는 상술한 서브 프로토콜 패킷이 포함될 수 있고, 종료 필드에는 패킷의 종료를 알리는 패킷이 포함될 수 있다.
이후, 통신 앱은 생성한 공통 프로토콜 패킷이 외부 장치에 전송되도록 제어할 수 있다(단계 S13). 패킷의 실제 전송은 통신 앱의 요청에 따라 통신 단말기에 구비된 OS(Operating System)에 의해 이루어질 수 있다.
이에 따라 통신 단말기(100)와 외부 장치는 공통 프로토콜 패킷을 처리할 수만 있으면 데이터의 송수신에는 아무런 문제가 없다. 즉, 데이터의 송수신 과정에서 특정 프로토콜에 종속될 필요가 없으므로 전송 효율이 높아질 수 있다.
예를 들어 하나의 외부 장치에 복수 개의 통신 모듈이 구비되어 있는 경우, 각 모듈의 제어를 위한 패킷을 별개로 전송하는 경우보다는 일관된 형태를 가지고 있는 공통 프로토콜 패킷을 전송하는 것이 해당 패킷의 전송 및 처리 효율을 향상시킬 수 있는 것이다.
또한 외부 장치는 공통 프로토콜 패킷에 포함된 명령 필드의 내용을 이용하여 서브 프로토콜 패킷에 포함된 실제 모듈 명령의 처리를 위한 준비를 할 수 있으므로, 처리 효율성이 극대화될 수 있다. 즉, 실제 서브 프로토콜 패킷을 분석하기 전에 이미 공통 프로토콜 패킷의 메인 명령 필드의 내용을 통해 모듈 명령의 처리를 준비할 수 있으므로 모듈 명령에 대한 처리 속도를 높일 수 있는 것이다.
게다가 새로운 서브 프로토콜이 도입되더라도 통신 앱과 외부 장치에서만 해당 서브 프로토콜의 처리를 위한 기능을 구현하면 되고, 통신 단말기 자체는 공통 프로토콜을 이용하여 외부 장치와 통신하면 되므로 확장성이 증대된다고 할 수 있다.
한편, 상술한 각 실시예를 수행하는 과정은 소정의 기록 매체(예를 들어 컴퓨터로 판독 가능한)에 저장된 프로그램 또는 애플리케이션에 의해 이루어질 수 있음은 물론이다. 여기서 기록 매체는 RAM(Random Access Memory)과 같은 전자적 기록 매체, 하드 디스크와 같은 자기적 기록 매체, CD(Compact Disk)와 같은 광학적 기록 매체 등을 모두 포함한다.
이때, 기록 매체에 저장된 프로그램은 컴퓨터나 스마트폰 등과 같은 하드웨어 상에서 실행되어 상술한 각 실시예를 수행할 수 있다. 특히, 상술한 본 발명에 따른 통신 단말기(100)의 기능 블록 중 적어도 어느 하나는 이러한 프로그램 또는 애플리케이션에 의해 구현될 수 있다.
이상 설명한 바와 같이 본 발명에 따르면, 통신 단말기와 외부 장치 간의 통신시 패킷 통신 과정에서는 공통 프로토콜 패킷을 이용함으로 통신 처리 속도 및 효율성이 증대되고, 특히 새로운 서브 프로토콜이 도입된 경우에도 공통 프로토콜 패킷을 이용한 통신 방식에는 변화를 줄 필요가 없으므로 확장성이 증대된다.
Claims (10)
- 외부 장치와 통신하는 통신 단말기의 제어방법에 있어서,(a) 외부 장치의 제어를 위한 서브 프로토콜 패킷을 생성하는 단계와;(b) 상기 서브 프로토콜 패킷의 크기를 판단하는 단계와;(c) 외부 장치와 통신을 위한 공통 프로토콜 패킷을 생성하는 단계를 포함하고,상기 공통 프로토콜 패킷은, 패킷의 시작을 알리는 시작 필드, 패킷의 순서를 지정하는 인덱스 필드, 상기 (b) 단계에서 판단된 서브 프로토콜 패킷의 크기를 포함하는 크기 필드, 상기 서브 프로토콜 패킷을 포함하는 메시지 필드와, 패킷의 종료를 알리는 종료 필드를 포함하여 구성되는 것을 특징으로 하는 통신 단말기의 제어방법.
- 제1항에 있어서,상기 공통 프로토콜 패킷에는 상기 외부 장치에 데이터의 설정 또는 상기 외부장치에 저장된 데이터의 획득을 제어하기 위한 명령 필드가 더 포함되는 것을 특징으로 하는 통신 단말기의 제어방법.
- 제2항에 있어서,상기 명령 필드에 저장되는 데이터에는 하드웨어 서명 확인을 위한 데이터, 하드웨어 매개변수 설정을 위한 데이터, 하드웨어 매개변수 획득을 위한 데이터, 모듈 초기화 및 상태 설정을 위한 데이터, 모듈 상태 획득을 위한 데이터, 사용자 메시지 전송을 위한 데이터, 임시 메시지 전송을 위한 데이터 중 적어도 어느 하나가 포함되는 것을 특징으로 하는 통신 단말기의 제어방법.
- 제1항에 있어서,상기 서브 프로토콜 패킷은 GPIO, UART, PWM, ADC, I2C, SPI 중 적어도 어느 하나의 모듈을 지정하는 모듈 필드, 각 모듈의 기능/상태 설정을 위한 모듈 명령 필드, 각 모듈의 채널을 지정하는 채널 필드, 명령 처리와 관련된 부가 데이터가 저장된 모듈 데이터 필드를 포함하여 구성되는 것을 특징으로 하는 통신 단말기의 제어방법.
- 제1항 내지 제4항 중 어느 한 항의 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
- 하드웨어와 결합되어 제1항 내지 제4항 중 어느 한 항의 방법을 실행시키기 위하여 매체에 저장된 애플리케이션.
- 외부 장치와 통신하는 통신 단말기에 있어서,외부 장치의 제어를 위한 서브 프로토콜 패킷을 생성하는 제1 패킷 처리부와;상기 제1 패킷 처리부에 의해 생성된 서브 프로토콜 패킷의 크기를 판단하는 크기 판단부와;외부 장치와 통신을 위한 공통 프로토콜 패킷을 생성하는 제2 패킷 처리부를 포함하고,상기 제2 패킷 처리부가 생성하는 공통 프로토콜 패킷은, 패킷의 시작을 알리는 시작 필드, 패킷의 순서를 지정하는 인덱스 필드, 상기 크기 판단부에서 판단된 서브 프로토콜 패킷의 크기를 포함하는 크기 필드, 상기 서브 프로토콜 패킷을 포함하는 메시지 필드와, 패킷의 종료를 알리는 종료 필드를 포함하여 구성되는 것을 특징으로 하는 통신 단말기.
- 제7항에 있어서,상기 공통 프로토콜 패킷에는 상기 외부 장치에 데이터의 설정 또는 상기 외부장치에 저장된 데이터의 획득을 제어하기 위한 명령 필드가 더 포함되는 것을 특징으로 하는 통신 단말기.
- 제8항에 있어서,상기 명령 필드에 저장되는 데이터에는 하드웨어 서명 확인을 위한 데이터, 하드웨어 매개변수 설정을 위한 데이터, 하드웨어 매개변수 획득을 위한 데이터, 모듈 초기화 및 상태 설정을 위한 데이터, 모듈 상태 획득을 위한 데이터, 사용자 메시지 전송을 위한 데이터, 임시 메시지 전송을 위한 데이터 중 적어도 어느 하나가 포함되는 것을 특징으로 하는 통신 단말기.
- 제7항에 있어서,상기 서브 프로토콜 패킷은 GPIO, UART, PWM, ADC, I2C, SPI 중 적어도 어느 하나의 모듈을 지정하는 모듈 필드, 각 모듈의 기능/상태 설정을 위한 모듈 명령 필드, 각 모듈의 채널을 지정하는 채널 필드, 명령 처리와 관련된 부가 데이터가 저장된 모듈 데이터 필드를 포함하여 구성되는 것을 특징으로 하는 통신 단말기.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2014/007149 WO2016021743A1 (ko) | 2014-08-04 | 2014-08-04 | 공통 프로토콜을 이용하는 통신 단말기 및 그 제어방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2014/007149 WO2016021743A1 (ko) | 2014-08-04 | 2014-08-04 | 공통 프로토콜을 이용하는 통신 단말기 및 그 제어방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016021743A1 true WO2016021743A1 (ko) | 2016-02-11 |
Family
ID=55263999
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2014/007149 WO2016021743A1 (ko) | 2014-08-04 | 2014-08-04 | 공통 프로토콜을 이용하는 통신 단말기 및 그 제어방법 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2016021743A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111835539A (zh) * | 2019-04-17 | 2020-10-27 | 西安诺瓦电子科技有限公司 | 设备通信方法、装置及系统和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6804776B1 (en) * | 1999-09-21 | 2004-10-12 | Cisco Technology, Inc. | Method for universal transport encapsulation for Internet Protocol network communications |
EP2230605A1 (en) * | 2009-03-16 | 2010-09-22 | Apple Inc. | Accessory and mobile computing device communication using an application communication protocol |
KR20110080524A (ko) * | 2010-01-06 | 2011-07-13 | 삼성전자주식회사 | 프로토콜 인터페이스 변환장치 및 방법 |
WO2013091382A1 (zh) * | 2011-12-22 | 2013-06-27 | 中兴通讯股份有限公司 | 一种实现电器设备兼容的方法和系统、通用外设接入网关 |
KR20140082960A (ko) * | 2011-10-13 | 2014-07-03 | 더 보잉 컴파니 | 부수적인 기능들을 가진 휴대용 통신 장치 및 관련 방법 |
-
2014
- 2014-08-04 WO PCT/KR2014/007149 patent/WO2016021743A1/ko active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6804776B1 (en) * | 1999-09-21 | 2004-10-12 | Cisco Technology, Inc. | Method for universal transport encapsulation for Internet Protocol network communications |
EP2230605A1 (en) * | 2009-03-16 | 2010-09-22 | Apple Inc. | Accessory and mobile computing device communication using an application communication protocol |
KR20110080524A (ko) * | 2010-01-06 | 2011-07-13 | 삼성전자주식회사 | 프로토콜 인터페이스 변환장치 및 방법 |
KR20140082960A (ko) * | 2011-10-13 | 2014-07-03 | 더 보잉 컴파니 | 부수적인 기능들을 가진 휴대용 통신 장치 및 관련 방법 |
WO2013091382A1 (zh) * | 2011-12-22 | 2013-06-27 | 中兴通讯股份有限公司 | 一种实现电器设备兼容的方法和系统、通用外设接入网关 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111835539A (zh) * | 2019-04-17 | 2020-10-27 | 西安诺瓦电子科技有限公司 | 设备通信方法、装置及系统和存储介质 |
CN111835539B (zh) * | 2019-04-17 | 2023-08-25 | 西安诺瓦星云科技股份有限公司 | 设备通信方法、装置及系统和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2010151063A2 (en) | Apparatus and method for operating sleep mode | |
WO2014007431A1 (ko) | 휴대 단말과 외부 장치 간 데이터 송수신 시스템 및 방법 | |
WO2012070811A2 (en) | Method and system for minimizing latencies for content protection in audio/video networks | |
WO2014067310A1 (zh) | 数据包处理方法、电子设备及存储介质 | |
WO2011102700A2 (en) | Methods and device of managing resources in a wireless communication network | |
WO2016029659A1 (zh) | 同步智能设备音乐播放器功能的方法、系统及蓝牙耳机 | |
WO2011056032A2 (en) | Method and apparatus for changing input type in input system using universal plug and play | |
WO2015026158A1 (en) | Method and system for dual role handling in a wireless environment | |
CN203773533U (zh) | 移动式数据处理装置 | |
CN114745451B (zh) | 数据传输方法及装置、电子设备和计算机可读介质 | |
WO2016114588A1 (ko) | 무선자원관리방법 및 이를 이용하는 액세스 포인트 | |
WO2013176342A1 (ko) | 사용자단말과 외부장치 간 연결 시스템 및 방법 | |
CN101662453A (zh) | 一种针对协同标准的数据转换方法及设备 | |
WO2011136628A9 (en) | System and method of encoding and decoding control information in a medium access control protocol data unit | |
WO2010008248A2 (en) | A method and an apparatus for controlling messages between host and controller. | |
WO2016159396A1 (ko) | 윕스 센서 및 이를 이용한 단말 차단 방법 | |
CN101977244A (zh) | 一种控制方法、装置和系统 | |
WO2016021743A1 (ko) | 공통 프로토콜을 이용하는 통신 단말기 및 그 제어방법 | |
WO2021066460A1 (ko) | 우선 순위 값을 가진 mac ce를 포함한 논리 채널 우선화 방법 및 장치 | |
WO2021157764A1 (ko) | 휴대 단말 일체형 무전기 및 이를 이용하는 무전 시스템 및 방법 | |
WO2012165732A1 (ko) | 근거리 무선 개인 통신망에서의 스케줄링 방법 | |
WO2017055679A1 (en) | Pdu structures | |
WO2020075894A1 (ko) | 프로토콜 호환성이 향상된 ptt 통신 시스템 및 이를 이용한 ptt 통신 방법 | |
WO2011081504A2 (ko) | 무선 통신 시스템에서 시스템 정보 업데이트 제어 정보 송수신 방법 및 장치 | |
WO2011005000A2 (en) | Method and system for encoding and decoding medium access control layer packet |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14899217 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 14899217 Country of ref document: EP Kind code of ref document: A1 |