KR102295655B1 - 통합된 통화 및 계산 기능을 지원하는 전자 장치 및 그 방법 - Google Patents

통합된 통화 및 계산 기능을 지원하는 전자 장치 및 그 방법 Download PDF

Info

Publication number
KR102295655B1
KR102295655B1 KR1020140094174A KR20140094174A KR102295655B1 KR 102295655 B1 KR102295655 B1 KR 102295655B1 KR 1020140094174 A KR1020140094174 A KR 1020140094174A KR 20140094174 A KR20140094174 A KR 20140094174A KR 102295655 B1 KR102295655 B1 KR 102295655B1
Authority
KR
South Korea
Prior art keywords
input
key
interface
function
button
Prior art date
Application number
KR1020140094174A
Other languages
English (en)
Other versions
KR20160012573A (ko
Inventor
이광민
김경중
김정훈
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020140094174A priority Critical patent/KR102295655B1/ko
Priority to US14/790,390 priority patent/US10001919B2/en
Publication of KR20160012573A publication Critical patent/KR20160012573A/ko
Application granted granted Critical
Publication of KR102295655B1 publication Critical patent/KR102295655B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/02Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators
    • G06F15/0225User interface arrangements, e.g. keyboard, display; Interfaces to other computer systems
    • 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]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures

Abstract

본 발명의 다양한 실시 예에 따른 전자 장치는, 복수의 숫자 키 및 기능 키를 제공하기 위한 입출력 인터페이스, 상기 입출력 인터페이스를 통해 선택된 키 값을 저장하는 버퍼, 및 상기 입출력 인터페이스를 통해 지정된 조건이 발생하면 상기 지정된 조건이 계산 기능에 대한 것인지 또는 전화 기능에 대한 것인지를 판단하고, 상기 판단의 결과에 따라서 상기 저장된 키 값을 이용하여 전화 기능 또는 계산 기능을 수행하는 제어 모듈을 포함할 수 있다. 또한 상기 복수의 숫자 키 및 상기 기능 키 중 삭제 키는 상기 계산 기능과 상기 전화 기능에 대해 공통적으로 사용될 수 있다. 이 외에, 명세서를 통해 파악되는 다른 실시 예들이 가능하다.

Description

