임베디드(embedded) - stopwatch using Windows CE (버튼입력,seven segment출력)
- 최초 등록일
- 2011.01.11
- 최종 저작일
- 2010.04
- 13페이지/ MS 워드
- 가격 2,000원
소개글
Lab kit : Acumen270K ( intel Xscale PXA270 )
Windows CE 5.0 & embedded visual C++
windows CE로 stopwatch를 디자인하여 kit의 버튼으로 입력을 받고 출력은 kit의 seven segment로 하는 과제의 레포트입니다. code를 모두 올려놓았으며 임베디드 windows CE과정을 공부하시는분께 어느정도 도움이 되리라 생각됩니다.
목차
1. Backgroundaq
2. map
3. result (code & 결과)
4. discussion
본문내용
이번 과제는 디지털 시계를 만드는 것이었다.
메인Thread를 포함한 총 5개의 Thread를 이용하여 구현하였다.
- WINAPI WinMain : Main Tread
- IntrThread : 숫자 버튼 switch 입력 받는 Thread
- IntrThread2 : 시계 동작을 위한 Timer interrupt Thread
- LCDThreadProc : LCD 출력 Thread
- FndThreadProc : 숫자 출력 Thread
동작에는 총 3개의 상태가 존재한다. ( 입력, 동작, 정지) + 잘못된 입력
swi 변수로 표시( 입력:0 동작:1 정지:2 + 잘못된 입력:4)
Event 발생(SetEvent) & WaitForSingleObject 이용 (4개 + interrupt2개)
< Interrupt 설정 및 처리과정 (Theory) >
ARM architecture 버전 7인 일명 Cortex라고 불리는 구조 이전에는 인터럽트는 단 2가지였다. ARM9 S3C2443 망고24나 ARM11 S3C6410 망고 64나 모두 그러하다.
ARM V7부터는 인터럽트의 개수가 획기적으로 늘어나서 구조가 조금 달라졌지만 예전의 경우는 단 두 가지로 모든 것을 처리하는 것이다.
두 가지의 인터럽트가 무엇인가 하면, IRQ와 FIQ이다.
FIQ는 Fast Interrupt로 인터럽트 전환과 관련해서 IRQ보다는 좀더 빠르게 처리할 수 있도록 만들어 준 것이다. 실제로 대부분의 인터럽트는 IRQ를 이용해서 처리하게 된다. 보다 빠른 처리를 위해서 FIQ를 이용하기도 하지만 결국은 크게 다른 부분이 없기 때문에 IRQ만을 살펴보도록 한다.
참고 자료
없음