logo
한국어 Select Language
FF 포럼
포럼지기에게 한 마디
공지사항
뉴스 EZ보드 통합 메뉴얼
FA-VUS 개발환경 !강추! 타켓보드 부팅-HyperTerminal 타켓보드 부팅-Tutty 타켓보드 부팅-minicom Windows환경-타겟 Linux 구동 Linux환경-타겟 Linux 구동 개발 시스템 구축 유형 페도라 설치 CentOS 설치 크로스 컴파일러 설치 TFTP 환경 구축 NFS 파일 시스템 구축 삼바 서버 구축 부트로더 부트로더 쓰기 커널 이미지 제작 및 설치 램디스크 이미지 제작 및 설치
임베디드 제품 사용기 오늘의 영어 휴게실 Appliance
강좌 & 팁
강좌 & 팁 EZ-보드 그래픽 & 멀티미디어 네트워크 프로그래밍 디바이스 드라이버 ImJa 솔루션 임베디드 FLEX 안드로이드 iOS 개발 FAIDE 하드웨어 C/C++ go언어 GNU C 레퍼런스 메뉴얼 ARM 루아 응용 프로젝트 이클립스 지그비 개발자 노트 권장도서 FPGA
VIVADO DSP HSIO Logic Zynq
함수설명
C 라이브러리 함수 커널 API 그래픽 라이브러리 - gxLib
자료실
자료실 FALINUX SDK ARM PC-V210 S3C6410
G100-S3C6410 S100-S3C6410 C221-S3C6410 N200-S3C6410 EZ-S3C6410
S5PV210
G100-S5PV210 S100-S5PV210 N200-S5PV210 C221-S5PV210
EZ-S3C2440 EZ-PXA270 EZ-X5 EZ-S2410 Auto Package
도와주세요
FAQ 도와주세요

  • 회원가입
  • ID/PW 찾기
 
  1. FAQ

  2. 도와주세요


