기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

void DispMainMenu(char Selected)
{
        printf("n");
        printf("MAIN MENUn");
        printf("------------------------n");
        printf("1.MENU 1n");
        printf("2.MENU 2n");
        printf("3.MENU 3n");
        switch (Selected) {
                case 1 :
                        printf("> MENU 1n");
                        execl("play_audio", "./play_audio", "-c", "pcm16_2", "-lsbfirst", "1.wav", NULL);
                        break;
                case 2 :
                        printf("> MENU 2n");
                        execl("play_audio", "./play_audio", "-c", "pcm16_2", "-lsbfirst", "2.wav", NULL);
                        break;
                case 3 :
                        printf("> MENU 3n");
                        execl("play_audio", "./play_audio", "-c", "pcm16_2", "-lsbfirst", "3.wav", NULL);
                        break;
        }//switch
}//DispMainMenu()

void main(void)
{
        char c, SelectedMenu;

  SelectedMenu = 1;
        do {
                DispMainMenu(SelectedMenu);

                c = getc();
                switch (c) {
                        case 'U' :
                                SelectedMenu--;
                                if (SelectedMenu < 1) SelectedMenu = 3;
                                break;
                        case 'D' :
                                SelectedMenu++;
                                if (SelectedMenu > 3) SelectedMenu = 1;
                                break;
                        case 'X' :
                                //PlaySub(SelectedMenu);
                                break;
                        case 'M' :
                                c = 0;
                                break;
                        default:
                                break;
                }//switch
                if (c == 0)        break;
        } while(1);
}//main()


커널은 2.4.xx 입니다.

이정도 정보로 답을 알수 있을지 모르겠네요.


      질문의 요지는 아래의 execl함수 실행 후
      메인프로그램내에 있어야 하는 데 메인 프로그램까지 끝나는 점입니다.

execl("play_audio", "./play_audio", "-c", "pcm16_2", "-lsbfirst", "1.wav", NULL);

     - play_audio  : audio를 재생하는 외부 프로그램
      - 1.wav  : audio data file
      

고현철

2006.09.14 22:17:48
*.117.46.252

exec 계열의 함수 example들을 찾아보시면 아시겠지만,
원래의 실행파일을 남겨놓고 싶을 겨우 exec계열의 함수는 fork()를 한 후에 실행시켜야 할겁니다.

이유는 설명이 길어지니 생략...^^

박영학

2006.09.14 22:57:14
*.45.116.126

감사합니다.

찾아 봐야겠네요. 주몽 대규모 전투신 인제 눌러봤는데 대단하네요.

TV를 안봐서 요즘 인기있는 드라마라는것 밖에는 모르지만 갑자기 보고싶어 지네요.

ㅎㅎ

박영학

2006.09.14 23:41:48
*.45.116.126


fork()는 사용하지 말라고 되어있는데 다른 좋은 방법은 혹시 없을지요.

사실 이런 질문 자체가 좀 성의 없이 느껴지지만 제가 원래 하드웨어라 그런가보다 해주시길 빕니다.

소스코드만 보고있으면 안구에 습기가 차오르네요. 진짜로~~~

고현철

2006.09.15 00:45:28
*.117.46.252

누가 fork() 쓰지 말래요?

그럼 system()명령을 쓰시면 될 듯 하네요.

박영학

2006.09.15 05:03:59
*.45.116.126


네 소스 코드 안에서 샘플을 찾다 보니 fork()는 잊어버리고 쓰지 말라고 되어있더군요.

이유는 전혀 알수가 없는데 소스가 워낙 닫혀있어서 접근이 어렵네요.

레지스터에 접근을 못하게 하는데 한달 정도 갈궈서 레지스터 정의 문서는 얻었습니다.

그런데도 불구하고 거의 써먹을수 없게 되어있더군요.


만약 시그마 디자인칩으로 개발 하실분은 그냥 주는대로 써야지 먼가 새로운걸 넣으려고 하시면 각오부터 단단히 하셔야 할겁니다

도움 감사합니다.

고현철

2006.09.15 12:16:53
*.204.83.27

어쩐지...fork() 쓰지말라 그럴때 이상하다 그랬습니당....

MMU 없는 넘이군요. 그럼 골치죠...ㅎㅎ

그냥 전부 코딩하셔야 할 듯 하네요...^^

박영학

2006.09.25 23:53:02
*.45.116.126

전시회때 이용할 간단한 어플리케이션 때문에 사용하려 했으나 시간 문제로 그냥 drop했습니다.

인터페이스는 시간을 두고 소프트웨어 팀에서 정식으로 작성하기로 하였습니다.

질문을 했으면 답도 올려야 하는데 그러지 못했습니다.
List of Articles
번호 제목 글쓴이 날짜sort 조회 수
6208 블루투스 포팅해보신분?[미해결] [2] 오용석 2006-09-12 999
6207 [질문] u-boot에 있는 nand write, nand read cmd시에 배드블럭... [5] 김경호 2006-09-13 2053
6206 crosstool 질문입니다. <= [완료] [9] 신재곤 2006-09-14 1101
6205 MPlayer 관련 질문 좀 드립니다. <= 완료 [8] 한승혁 2006-09-14 1345
» 간단한 어플리케이션 프로그램 문제입니다. <== 완료 [7] 박영학 2006-09-14 919
6203 폰트 관련 질문입니다..[완료] [3] 김대영 2006-09-15 1162
6202 터치 스크린.. [3] 이재철 2006-09-16 2667
6201 AESOP-2440 DVD 받을 곳 없나요? [완료] [6] 강민석 2006-09-20 1074
6200 [NFS] 뭔 문제인지 잘 모르겠습니다. [완료!] [3] 이제현 2006-09-21 3245
6199 이솝 2차보드로 uboot 변경했다가, 보드가 먹통이 되었어요. [완료] [9] 진태영 2006-09-21 1448
6198 이럴수가 혹시 sjf2440 동글 남는것 있나요? [완료] [7] 진태영 2006-09-23 1018
6197 USB storage 마운트 어떻게들 하시나요. <== [완료] [11] 박영학 2006-09-23 8046
6196 MP3 Player 제작중인데요~ <= 완료 [3] 한승혁 2006-09-25 1250
6195 S3C2440 계열 CPU 보드 개발 문의.. [3] 고재량 2006-09-26 2154
6194 S3C2440 보드에 삼성 CCD 카메라 포팅 질문입니다..[완료] [11] 김창연 2006-09-27 2940
6193 kernel 2.4.20, 2.6.11 & root filesystem howto(by godori) 에서... [3] 노현우 2006-09-27 989
6192 2410(266MHz)에 128MB 램세팅. <= 완료 [5] 앨런쇼어 2006-09-29 1320
6191 [질문] ARM7에 관해서요.. [4] 서성규 2006-09-30 855
6190 리눅스커널의 D.D.에서 1/30초 마다 해당 ISR을 수행하려면 ... [... [3] 장석원 2006-09-30 988
6189 바이너리 값을 아스키 값으로 변경하려면 ... [완료] [2] 장석원 2006-09-30 1067

사용자 로그인