int main(void) { setup(); getSDCardInfo(); while(1) { delay_ms(1000); } }
int main(){ int blink=0; int blink2=0; unsigned int ret; // SD_Card_struct_t* Card_p; WDTCTL = WDTPW|WDTHOLD; initClock8Mhz_SMCLK_D2(); IE1 |= OFIE; // enable clock problem interrupt //Setup_uart(416,UCBRS2|UCBRS1,"* SDv3"); Setup_uart(416,6,"* SDv3"); /*fam guide p 435*/ P1DIR|=BIT0; P2DIR|=BIT0|BIT2; P2OUT|=BIT0; // P2OUT&=~BIT2; // P1OUT|=BIT0; ret = mmcLibInit(29,0); if(ret == MMC_SUCCESS){ printSDInfo(getSDCardInfo(10,0)); blink2=1; //test writing partition table /* unsigned char pt[16] ={0x80, 0x02, 0x05, 0x07, */ /* 0x0c, 0xff, 0xff, 0xff, */ /* 0x00, 0x08, 0x00, 0x00, */ /* 0x00, 0xe8, 0x3a, 0x00}; */ /* char ret = mmcWriteBlock(pt,0x1be,16); */ /* uart_puts("W : 0x");uart_putnbrhex(ret);uart_CarRet(); */ uart_CarRet(); #ifdef HARNESS // WARNING THIS WILL CRUSH // IN NON MINIMYZE COMPILE MODE ! unsigned char buffer[128]; unsigned int i; unsigned char schr[2]={0,1}; char* jegeva = "JegeVa"; unsigned long tmp =0; for(i=0;i<128;i++) buffer[i]=i; uart_puts("Start : 0x");uart_putnbrhex(mmcContinuousWriteStart(0));uart_CarRet(); ret = 0; tmp=0; uart_puts("CWrite: "); uart_puts("511x 'A' "); for(i=0;i<511;i++) tmp+=mmcContinuousWriteBuff(buffer+0x41,1); uart_putnbr(tmp);uart_putc(' ');uart_putnbr(i); ret+=tmp; uart_CarRet(); i=3;tmp=0; uart_puts("CWrite: "); uart_putnbr(i); uart_puts("x128c "); for(;i>0;i--) tmp+=mmcContinuousWriteBuff(buffer,128); uart_putnbr(tmp);;uart_putc(' ');uart_putnbr(3); ////////// uart_CarRet(); ret+=tmp; tmp=0; uart_puts("CWrite: 60x2c :"); for(i=0;i<60;i++) tmp+=mmcContinuousWriteBuff(schr,2); ret+=tmp; uart_putnbr(tmp);;uart_putc(' ');uart_putnbr(i); uart_CarRet(); tmp=0; uart_puts("CWrite: 2x'0' :"); for(i=0;i<2;i++) tmp+=mmcContinuousWriteBuff(schr,1); uart_putnbr(tmp);;uart_putc(' ');uart_putnbr(i); ret+=tmp; uart_CarRet(); tmp=0; uart_puts("CWrite: 1x'1' :"); tmp+=mmcContinuousWriteBuff(schr+1,1); uart_putnbr(tmp);;uart_putc(' ');uart_putnbr(1);/////////////; ret+=tmp; uart_CarRet(); tmp=0; uart_puts("CWrite: \""); uart_puts(jegeva);uart_puts("\": "); for(i=0;i<4;i++) tmp+=mmcContinuousWriteBuff((unsigned char*)jegeva,6); uart_putnbr(tmp);;uart_putc(' ');uart_putnbr(i); ret+=tmp; uart_CarRet(); tmp=0; i=4; uart_puts("CWrite: "); uart_putnbr(i); uart_puts("x128c :"); for(i=0;i<4;i++) tmp+=mmcContinuousWriteBuff(buffer,128); uart_putnbr(tmp);;uart_putc(' ');uart_putnbr(i);////////// ;uart_CarRet(); ret+=tmp; tmp=mmcContinuousWriteStop(); uart_puts("Stop : 0x"); uart_putnbrhex(tmp); uart_CarRet(); i=0;mmcContinuousWriteStart(0); tmp=0; TACTL = TASSEL_2|ID_3;//smclk /8 TACCR0=0xf424; // .5s TA0CCTL0 |= CCIE; uart_puts("Strt Bench\n\r n*128 chars : R: "); TACTL |=MC_1; //TA0 start while(timeoutvar<8){ mmcContinuousWriteBuff(buffer,128); tmp+=128; }; // 5Sec TACTL |=MC_0; //TA0 stop mmcContinuousWriteStop(); uart_putnbr(tmp>>10); uart_puts(" kiB/s\n\r n* 1 char : R: "); tmp=0; TACTL = TASSEL_2|ID_3;//smclk /8 TAR=0; TACCR0=0xf424; // .125s timeoutvar=0; mmcContinuousWriteStart(0); TACTL |=MC_1; //TA0 start while(timeoutvar<8){ mmcContinuousWriteBuff(buffer,1); tmp++; }; TACTL |=MC_0; //TA0 stop mmcContinuousWriteStop(); uart_putnbr(tmp>>10); uart_puts(" kiB/s"); uart_CarRet(); #endif }