초보의 아웅다웅 설계하기/Adstar 7

USB Device Mode - MSC(mass storage class)

Sound를 사용한다면 ADSTAR에서 제공하는 MSC에 들어가기 전에 Sound Clock의 설정을 변경하지 않으면 정상 동작 하지 않는 것 같습니다. ADSTAR에서 제공하는 내부 라이브러리를 확인하지 않았지만 통신중에 케이블이 빠지거나 하면 어디선가에서 무한루프에 빠져 멈춰버리고 맙니다. 만일 MSC가 주요 기능이라면 내부 라이브러리의 수정이 불가피해 보입니다. sound_init();함수 사용시 내부의 클럭 초기화 설정 void sound_clock_init() { PMU_WRITE_ENABLE; if(SND_OUTPUT_CHANNEL>1)//DIGITAL MOD *(vU32*)R_SNDCLKCON = F_SNDCLKCON_DMCLKSRC_PLLCLK;//PLL0 else *(vU32*)R_SND..

ADSTAR SDCard Boot 시 각종 에러 발생 문제

SD Card를 사용하여 Boot를 하는 경우 지켜져야 하는 조건이 있는 것 같습니다. USB Host를 사용하면 USB_OVC에 100k옴을 달아줘야 하는 것 같습니다. 10k옴을 달았더니 아래의 에러들이 랜덤하게 발생했습니다. (100k옴으로 변경 후 계속 발생하지 않는 걸로 보아 해결된 것으로 보입니다. 아마...=> 계속 테스트 하고 있었는데 3일 만에 나와버리고 말았습니다. => 현재까지는 MCU 변경하다보니 발생하는 MCU가 있고 발생하지 않는 MCU가 있어서 MCU 교체로 해결하고 있습니다.) 내부 플래쉬에 라이팅하는 경우에는 발생하지 않았고, USB Host를 사용하지 않거나 SD Card 포맷시 설정(8192로 하면 동작하고 16kb로 하면 바로 에러가 발생하고 등등)에 따라서 발생 빈도..

ADSTAR - Sleep mode

Halt3는 Cpu 코어만 Sleep로 들어가는 모드입니다. 크게 전류 소모량이 줄어드는지는 모르겠습니다. 조금 더 Deep Sleep 하는 모드도 있는데 기본적으로 30mA 전, 후의 전류가 소모된다고 해서 Sleep 모드가 중요하다면 ADSTAR가 아닌 다른 칩을 사용하는게 맞을 것 같습니다. /* Sleep mode enable - halt3 */ #define SleepMode_Config() *(U32*)0x80023C00 |= (1

SD Card 내에 파일을 읽어서 Ymodem으로 업데이트

SD Card 내에 파일을 읽어서 Ymodem을 사용하여 업데이트하였습니다. MCU는 Adstar을 사용하였습니다.(Download는 미사용) s32 Fats_UpdateFile_Read(char* fname, u8 *FileData, u16 FileSize, u32 FilePosition) SD Card의 파일을 읽는 함수이고 File Name을 읽어오기 위해 아래 함수도 약간 수정하였습니다. void Ymodem_PreparePacket(char* fname, u8 *SourceBuf, u8 *data, u8 pktNo, u32 sizeBlk) /******************************************************************************* * Funct..

WatchDog Clear 문제

WatchDog Clear을 Main()에 넣었을 경우 아래의 에러가 발생하고 Timer에 넣으면 에러가 발생하지 않네요. ======== unrecoverable error ========== Coprocessor 0 ======== DUMP ALL REGISTER ======== interrupt.c:89,R0 = 0x00000111 interrupt.c:89,R1 = 0x00000000 interrupt.c:89,R2 = 0x00000000 interrupt.c:89,R3 = 0x00000000 interrupt.c:89,R4 = 0x00000000 interrupt.c:89,R5 = 0x00000000 interrupt.c:89,R6 = 0x20ffffe8 interrupt.c:89,R7 = 0x..

DownLoad 설정

-target adstar -sysinit -jtagspeed 16 -ffw 0 $(TargetPath).bin -reset -exit -target 은 말 그대로 download할 target을 말하며 adstar로 적어주면 된다. (D16M 시리즈의 경우 target name을 adstar로 하고, D8M 시리즈의 경우에는 target name을 adstar8m 으로 해주어야 한다.) -sysinit는 download를 위한 초기화를 해주는 command이다. -ffw는 build 결과물로 나온 bin파일을 다운로드 하는 command로 0x0은 download할 주소이고, $(TargetPaht).bin 은 download할 파일명으로 $(TargetPath).bin은 현재 열려있는 project의..