캐릭터 LCD에서 출력하는 부분 소스 및 시간 받아오는 법이 궁금
안녕하세요.
저는 임베디드 리눅스 pxa255pro1을 가지고 공부하고 있는
거의 아무것도 모르는 학생입니다.
다름이 아니라 임베디드 리눅스는 공개용 소스라고하던데
도무지 그 공개용 소스를 찾을 수가 없네요.
공개용 소스 보면서 참고할려고 했는데..ㅠㅠ
지금 제 진도는 포팅까지 하고 디바이스 드라이버까지 깔아서
테스트프로그램을 돌리는 것까지는 책보고 했습니다.
문제는 테스트 프로그램을 짜서 돌리는 걸 도무지...>.<
제가 할려고 하는건 <텍스트lcd로 스톱워치>를 구현하는건데요....
모르던 분야가 되다보니 상당히 생소하네요..
지금부터 질문 들어갑니다 ^^:
1번째 질문!!!!
어떤 방식으로 시간을 받아와야 될까요?
settimer 또는 gettimer 같은 함수가 지원이 안되는 것 같은데
그렇다면 time()함수와 localtime()함수를 써야 되는가요?
(솔직히 위 time()함수와 localtime()함수를 가지고 어떻게 쓰는 건지 잘모릅니다.)
pxa255pro1 에서 어떻게 시간을 받아올 수 있을까요?
2번째 질문!!!!
만약에 시간을 받는다면 타입이 int형인데... 텍스트lcd는
캐릭터버퍼배열2개로 입출력를 하는걸로 알고 있습니다.
그럼 int형을 char형으로 바꿔서 배열에 순서대로 넣어야하는
문제가 발생합니다.
즉,
년/월/일/(<--버퍼1에 저장)
오전,후/시/분/초(<--버퍼2에 저장) 를 각각 받아왔을 때
char row_buffer1[20];
char *row_one = row_buffer1;
이렇게 버퍼가 1개 있고
for(i = 0;i < 16;i++) {
if(row_one[i] == '\0') break;
memcpy(&strcommand.buf[0],&row_one[i],1);
ioctl(dev,IOM_LCD_WRITE_BYTE,&strcommand,32);
}
이런 식으로 출력한다고 하는데 그렇다면
년/월/일/오전,후/시/분/초 를 각각 받아왔을 때
1번째 버퍼[20]에 순서대로 년/월/일/을 어떻게 넣어야 될까요?
글 읽고 심기가 많이 불편하실텐데....죄송하구요.
스스로 해볼려고 하는데 자꾸 뭐라고 하면 핑계라서 ^^;
한 번만 도와주세요~~!! 감사합니다~~!!
정말 절실합니다.
커널에 대한 질문이 아닌듯 하군요 ... 그래도 대강 답변을 달아 드
커널에 대한 질문이 아닌듯 하군요 ...
그래도 대강 답변을 달아 드리면 ...
1. 시간에 관한 함수는 대략 ...
time, ctime, ftime 등이 있습니다.
원하시는 결과에 따라서 골라서 쓰시면 되겠습니다.
자세한 설명은 man page를 참조하시면 사용법까지 나옵니다.
2. int형 data를 ascii 형으로 바꾸는것이 질문인가요?
이건 당장 생각나는게 sprintf 밖에 없네요.
역시 man page 참조하시면 됩니다.
3. LCD 에 쓴다고 해서 전 뭔가 했었는데 소스를 보니 간단하게만
구현하면 char형 데이터를 device에 write하면 LCD에 표시 된다고
이해 했는데 맞는지요?
1, 2번을 수행하셔서 시간 정보를 char형으로 변환하시고
device에 write 하면 될것 같은데요...
ps. 고수님 하시면서 질문하시면 답변이 더 적을수 있습니다...
여기 답변 하시는 분중에는 스스로 고수라고 생각하시는분이
많지 않을 것이기에 ... 저역시 ... :oops:
^^*
정말 감사합니다.
albam2
진짜 죄송한데요...
man page 란 건 어디서 보는건지 죄송합니다...(__)_
임베디드 리눅스 타겟용 소스를 배우고 싶어요
[quote]man - format and display the on-l
시스템에서
man time
man ftime
등으로 한번 쳐보세요.
^^*
댓글 달기