통합된 통화 및 계산 기능을 지원하는 전자 장치 및 그 방법{Apparatus for Providing Integrated Functions of Dial and Calculator and Method thereof}
본 발명의 다양한 실시 예들은 전자 장치의 다이얼러(dialer) 화면에서 계산 기능을 함께 지원하는 기술과 관련된다.
도 1은 종래의 전화 및 계산기 어플리케이션의 화면을 나타낸다.
도 1을 참조하면, 전화 어플리케이션의 화면 10은 키패드(keypad), 최근 기록(logs), 즐겨찾기(favorites), 또는 연락처(contacts) 화면으로 전환하기 위한 메뉴를 제공하는 탭 영역 11, 다이얼 넘버가 표시되는 영역 13, 및 0~9의 숫자 키 및 기능 키(예를 들어, *, #, 통화 키, 메시지 키, 영상통화 키, 삭제 키 등)가 표시되는 영역 15를 포함한다. 계산기 어플리케이션의 화면 20은 스크롤 영역 21, 계산 수식 및 결과가 표시되는 영역 23, 및 숫자 키 및 기능(기호) 키(예를 들어, 연산자(+, -, ÷, ×), 괄호, 삭제, 계산(=) 키 등)가 표시되는 영역 25를 포함한다.
도 1에 도시된 것과 같이, 전화 기능을 위한 어플리케이션과 계산 기능을 위한 어플리케이션은 모두 숫자 키 및 잘못 입력된 숫자(또는 기호)를 삭제하기 위한 삭제 키를 공통적으로 포함한다. 하지만 기존의 전자 장치는 두 기능 사이의 호환을 제공하지 않기 때문에, 사용자가 각 기능을 수행하기 위해서는 각 기능에 해당하는 어플리케이션을 찾아서 실행시켜야 한다. 다시 말해서, 전화 어플리케이션과 계산기 어플리케이션은 상당히 유사한 인터페이스를 가지고 있지만, 전화 어플리케이션의 숫자 버튼을 활용한 계산 기능은 지원되지 않는다.
근래의 스마트 폰 또는 태블릿과 같은 전자 장치들은 전화 기능과 계산기 기능을 기본적으로 포함하지만, SNS, 검색, 지도, 대중교통, 여행, 날씨, 일정관리, 음악, 동영상 등과 같은 엄청나게 다양한 서비스(어플리케이션)도 함께 제공할 수 있다. 전자 장치가 제공하는 수많은 기능 중에서 전화 기능은 상대적으로 자주 활용되지만, 계산기 기능은 보통 자주 사용되지 않는다. 즉 다수의 사용자는 계산기 어플리케이션을 스마트 폰의 첫 화면이나 찾기 쉬운 화면에 배치하지 않는 경향이 있다. 따라서 사용자가 간단한 계산을 수행하기 위해 계산기 어플리케이션을 찾는 과정은 번거로울 수 있다.
본 발명의 다양한 실시 예들은, 통합된 통화 및 계산 환경을 지원하는 장치 및 그 방법을 제공할 수 있다.
본 발명의 다양한 실시 예에 따른 전자 장치는, 전자 장치는, 복수의 숫자 키 및 기능 키를 제공하기 위한 입출력 인터페이스, 상기 입출력 인터페이스를 통해 선택된 키 값을 저장하는 버퍼, 및 상기 입출력 인터페이스를 통해 지정된 조건이 발생하면 상기 지정된 조건이 계산 기능에 대한 것인지 또는 전화 기능에 대한 것인지를 판단하고, 상기 판단의 결과에 따라서 상기 저장된 키 값을 이용하여 전화 기능 또는 계산 기능을 수행하는 제어 모듈을 포함할 수 있다. 또한 상기 복수의 숫자 키 및 상기 기능 키 중 삭제 키는 상기 계산 기능과 상기 전화 기능에 대해 공통적으로 사용될 수 있다.
본 발명의 다양한 실시 예에 따르면, 사용자는 계산기 어플리케이션을 찾아서 실행하지 않고도 효과적으로 계산 기능을 수행할 수 있는 효과가 있다. 예를 들어, 다양한 실시 예는 사용자가 계산기 기능이 필요할 때 편리하고 직관적으로 접근하여 바로 계산기 기능을 사용할 수 있는 효과를 제공하며, 다이얼 키패드에서 전화 모드/계산기 모드의 별도 선택 없이 바로 전화 기능 또는 계산기 기능을 선택적으로 사용할 수 있는 편리함을 제공한다.
도 1은 종래의 전화 및 계산기 어플리케이션의 화면을 나타낸다.
도 2는 본 발명의 다양한 실시 예에 따른 전자 장치의 일 예시를 나타낸다.
도 3은 본 발명의 다양한 실시 예에 따른 계산 기능이 포함된 키패드의 예시를 나타낸다.
도 4는 본 발명의 다양한 실시 예에 따른 연산자를 포함하는 팝업 버튼의 예시를 나타낸다.
도 5는 본 발명의 다양한 실시 예에 따른 계산 기능이 지원되는 입출력 인터페이스의 예시를 나타낸다.
도 6은 본 발명의 다양한 실시 예에 따른 통화 기능과 계산 기능을 지원하는 입출력 인터페이스의 예시를 나타낸다.
도 7은 본 발명의 다양한 실시 예에 따른 계산 기능 제공 프로세스를 나타낸다.
도 8은 본 발명의 다양한 실시 예에 따른 팝업 버튼 디스플레이 프로세스를 나타낸다.
도 9는 본 발명의 다양한 실시 예에 따른 키 값의 적절성 여부를 판단하는 프로세스를 나타낸다.
도 10은 본 발명의 다양한 실시 예에 따른 전자 장치를 포함하는 네트워크 환경을 도시한다.
도 11은 본 발명의 다양한 실시 예에 따른 전자 장치의 하드웨어 구성을 나타낸다.
이하, 본 발명의 다양한 실시 예가 첨부된 도면과 연관되어 기재된다. 본 발명의 다양한 실시 예는 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있는바, 특정 실시 예들이 도면에 예시되고 관련된 상세한 설명이 기재되어 있다. 그러나 이는 본 발명의 다양한 실시 예를 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 다양한 실시 예의 사상 및 기술 범위에 포함되는 모든 변경 및/또는 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용되었다.
본 발명의 다양한 실시 예 가운데 사용될 수 있는 "포함한다" 또는 "포함할 수 있다" 등의 표현은 개시된 해당 기능, 동작 또는 구성요소 등의 존재를 가리키며, 추가적인 하나 이상의 기능, 동작 또는 구성요소 등을 제한하지 않는다. 또한 본 발명의 다양한 실시 예에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명의 다양한 실시 예에서 "또는" 또는 "A 또는/및 B 중 적어도 하나" 등의 표현은 함께 나열된 단어들의 어떠한, 그리고 모든 조합을 포함한다. 예를 들어, "A 또는 B" 또는 "A 또는/및 B 중 적어도 하나" 각각은, A를 포함할 수도, B를 포함할 수도, 또는 A 와 B 모두를 포함할 수도 있다.
본 발명의 다양한 실시 예 가운데 "제1", "제2", "첫째", 또는 "둘째" 등의 표현들이 본 발명의 다양한 실시 예의 다양한 구성요소들을 수식할 수 있지만, 해당 구성요소들을 한정하지 않는다. 예를 들어, 상기 표현들은 해당 구성요소들의 순서 및/또는 중요도 등을 한정하지 않는다. 상기 표현들은 한 구성요소를 다른 구성요소와 구분 짓기 위해 사용될 수 있다. 예를 들어, 제1 사용자 기기와 제2 사용자 기기는 모두 사용자 기기이며, 서로 다른 사용자 기기를 나타낸다. 예를 들어, 본 발명의 다양한 실시 예의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해될 수 있어야 할 것이다.
본 발명의 다양한 실시 예에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명의 다양한 실시 예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명의 다양한 실시 예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 발명의 다양한 실시 예에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
본 발명의 다양한 실시 예에 따른 전자 장치는, 전화 및 계산 기능이 포함된 장치일 수 있다. 예를 들면, 전자 장치는 스마트 폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 화상전화기, 전자북 리더기(e-book reader), 데스크톱 PC(desktop PC), 랩탑 PC(laptop PC), 넷북 컴퓨터(netbook computer), PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라(camera), 또는 웨어러블 장치(wearable device)(예: 전자 안경과 같은 head-mounted-device(HMD), 전자 의복, 전자 팔찌, 전자 목걸이, 전자 앱세서리(appcessory), 전자 문신, 또는 스마트 와치(smart watch) 등)중 적어도 하나를 포함할 수 있다.
어떤 실시 예들에 따르면, 전자 장치는 전화 및 계산 기능이 포함된 스마트 가전 제품(smart home appliance)일 수 있다. 스마트 가전 제품은, 예를 들자면, 전자 장치는 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), TV 박스(예를 들면, 삼성 HomeSync™, 애플TV™, 또는 구글 TV™, 게임 콘솔(game consoles), 전자 사전, 전자 키, 캠코더(camcorder), 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
어떤 실시 예들에 따르면, 전자 장치는 전화 및 계산 기능이 포함된 각종 의료기기(예: MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 초음파기 등), 네비게이션(navigation) 장치, GPS 수신기(global positioning system receiver), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(예: 선박용 항법 장치 및 자이로 콤파스 등), 항공 전자 기기(avionics), 보안 기기, 차량용 헤드 유닛, 산업용 또는 가정용 로봇, 금융 기관의 ATM(automatic teller’s machine) 또는 상점의 POS(point of sales) 중 적어도 하나를 포함할 수 있다.
어떤 실시 예들에 따르면, 전자 장치는 전화 및 계산 기능이 포함된 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 입력 장치(electronic signature receiving device), 프로젝터(projector), 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시 예에 따른 전자 장치는 전술한 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 또한, 다양한 실시 예 따른 전자 장치는 플렉서블 장치일 수 있다. 또한, 다양한 실시 예에 따른 전자 장치는 전술한 기기들에 한정되지 않음은 당업자에게 자명하다.
이하, 첨부된 도면을 참조하여 다양한 실시 예에 따른 전자 장치에 대해서 살펴본다. 다양한 실시 예에서 이용되는 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.
도 2는 본 발명의 다양한 실시 예에 따른 전자 장치의 일 예시를 나타낸다.
도 2를 참조하면, 전자 장치 200은 입출력 인터페이스 210, 버퍼 220, 제어 모듈 230, 전화 모듈 240, 계산 모듈 250을 포함할 수 있다. 다양한 실시 예에서, 전화 모듈 240과 계산 모듈 250은 제어 모듈 230의 하위 모듈에 포함될 수 있다. 다양한 실시 예에서, 전화 모듈 240과 계산 모듈 250은 제어 모듈 230과 통합되어 하나의 프로세서로 존재할 수 있다. 예를 들어, 전자 장치 200은 별도의 독립된 전화 모듈 240 또는 계산 모듈 250을 포함하지 않고, 제어 모듈 230이 전화 모듈 240과 계산 모듈 250에서 수행될 수 있는 전화 및 계산 기능을 수행할 수 있다.
본 명세서에 개시되는 다양한 실시 예에서, 전화 기능은 음성 통화 발신 기능 외에도 영상 통화 발신, IP(Internet Protocol) 통화 발신 등 다양한 발신 기능을 포함할 수 있다. 또한, 본 발명의 다양한 실시 예는 메시지 기능에 적용될 수 있다. 예를 들어, 임의의 숫자 및 기호(예를 들어, 연산자)가 입력된 상태에서 통화(예를 들어, 발신) 버튼이 선택되면, 전자 장치 200은 입력된 전화번호(예를 들어, 입력된 숫자 및 기호)로 통화를 시도할 수 있다. 통화 버튼 대신 계산 버튼에 대한 입력(혹은 계산을 수행하도록 하는 입력)이 발생하면, 전자 장치 200은 입력된 숫자 및 기호에 기반하여 계산을 수행할 수 있다. 만약 이 경우 메시지 버튼이 선택되는 경우, 전자 장치 200의 입출력 인터페이스 210은 현재 화면을 입력된 전화번호로 메시지를 발신하기 위한 화면으로 전환할 수 있다. 이하에서 설명되는 다양한 실시 예에서, 전자 장치 200은 입력된 숫자 및 기호에 대해서 지정된 조건에 따라 계산 또는 전화 기능을 수행하는 것으로 설명될 수 있다. 하지만, 특별히 배제하지 않는 한 상기 실시 예는 메시지 버튼의 선택에 대한 동작 역시 포함하는 것으로 이해될 수 있다.
다시 도 2를 참조하면, 입출력 인터페이스 210은 전화 기능을 수행하기 위한 화면(예: 다이얼러(dialer))을 제공할 수 있다. 예를 들어, 입출력 인터페이스 210은 도 1에 도시된 화면 10과 동일하거나 유사한 화면을 제공할 수 있다. 예를 들어, 입출력 인터페이스 210은 복수의 숫자 키(예: 0~9), 및 복수의 기능 키(*, #, 통화, 메시지, 삭제 키 등)를 포함할 수 있다. 그러나 후술하는 다양한 실시 예에서, 입출력 인터페이스 210에 의해 제공되는 화면은 다양하게 변형될 수 있다. 다양한 실시 예에서, 입출력 인터페이스 210의 숫자 버튼과 삭제 버튼은 전화 기능 및 계산 기능에서 공용으로 활용될 수 있다. 공용이 아닌 버튼은 팝업 버튼 또는 인터페이스 전환/변형 등을 통해 제공될 수 있다.
본 명세서에 개시된 다양한 실시 예에서, 입출력 인터페이스는 다이얼을 위한 입력 화면 또는 계산 기능을 위한 입력 화면과 같이 다양한 실시 예에 따른 입력 화면을 제공하는 디스플레이 장치의 의미로 사용될 수 있다. 그러나 상황에 따라, 입출력 인터페이스는 디스플레이 장치에 출력된 화면의 의미로 사용될 수 있다. 예를 들어, 당업자라면 입출력 인터페이스가 변경된다는 의미는 디스플레이 장치에 출력된 키 배열이나 키 종류가 변경된다는 개념으로 이해될 수 있다.
입출력 인터페이스 210을 통해 임의의 키가 선택되면, 선택된 키 값은 버퍼 220에 저장될 수 있다. 버퍼 220에 저장된 키 값은 입출력 인터페이스 210이 제공하는 화면의 소정 영역(예: 도 1의 화면 10의 영역 13)에 지속적으로 출력될 수 있다. 버퍼 220에 저장된 키 값은 기능(또는 어플리케이션)의 종료 이벤트가 발생하거나, 삭제 키가 선택됨으로써 삭제될 수 있다. 전자의 경우 버퍼 220에 저장된 모든 키 값이 삭제될 수 있고, 후자의 경우 마지막으로 입력된 키 값 또는 도 1의 영역 13의 특정 위치에 배치된 키 값이 삭제될 수 있다. 다양한 변형(예를 들어, 삭제 키를 길게 누르고 있는 경우, 저장된 모든 키 값이 삭제됨)이 가해질 수 있으며, 통화 키 또는 계산 키에 의해 통화 또는 계산이 수행되면 해당 키 값은 메모리(미도시)에 별도로 저장될 수 있다.
제어 모듈 230은 입출력 인터페이스 210을 통해 지정된 사용자 입력이 발생하면, 상기 지정된 사용자 입력이 계산에 대한 것인지 또는 전화에 대한 것인지 판단할 수 있다. 예를 들어, 상기 지정된 사용자 입력은 통화 키가 선택되거나, 계산 키가 선택되는 것일 수 있다. 다양한 실시 예에서, 상기 계산 키는 특정 버튼(예: #)에 대한 특정 타입의 입력(예: 롱 터치 입력)에 의해 선택될 수 있다.
예를 들어, 상기 지정된 사용자 입력이 통화 입력(예: 통화 키 선택)인 경우, 제어 모듈 230은 버퍼 220에 저장된 키 값을 이용하여 호 발신을 수행할 수 있다. 예를 들어, 사용자가 +1-919-265-3071(이 경우, 하이픈(-) 기호는 전자 장치 200에 의해 자동적으로 입력될 수 있다. 입력된 하이픈 기호는 숫자 인식을 용이하게 하기 위해 자동 입력되는 것으로, 연속 입력되는 숫자들 사이의 임의의 위치에 배치될 수 있다. 입력된 하이픈 기호는 해당 전화번호 처리 동작에서 적용되지 않고 무시될 수 있다.)을 입력한 상태에서 통화 버튼을 누르면, 제어 모듈 230은 상기 번호로 전화(국제 전화)가 발신되도록 할 수 있다. 다양한 실시 예에서, 제어 모듈 230은 버퍼 220과 연결된 전화 모듈 240 또는 전화 어플리케이션을 통해 해당 번호로 호가 발신되도록 할 수 있다.
상기의 예시에서 만약 지정된 사용자 입력이 계산 입력(예: # 키를 롱 터치)인 경우, 제어 모듈 230은 버퍼 220에 저장된 키 값을 이용하여 호 발신을 수행할 수 있다. 예를 들어, 버퍼 220에 저장된 키 값(또는 화면에 출력된 값)이 +1-919-265-3071인 경우(여기서, 하이픈(-)은 마이너스 부호로 인식될 수 있다.), 국제 전화가 걸리는 대신 계산 결과(= -4254)가 화면에 출력될 수 있다. 다양한 실시 예에서, 제어 모듈 230은 버퍼 220과 연결된 계산 모듈 250 또는 계산기 어플리케이션을 통해 상기 계산 식(저장된 키 값)이 계산되도록 할 수 있다.
다양한 실시 예서, 제어 모듈 230은 통화 입력이 요청된 경우 하이픈에 대한 처리를 의미를 가지지 않는 기호로 처리하고, 계산 입력이 요청된 경우 자동 입력된 하이픈은 제거하고 키 선택을 통해 입력된 하이픈은 마이너스 부호로 처리할 수 있다
다양한 실시 예에서, 계산 기능이 수행된 후 새로운 숫자 키가 선택되면 버퍼 220에 저장된 키 값은 초기화 되고, 새로 선택된 숫자 키만이 버퍼 220에 저장(및 화면에 출력)될 수 있다. 이는 전화 기능이 수행된 후에도 적용될 수 있다.
도 3은 본 발명의 다양한 실시 예에 따른 계산 기능이 포함된 키패드의 예시를 나타낸다.
도 3은 본 발명의 다양한 실시 예에 따라 변형된 전화 어플리케이션의 키패드 화면(입출력 인터페이스)으로 이해될 수 있다. 상기 입출력 인터페이스는 복수의 숫자 키 및 기능 키를 제공하는 영역 310을 포함할 수 있다.
일반적인 전화 어플리케이션의 키패드와 계산기 어플리케이션의 키패드를 살펴보면, 숫자 키와 삭제 키를 공통으로 포함하고 있음을 알 수 있다. 따라서, 숫자 키와 삭제 키는 전화 기능과 계산 기능을 구현하기 위한 인터페이스 화면에서 공용으로 사용될 수 있다. 그러나 일반적인 전화용 키패드는 계산기용 키패드와 비교하여 계산 수행에 대응되는 키(예: “=” 키)가 포함되어 있지 않고, 국제 전화 발신을 위한 “+” 입력 및 자동적으로 입력되는 “-“ 키 외의 다른 연산자 키를 지원하지 않는다. 이하에서는 도 3을 참조하여 “=” 키에 대응되는 키를 제공하는 인터페이스를, 도 4를 참조하여 다양한 연산자를 지원하는 인터페이스가 각각 설명된다.
다시 도 3을 참조하면, 임의의 키에 “=” 키에 대응되는 기능이 할당될 수 있다. 예를 들어, # 키가 포함되는 버튼 영역 320에는 # 키 321 외에 전자 장치 200을 진동 모드로 변환하기 위한 진동 키 323 및 “=“ 키 325가 포함될 수 있다. 다양한 실시 예에서, # 키 영역 320은 진동 키 323을 포함하지 않고 “=“ 키 325를 추가로 포함할 수 있다.
상술한 인터페이스는 예시적인 것이며, 본 발명의 다양한 실시 예는 이에 한정되지 않는다. 예를 들어, 상술한 방법 대신 입출력 인터페이스 210은 # 키 영역 대신 “*” 키 영역에 “=” 키가 포함되도록 하거나, 도 3에 도시된 영역 310의 최하단 행(row)을 5분할 하여 어느 하나의 영역에 “=” 키를 할당할 수 있다. 이와 관련된 다양한 실시 예가 후술된다.
다양한 실시 예에서, 입출력 인터페이스 210에 의해 제공되는 단위 영역은 하나 이상의 키를 포함할 수 있다. 예를 들어, 상기 단위 영역은 주 키(primary key)와 보조 키(secondary key)를 포함할 수 있다. 주 키는 단위 영역에서 가장 크게 표시되거나 일정 영역 이상을 차지하면서 표시될 수 있다. 보조 키는 주 키보다 작게 표시되거나 상대적으로 작은 영역을 차지하면서 표시되거나, 상대적으로 흐릿하게 표시될 수 있다.
사용자는 보조 키가 입력되도록 하기 위해서 주 키의 입력 방식과 다른 타입의 입력 방식을 사용할 수 있다. 예를 들어, 전자 장치 200은 단위 영역(예: 도 3의 매트릭스로 배열된 영역들 중 하나의 영역)에 대한 짧은 터치가 입력(short touch and release)되면, 단위 영역의 주 키가 선택된 것으로 인식할 수 있다. 전자 장치 200은 단위 영역에 대한 긴 터치가 입력(long touch)되면 서브 키가 선택된 것으로 인식할 수 있다. 하나의 단위 영역에 복수의 서브 키(예: A, B, 및 C)가 포함된 경우, 긴 터치가 유지되는 시간에 따라 순차적으로 다른 서브 키가 선택될 수 있다. 또는 선택된 단위 영역과 연관되도록 보조 창(또는 팝업 버튼 등)이 출력되고, 보조 창에 복수의 서브 키들이 터치 가능한 크기를 가지며 배치될 수 있다.
다양한 실시 예에서, 계산 기능을 수행하도록 하는 키(예: “=” 키)는 서브 키로서 숫자 키가 주 키가 아닌 영역에 할당되거나, 독립된 단위 영역에 주 키 또는 유일한 키로 할당될 수 있다.
도 4는 본 발명의 다양한 실시 예에 따른 연산자를 포함하는 팝업 버튼의 예시를 나타낸다.
도 4를 참조하면, 본 발명의 다양한 실시 예에 따른 입력 인터페이스 화면은 전화 기능과 계산 기능의 수행을 위해 숫자 키 및 삭제 키 등을 공유할 수 있다. 다양한 실시 예에서, 수식의 입력을 위해 필요한 연산자는 초기 화면(예: 도 3에 도시된 화면)에는 제공되지 않지만, 팝업 버튼 등의 형태로 제공될 수 있다.
예를 들어, 사용자가 화면 401의 단위 영역을 짧게 터치하는 방식(예: 제1 타입)으로 선택하는 경우, 해당 단위 영역의 주 키가 입력될 수 있다. 예를 들어, 숫자 또는 *이나 #과 같은 기호가 입력될 수 있다. 한편 사용자가 화면 401의 단위 영역을 길게 터치하는 방식(예: 제2 타입)으로 선택하는 경우, 해당 단위 영역의 서브 키 또는 복수의 연산자를 포함하는 팝업 버튼 410이 출력될 수 있다. 여기서 롱 터치는 지정된 시간 이상 한 지점에 대한 터치를 유지하는 입력을 의미할 수 있다.
일 실시 예에서, 상기 팝업 버튼 410은 임의의 키, 예를 들어 숫자 0 키에 대한 롱 터치 입력을 통해 출력될 수 있다. 이 경우, 팝업 버튼 410은 상기 임의의 키 주변의 적절한 영역에 출력될 수 있다. 화면 401의 경우 팝업 버튼 410은 입력 수단(예: 사용자의 손)에 의해 가려지지 않도록 임의의 키 상단에 출력되었으나, 예를 들어 화면 402의 경우, 팝업 버튼 420은 숫자 키(예를 들어, 숫자 8, 숫자 9)가 가려지는 것을 방지하기 위해 기능 키들이 위치한 영역에 출력될 수 있다.
다양한 실시 예에서, 팝업 버튼은 하나 이상의 버튼으로 분할되어 출력될 수 있다. 예를 들어, 화면 403에서 팝업 버튼 430은 연산자 각각에 대한 버튼 431,432, 433, 434를 포함할 수 있다. 각각의 버튼 431,432, 433, 434는 상기 임의의 버튼과 인접한 버튼 영역에 배치될 수 있다. 그러나 이는 예시적인 것이며, 각 버튼들은 다양하게 출력될 수 있다. 예를 들어, 각 버튼들은 상기 임의의 버튼을 중심으로 동심원 형태로 출력될 수 있다.
다양한 실시 예에 따른 팝업 버튼은, 복수의 연산자를 포함할 수 있다. 예를 들어, 팝업 버튼 410은 뺄셈(-), 곱셈(×), 나눗셈(÷)의 연산자를 포함할 수 있다. 또한, 팝업 버튼 410은 보다 복잡한 계산을 수행하기 위해 계산기 어플리케이션을 실행할 수 있도록, 계산기 어플리케이션을 실행하는 항목(예: 항목 C)을 더 포함할 수 있다. 그러나 도시된 예시에 한정되지 않으며, 팝업 버튼 410은 루트(√), 자연상수(?), 로그(log), 팩토리얼(factorial)(!)과 같은 다양한 연산자를 더 포함할 수 있다.
다양한 실시 예에서, 임의의 키에 대하여 특정 타입(예: 롱 터치)의 입력이 발생하면, 상기 키에 할당된 연산자가 입력될 수 있다. 예를 들어, 숫자 0 키를 길게 누르고 있는 경우, “+” 연산자(서브 키)가 출력될 수 있다. 이 경우, 팝업 메뉴가 함께 출력될 수 있고, 소정 시간 동안 아무런 입력이 없으면 “+” 연산자의 출력 상태를 유지하면서 팝업 메뉴는 사라질 수 있다. 만약 팝업 버튼에 포함된 복수의 연산자 중 특정 연산자(예: ÷)에 대한 입력이 발생하면, 상기 임의의 키에 할당된 연산자(예: +)는 상기 특정 연산자로 대체되고 팝업 메뉴는 사라질 수 있다. 이제 사용자는 숫자 키를 추가로 입력하여 계산 식을 완성할 수 있다.
한편 다양한 실시 예에서, “*” 키(주 키)는 곱셈(×) 연산자로 이용될 수 있다. 이 경우, 일 예시에서 사용자는 숫자 키, “*” 키, “=” 키(# 키의 서브 키)를 이용하여, 팝업 메뉴를 띄우지 않고도 곱셈 연산을 수행할 수 있다.
다양한 실시 예에서, 하이픈(-)과 같은 기호가 숫자 키 입력에 대해 자동으로 출력될 수 있다. 예를 들어, 사용자가 01091355220을 입력하였으나, 화면에는 자동으로 하이픈이 입력되어 010-9135-5220이 출력될 수 있다. 하이픈의 출력 위치는 국가 또는 설정에 따라 달라질 수 있는데, 예를 들어 미국의 경우 010-913-55220과 같이 출력될 수 있다.
하이픈 기호는 연산을 위해 사용자에 의해 의도적으로 입력된 것이 아니기 때문에, 연산자를 입력할 때 제거될 수 있다. 예를 들어, 1234×5678을 수행하고자 하는 경우, 사용자는 숫자 키 1234(화면에는 123-4로 표시됨)를 입력하고 임의의 키(예: 숫자 0 키)를 특정 방식(예: 롱 터치)으로 선택하여 연산자 팝업 버튼이 출력되도록 할 수 있다. 이 경우, 제어 모듈 230은 특정 방식의 입력이 발생할 때, 또는 연산자 팝업 버튼이 출력될 때 자동으로 출력된 기호(예: 하이픈)가 삭제되도록 할 수 있다. (만약 삭제되지 않으면 화면에는 123-4×5678과 같이 표시되는데, 이는 사용자가 의도한 표기법도, 의도한 수식에도 해당되지 않게 된다.)
일부 실시 예에서, 시스템에 의해 자동으로 입력된 기호도 연산자로 처리될 수 있다. 예를 들어, 하이픈은 마이너스로, 별표(star) “*”는 곱셈 “×”로 처리될 수 있다. 만약 010-9135-5220이 입력된 상태에서 사용자가 (재미로) 전화 버튼 대신 계산 버튼을 입력하면, 제어 모듈 230(또는 계산 모듈 250)은 결과 값(i.e., -14345)을 반환할 수 있다.
다양한 실시 예에서, 계산 기능이 실행되는 경우, 전자 장치는 결과 값(예: -14345)만 반환(또는 출력)할 수도 있고, 계산 식과 결과 값(예: 010-9135-5220 = -14345)을 모두 출력할 수도 있다.
도 5는 본 발명의 다양한 실시 예에 따른 계산 기능이 지원되는 입출력 인터페이스의 예시를 나타낸다.
도 5에 도시된 입출력 인터페이스는, -, +, ÷, ×, =, C(clear)(각각 키 513, 514, 515, 517, 511, 512)와 같이 일반적인 다이얼 패드에서 제공되지 않는 복수의 연산자 키를 더 제공한다. 또한 화면 501은 *, #, 통화/메시지 관련 키와 같이 계산 기능과 관련이 없는 기능 키들을 제공하지 않을 수 있다. 대신에 화면 501은 전화 모드로 복귀하기 위한 키 516을 제공할 수 있다.
전자 장치 200은 지정된 조건이 발생되면, 일반적인 다이얼 입력 패드 화면(예: 도 1의 화면 10 또는 도 3에 도시된 화면)을 도 5의 화면 501과 같은 입출력 인터페이스로 전환할 수 있다. 이 경우, 일부 키(예: 숫자 키 및 삭제 키)는 그대로 유지된 상태에서 다른 일부 키(예: 전화 기능에 연관되지만 계산 기능과는 연관이 없는 키)가 전환될 수 있다. 또한, 소정 영역에 계산 기능을 수행하기 위한 키가 추가될 수 있다. 종합하면, 전자 장치 200(예: 제어 모듈 230)은 사용자 입력이 지정된 조건을 만족하는 경우, 초기 입출력 인터페이스의 적어도 일부가 계산 기능을 수행하기 위한 인터페이스로 변경되도록 할 수 있다. 상술한 바와 같이, 다양한 실시 예에서, 전자 장치 200은 전술한 팝업 버튼 대신 이원화된 입출력 인터페이스가 제공되도록 할 수 있다.
다양한 실시 예에서, 제어 모듈 230은 사용자의 입력이 계산 기능을 이용하고자 한다고 판단되면 상기 입출력 인터페이스가 변경되도록 할 수 있다. 예를 들어, 버퍼에 아무런 숫자 키 값이 입력되지 않은 상태, 또는 사용자가 마지막 통화 또는 마지막 계산 이후로 아무 숫자 키도 입력하지 않은 상태에서 사용자가 숫자 0 키를 오래 누르면, 서브 키인 + 키가 입력될 수 있다. 이 경우 제어 모듈 230은 국제 전화를 걸기 위해 다이얼을 입력하는 것으로 판단할 수 있다. (계산식 처음에 양수 입력을 위해 + 키를 입력할 가능성은 매우 낮다.) 그러나 이미 일부 숫자(예: 1234)가 입력된 상태에서 + 키가 입력되면, 이와 같은 형태의 전화번호(예: 1234+4321)는 존재하지 않기 때문에 제어 모듈 230은 입출력 인터페이스를 계산 기능을 수행하기 위한 입출력 인터페이스로 변경할 수 있다.
종합하면, 상기 지정된 조건은 사용자 입력에 의해 저장된 키의 조합이 전화번호 형태의 적어도 일부를 만족하는지 여부에 해당할 수 있다. 예를 들어, 지정된 조건은 연산자의 입력 이전에 입력된 숫자의 존재(또는 버퍼에 저장된 숫자 키 값의 존재) 여부일 수 있다. 만약 저장된 키의 조합이 전화 번호의 적어도 일부 형태를 만족하지 않는 경우, 전화 기능을 기본으로 하는 입출력 인터페이스는 계산 기능을 수행하기 위한 입출력 인터페이스로 변경될 수 있다. 예를 들어, + 연산자 입력 이전에 입력된 숫자가 존재하는 경우, 제어 모듈 230은 입출력 인터페이스가 변경되도록 할 수 있다.
계산 기능을 위한 입출력 인터페이스로 변경된 상태에서, 삭제 키를 이용하여 일부 입력 키 값이 삭제될 수 있다. 삭제 결과, 입력된 키의 조합이 전화 번호의 형태를 다시 만족할 수 있다. 예를 들어, 8210+9135가 입력된 상태에서 삭제 키를 이용하여 +9135를 삭제하는 경우, 8210은 전화 번호 형태를 만족(예: +82-10-9135-5220의 일부)할 수 있다. 이와 같은 경우, 제어 모듈 230은 다시 전화 기능을 위한 입출력 인터페이스로 회귀하거나, 회귀 여부를 묻는 알림 창을 발생시키거나, 또는 계산 기능을 위한 입출력 인터페이스를 지속 유지할 수 있다. 세 번째 예시의 경우, 사용자는 계산 기능을 위한 입출력 인터페이스의 소정 키(예: 키 516)를 선택하여 전화 기능을 위한 입출력 인터페이스로 회귀할 수 있다.
다양한 실시 예에서, 입출력 인터페이스는 다른 조건에 의해 변동될 수 있다. 예를 들어, 화면 502와 같은 인터페이스에서 사용자가 +를 입력하고자 하는 경우 숫자 0 키를 길게 누르는 것으로 충분하지만, 숫자 0을 누른 상태에서 입력 지점을 변경시키면(i.e., touch and drag input) 숫자 0 주위로 다양한 연산자가 출력될 수 있다. 사용자가 원하는 연산자로 터치 지점을 이동시킨 후, 터치를 해제하면(release) 해당 연산자가 입력되도록 할 수 있다.
종합하면, 상기 지정된 조건은 임의의 숫자 키에 대한 터치 앤 드래그 입력 여부에 해당할 수 있다. 이 경우, 릴리즈 순간 상기 해당 연산자가 입력되면서 다시 원래 인터페이스로 자동으로 복귀할 수 있다. 그러나 다양한 실시 예에서, 소정 키(예: 키 516)이 선택될 때까지 변경된 화면이 유지될 수 있다.
전술한 방법은 연산자를 입력하는 다양한 방법의 예시이며, 본 발명의 실시 예들이 상기 예시들로 한정되는 것은 아니다. 예를 들어, 사용자는 S-펜과 같은 스타일러스나 손가락을 이용하여 화면에 자유롭게 소정 패턴을 그리는 방식으로 연산자를 입력할 수 있다. 예를 들어, 도 1의 예시에서, 사용자는 영역 13에 자유롭게 연산자 기호를 터치 펜 등으로 입력하고, 전자 장치는 상기 입력을 분석하여 연산자 기호로 치환할 수 있다. 다른 예시로서, 사용자는 영역 15의 버튼 상에서 소정의 패턴을 그림으로써 연산자가 입력되도록 할 수 있다. 예를 들어, 전자 장치는 영역 15의 숫자 키 중 4, 5, 6을 연결하는 입력(“4-5-6”)을 “-“ 입력으로, “4-5-6” 및 “2-5-8”을 연결하는 입력을 “+” 입력으로, “1-5-9” 및 “3-5-7”을 연결하는 입력을 곱하기 “×” 입력으로, “3-5-7”을 연결하는 입력을 “÷” 입력으로 인식할 수 있다. 다양한 변형 예가 존재할 수 있다. 예를 들어, 전자 장치는 “4-5-6”을 연결하는 입력 및 “2”와 “8”에 대한 각각의 입력이 발생하면 “÷” 입력으로 인식할 수 있다. 또한, 다양한 실시 예에서, 전자 장치는 영역 13이나 15의 구분 없이 자유롭게 입력되는 패턴을 인식하여 연산자로 처리할 수 있다.
전술한 조건들은 상호 조합되어 사용될 수 있다. 또한 도 5에서 설명된 실시 예는 도 4에서 설명한 실시 예와 결합되어 사용될 수도 있다.
다양한 실시 예에서, 입출력 인터페이스가 상호간에 변동되더라도 버퍼 220에 저장된 키 값은 지속적으로 유지될 수 있다.
도 6은 본 발명의 다양한 실시 예에 따른 통화 기능과 계산 기능을 지원하는 입출력 인터페이스의 예시를 나타낸다.
도 6을 참조하면, 본 발명의 다양한 실시 예는 계산 기능과 전화 기능을 통합하여 지원하는 입출력 인터페이스를 제공할 수 있다. 예를 들어, 입출력 인터페이스는 복수의 숫자 키 및 기능 키 외에도, 계산을 수행하기 위한 복수의 연산자 키를 더 포함할 수 있다. 예를 들어, 화면 601은 일반적인 다이얼 키와 함께 +/- 키 611, ×/÷ 키 613, 소수점(.) 키 615, 및 등호(=) 키 617을 더 포함할 수 있다. 또한 예를 들어, 화면 602에서는 + 연산자와 = 연산자는 각각 0 키와 # 키(키 627)의 서브 키에 할당되고, × 연산자는 * 키의 주 키에 할당되고, ÷ 연산자와 - 연산자, 소수점(.) 기호는 각각 새로운 키(키 621, 623, 625)에 할당될 수 있다. 도시된 화면은 단지 예시적인 것이며 다양한 형태의 변형이 가능하다.
다양한 실시 예에서, 숫자 키와 지움 키는 계산 기능과 전화 기능에 있어서 공통적으로 사용될 수 있다. 또한 숫자 키와 지움 키 외에도 +/- 키와 같은 다른 키도 양 기능에 공통적으로 사용될 수 있다. 예를 들어, 국제 전화를 발신하고자 하는 경우 일반적으로 사용자는 숫자 0 키를 길게 눌러 + 기호를 입력하지만, +/- 키 611을 통해 입력된 + 키도 국제 전화의 발신을 위해 사용될 수 있다. 다양한 실시 예에서, 시스템에 의해 입력되는 하이픈(-) 키 외에도 키 611을 통해 입력된 - 키도 전화 기능 수행 시 하이픈으로 인식될 수 있다. 전술한 예시의 역도 대응되는 방식으로 적용 가능하다.
화면 601의 예시에서, +/- 키 611 혹은 ×/÷ 키 613은 다양한 방식으로 선택될 수 있다. 예를 들어, 제1 타입의 입력(예: short touch and release)이 발생하면 + 키가 선택되고, 제2 타입의 입력(예: long touch)이 발생하면 - 키가 선택될 수 있다. 한편 수학식에서 +- 또는 ×÷와 같이 둘 이상의 연산자가 연속해서 입력되는 것은 넌센스이므로, +가 입력된 상태에서 다시 한번 키 611이 선택되면 입력된 +가 -로 변경되는 방식(예: 토글 방식)의 입력도 가능하다.
전술한 다양한 실시 예에서, 버퍼 220은 입출력 인터페이스 210을 통해 입력된 계산식을 저장하고 있을 수 있다. 제어 모듈 230은 최종 사용자 입력이 계산 수행을 지시하는 입력(예: = 키)이 아닌 통화 발신을 지시하는 키(예: 통화 키) 인 경우, 입력된 계산 식에 포함된 연산자를 인식하지 못하도록 처리할 수 있다. 특히 입출력 인터페이스 210이 전화 기능과 계산 기능을 위한 통합된 UI 환경을 지원하는 경우, 사용자가 실수로 연산자 부호를 입력하거나 또는 우연히 연산자 부호가 입력될 수 있는데, 이 경우 해당 연산자를 삭제할 필요 없이 전화가 발신되도록 할 수 있다. 예를 들어, 사용자가 전화번호 01091355220을 입력하는 중 실수로 + 버튼이 입력(예: 01091355+220)하더라도 제어 모듈 230은 전화 버튼이 선택되면 + 연산자를 무시하고 숫자 키의 정보를 이용하여 01091355220으로 전화가 발신되도록 할 수 있다.
그러나 다양한 실시 예에서, 제어 모듈 230은 전화 기능을 수행하기에 적합하지 않은 키에 대한 수정 요청을 제공할 수 있다. 예를 들어, 제어 모듈 230은 해당 번호가 전화번호가 아니라는 메시지(예: 팝업) 출력, 계산을 수행할 것인지 묻는 메시지 출력, 또는 해당 연산자의 위치로 커서를 이동시키고 수정 대기 등의 동작을 수행할 수 있다.
본 발명의 다양한 실시 예에 따른 전자 장치는, 전화 기능 실행에 따라 입출력 인터페이스를 출력하는 동작, 입출력 인터페이스에서 선택된 키 값들을 저장하는 동작, 및 계산 기능 관련 입력이 발생하면 저장된 키 값들을 기반으로 계산 기능을 수행하고, 전화 기능 관련 입력이 발생하면 저장된 키 값들을 기반으로 전화 기능을 수행하는 동작을 수행할 수 있다.
다양한 실시 예에 따른 전자 장치는, 복수의 숫자 키 및 기능 키를 제공하기 위한 입출력 인터페이스, 상기 입출력 인터페이스를 통해 선택된 키 값을 저장하는 버퍼, 및 상기 입출력 인터페이스를 통해 지정된 조건이 발생하면 상기 지정된 조건이 계산 기능에 대한 것인지 또는 전화 기능에 대한 것인지를 판단하고, 상기 판단의 결과에 따라서 상기 저장된 키 값을 이용하여 전화 기능 또는 계산 기능을 수행하는 제어 모듈을 포함할 수 있다. 또한 상기 복수의 숫자 키 및 상기 기능 키 중 삭제 키는 상기 계산 기능과 상기 전화 기능에 대해 공통적으로 될 수 있다.
다양한 실시 예에서, 상기 버퍼는 상기 복수의 숫자 키 중 임의의 키에 대하여 제1 타입의 입력이 발생하면 상기 임의의 키에 대응하는 숫자를 저장하고, 상기 제어 모듈은 상기 임의의 키에 대하여 제2 타입의 입력이 발생하면 상기 계산 기능을 수행하기 위한 복수의 연산자를 포함하는 팝업 버튼을 상기 입출력 인터페이스에 출력할 수 있다.
다양한 실시 예에서, 상기 제2 타입의 입력은 상기 임의의 키에 대한 롱 터치(long touch)이고, 상기 복수의 연산자는 사칙 연산자 중 적어도 둘 이상을 포함할 수 있다. 또한 상기 팝업 버튼은 계산기 어플리케이션으로 전환하기 위한 버튼을 더 포함할 수 있다.
다양한 실시 예에서, 상기 팝업 버튼은 상기 임의의 키와 인접한 버튼 영역에 배치되는 상기 연산자 각각에 대한 버튼을 포함할 수 있다.
다양한 실시 예에서, 상기 제어 모듈은 상기 임의의 키에 대하여 상기 제2 타입의 입력이 발생하면 상기 임의의 키에 할당된 연산자에 대한 키 입력을 발생시킬 수 있다. 또한 상기 제어 모듈은 상기 팝업 버튼에 포함된 복수의 연산자 중 특정 연산자에 대한 입력이 발생하면, 상기 임의의 키에 할당된 연산자에 대한 키 입력을 상기 특정 연산자에 대한 입력으로 대체할 수 있다.
다양한 실시 예에서, 상기 제1 타입의 입력이 발생할 때 자동으로 출력되는 기호는, 상기 제2 타입의 입력이 발생할 때 삭제될 수 있다.
다양한 실시 예에서, 상기 입출력 인터페이스는 상기 복수의 숫자 키 및 기능 키 및 상기 계산을 수행하기 위한 복수의 연산자 키를 더 제공하도록 구성될 수 있다.
다양한 실시 예에서, 상기 제어 모듈은 상기 사용자 입력이 지정된 조건을 만족하는 경우 상기 입출력 인터페이스의 적어도 일부가 계산 기능을 수행하기 위한 인터페이스로 변경되도록 할 수 있다.
다양한 실시 예에서, 상기 지정된 조건은 저장된 키의 조합이 전화 번호 형태의 적어도 일부를 만족하는지 여부를 포함하고, 상기 제어 모듈은 상기 저장된 키의 조합이 상기 전화 번호 형태의 적어도 일부를 만족하지 않는 경우 상기 입출력 인터페이스가 변경되도록 할 수 있다.
다양한 실시 예에서, 상기 지정된 조건은 임의의 숫자 키에 대한 터치 앤 드래그 입력 여부를 포함하고, 상기 제어 모듈은 상기 터치 앤 드래그 입력이 발생하면 상기 입출력 인터페이스가 변경되도록 할 수 있다. 또한 상기 버퍼는 상기 입출력 인터페이스가 변경되는 동안 상기 버퍼에 저장된 키 값을 유지할 수 있다.
다양한 실시 예에서, 상기 버퍼는 상기 입출력 인터페이스를 통해 입력된 계산 식을 저장하고, 상기 제어 모듈은 상기 지정된 조건이 전화 기능에 대한 것인 경우, 상기 저장된 계산 식에 포함된 적어도 하나의 연산자를 인식하지 못하도록 처리할 수 있다.
도 7은 본 발명의 다양한 실시 예에 따른 계산 기능 제공 프로세스를 나타낸다.
도 7을 참조하면, 동작 710에서 전자 장치(예: 전자 장치 200)는 적어도 하나의 키 입력을 수신할 수 있다. 예를 들어, 전자 장치 200은 입출력 인터페이스 210을 통해서 숫자 키에 대한 입력을 수신할 수 있다. 또한 전자 장치 200은 연산자 키 또는 국제 전화 발신을 위한 + 키 등에 대한 입력을 수신할 수 있다. 동작 710은 반복적으로 수행될 수 있다.
동작 720에서 전자 장치는 입력된 키 값을 버퍼(예: 버퍼 220)에 저장할 수 있다. 버퍼에 저장된 키 값은 디스플레이 장치를 통해 출력될 수 있다. 디스플레이 장치에 출력되는 정보는 버퍼에 저장된 정보에 대응되거나, 추가적인 기호(예: 하이픈 등)를 더 포함할 수 있다. 예를 들어, 사용자가 숫자키를 이용하여 0221885220을 입력한 경우, 버퍼에는 0221885220에 대한 정보가 저장되지만, 디스플레이 장치에는 02-2188-5220과 같이 출력될 수 있다. 다양한 실시 예에서, 버퍼는 시스템 등에 의해 자동으로 입력된 기호(예: 하이픈)에 대한 정보도 저장하고 있을 수 있다.
동작 730에서, 전자 장치는 지정된 입력을 수신할 수 있다. 지정된 입력은 예를 들어, 계산 기능을 수행하도록 하는 입력 또는 통화 기능을 수행하도록 하는 입력 중 하나일 수 있다.
동작 740에서, 전자 장치는 지정된 입력의 속성을 판단할 수 있다. 예를 들어, 지정된 입력이 계산을 수행하도록 하는 입력인 경우, 프로세스는 동작 750으로 진행하고, 그렇지 않은 경우(즉, 통화 기능을 수행하도록 하는 입력인 경우) 동작 751로 진행할 수 있다. 만약 지정된 입력이 메시지 발신을 위한 입력인 경우(미도시), 전자 장치는 메시지 발신을 위한 인터페이스로 전환할 수 있음은 전술한 바와 같다.
동작 750에서, 전자 장치는 버퍼에 저장된 키 값을 이용하여 계산 기능을 수행할 수 있다. 전자 장치는 도 2 내지 도 6을 참조하여 설명한 다양한 방법을 이용하여 계산 기능을 수행할 수 있다.
동작 751에서 전자 장치는 저장된 키 값을 이용하여 통화 기능을 수행할 수 있다. 일부 실시 예에서, 버퍼에 저장된 키 값이 계산식의 형태를 포함하더라도 연산자를 무시하고 통화 기능을 수행할 수 있음은 전술한 바와 같다.
동작 760에서, 전자 장치는 종료 이벤트 여부를 감지할 수 있다. 예를 들어, 어플리케이션이 종료되거나, 전자 장치가 잠금 상태로 진입하거나, 스크린이 OFF 되거나, 혹은 전자 장치의 전원이 OFF 되는 경우, 혹은 초기화 키가 선택되는 경우 등에 있어서, 전자 장치는 종료 이벤트를 인식하고 버퍼에 저장된 값을 초기화시킬 수 있다. 만약 종료 이벤트가 인식되지 않는 경우, 전자 장치는 계산 식 또는 발신 번호 등을 버퍼에 저장할 수 있다. 저장된 계산 식은 전화번호로 사용될 수 있다. 예를 들어, 123+4567의 계산식이 전화번호로 사용되는 경우, 전화번호 포맷인 123-4567로 변경되어 전화 발신에 이용될 수 있다. 다양한 실시 예에서, 버퍼에 저장된 계산 결과가 전화번호로 사용될 수도 있다.
도 8은 본 발명의 다양한 실시 예에 따른 팝업 버튼 디스플레이 프로세스를 나타낸다.
도 8을 참조하면, 동작 810에서 전자 장치는 팝업 버튼을 생성하기 위한 타입의 입력을 수신할 수 있다. 예를 들어, 전자 장치는 임의의 키에 대한 특정 타입의 입력을 수신할 수 있다. 예를 들어, 제1 타입의 입력을 짧은 터치, 제2 타입의 입력을 긴 터치 입력이라고 할 때, 특정 키(예: 숫자 0 키)를 제1 타입 입력으로 선택하면 해당 숫자가 입력되지만, 제2 타입 입력으로 선택하면 연산자를 입력하기 위한 팝업 버튼이 출력될 수 있다.
동작 820에서, 전자 장치는 동작 810의 입력에 대응하여 연산자를 포함하는 팝업 버튼을 출력할 수 있다. 팝업 버튼은 하나의 버튼에 복수의 연산자를 포함하는 형태로 출력될 수도 있고, 하나의 버튼에 하나의 연산자를 포함하는 복수의 버튼 형태로 출력될 수도 있다.
동작 830에서는 전자 장치는 출력된 팝업 버튼에 의해 제공되는 복수의 연산자 중 하나의 연산자를 선택하는 입력을 수신할 수 있다.
동작 840에서 전자 장치는, 동작 830의 입력에 대응하여 선택된 연산자를 디스플레이에 출력하고, 팝업 버튼이 사라지도록 할 수 있다. 이 경우, 동작 810의 입력에 대응하여 자동으로 입력된 연산자(예: + 연산자)가 있는 경우 선택된 연산자로 자동으로 입력된 연산자를 대체시킬 수 있다.
도 9는 본 발명의 다양한 실시 예에 따른 키 값의 적절성 여부를 판단하는 프로세스를 나타낸다.
도 9에 도시된 프로세스는 도 7에 도시된 프로세스의 일부 동작을 시점으로 하여 진행할 수 있다. 그러나 이는 예시적인 것이며, 도 9의 프로세스는 도 7 또는 도 8에서 설명된 프로세스 중 적절한 동작을 시점으로 하여 진행될 수 있다.
도 9를 참조하면, 동작 910에서, 도 7의 동작 740에서 지정된 입력이 계산 기능의 수행을 위한 것이거나 전화 기능을 수행하기 위한 것일 때, 전자 장치는 버퍼에 저장된 키 값이 각각 계산 또는 전화 기능을 수행하기에 적합한지 여부를 판단할 수 있다. 이하에서는 전화 기능을 중심으로 설명한다. 하지만, 당업자는 대응되는 설명이 계산 기능에도 적용될 수 있음을 이해할 수 있다.
예를 들어, 동작 740에서 지정된 입력이 통화 키인 경우, 동작 910에서 전자 장치는 버퍼에 저장된 키 값이 전화 발신에 적절한지 여부를 판단할 수 있다. 동작 920에서 전화 발신에 적절한 것으로 판단된다면 동작 930에서 전자 장치는 전화 발신 기능을 수행할 수 있다. 예를 들어, 저장된 키 값이 연산자를 전혀 포함하지 않거나, - 연산자만을 포함하거나, 국제 전화 발신을 위한 + 연산자만을 포함하는 경우, 혹은 지정된 숫자의 길이 조건(예를 들어, 911과 같이 3자리 이상 및 국제전화를 감안한 16자리 미만)을 만족하는 경우, 전자 장치는 전화 발신에 적절한 것으로 판단하여 전화 발신을 수행할 수 있다.
그러나 저장된 키 값이 곱셈, 나눗셈, 또는 소수점 등을 포함하여 전화 기능을 수행하기에 적절하지 않다고 판단되는 경우, 프로세스는 동작 940으로 진행할 수 있다. 동작 940에서 전자 장치는 적합하지 않은 키에 대한 재 입력을 유도할 수 있다. 예를 들어, 입력된 키 값이 01123581321345589144233377과 같이 전화번호로 사용되기에 너무 길거나, 혹은 너무 짧은 경우, 또는 숫자와 숫자 사이에 연산자가 위치하는 경우 등과 같이 전화 기능을 수행하기에 적합하지 않다고 판단되는 경우, 전자 장치는 적합하지 않은 키에 대한 재입력을 유도할 수 있다. 예를 들어, 전자 장치는 재입력을 위한 메시지를 제공하거나, 재입력해야 하는 부분에 커서를 위치시키는 등의 동작을 수행할 수 있다. 또한, 전자 장치는 적합하지 않다고 판단된 키를 적합한 키로 자동 변환하는 것과 같이, 전화 기능을 정상적으로 수행하기 위한 처리를 할 수 있다. 예를 들어, 123+4567이 입력된 상태에서 전화 기능이 선택되는 경우, 전자 장치는 123-4567로 자동 변환하여 발신하거나, 혹은 연산자를 삭제하고 1234567이 입력된 것과 같이 발신할 수 있다.
전술한 다양한 실시 예는, 전자 장치가 잠금 상태일 때 적용될 수 있다. 예를 들어, 계산 기능은 보안과는 무관한 기능일 수 있기 때문에, 전자 장치가 잠금 상태일 때 제공되는 키패드(예: 암호 입력이나 긴급 통화를 위해 제공되는 키패드) 화면에서 전술한 실시 예들이 동작할 수 있다. 예를 들어, 전술한 도 3 내지 도 6의 인터페이스는 잠금 상태에서 제공될 수 있다. 전자 장치는 잠금 상태에서 적어도 하나의 키에 대한 입력을 수신하고, 후속하는 계산 기능을 수행할 수 있다. 이 경우 잠금 상태이므로 긴급 통화를 제외한 일반 통화 기능은 동작하지 않을 수 있다. 이와 같은 실시 예를 통해, 사용자는 보안 해제 - 계산기 어플리케이션 검색 - 계산기 어플리케이션 실행의 여러 단계를 거치지 않고도 계산 기능을 편리하게 이용할 수 있다.
전술한 다양한 실시 예는, 또한 전자 장치가 이미 통화 상태일 때 적용될 수 있다. 예를 들어, 전자 장치는 통화 중일 때 키패드 화면을 불러올 수 있다. 예를 들어, 전술한 입출력 인터페이스는 통화 상태에서 제공될 수 있다. 전자 장치는 통화 상태에서 적어도 하나의 키에 대한 입력을 수신하고, 후속하는 계산 기능을 수행할 수 있다. 예를 들어, 통화 중 ARS 입력이나 계산을 해야 하는 경우, 사용자는 숫자와 연산자를 입력할 수 있다. 입력된 키 값은 버퍼에 저장되고, 지정된 입력(예: = 키)이 발생하면 계산이 수행될 수 있다. ARS 입력을 할 경우, 입력된 키 값은 버퍼에 저장된 후 소정 시간 경과 후에 ARS로 전달될 수 있다. 또한 저장된 값은 계속 유지되어 차후 기 입력된 키 정보를 이용하여 계산이 가능하다.
다양한 실시 예에서, 통화 중 일련의 키가 입력되면, 전자 장치는 DTMF(Dual-tone multi-frequency)의 작동을 중단시킬 수 있다. 예를 들어, 통화와 무관한 연산자 혹은 “=” 키와 같은 입력이 제공되면, 전자 장치는 DTMF 기능을 수행하지 않을 수 있다. 이 경우, 사용자는 통화 중 계산 기능을 수행하더라도 선택한 버튼(숫자 키)의 소리가 나지 않아 간섭 또는 잡음 없이 상대방과의 통화를 유지할 수 있다.
다양한 실시 예에 따른 전자 장치의 다이얼을 이용한 계산 기능 제공 방법은, 사용자로부터 적어도 하나의 키에 대한 입력을 수신하는 동작, 상기 입력에 의해 선택되는 키 값을 버퍼에 저장하는 동작, 사용자로부터 지정된 입력을 수신하는 동작, 상기 지정된 입력이 계산 기능에 대한 것인지 또는 전화 기능에 대한 것인지 판단하는 동작, 및 상기 판단 결과에 따라서 상기 저장된 키 값을 이용하여 전화 기능 또는 계산 기능을 수행하는 동작을 포함할 수 있다.
다양한 실시 예에서, 상기 방법은 상기 전자 장치의 잠금 상태에서 상기 적어도 하나의 숫자 키를 포함하는 입출력 인터페이스를 제공하는 동작을 더 포함하고, 상기 적어도 하나의 키에 대한 입력은 상기 잠금 상태에서 수행될 수 있다.
다양한 실시 예에서, 상기 방법은 상기 전자 장치의 통화 상태에서 상기 적어도 하나의 숫자 키를 포함하는 입출력 인터페이스를 제공하는 동작을 더 포함하고, 상기 적어도 하나의 키에 대한 입력은 상기 통화 상태에서 수행될 수 있다. 또한 상기 방법은 상기 입출력 인터페이스에서 지정된 키가 선택되면 DTMF(Dual-tone multi-frequency) 기능을 중단시키는 동작을 더 포함할 수 있다.
다양한 실시 예에서, 상기 방법은 상기 저장된 키 값이 상기 전화 기능 또는 상기 계산 기능을 수행하기에 적합하지 않은 키 값을 포함하는 경우, 상기 적합하지 않은 키를 상기 전화 기능 또는 상기 계산 기능을 수행하기에 적합하도록 처리하는 동작을 더 포함할 수 있다.
도 10은 본 발명의 다양한 실시 예에 따른 전자 장치를 포함하는 네트워크 환경을 도시한다.
도 10를 참조하면, 상기 전자 장치 1001(예: 도 2의 전자 장치 200)은 버스 1010, 프로세서 1020, 메모리 1030, 입출력 인터페이스 1040, 디스플레이 1050, 통신 인터페이스 1060 및 버퍼 1070을 포함할 수 있다.
상기 버스 1010은 전술한 구성요소들을 서로 연결하고, 전술한 구성요소들 간의 통신(예: 제어 메시지)을 전달하는 회로일 수 있다.
상기 프로세서 1020은, 예를 들면, 상기 버스 1010을 통해 전술한 다른 구성요소들(예: 상기 메모리 1030, 상기 입출력 인터페이스 1040, 상기 디스플레이 1050, 상기 통신 인터페이스 1060, 버퍼 1070 등)로부터 명령을 수신하여, 수신된 명령을 해독하고, 해독된 명령에 따른 연산이나 데이터 처리를 실행할 수 있다. 예를 들어, 상기 프로세서 1020은 전술한 제어 모듈 230, 전화 모듈 240, 계산 모듈 250 중 적어도 하나에 대응될 수 있다.
상기 메모리 1030은, 상기 프로세서 1020 또는 다른 구성요소들(예: 상기 입출력 인터페이스 1040, 상기 디스플레이 1050, 상기 통신 인터페이스 1060, 버퍼 1070 등)로부터 수신되거나 상기 프로세서 1020 또는 다른 구성요소들에 의해 생성된 명령 또는 데이터를 저장할 수 있다. 상기 메모리 1030은, 예를 들면, 커널 1031, 미들웨어 1032, 어플리케이션 프로그래밍 인터페이스(API: application programming interface) 1033 또는 어플리케이션 1034 등의 프로그래밍 모듈들을 포함할 수 있다. 전술한 각각의 프로그래밍 모듈들은 소프트웨어, 펌웨어, 하드웨어 또는 이들 중 적어도 둘 이상의 조합으로 구성될 수 있다.
상기 커널 1031은 나머지 다른 프로그래밍 모듈들, 예를 들면, 상기 미들웨어 1032, 상기 API 1033 또는 상기 어플리케이션 1034에 구현된 동작 또는 기능을 실행하는데 사용되는 시스템 리소스들(예: 상기 버스 1010, 상기 프로세서 1020 또는 상기 메모리 1030 등)을 제어 또는 관리할 수 있다. 또한, 상기 커널 1031은 상기 미들웨어 1032, 상기 API 1033 또는 상기 어플리케이션 1034에서 상기 전자 장치 1001의 개별 구성요소에 접근하여 제어 또는 관리할 수 있는 인터페이스를 제공할 수 있다.
상기 미들웨어 1032는 상기 API 1033 또는 상기 어플리케이션 1034가 상기 커널 1031과 통신하여 데이터를 주고받을 수 있도록 중개 역할을 수행할 수 있다. 또한, 상기 미들웨어 1032는 상기 어플리케이션 1034로부터 수신된 작업 요청들과 관련하여, 예를 들면, 상기 어플리케이션 1034 중 적어도 하나의 어플리케이션에 상기 전자 장치 1001의 시스템 리소스(예: 상기 버스 1010, 상기 프로세서 1020 또는 상기 메모리 1030 등)를 사용할 수 있는 우선 순위를 배정하는 등의 방법을 이용하여 작업 요청에 대한 제어(예: 스케줄링 또는 로드 밸런싱)을 수행할 수 있다.
상기 API 1033은 상기 어플리케이션 1034가 상기 커널 1031 또는 상기 미들웨어 1032에서 제공되는 기능을 제어하기 위한 인터페이스로, 예를 들면, 파일 제어, 창 제어, 화상 처리 또는 문자 제어 등을 위한 적어도 하나의 인터페이스 또는 함수(예: 명령어)를 포함할 수 있다.
다양한 실시 예에 따르면, 상기 어플리케이션 1034는 전화 어플리케이션, 계산기 어플리케이션, SMS/MMS 어플리케이션, 이메일 어플리케이션, 달력 어플리케이션, 알람 어플리케이션, 건강 관리(health care) 어플리케이션(예: 운동량 또는 혈당 등을 측정하는 어플리케이션) 또는 환경 정보 어플리케이션(예: 기압, 습도 또는 온도 정보 등을 제공하는 어플리케이션) 등을 포함할 수 있다. 추가적으로 또는 대체적으로, 상기 어플리케이션 1034는 상기 전자 장치 1001과 외부 전자 장치(예: 전자 장치 1004) 사이의 정보 교환과 관련된 어플리케이션일 수 있다. 상기 정보 교환과 관련된 어플리케이션은, 예를 들어, 상기 외부 전자 장치에 특정 정보를 전달하기 위한 알림 전달(notification relay) 어플리케이션, 또는 상기 외부 전자 장치를 관리하기 위한 장치 관리(device management) 어플리케이션을 포함할 수 있다.
예를 들면, 상기 알림 전달 어플리케이션은 상기 전자 장치 1001의 다른 어플리케이션(예: SMS/MMS 어플리케이션, 이메일 어플리케이션, 건강 관리 어플리케이션 또는 환경 정보 어플리케이션 등)에서 발생한 알림 정보를 외부 전자 장치(예: 전자 장치 1004)로 전달하는 기능을 포함할 수 있다. 추가적으로 또는 대체적으로, 상기 알림 전달 어플리케이션은, 예를 들면, 외부 전자 장치(예: 전자 장치 1004)로부터 알림 정보를 수신하여 사용자에게 제공할 수 있다. 상기 장치 관리 어플리케이션은, 예를 들면, 상기 전자 장치 1001과 통신하는 외부 전자 장치(예: 전자 장치 1004)의 적어도 일부에 대한 기능(예: 외부 전자 장치 자체(또는, 일부 구성 부품)의 턴온/턴오프 또는 디스플레이의 밝기(또는, 해상도) 조절), 상기 외부 전자 장치에서 동작하는 어플리케이션 또는 상기 외부 전자 장치에서 제공되는 서비스(예: 통화 서비스 또는 메시지 서비스)를 관리(예: 설치, 삭제 또는 업데이트)할 수 있다.
다양한 실시 예에 따르면, 상기 어플리케이션 1034는 상기 외부 전자 장치(예: 전자 장치 1004)의 속성(예: 전자 장치의 종류)에 따라 지정된 어플리케이션을 포함할 수 있다. 예를 들어, 외부 전자 장치가 MP3 플레이어인 경우, 상기 어플리케이션 1034는 음악 재생과 관련된 어플리케이션을 포함할 수 있다. 유사하게, 외부 전자 장치가 모바일 의료기기인 경우, 상기 어플리케이션 1034는 건강 관리와 관련된 어플리케이션을 포함할 수 있다. 한 실시 예에 따르면, 상기 어플리케이션 1034는 전자 장치 1001에 지정된 어플리케이션 또는 외부 전자 장치(예: 서버 1006 또는 전자 장치 1004)로부터 수신된 어플리케이션 중 적어도 하나를 포함할 수 있다.
다양한 실시 예에 따르면, 어플리케이션 1034는 전화 기능과 계산 기능을 선택적으로 지원하는 복수 기능 어플리케이션을 포함할 수 있다. 복수 기능 어플리케이션은 실행 요청된 키(예: 물리 키 또는 디스플레이 표시되는 가상 키) 값의 종류에 따라 입력된 키 값들을 기반으로 전화 기능을 수행하거나, 계산 기능을 수행할 수 있다. 다양한 실시 예에 따르면, 어플리케이션 1034는 계산 기능을 지원하는 전화 기능 어플리케이션을 포함할 수 있다. 또한 어플리케이션 1034는 계산기 어플리케이션을 포함할 수 있다. 계산기 어플리케이션은 계산 기능을 지원하는 전화 기능 어플리케이션 실행 중에 지정된 입력 발생에 대응하여 활성화될 수 있다.
상기 입출력 인터페이스 1040은, 입출력 장치(예: 센서, 키보드 또는 터치 스크린)를 통하여 사용자로부터 입력된 명령 또는 데이터를, 예를 들면, 상기 버스 1010을 통해 상기 프로세서 1020, 상기 메모리 1030, 상기 통신 인터페이스 1060, 또는 버퍼 1070에 전달할 수 있다. 예를 들면, 상기 입출력 인터페이스 1040은 터치 스크린을 통하여 입력된 사용자의 터치에 대한 데이터를 상기 프로세서 1020으로 제공할 수 있다. 또한, 상기 입출력 인터페이스 1040은, 예를 들면, 상기 버스 1010을 통해 상기 프로세서 1020, 상기 메모리 1030, 상기 통신 인터페이스 1060, 버퍼 1070으로부터 수신된 명령 또는 데이터를 입출력 장치(예: 스피커 또는 디스플레이)를 통하여 출력할 수 있다. 예를 들면, 상기 입출력 인터페이스 1040은 상기 프로세서 1020를 통하여 처리된 계산 결과를 디스플레이를 통하여 사용자에게 출력할 수 있다.
상기 디스플레이 1050은 사용자에게 각종 정보(예: 멀티미디어 데이터 또는 텍스트 데이터 등)을 표시할 수 있다. 예를 들어, 상기 디스플레이 1050은 계산 식의 계산 결과를 출력할 수 있다.
상기 통신 인터페이스 1060은 상기 전자 장치 1001과 외부 장치(예: 전자 장치 1004 또는 서버 1006) 간의 통신을 연결할 수 있다. 예를 들면, 상기 통신 인터페이스 1060은 무선 통신 또는 유선 통신을 통해서 네트워크 1062에 연결되어 상기 외부 장치와 통신할 수 있다. 상기 무선 통신은, 예를 들어, Wi-Fi(wireless fidelity), BT(Bluetooth), NFC(near field communication), GPS(global positioning system) 또는 셀룰러 통신(예: LTE, LTE-A, CDMA, WCDMA, UMTS, WiBro 또는 GSM 등) 중 적어도 하나를 포함할 수 있다. 상기 유선 통신은, 예를 들어, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard 232) 또는 POTS(plain old telephone service) 중 적어도 하나를 포함할 수 있다.
한 실시 예에 따르면, 상기 네트워크 1062는 통신 네트워크(telecommunications network)일 수 있다. 상기 통신 네트워크 는 컴퓨터 네트워크(computer network), 인터넷(internet), 사물 인터넷(internet of things) 또는 전화망(telephone network) 중 적어도 하나를 포함할 수 있다. 한 실시 예에 따르면, 상기 전자 장치 1001과 외부 장치 간의 통신을 위한 프로토콜(예: transport layer protocol, data link layer protocol 또는 physical layer protocol))은 어플리케이션 1034, 어플리케이션 프로그래밍 인터페이스 1033, 상기 미들웨어 1032, 커널 1031 또는 통신 인터페이스 1060 중 적어도 하나에서 지원될 수 있다.
한 실시 예에 따르면, 상기 서버 1006은 상기 전자 장치 1001에서 구현되는 동작(또는, 기능)들 중 적어도 하나의 동작을 수행함으로써, 상기 전자 장치 1001의 구동을 지원할 수 있다.
상기 버퍼 1070는 다른 구성요소들(예: 상기 프로세서 1020, 상기 메모리 1030, 상기 입출력 인터페이스 1040, 상기 통신 인터페이스 1060 등)로부터 획득된 정보 중 적어도 일부를 저장하고, 프로세서 1020의 제어에 따라 다양한 방법으로 다른 구성요소들에 전달 할 수 있다. 예를 들면, 상기 버퍼 1070은 입출력 인터페이스 1040으로부터 수신된 키 값에 대한 정보를 저장하고, 입출력 인터페이스 1040 또는 디스플레이 1050 상에 저장된 키 값 또는 계산 결과 값에 대한 정보를 출력할 수 있다.
도 11은 본 발명의 다양한 실시 예에 따른 전자 장치의 하드웨어 구성을 나타낸다.
상기 전자 장치 1101은, 예를 들면, 도 2에 도시된 전자 장치 200 또는 도 10에 도시된 전자 장치 1001의 전체 또는 일부를 구성할 수 있다. 도 11을 참조하면, 상기 전자 장치 1101은 하나 이상의 어플리케이션 프로세서(AP: application processor) 1110, 통신 모듈 1120, SIM(subscriber identification module) 카드 1124, 메모리 1130, 센서 모듈 1140, 입력 장치 1150, 디스플레이 1160, 인터페이스 1170, 오디오 모듈 1180, 카메라 모듈 1191, 전력관리 모듈 1195, 배터리 1196, 인디케이터 1197 및 모터 1198을 포함할 수 있다.
상기 AP 1110은 운영체제 또는 응용 프로그램을 구동하여 상기 AP 1110에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 멀티미디어 데이터를 포함한 각종 데이터 처리 및 연산을 수행할 수 있다. 상기 AP 1110은, 예를 들면, SoC(system on chip)로 구현될 수 있다. 한 실시 예에 따르면, 상기 AP 1110은 GPU(graphic processing unit, 미도시)를 더 포함할 수 있다.
상기 통신 모듈 1120(예: 상기 통신 인터페이스 1060)은 상기 전자 장치 1101(예: 상기 전자 장치 1001 또는 전자 장치 200)와 네트워크를 통해 연결된 다른 전자 장치들(예: 전자 장치 1004 또는 서버 1006) 간의 통신에서 데이터 송수신을 수행할 수 있다. 한 실시 예에 따르면, 상기 통신 모듈 1120은 셀룰러 모듈 1121, Wi-Fi 모듈 1123, BT 모듈 1125, GPS 모듈 1127, NFC 모듈 1128 및 RF(radio frequency) 모듈 1129를 포함할 수 있다.
상기 셀룰러 모듈 1121은 통신망(예: LTE, LTE-A, CDMA, WCDMA, UMTS, WiBro 또는 GSM 등)을 통해서 음성 통화, 영상 통화, 문자 서비스 또는 인터넷 서비스 등을 제공할 수 있다. 또한, 상기 셀룰러 모듈 1121은, 예를 들면, 가입자 식별 모듈(예: SIM 카드 1124)을 이용하여 통신 네트워크 내에서 전자 장치의 구별 및 인증을 수행할 수 있다. 한 실시 예에 따르면, 상기 셀룰러 모듈 1121은 상기 AP 1110이 제공할 수 있는 기능 중 적어도 일부 기능을 수행할 수 있다. 예를 들면, 상기 셀룰러 모듈 1121은 멀티 미디어 제어 기능의 적어도 일부를 수행할 수 있다.
한 실시 예에 따르면, 상기 셀룰러 모듈 1121은 커뮤니케이션 프로세서(CP: communication processor)를 포함할 수 있다. 또한, 상기 셀룰러 모듈 1121은, 예를 들면, SoC로 구현될 수 있다. 도 11에서는 상기 셀룰러 모듈 1121(예: 커뮤니케이션 프로세서), 상기 메모리 1130 또는 상기 전력관리 모듈 1195 등의 구성요소들이 상기 AP 1110과 별개의 구성요소로 도시되어 있으나, 한 실시 예에 따르면, 상기 AP 1110이 전술한 구성요소들의 적어도 일부(예: 셀룰러 모듈 1121)를 포함하도록 구현될 수 있다.
한 실시 예에 따르면, 상기 AP 1110 또는 상기 셀룰러 모듈 1121(예: 커뮤니케이션 프로세서)은 각각에 연결된 비휘발성 메모리 또는 다른 구성요소 중 적어도 하나로부터 수신한 명령 또는 데이터를 휘발성 메모리에 로드(load)하여 처리할 수 있다. 또한, 상기 AP 1110 또는 상기 셀룰러 모듈 1121은 다른 구성요소 중 적어도 하나로부터 수신하거나 다른 구성요소 중 적어도 하나에 의해 생성된 데이터를 비휘발성 메모리에 저장(store)할 수 있다.
상기 Wi-Fi 모듈 1123, 상기 BT 모듈 1125, 상기 GPS 모듈 1127 또는 상기 NFC 모듈 1128 각각은, 예를 들면, 해당하는 모듈을 통해서 송수신되는 데이터를 처리하기 위한 프로세서를 포함할 수 있다. 도 11에서는 셀룰러 모듈 1121, Wi-Fi 모듈 1123, BT 모듈 1125, GPS 모듈 1127 또는 NFC 모듈 1128이 각각 별개의 블록으로 도시되었으나, 한 실시 예에 따르면, 셀룰러 모듈 1121, Wi-Fi 모듈 1123, BT 모듈 1125, GPS 모듈 1127 또는 NFC 모듈 1128 중 적어도 일부(예: 두 개 이상)는 하나의 통합 칩(integrated chip, IC) 또는 IC 패키지 내에 포함될 수 있다. 예를 들면, 셀룰러 모듈 1121, Wi-Fi 모듈 1123, BT 모듈 1125, GPS 모듈 1127 또는 NFC 모듈 1128 각각에 대응하는 프로세서들 중 적어도 일부(예: 셀룰러 모듈 1121에 대응하는 커뮤니케이션 프로세서 및 Wi-Fi 모듈 1123에 대응하는 Wi-Fi 프로세서)는 하나의 SoC로 구현될 수 있다.
상기 RF 모듈 1129는 데이터의 송수신, 예를 들면, RF 신호의 송수신을 할 수 있다. 상기 RF 모듈 1129는, 도시되지는 않았으나, 예를 들면, 트랜시버(transceiver), PAM(power amp module), 주파수 필터(frequency filter) 또는 LNA(low noise amplifier) 등을 포함할 수 있다. 또한, 상기 RF 모듈 1129는 무선 통신에서 자유 공간상의 전자파를 송수신하기 위한 부품, 예를 들면, 도체 또는 도선 등을 더 포함할 수 있다. 도 11에서는 셀룰러 모듈 1121, Wi-Fi 모듈 1123, BT 모듈 1125, GPS 모듈 1127 및 NFC 모듈 1128이 하나의 RF 모듈 1129를 서로 공유하는 것으로 도시되어 있으나, 한 실시 예에 따르면, 셀룰러 모듈 1121, Wi-Fi 모듈 1123, BT 모듈 1125, GPS 모듈 1127 또는 NFC 모듈 1128 중 적어도 하나는 별개의 RF 모듈을 통하여 RF 신호의 송수신을 수행할 수 있다.
상기 SIM 카드 1124는 가입자 식별 모듈을 포함하는 카드일 수 있으며, 전자 장치의 특정 위치에 형성된 슬롯에 삽입될 수 있다. 상기 SIM 카드 1124는 고유한 식별 정보(예: ICCID(integrated circuit card identifier)) 또는 가입자 정보(예: IMSI(international mobile subscriber identity))를 포함할 수 있다.
상기 메모리 1130(예: 상기 메모리 1030)은 내장 메모리 1132 또는 외장 메모리 1134를 포함할 수 있다. 상기 내장 메모리 1132는, 예를 들면, 휘발성 메모리(예를 들면, DRAM(dynamic RAM), SRAM(static RAM), SDRAM(synchronous dynamic RAM) 등) 또는 비휘발성 메모리(non-volatile Memory, 예를 들면, OTPROM(one time programmable ROM), PROM(programmable ROM), EPROM(erasable and programmable ROM), EEPROM(electrically erasable and programmable ROM), 마스크 롬(mask ROM), 플래시 롬(flash ROM), 낸드 플래시 메모리(NAND flash memory), 노어 플래시 메모리(NOR flash memory) 등) 중 적어도 하나를 포함할 수 있다.
한 실시 예에 따르면, 상기 내장 메모리 1132는 SSD(solid state drive)일 수 있다. 상기 외장 메모리 1134는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD(micro secure digital), Mini-SD(mini secure digital), xD(extreme digital) 또는 메모리 스틱(memory stick) 등을 더 포함할 수 있다. 상기 외장 메모리 1134는 다양한 인터페이스를 통하여 상기 전자 장치 1101과 기능적으로 연결될 수 있다. 한 실시 예에 따르면, 상기 전자 장치 1101은 하드 드라이브와 같은 저장 장치(또는 저장 매체)를 더 포함할 수 있다.
상기 센서 모듈 1140은 물리 량을 계측하거나 전자 장치 1101의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 상기 센서 모듈 1140은, 예를 들면, 제스처 센서 1140A, 자이로 센서 1140B, 기압 센서 1140C, 마그네틱 센서 1140D, 가속도 센서 1140E, 그립 센서 1140F, 근접 센서 1140G, 컬러 센서 1140H(예: RGB(red, green, blue) 센서), 생체 센서 1140I, 온/습도 센서 1140J, 조도 센서 1140K 또는 UV(ultra violet) 센서 1140M 중의 적어도 하나를 포함할 수 있다. 추가적으로 또는 대체적으로, 상기 센서 모듈 1140은, 예를 들면, 후각 센서(E-nose sensor, 미도시), EMG 센서(electromyography sensor, 미도시), EEG 센서(electroencephalogram sensor, 미도시), ECG 센서(electrocardiogram sensor, 미도시), IR(infra-red) 센서(미도시), 홍채 센서(미도시) 또는 지문 센서(미도시) 등을 포함할 수 있다. 상기 센서 모듈 1140은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다.
상기 입력 장치 1150(예: 상기 입출력 인터페이스 1040 또는 상기 입출력 인터페이스 210)은 터치 패널(touch panel) 1152, (디지털) 펜 센서(pen sensor) 1154, 키(key) 1156 또는 초음파(ultrasonic) 입력 장치 1158을 포함할 수 있다. 상기 터치 패널 1152는, 예를 들면, 정전식, 감압식, 적외선 방식 또는 초음파 방식 중 적어도 하나의 방식으로 터치 입력을 인식할 수 있다. 또한, 상기 터치 패널 1152는 제어 회로를 더 포함할 수도 있다. 정전식의 경우, 물리적 접촉 또는 근접 인식이 가능하다. 상기 터치 패널 1152는 택타일 레이어(tactile layer)를 더 포함할 수도 있다. 이 경우, 상기 터치 패널 1152는 사용자에게 촉각 반응을 제공할 수 있다.
상기 (디지털) 펜 센서 1154는, 예를 들면, 사용자의 터치 입력을 받는 것과 동일 또는 유사한 방법 또는 별도의 인식용 시트(sheet)를 이용하여 구현될 수 있다. 상기 키 1156은, 예를 들면, 물리적인 버튼, 광학식 키 또는 키 패드를 포함할 수 있다. 상기 초음파(ultrasonic) 입력 장치 1158은 초음파 신호를 발생하는 입력 도구를 통해, 전자 장치 1101에서 마이크(예: 마이크 1188)로 음파를 감지하여 데이터를 확인할 수 있는 장치로서, 무선 인식이 가능하다. 한 실시 예에 따르면, 상기 전자 장치 1101은 상기 통신 모듈 1120을 이용하여 이와 연결된 외부 장치(예: 컴퓨터 또는 서버)로부터 사용자 입력을 수신할 수도 있다.
상기 디스플레이 1160(예: 상기 디스플레이 1050)은 패널 1162, 홀로그램 장치 1164 또는 프로젝터 1166을 포함할 수 있다. 상기 패널 1162는, 예를 들면, LCD(liquid-crystal display) 또는 AM-OLED(active-matrix organic light-emitting diode) 등일 수 있다. 상기 패널 1162는, 예를 들면, 유연하게(flexible), 투명하게(transparent) 또는 착용할 수 있게(wearable) 구현될 수 있다. 상기 패널 1162는 상기 터치 패널 1152와 하나의 모듈로 구성될 수도 있다. 상기 홀로그램 장치 1164는 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 상기 프로젝터 1166은 스크린에 빛을 투사하여 영상을 표시할 수 있다. 상기 스크린은, 예를 들면, 상기 전자 장치 1101의 내부 또는 외부에 위치할 수 있다. 한 실시 예에 따르면, 상기 디스플레이 1160은 상기 패널 1162, 상기 홀로그램 장치 1164, 또는 프로젝터 1166을 제어하기 위한 제어 회로를 더 포함할 수 있다.
상기 인터페이스 1170은, 예를 들면, HDMI(high-definition multimedia interface) 1172, USB(universal serial bus) 1174, 광 인터페이스(optical interface) 1176 또는 D-sub(D-subminiature) 1178을 포함할 수 있다. 상기 인터페이스 1170은, 예를 들면, 도 10에 도시된 통신 인터페이스 1060에 포함될 수 있다. 추가적으로 또는 대체적으로, 상기 인터페이스 1170은, 예를 들면, MHL(mobile high-definition link) 인터페이스, SD(secure Digital) 카드/MMC(multi-media card) 인터페이스 또는 IrDA(infrared data association) 규격 인터페이스를 포함할 수 있다.
상기 오디오 모듈 1180은 소리(sound)와 전기신호를 쌍방향으로 변환시킬 수 있다. 상기 오디오 모듈 1180의 적어도 일부 구성요소는, 예를 들면, 도 10에 도시된 입출력 인터페이스 1040에 포함될 수 있다. 상기 오디오 모듈 1180은, 예를 들면, 스피커 1182, 리시버 1184, 이어폰 1186 또는 마이크 1188 등을 통해 입력 또는 출력되는 소리 정보를 처리할 수 있다.
상기 카메라 모듈 1191은 정지 영상 및 동영상을 촬영할 수 있는 장치로서, 한 실시 예에 따르면, 하나 이상의 이미지 센서(예: 전면 센서 또는 후면 센서), 렌즈(미도시), ISP(image signal processor, 미도시) 또는 플래시(flash, 미도시)(예: LED 또는 제논 램프(xenon lamp))를 포함할 수 있다.
상기 전력 관리 모듈 1195는 상기 전자 장치 1101의 전력을 관리할 수 있다. 도시하지는 않았으나, 상기 전력 관리 모듈 1195는, 예를 들면, PMIC(power management integrated circuit), 충전 IC(charger integrated circuit) 또는 배터리 또는 연료 게이지(battery or fuel gauge)를 포함할 수 있다.
상기 PMIC는, 예를 들면, 집적회로 또는 SoC 반도체 내에 탑재될 수 있다. 충전 방식은 유선과 무선으로 구분될 수 있다. 상기 충전 IC는 배터리를 충전시킬 수 있으며, 충전기로부터의 과전압 또는 과전류 유입을 방지할 수 있다. 한 실시 예에 따르면, 상기 충전 IC는 유선 충전 방식 또는 무선 충전 방식 중 적어도 하나를 위한 충전 IC를 포함할 수 있다. 무선 충전 방식으로는, 예를 들면, 자기공명 방식, 자기유도 방식 또는 전자기파 방식 등이 있으며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일 루프, 공진 회로 또는 정류기 등의 회로가 추가될 수 있다.
상기 배터리 게이지는, 예를 들면, 상기 배터리 1196의 잔량, 충전 중 전압, 전류 또는 온도를 측정할 수 있다. 상기 배터리 1196은 전기를 저장 또는 생성할 수 있고, 그 저장 또는 생성된 전기를 이용하여 상기 전자 장치 1101에 전원을 공급할 수 있다. 상기 배터리 1196은, 예를 들면, 충전식 전지(rechargeable battery) 또는 태양 전지(solar battery)를 포함할 수 있다.
상기 인디케이터 1197은 상기 전자 장치 1101 혹은 그 일부(예: 상기 AP 1110)의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 상기 모터 1198은 전기적 신호를 기계적 진동으로 변환할 수 있다. 도시되지는 않았으나, 상기 전자 장치 1101은 모바일 TV 지원을 위한 처리 장치(예: GPU)를 포함할 수 있다. 상기 모바일 TV지원을 위한 처리 장치는, 예를 들면, DMB(digital multimedia broadcasting), DVB(digital video broadcasting) 또는 미디어 플로우(media flow) 등의 규격에 따른 미디어 데이터를 처리할 수 있다.
본 발명의 다양한 실시 예에 따른 전자 장치의 전술한 구성요소들 각각은 하나 또는 그 이상의 부품(component)으로 구성될 수 있으며, 해당 구성 요소의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 본 발명의 다양한 실시 예에 따른 전자 장치는 전술한 구성요소 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 또한, 본 발명의 다양한 실시 예에 따른 전자 장치의 구성 요소들 중 일부가 결합되어 하나의 개체(entity)로 구성됨으로써, 결합되기 이전의 해당 구성 요소들의 기능을 동일하게 수행할 수 있다.
본 발명의 다양한 실시 예에 사용된 용어 "모듈"은, 예를 들어, 하드웨어, 소프트웨어 또는 펌웨어(firmware) 중 하나 또는 둘 이상의 조합을 포함하는 단위(unit)를 의미할 수 있다. "모듈"은 예를 들어, 유닛(unit), 로직(logic), 논리 블록(logical block), 부품(component) 또는 회로(circuit) 등의 용어와 바꾸어 사용(interchangeably use)될 수 있다. "모듈"은, 일체로 구성된 부품의 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수도 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있다. 예를 들면, 본 발명의 다양한 실시 예에 따른 "모듈"은, 알려졌거나 앞으로 개발될, 어떤 동작들을 수행하는 ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays) 또는 프로그램 가능 논리 장치(programmable-logic device) 중 적어도 하나를 포함할 수 있다.
다양한 실시 예에 따르면, 본 발명의 다양한 실시 예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는, 예컨대, 프로그래밍 모듈의 형태로 컴퓨터로 읽을 수 있는 저장매체(computer-readable storage media)에 저장된 명령어로 구현될 수 있다. 상기 명령어는, 하나 이상의 프로세서(예: 상기 프로세서 1110)에 의해 실행될 경우, 상기 하나 이상의 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 읽을 수 있는 저장매체는, 예를 들면, 상기 메모리 1130이 될 수 있다. 상기 프로그래밍 모듈의 적어도 일부는, 예를 들면, 상기 프로세서 1110에 의해 구현(implement)(예: 실행)될 수 있다. 상기 프로그래밍 모듈 의 적어도 일부는 하나 이상의 기능을 수행하기 위한, 예를 들면, 모듈, 프로그램, 루틴, 명령어 세트 (sets of instructions) 또는 프로세스 등을 포함할 수 있다.
상기 컴퓨터로 판독 가능한 기록 매체에는 하드디스크, 플로피디스크 및 자기 테이프와 같은 마그네틱 매체(Magnetic Media)와, CD-ROM(Compact Disc Read Only Memory), DVD(Digital Versatile Disc)와 같은 광기록 매체(Optical Media)와, 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media)와, 그리고 ROM(Read Only Memory), RAM(Random Access Memory), 플래시 메모리 등과 같은 프로그램 명령(예: 프로그래밍 모듈)을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 또한, 프로그램 명령에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 본 발명의 다양한 실시 예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지다.
본 발명의 다양한 실시 예에 따른 모듈 또는 프로그래밍 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 본 발명의 다양한 실시 예에 따른 모듈, 프로그래밍 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱(heuristic)한 방법으로 실행될 수 있다. 또한, 일부 동작은 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
다양한 실시 예에 따르면, 명령들을 저장하고 있는 저장 매체에 있어서, 상기 명령들은 적어도 하나의 프로세서에 의하여 실행될 때에 상기 적어도 하나의 프로세서로 하여금 적어도 하나의 동작을 수행하도록 설정된 것으로서, 상기 적어도 하나의 동작은, 사용자로부터 적어도 하나의 숫자 키에 대한 입력을 수신하는 동작, 상기 입력에 의해 선택되는 키 값을 저장하는 동작, 사용자로부터 지정된 입력을 수신하는 동작, 상기 지정된 입력이 계산에 대한 것인지 전화에 대한 것인지 판단하는 동작, 및 상기 판단 결과에 따라서 상기 저장된 키 값을 이용하여 전화 또는 계산을 수행하는 동작을 포함할 수 있다.
그리고 본 명세서와 도면에 개시된 본 발명의 실시 예들은 본 발명의 실시 예에 따른 의 기술 내용을 쉽게 설명하고 본 발명의 실시 예의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 실시 예의 범위를 한정하고자 하는 것은 아니다. 따라서 본 발명의 다양한 실시 예의 범위는 여기에 개시된 실시 예들 이외에도 본 발명의 다양한 실시 예의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 발명의 다양한 실시 예의 범위에 포함되는 것으로 해석되어야 한다.

Claims (20)

  1. 전자 장치에 있어서,
    터치 스크린 디스플레이;
    버퍼; 및
    상기 터치 스크린 디스플레이 및 상기 버퍼와 전기적으로 연결된 프로세서;
    상기 프로세서는:
    상기 터치 스크린 디스플레이 상에 복수의 숫자 키 및 기능 키를 포함하는 인터페이스를 제공하는 애플리케이션을 실행하고, 상기 기능 키는 전화 기능을 위한 제 1 버튼 및 계산 기능을 위한 제 2 버튼을 포함하고;
    상기 터치 스크린 디스플레이에 표시되는 상기 인터페이스를 통해 사용자가 선택한 키 값을 저장하고;
    상기 터치 스크린 디스플레이를 통해 상기 인터페이스의 상기 제 1 버튼 또는 상기 제 2 버튼에 대한 사용자 입력을 수신하고;
    상기 사용자 입력이 상기 인터페이스에 포함된 상기 전화 기능의 상기 제1 버튼에 해당하는 경우 상기 인터페이스를 통해 상기 사용자가 선택한 상기 저장된 키 값을 사용하여 전화를 걸고;
    상기 사용자 입력이 상기 인터페이스에 포함된 상기 계산 기능의 상기 제2 버튼에 해당하는 경우 상기 인터페이스를 통해 상기 사용자가 선택한 상기 저장된 키 값을 사용하여 상기 계산 기능을 수행하도록 구성되는,
    전자 장치.
  2. 청구항 1에 있어서,
    상기 버퍼는 상기 복수의 숫자 키 중 임의의 키에 대하여 제1 타입의 입력이 발생하면 상기 임의의 키에 대응하는 숫자를 저장하고,
    상기 프로세서는 상기 임의의 키에 대하여 제2 타입의 입력이 발생하면 상기 계산 기능을 수행하기 위한 복수의 연산자를 포함하는 팝업 버튼을 상기 인터페이스에 출력하는, 전자 장치.
  3. 청구항 2에 있어서,
    상기 제2 타입의 입력은 상기 임의의 키에 대한 롱 터치(long touch)이고, 상기 복수의 연산자는 사칙 연산자 중 적어도 둘 이상을 포함하는, 전자 장치.
  4. 청구항 3에 있어서,
    상기 팝업 버튼은 계산기 어플리케이션으로 전환하기 위한 버튼을 더 포함하는, 전자 장치.
  5. 청구항 2에 있어서,
    상기 팝업 버튼은 상기 임의의 키와 인접한 버튼 영역에 배치되는 상기 연산자 각각에 대한 버튼을 포함하는, 전자 장치.
  6. 청구항 2에 있어서,
    상기 프로세서는 상기 임의의 키에 대하여 상기 제2 타입의 입력이 발생하면 상기 임의의 키에 할당된 연산자에 대한 키 입력을 발생시키는, 전자 장치.
  7. 청구항 6에 있어서,
    상기 프로세서는 상기 팝업 버튼에 포함된 복수의 연산자 중 특정 연산자에 대한 입력이 발생하면, 상기 임의의 키에 할당된 연산자에 대한 키 입력을 상기 특정 연산자에 대한 입력으로 대체하는, 전자 장치.
  8. 청구항 2에 있어서,
    상기 제1 타입의 입력이 발생할 때 자동으로 출력되는 기호는, 상기 제2 타입의 입력이 발생할 때 삭제되는, 전자 장치.
  9. 청구항 1에 있어서,
    상기 터치 스크린 디스플레이는 상기 복수의 숫자 키 및 상기 기능 키 및 상기 계산을 수행하기 위한 복수의 연산자 키를 더 제공하도록 구성되는, 전자 장치.
  10. 청구항 1에 있어서,
    상기 프로세서는 상기 사용자 입력이 지정된 조건을 만족하지 않는 경우 상기 인터페이스의 적어도 일부가 상기 계산 기능을 수행하기 위한 인터페이스로 변경되도록 하는, 전자 장치.
  11. 청구항 10에 있어서,
    상기 지정된 조건은 저장된 키의 조합이 전화 번호 형태의 적어도 일부를 만족하는지 여부를 포함하는, 전자 장치.
  12. 청구항 1에 있어서,
    상기 프로세서는 상기 사용자 입력이 임의의 숫자 키에 대한 터치 앤 드래그 입력인 경우, 상기 인터페이스의 적어도 일부가 변경되도록 하는, 전자장치.
  13. 청구항 12에 있어서,
    상기 버퍼는 상기 인터페이스가 변경되는 동안 상기 버퍼에 저장된 키 값을 유지하도록 설정되는, 전자장치.
  14. 청구항 1에 있어서,
    상기 버퍼는 상기 인터페이스를 통해 입력된 계산 식을 저장하고,
    상기 프로세서는 최종 사용자 입력이 통화 발신을 지시하는 키에 대한 입력인 경우, 상기 저장된 계산 식에 포함된 적어도 하나의 연산자를 인식하지 못하도록 처리하는, 전자 장치.
  15. 전자 장치의 다이얼을 이용한 계산 기능 및 전화 기능을 제공 방법에 있어서,
    상기 전자 장치의 터치 스크린 디스플레이 상에 복수의 숫자 키 및 기능 키를 포함하는 인터페이스를 제공하는 애플리케이션을 실행하고, 상기 기능 키는 상기 전화 기능을 위한 제 1 버튼 및 상기 계산 기능을 위한 제 2 버튼을 포함하고;
    상기 터치 스크린 디스플레이에 표시되는 상기 인터페이스를 통해 사용자가 선택한 키 값을 저장하고;
    상기 터치 스크린 디스플레이를 통해 상기 인터페이스의 상기 제 1 버튼 또는 상기 제 2 버튼에 대한 사용자 입력을 수신하고;
    상기 사용자 입력이 상기 인터페이스에 포함된 상기 전화 기능의 상기 제1 버튼에 해당하는 경우 상기 인터페이스를 통해 상기 사용자가 선택한 상기 저장된 키 값을 사용하여 전화를 걸고;
    상기 사용자 입력이 상기 인터페이스에 포함된 상기 계산 기능의 상기 제2 버튼에 해당하는 경우 상기 인터페이스를 통해 상기 사용자가 선택한 상기 저장된 키 값을 사용하여 상기 계산 기능을 수행하는, 방법.
  16. 청구항 15에 있어서,
    상기 전자 장치의 잠금 상태에서 상기 복수의 숫자 키를 포함하는 상기 인터페이스를 제공하는 동작을 더 포함하고,
    상기 인터페이스에 대한 입력은 상기 잠금 상태에서 수행되는, 방법.
  17. 청구항 15에 있어서,
    상기 전자 장치의 통화 상태에서 상기 복수의 숫자 키를 포함하는 상기 인터페이스를 제공하는 동작을 더 포함하고,
    상기 인터페이스에 대한 입력은 상기 통화 상태에서 수행되는, 방법.
  18. 청구항 17에 있어서,
    상기 인터페이스에서 지정된 키가 선택되면 DTMF(Dual-tone multi-frequency) 기능을 중단시키는 동작을 더 포함하는 방법.
  19. 청구항 15에 있어서,
    상기 저장된 키 값이 상기 전화 기능 또는 상기 계산 기능을 수행하기에 적합하지 않은 키 값을 포함하는 경우,
    상기 적합하지 않은 키를 상기 전화 기능 또는 상기 계산 기능을 수행하기에 적합하도록 처리하는 동작을 더 포함하는 방법.
  20. 컴퓨터 판독 가능한 명령어를 저장하고 있는 기록 매체에 있어서, 상기 명령어는 전자 장치로 하여금,
    상기 전자 장치의 터치 스크린 디스플레이 상에 복수의 숫자 키 및 기능 키를 포함하는 인터페이스를 제공하는 애플리케이션을 실행하고, 상기 기능 키는 전화 기능을 위한 제 1 버튼 및 계산 기능을 위한 제 2 버튼을 포함하고;
    상기 터치 스크린 디스플레이에 표시되는 상기 인터페이스를 통해 사용자가 선택한 키 값을 저장하고;
    상기 터치 스크린 디스플레이를 통해 상기 인터페이스의 상기 제 1 버튼 또는 상기 제 2 버튼에 대한 사용자 입력을 수신하고;
    상기 사용자 입력이 상기 인터페이스에 포함된 상기 전화 기능의 상기 제1 버튼에 해당하는 경우 상기 인터페이스를 통해 상기 사용자가 선택한 상기 저장된 키 값을 사용하여 전화를 걸고;
    상기 사용자 입력이 상기 인터페이스에 포함된 상기 계산 기능의 상기 제2 버튼에 해당하는 경우 상기 인터페이스를 통해 상기 사용자가 선택한 상기 저장된 키 값을 사용하여 상기 계산 기능을 수행하도록 하는 명령어를 저장한 기록 매체.
KR1020140094174A 2014-07-24 2014-07-24 통합된 통화 및 계산 기능을 지원하는 전자 장치 및 그 방법 KR102295655B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140094174A KR102295655B1 (ko) 2014-07-24 2014-07-24 통합된 통화 및 계산 기능을 지원하는 전자 장치 및 그 방법
US14/790,390 US10001919B2 (en) 2014-07-24 2015-07-02 Apparatus for providing integrated functions of dial and calculator and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140094174A KR102295655B1 (ko) 2014-07-24 2014-07-24 통합된 통화 및 계산 기능을 지원하는 전자 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20160012573A KR20160012573A (ko) 2016-02-03
KR102295655B1 true KR102295655B1 (ko) 2021-08-31

Family

ID=55166795

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140094174A KR102295655B1 (ko) 2014-07-24 2014-07-24 통합된 통화 및 계산 기능을 지원하는 전자 장치 및 그 방법

Country Status (2)

Country Link
US (1) US10001919B2 (ko)
KR (1) KR102295655B1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103905590B (zh) * 2014-04-22 2018-03-06 锤子科技(北京)有限公司 移动设备及其拨号面板
US9679006B2 (en) 2015-05-14 2017-06-13 Walleye Software, LLC Dynamic join processing using real time merged notification listener
WO2018035100A1 (en) * 2016-08-16 2018-02-22 Finetune Technologies Ltd. Reverse keyboard assembly
US11016661B2 (en) * 2016-08-16 2021-05-25 Finetune Technologies Ltd. Device and method for displaying changeable icons on a plurality of display zones of a reverse keyboard assembly
CN107870704A (zh) * 2016-09-26 2018-04-03 比亚迪股份有限公司 兼容计算器功能的密码解锁、装置和终端
USD804508S1 (en) * 2016-10-26 2017-12-05 Apple Inc. Display screen or portion thereof with graphical user interface
US10866943B1 (en) * 2017-08-24 2020-12-15 Deephaven Data Labs Llc Keyed row selection
CN108833695B (zh) * 2018-06-06 2020-07-31 Oppo广东移动通信有限公司 控制方法、控制装置、电子装置、计算机存储介质及设备
US11222101B1 (en) * 2020-10-01 2022-01-11 Rsa Security Llc User behavior analytics using keystroke analysis of pseudo-random character strings

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6114977A (en) * 1997-03-06 2000-09-05 Unilogic Systems Keyboard Technologies, Inc. Keyboard calculator system
US20020027549A1 (en) * 2000-03-03 2002-03-07 Jetway Technologies Ltd. Multifunctional keypad on touch screen
US20130212702A1 (en) * 2012-01-06 2013-08-15 Redporte Inc. Apparatus and Method for Data Security on Mobile Devices

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100530650B1 (ko) 2003-04-18 2005-11-22 삼성전자주식회사 휴대용 단말기에 있어 네비게이션 키를 이용한 사칙연산 수행 방법
JP2005057720A (ja) 2003-08-05 2005-03-03 Yasuhiro Yonamine 計算機能付携帯電話機
EP1747505A1 (en) 2003-12-31 2007-01-31 Research In Motion Limited Keyboard arrangement
KR100790159B1 (ko) * 2004-07-30 2007-12-28 삼성전자주식회사 이동 통신 단말기의 특수문자 입력 방법
KR20060058874A (ko) * 2004-11-26 2006-06-01 엘지전자 주식회사 계산기용 키패드스킨을 구비한 이동통신 단말기
KR20110051073A (ko) * 2009-11-09 2011-05-17 엘지전자 주식회사 휴대형 단말기에서의 응용프로그램 실행 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6114977A (en) * 1997-03-06 2000-09-05 Unilogic Systems Keyboard Technologies, Inc. Keyboard calculator system
US20020027549A1 (en) * 2000-03-03 2002-03-07 Jetway Technologies Ltd. Multifunctional keypad on touch screen
US20130212702A1 (en) * 2012-01-06 2013-08-15 Redporte Inc. Apparatus and Method for Data Security on Mobile Devices

Also Published As

Publication number Publication date
US20160026383A1 (en) 2016-01-28
KR20160012573A (ko) 2016-02-03
US10001919B2 (en) 2018-06-19

Similar Documents

Publication Publication Date Title
US11762550B2 (en) Electronic device including touch sensitive display and method for managing the display
KR102295655B1 (ko) 통합된 통화 및 계산 기능을 지원하는 전자 장치 및 그 방법
US10261683B2 (en) Electronic apparatus and screen display method thereof
US10884692B2 (en) Electronic device and method for displaying and transmitting images thereof
US20170235435A1 (en) Electronic device and method of application data display therefor
US20170116987A1 (en) Electronic device and method for executing function using speech recognition thereof
US9983767B2 (en) Apparatus and method for providing user interface based on hand-held position of the apparatus
KR102265244B1 (ko) 디스플레이를 제어하는 전자 장치 및 방법
US20150220247A1 (en) Electronic device and method for providing information thereof
KR102266882B1 (ko) 전자장치의 화면 표시 방법
US20160109936A1 (en) Display control method and protective cover in electronic device
US9998924B2 (en) Electronic device and method for acquiring biometric information thereof
US20160007084A1 (en) Method and apparatus for sharing data of electronic device
US20150317979A1 (en) Method for displaying message and electronic device
KR20170002051A (ko) 한 손 조작 사용자 인터페이스 구현 방법 및 이를 수행하는 전자 장치
US20160077658A1 (en) Method and apparatus for generating preview data
KR20150087085A (ko) 전화번호를 이용하여 외부 기기를 제어하는 전자 기기 및 방법
US20160086138A1 (en) Method and apparatus for providing function by using schedule information in electronic device
US20180205568A1 (en) Method and device for searching for and controlling controllees in smart home system
US10123184B2 (en) Method for controlling call forwarding information and electronic device thereof
US9628716B2 (en) Method for detecting content based on recognition area and electronic device thereof
EP3084560B1 (en) Electronic device and operating method thereof
KR102256290B1 (ko) 통신 그룹 생성 방법 및 장치
US10430046B2 (en) Electronic device and method for processing an input reflecting a user's intention
US10303351B2 (en) Method and apparatus for notifying of content change

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant