본문 바로가기

dev, tech224

BL 사용시의 두가지 방법 CODE 1) ; ... STMFD r13!, {r0-r2} BL SUB1 LDMFD r13!, {r0-r2} ... ...SUB1 STMFD r13!, {r4-r7, r14} ... ... LDMFD r13!, {r4-r7, pc}; CODE 2) ; BL SUBR ...SUBR ... MOV PC, r14; ... STMFD r13!, {r0-r2} BL SUB1 LDMFD r13!, {r0-r2} ...SUB1 ... MOV pc, lr ... pc에 주소를 직접 넣어서, 제어 흐름을 바꾸어준다. -> MOV를 사용하는 방법, LDM을 사용하는 방법 2006. 7. 13.
<img src="http://blogimgs.naver.com/nblog/ico_scrap01.gif" class="i_scrap" width="50" height="15" alt="본문스크랩" /> watchdog timer operation void delay(void){ // 1. disable WDT rWTCON = 0; // 2. Set WTCNT rWTCNT = 500000/128; // 0.5 sec // 3. Set WTDAT rWTDAT = 0; // Initial Value : 0x8000 // 4. Set WTCON and Enable WDT (t_wdt : 128 us -> 1*128) rWTCON = (PCLK/1000000)-1 2006. 7. 13.
<img src="http://blogimgs.naver.com/nblog/ico_scrap01.gif" class="i_scrap" width="50" height="15" alt="본문스크랩" /> watchdog timer watchdog timer - 대부분의 마이크로프로세서가 가지는 '타이머',시간과 관련된 장치(특정 시간 간격에 이벤트 발생시킴) count =65535 ---------------------------- 0 :interrupt (16bits) -> PCLK 로는 사람이 인식하기 위해서는 너무 짧은 시간에 count 소모됨, 그래서분주... + 시스템을 reset시킬수 있는 기능 임베디드 시스템...에서의 예기치 못한 오류발생시 다운 -> 다시 작동(기능)할 수 있도록 reset 시킴 --> reset시키거나, interrrupt 발생시키던지 하나만 선택가능 죽, count 가 0일 때, reset 하라! 잘못 사용할시 의도하지 않은 reset시킬 수 있음 APB Bus에 연결되어 있으므로, PCLK의 .. 2006. 7. 13.
<img src="http://blogimgs.naver.com/nblog/ico_scrap01.gif" class="i_scrap" width="50" height="15" alt="본문스크랩" /> Clock generator and Powermanagement SFR Clock generator and Powermanagement SFR(special function reg.) lock time count reg. lock time reg.에 값을 넣어주면, locktime이 시작되고 그때부터 설정한 시간까지 - 2440a 는 통상 300micro sec.이 기준 pll configuration reg. mdiv, pdiv, sdiv : 해당 비트에 값(Fpillo값)을 넣어줌 -> PLL value selection table 을 참고 Clock control reg.사용하는 주변장치 블럭에는 전원공급, 그렇지 않은 블럭에는 전원공급하지 않음 -> 이를 결정하는 reg.에 값을 넣음 -> 2,3번 비트 : 2번비트 idle bit, 3번 비트 sleep : 개발자가.. 2006. 7. 13.