2014-02-17 2 views
0

마이크로 컨트롤러 용 키패드 용 c 드라이버를 개발했습니다. 예를 들어 1을 누르면 다른 번호를 누를 때까지 1을 표시하도록 변경하려고합니다. 현재 숫자는 키패드의 버튼을 놓으면 사라질 것입니다. 원하는 변경을 구현하는 방법에 대한 일반적인 아이디어를 알려주십시오.마이크로 컨트롤러 용 키패드 스캔

+1

재미있는 점은 키패드 스캔 루틴을 개발했지만이 비교적 쉬운 변경으로 어려움을 겪었습니다. –

답변

2

변수를 새 키 값으로 변경하면 다음 키를 누를 때까지 마지막으로 누른 키를 "표시"(또는 원하는대로)하는 변수에 저장하십시오.

+0

일반적인 알고리즘이 있습니까? 지금은 키를 누를 때까지 루프에 머무르는 keyUp 함수가 있습니다. – user3318660

+0

@ user3318660 이해하기 쉽도록 일부 코드를 업데이트 할 수 있습니까? – Swanand

1

키 값을 누른 상태로 변수를 작성한 다음 특정 버튼 (키)을 클릭하면 화면을 업데이트해야합니다. 눌려진 키의 숫자 값을 반환하는 getPressedKey()라는 함수가 있다고 가정 해 봅시다. 이는 눌린 키를 기반으로 화면을 업데이트하기 위해 조각을 구현하는 방법입니다.

char pressedKey = 0; 
    /* 
    *loop endlessly 
    *wait for keypress 
    *update screen with with pressed key value 
    */ 
    while(1) 
    { 
    pressedKey = getPressedKey(); //store pressed key in pressedKey variable 
    updateDisplay("Pressed key is %c",pressedKey); // display key value 
    } 
관련 문제