최근 글

  • [특판][성Y인Y용Y품][...
  • 요즘 잘 나가는,,,
  • 요즘은 vmware 말고 ...
  • [docker] buildx 를 ...
  • buildroot 사용 관련
  • GPIO 제어 방법 문의 [1]
  • 임베디드 리눅스 개발...
  • make wandboard_quad ...
  • LCD 초기화 코드 좀 ... [1]
  • 임베디드 리눅스 커널...

최근 댓글

  • 오래 전에 해결법을 터득해서 ...
  • 비트 코인으로 작업하는 것은 ...
  • 10년차 임베 엔지니어 입니다. ...
  • 임베디드쪽이라면 SOC 쪽 displ...
  • 그렇군요 제가 질문이 잘못됬었...
  • 취준생으로서 포트폴리오를 만...
  • 제가 현재 취업준비생입니다. ...
  • 에프에이리눅스 보드는 아래 링...
  • 전체
  • 일반
  • X5
  • S2410
  • ESP-NS
  • S3C2440
  • EP9312
  • 구매
  • 기타

S3C2440 s3c2440 보드에서 SleepMode에 대한 질문입니다..

2012.03.23 09:36

리우 조회 수:17842

s3c2440a 칩 기반의 mba2440 보드를 사용하고 있습니다.


SleepMode에 들어가 core및 peripheral들에 대한 전원을 중단시켰다가 다시 깨어나는 작업을 하고 있습니다.


제가 짠 코드는... 아래와 같습니다. 메뉴얼을 보면서 짰구요.... 


sleep모드로 들어가는거 같기는 한데... 깨어나질 않는군요.. 외부인터럽트0으로 버튼을 연결해놨고... RTC도 설정했습니다.


그런데 WAKE-UP이 안되더군요.. 혹시 경험 있으신분들.. 해법좀 알려주셨으면 좋겠습니다... 그냥 외부 인터럽트를 띄워도


RTC가 떠도 계속 잠만 자는군요.. 이 잠탱이보드녀석이 ㅠㅠㅠㅠㅠ 아래 제가 작성한 코드이고 코드를 짜면서 궁금한부분은


빨간색 글씨로 표기했는데요... 부탁좀 드릴게요 요녀석좀 깨워주세요 ㅠㅠ



void TestSleepMode(){


Uart_Printf("[Sleep Mode Test]\n");   


ConfigSleepGPIO();   ---->gpio설정 함수... 그냥 EINT0를 키는 곳입니다... 버튼 1로... 설정.. 


 //Interrupt initialize  --->  메뉴얼에 RTC나 EINT를 통해 깨어날수 있다고해서 해당 인터럽트만 마스크 OFF 시켰습니다

    rINTMSK = 0xffffffff;

    rINTMSK &= ~(BIT_RTC | BIT_EINT0);

    rSRCPND |= (BIT_RTC | BIT_EINT0);

    rINTPND |= (BIT_RTC | BIT_EINT0);

        //USB suspend mode  ---> USB서스팬드 모드로 변경

        rMISCCR|=(1<<12); //USB port0 = suspend    

       rMISCCR|=(1<<13); //USB port1 = suspend    


//Data Bus Pull-up enable --->데이터 버스 풀업을 디스에블 시켰습니다.. 이부분은 이해가 안가서 일딴 디스에이블 해                                                         놨습니다.. ㅠ 인에이블해야할지 .. 디스에블해야할지 잘 모르겠습니다..

        //rMISCCR |= (1 << 1 ) | (1 << 0 ); enable

         rMISCCR= rMISCCR & ~(3<<0) ;     //disalbe

    

      //Lcd Off ------> LCD 전원 끄기

      rLCDCON1 &= ~(1<<0);

      rGPGCON  |= (3 << 8);

      rGPGUP |=( 1 << 4);

    rEXTINT0=rEXTINT0&~(7<<0)|(2<<0);  //EINT0=falling edge triggered    

    

    //rGPFCON=rGPFCON & ~(3<<0)|(2<<0); //PF0=EINT0    

    


    Uart_Printf("Alarm wake-up (y/n)? ");   ---->RTC를 사용할지 여부 

    if(Uart_Getch()=='y')   

    {   

        Uart_Printf("S3C2440 will wake up by RTC alarm(10 sec) or EINT0 .\n");   

        SetAlarmWakeUp();   --->내부에서 알람을 설정해서 10초정도 기다리면 RTC가 발생하도록 설정했습니다. 

    }   

     // ADC TOUCH SCREEN STAND BY!!  

      rADCCON|=(1<<2);   

 

      rGSTATUS3=(MK_U32_t)SleepWakeup ;  // memory control part in startup code.    

       Uart_Printf("set restart address:%x\n", rGSTATUS3);   

      rGSTATUS4=0xaaaaaaaa;   

   

    Uart_TxEmpty(1);    //Wait until UART0 Tx buffer empty.    

    Enter_SLEEP(8); //Sleep mode    ------->ASM으로 쩜푸입니다.. 나머지 부분을 스타트업 코드에 작성했습니다. 


}




---- ASM 코드 -----


        stmfd sp!, {r0-r3}


ldr r0, =GSTATUS3

ldr r1, =WAKEUP_SLEEP

str r1, [r0];


;ldmfd sp!, {r0-r1}


      ;load refersh clkcon for TLB fill

      ldr r0 , =REFRESH

      ldr r1 , =CLKCON


     ;self refersh setting ----->SDRAM Self-refresh 기능을 활성화 하는 곳인데.. 활성화해버리면 그냥 멈춰 버려서 일딴은

                                             사용하지 않고 있습니다. 왜 멈추는지 설명해 주셨으면 좋겠습니다.. 

                                              그냥 refresh 기능을 수행하도록 레지스터를 설정하는 건데.. str부분에서 멈춥니다 ㅠㅠ

      ;ldr r2, [r0];

      ;dr r3, =0xc00000

      ;orr r2 , r2 , r3

      ;str r2 , [r0]


mov r2, #10 ;Wait until self-refresh is issued,which may not be needed.

0 subs r2, r2, #1

bne %B0


      ;set sclk0~3       -------->self-refresh 하는동안 보호차원에서 sclk를 끈어버린다고 하는데.. 일단은 주석 처리 해놨습니                                               다. refresh  가 안되니까...

;ldr r0 , =MISCCR

;ldr r2 , [r0]

;ldr r3 , =0xe0000

;orr r2 , r2 , r3

;str r2 , [r0]


       mov r0 , #0x4

    str r0, [r1]


       ;wakeup??

       ldr r0 , =GSTATUS3

       mov pc , r0 


이 게시물을
  • Twitter
  • Facebook
  • Delicious
목록

댓글 1

  • 유형석

    2012.03.28 20:39

    DRAM 을 초기화 하면 코드가 없어져 버립니다.

    DRAM 을 초기화 하지 말고 해보세요.

    댓글

목록
번호 제목 글쓴이 날짜 조회 수
공지 포럼의 메뉴가 보이지 않아요! 장길석 2014.02.06 957657
공지 [중요 공지]제품 사용 및 기술 문의는 전화 상담을 받지 않습니다. 장길석 2012.11.09 1408549
공지 답글에 대한 공지 사항. falinux 2006.11.20 2424043
396 S3C2440 베이스 보드에 EM-S3C6410모듈 보드를 연결해서 사용해도 가능한가요? 바람 2015.01.20 14994
395 node webkit 동영상 독불장군 2014.08.10 15291
394 /dev/mtd1 플래시 관련해서 도움이 필요합니다. 그린에너지 2014.07.19 17659
393 파일시스템상에 파일내용 매번 수정/저장 할때의 낸드 수명? [3] Tomy 2014.02.05 19866
392 보드에 삼바서버나 nfs 서버 올리기? [2] Tomy 2014.02.03 19942
391 core dump file 생성 및 분석 unicorn 2014.01.24 26905
390 pwm 신호로 모터제어를 하는데 있어서 질문이 있습니다 ㅂㅋ 2013.12.19 30703
389 커널2.6.38 올리기 [1] file hirosuk 2013.09.20 23360
388 부팅중 움직이는(애니메이션) 로고 만들기 ? [2] Tomy 2013.06.11 69904
387 EMI 관련 대책방법 문의 오엔터 2013.04.09 24035
386 ezboot2 Unable to mount root fs on unknown-block(1,0) [1] 제피러스 2012.12.29 30878
385 Uncompressing Linux ... Invalid compressed format (err=1) [1] 제피러스 2012.12.28 27543
384 U-boot 1.1.6에서 ezboot2.4.10으로 갈아타던중 커널 부팅 문제 [2] 제피러스 2012.12.25 27003
383 S3c2440 Linux Kernel 2.6.21의 실시간 관련 문의 드립니다. [1] AA리눅스 2012.11.01 23171
382 MRP-S3C2440에서 I2C와 I2S 동시에 썼을 경우. [1] 캐드리안 2012.09.13 25213
381 AX88796 PHY mode 변경 [1] unicorn 2012.06.22 52310
380 s3c2440에서 iptables를 사용하려 합니다. SonYs 2012.06.11 23280
379 프레임 버퍼 픽셀 값 쉬프트 연산하는 방법 강릉바감 2012.05.17 21177
378 CAN 통신관련 질문글 올립니다.ㅜㅜ 박한수 2012.05.16 23465
377 4GB SD와 SDHC의 인식에 차이가 있는지 궁금 합니다. [3] 새벽남 2012.04.23 24509
첫 페이지 1 2 3 4 5 6 7 8 9 10 끝 페이지
쓰기
태그
부탁드립니다. ^^
  • 글을 작성하시려면 회원으로 가입하시고 로그인 하셔야 합니다.
  • 회원 가입은 주민등록번호가 필요 없으며, 메일 주소만 있으면 간단하게 가입하실 수 있습니다.
  • 본 포럼에 등록된 모든 글의 저작권은 작성하신 분께 있으며, 저작자의 허락 없이 다른 곳에 펌이나 도용하시면 안 됩니다.
  • 또한, 전자우편 수집 프로그램이나 그 밖의 기술적 장치를 이용하여 무단으로 이메일 주소 및 자료 수집되는 것을 거부하며,
  • 이를 위반 시 정보통신망 법에 의해 형사 처벌됨을 유념하시기 바랍니다.
  • FF 포럼
  • 강좌 & 팁
  • 함수설명
  • 자료실
  • 도와주세요