char SD_Reset(void); char SD_Command(char,unsigned long, char); void SD_Write(unsigned long); unsigned char sector_array_AD[512]; char SD_Read(unsigned long); // Read 1 full sector from the SD card char SD_Read(unsigned long address) { int i; char tmp = 0xFF; // select SD card PORTB.2 = 0; //Issue command to read from SD card tmp = SD_Command(0x51,address<<9,0xFF); while(tmp == 0xFF) { SPDR = 0xFF; while(!SPSR.7); tmp = SPDR; } //the SD card is unhappy, and we are going to have to do this again if(tmp !=0) return 1; //Wait for transmission flag to start while(tmp != 0xFE) { SPDR = 0xFF; while(!SPSR.7); tmp = SPDR; } //Retrieve Data from the SD card for (i=0;i<512;i++) { SPDR = 0xFF; while(!SPSR.7); sector_array_AD[i] = SPDR; } //Pad with two dummy bytes SPDR = 0xFF; while(!SPSR.7); SPDR = 0xFF; while(!SPSR.7); //Turn off SD card Chip Select PORTB.2 = 1; //Return a sucessful read return 0; } char SD_Reset() //RESET SD CARD, ENTER SPI MODE { unsigned int count = 0; char i; //SEND 80 CLOCK PULSES TO WAKE UP SD CARD for(i=0; i < 10; i++) begin SPDR = 0xFF; while(!SPSR.7); //CHIP SELECT FOR SD CARD end PORTB.2 = 0; //ISSUE GOTO IDLE STATE COMMAND while (SD_Command(0x40,0,0x95) != 1) { if (count++ > 1000) {return 1;} } //CHECK FOR IDLE STATE COCMMAND GOTO SPI MODE //IF NO SD CARD PROGRAM LOOPS count = 0; while (SD_Command(0x41,0,0xFF) !=0) { if (count++ > 10000) {return 2;} } //SET SECTOR SIZE TO 512 BYTES SD_Command(0x50,512,0xFF); //DISABLE CRC SD_Command(0x7B,0,0x95); //DESELECT SD CARD PORTB.2 = 1; return 0; } char SD_Command(char cmd, unsigned long address, char cmd2) begin //SEND PADDING BYTE SPDR = 0xFF; while (!SPSR.7); //SEND COMMAND INSTRUCTION CODE SPDR = cmd; while (!SPSR.7); //SEND 32 BIT ADDRESS SPDR = ((unsigned char)(address >>24)); while (SPSR.7 == 0); SPDR = ((unsigned char)(address >>16)); while (SPSR.7 == 0); SPDR = ((unsigned char)(address >> 8)); while (SPSR.7 == 0); SPDR = ((unsigned char)(address)); while (SPSR.7 == 0); //SEND CYCLIC REDUNDANCY CHECK BYTE (DISABLE AFTER COMMAND 59) SPDR = cmd2; while (!SPSR.7); //SEND PADDING BYTE SPDR = 0xFF; while (!SPSR.7); //RETURN LAST RECEIVED CHARACTER SPDR = 0xFF; while (!SPSR.7); return SPDR; end void SD_Write(unsigned long sector_address) begin char tmp; //Select SD Card PORTB.2 = 0; //Padding bytes SPDR= 0xFF; while (SPSR.7 ==0); SPDR = 0x58; //Command SD card to the sector while (SPSR.7 == 0); SPDR = ((unsigned char)(sector_address >>24)); while (SPSR.7 == 0); SPDR = ((unsigned char)(sector_address >>16)); while (SPSR.7 == 0); SPDR = ((unsigned char)(sector_address >> 8)); while (SPSR.7 == 0); SPDR = ((unsigned char)(sector_address)); while (SPSR.7 == 0); // Padding Bytes SPDR = 0xFF; while (SPSR.7 == 0); SPDR = 0xFF; while (SPSR.7 == 0); SPDR = 0xFF; while (SPSR.7 == 0); SPDR = 0xFF; while (SPSR.7 == 0); //Transmission Flag SPDR = 0xFE; while (SPSR.7 == 0); //Write Data // For loop is expanded because this saved time during the SD card write SPDR = sector_array_AD[0]; while (!SPSR.7); SPDR = sector_array_AD[1]; while (!SPSR.7); SPDR = sector_array_AD[2]; while (!SPSR.7); SPDR = sector_array_AD[3]; while (!SPSR.7); SPDR = sector_array_AD[4]; while (!SPSR.7); SPDR = sector_array_AD[5]; while (!SPSR.7); SPDR = sector_array_AD[6]; while (!SPSR.7); SPDR = sector_array_AD[7]; while (!SPSR.7); SPDR = sector_array_AD[8]; while (!SPSR.7); SPDR = sector_array_AD[9]; while (!SPSR.7); SPDR = sector_array_AD[10]; while (!SPSR.7); SPDR = sector_array_AD[11]; while (!SPSR.7); SPDR = sector_array_AD[12]; while (!SPSR.7); SPDR = sector_array_AD[13]; while (!SPSR.7); SPDR = sector_array_AD[14]; while (!SPSR.7); SPDR = sector_array_AD[15]; while (!SPSR.7); SPDR = sector_array_AD[16]; while (!SPSR.7); SPDR = sector_array_AD[17]; while (!SPSR.7); SPDR = sector_array_AD[18]; while (!SPSR.7); SPDR = sector_array_AD[19]; while (!SPSR.7); SPDR = sector_array_AD[20]; while (!SPSR.7); SPDR = sector_array_AD[21]; while (!SPSR.7); SPDR = sector_array_AD[22]; while (!SPSR.7); SPDR = sector_array_AD[23]; while (!SPSR.7); SPDR = sector_array_AD[24]; while (!SPSR.7); SPDR = sector_array_AD[25]; while (!SPSR.7); SPDR = sector_array_AD[26]; while (!SPSR.7); SPDR = sector_array_AD[27]; while (!SPSR.7); SPDR = sector_array_AD[28]; while (!SPSR.7); SPDR = sector_array_AD[29]; while (!SPSR.7); SPDR = sector_array_AD[30]; while (!SPSR.7); SPDR = sector_array_AD[31]; while (!SPSR.7); SPDR = sector_array_AD[32]; while (!SPSR.7); SPDR = sector_array_AD[33]; while (!SPSR.7); SPDR = sector_array_AD[34]; while (!SPSR.7); SPDR = sector_array_AD[35]; while (!SPSR.7); SPDR = sector_array_AD[36]; while (!SPSR.7); SPDR = sector_array_AD[37]; while (!SPSR.7); SPDR = sector_array_AD[38]; while (!SPSR.7); SPDR = sector_array_AD[39]; while (!SPSR.7); SPDR = sector_array_AD[40]; while (!SPSR.7); SPDR = sector_array_AD[41]; while (!SPSR.7); SPDR = sector_array_AD[42]; while (!SPSR.7); SPDR = sector_array_AD[43]; while (!SPSR.7); SPDR = sector_array_AD[44]; while (!SPSR.7); SPDR = sector_array_AD[45]; while (!SPSR.7); SPDR = sector_array_AD[46]; while (!SPSR.7); SPDR = sector_array_AD[47]; while (!SPSR.7); SPDR = sector_array_AD[48]; while (!SPSR.7); SPDR = sector_array_AD[49]; while (!SPSR.7); SPDR = sector_array_AD[50]; while (!SPSR.7); SPDR = sector_array_AD[51]; while (!SPSR.7); SPDR = sector_array_AD[52]; while (!SPSR.7); SPDR = sector_array_AD[53]; while (!SPSR.7); SPDR = sector_array_AD[54]; while (!SPSR.7); SPDR = sector_array_AD[55]; while (!SPSR.7); SPDR = sector_array_AD[56]; while (!SPSR.7); SPDR = sector_array_AD[57]; while (!SPSR.7); SPDR = sector_array_AD[58]; while (!SPSR.7); SPDR = sector_array_AD[59]; while (!SPSR.7); SPDR = sector_array_AD[60]; while (!SPSR.7); SPDR = sector_array_AD[61]; while (!SPSR.7); SPDR = sector_array_AD[62]; while (!SPSR.7); SPDR = sector_array_AD[63]; while (!SPSR.7); SPDR = sector_array_AD[64]; while (!SPSR.7); SPDR = sector_array_AD[65]; while (!SPSR.7); SPDR = sector_array_AD[66]; while (!SPSR.7); SPDR = sector_array_AD[67]; while (!SPSR.7); SPDR = sector_array_AD[68]; while (!SPSR.7); SPDR = sector_array_AD[69]; while (!SPSR.7); SPDR = sector_array_AD[70]; while (!SPSR.7); SPDR = sector_array_AD[71]; while (!SPSR.7); SPDR = sector_array_AD[72]; while (!SPSR.7); SPDR = sector_array_AD[73]; while (!SPSR.7); SPDR = sector_array_AD[74]; while (!SPSR.7); SPDR = sector_array_AD[75]; while (!SPSR.7); SPDR = sector_array_AD[76]; while (!SPSR.7); SPDR = sector_array_AD[77]; while (!SPSR.7); SPDR = sector_array_AD[78]; while (!SPSR.7); SPDR = sector_array_AD[79]; while (!SPSR.7); SPDR = sector_array_AD[80]; while (!SPSR.7); SPDR = sector_array_AD[81]; while (!SPSR.7); SPDR = sector_array_AD[82]; while (!SPSR.7); SPDR = sector_array_AD[83]; while (!SPSR.7); SPDR = sector_array_AD[84]; while (!SPSR.7); SPDR = sector_array_AD[85]; while (!SPSR.7); SPDR = sector_array_AD[86]; while (!SPSR.7); SPDR = sector_array_AD[87]; while (!SPSR.7); SPDR = sector_array_AD[88]; while (!SPSR.7); SPDR = sector_array_AD[89]; while (!SPSR.7); SPDR = sector_array_AD[90]; while (!SPSR.7); SPDR = sector_array_AD[91]; while (!SPSR.7); SPDR = sector_array_AD[92]; while (!SPSR.7); SPDR = sector_array_AD[93]; while (!SPSR.7); SPDR = sector_array_AD[94]; while (!SPSR.7); SPDR = sector_array_AD[95]; while (!SPSR.7); SPDR = sector_array_AD[96]; while (!SPSR.7); SPDR = sector_array_AD[97]; while (!SPSR.7); SPDR = sector_array_AD[98]; while (!SPSR.7); SPDR = sector_array_AD[99]; while (!SPSR.7); SPDR = sector_array_AD[100]; while (!SPSR.7); SPDR = sector_array_AD[101]; while (!SPSR.7); SPDR = sector_array_AD[102]; while (!SPSR.7); SPDR = sector_array_AD[103]; while (!SPSR.7); SPDR = sector_array_AD[104]; while (!SPSR.7); SPDR = sector_array_AD[105]; while (!SPSR.7); SPDR = sector_array_AD[106]; while (!SPSR.7); SPDR = sector_array_AD[107]; while (!SPSR.7); SPDR = sector_array_AD[108]; while (!SPSR.7); SPDR = sector_array_AD[109]; while (!SPSR.7); SPDR = sector_array_AD[110]; while (!SPSR.7); SPDR = sector_array_AD[111]; while (!SPSR.7); SPDR = sector_array_AD[112]; while (!SPSR.7); SPDR = sector_array_AD[113]; while (!SPSR.7); SPDR = sector_array_AD[114]; while (!SPSR.7); SPDR = sector_array_AD[115]; while (!SPSR.7); SPDR = sector_array_AD[116]; while (!SPSR.7); SPDR = sector_array_AD[117]; while (!SPSR.7); SPDR = sector_array_AD[118]; while (!SPSR.7); SPDR = sector_array_AD[119]; while (!SPSR.7); SPDR = sector_array_AD[120]; while (!SPSR.7); SPDR = sector_array_AD[121]; while (!SPSR.7); SPDR = sector_array_AD[122]; while (!SPSR.7); SPDR = sector_array_AD[123]; while (!SPSR.7); SPDR = sector_array_AD[124]; while (!SPSR.7); SPDR = sector_array_AD[125]; while (!SPSR.7); SPDR = sector_array_AD[126]; while (!SPSR.7); SPDR = sector_array_AD[127]; while (!SPSR.7); SPDR = sector_array_AD[128]; while (!SPSR.7); SPDR = sector_array_AD[129]; while (!SPSR.7); SPDR = sector_array_AD[130]; while (!SPSR.7); SPDR = sector_array_AD[131]; while (!SPSR.7); SPDR = sector_array_AD[132]; while (!SPSR.7); SPDR = sector_array_AD[133]; while (!SPSR.7); SPDR = sector_array_AD[134]; while (!SPSR.7); SPDR = sector_array_AD[135]; while (!SPSR.7); SPDR = sector_array_AD[136]; while (!SPSR.7); SPDR = sector_array_AD[137]; while (!SPSR.7); SPDR = sector_array_AD[138]; while (!SPSR.7); SPDR = sector_array_AD[139]; while (!SPSR.7); SPDR = sector_array_AD[140]; while (!SPSR.7); SPDR = sector_array_AD[141]; while (!SPSR.7); SPDR = sector_array_AD[142]; while (!SPSR.7); SPDR = sector_array_AD[143]; while (!SPSR.7); SPDR = sector_array_AD[144]; while (!SPSR.7); SPDR = sector_array_AD[145]; while (!SPSR.7); SPDR = sector_array_AD[146]; while (!SPSR.7); SPDR = sector_array_AD[147]; while (!SPSR.7); SPDR = sector_array_AD[148]; while (!SPSR.7); SPDR = sector_array_AD[149]; while (!SPSR.7); SPDR = sector_array_AD[150]; while (!SPSR.7); SPDR = sector_array_AD[151]; while (!SPSR.7); SPDR = sector_array_AD[152]; while (!SPSR.7); SPDR = sector_array_AD[153]; while (!SPSR.7); SPDR = sector_array_AD[154]; while (!SPSR.7); SPDR = sector_array_AD[155]; while (!SPSR.7); SPDR = sector_array_AD[156]; while (!SPSR.7); SPDR = sector_array_AD[157]; while (!SPSR.7); SPDR = sector_array_AD[158]; while (!SPSR.7); SPDR = sector_array_AD[159]; while (!SPSR.7); SPDR = sector_array_AD[160]; while (!SPSR.7); SPDR = sector_array_AD[161]; while (!SPSR.7); SPDR = sector_array_AD[162]; while (!SPSR.7); SPDR = sector_array_AD[163]; while (!SPSR.7); SPDR = sector_array_AD[164]; while (!SPSR.7); SPDR = sector_array_AD[165]; while (!SPSR.7); SPDR = sector_array_AD[166]; while (!SPSR.7); SPDR = sector_array_AD[167]; while (!SPSR.7); SPDR = sector_array_AD[168]; while (!SPSR.7); SPDR = sector_array_AD[169]; while (!SPSR.7); SPDR = sector_array_AD[170]; while (!SPSR.7); SPDR = sector_array_AD[171]; while (!SPSR.7); SPDR = sector_array_AD[172]; while (!SPSR.7); SPDR = sector_array_AD[173]; while (!SPSR.7); SPDR = sector_array_AD[174]; while (!SPSR.7); SPDR = sector_array_AD[175]; while (!SPSR.7); SPDR = sector_array_AD[176]; while (!SPSR.7); SPDR = sector_array_AD[177]; while (!SPSR.7); SPDR = sector_array_AD[178]; while (!SPSR.7); SPDR = sector_array_AD[179]; while (!SPSR.7); SPDR = sector_array_AD[180]; while (!SPSR.7); SPDR = sector_array_AD[181]; while (!SPSR.7); SPDR = sector_array_AD[182]; while (!SPSR.7); SPDR = sector_array_AD[183]; while (!SPSR.7); SPDR = sector_array_AD[184]; while (!SPSR.7); SPDR = sector_array_AD[185]; while (!SPSR.7); SPDR = sector_array_AD[186]; while (!SPSR.7); SPDR = sector_array_AD[187]; while (!SPSR.7); SPDR = sector_array_AD[188]; while (!SPSR.7); SPDR = sector_array_AD[189]; while (!SPSR.7); SPDR = sector_array_AD[190]; while (!SPSR.7); SPDR = sector_array_AD[191]; while (!SPSR.7); SPDR = sector_array_AD[192]; while (!SPSR.7); SPDR = sector_array_AD[193]; while (!SPSR.7); SPDR = sector_array_AD[194]; while (!SPSR.7); SPDR = sector_array_AD[195]; while (!SPSR.7); SPDR = sector_array_AD[196]; while (!SPSR.7); SPDR = sector_array_AD[197]; while (!SPSR.7); SPDR = sector_array_AD[198]; while (!SPSR.7); SPDR = sector_array_AD[199]; while (!SPSR.7); SPDR = sector_array_AD[200]; while (!SPSR.7); SPDR = sector_array_AD[201]; while (!SPSR.7); SPDR = sector_array_AD[202]; while (!SPSR.7); SPDR = sector_array_AD[203]; while (!SPSR.7); SPDR = sector_array_AD[204]; while (!SPSR.7); SPDR = sector_array_AD[205]; while (!SPSR.7); SPDR = sector_array_AD[206]; while (!SPSR.7); SPDR = sector_array_AD[207]; while (!SPSR.7); SPDR = sector_array_AD[208]; while (!SPSR.7); SPDR = sector_array_AD[209]; while (!SPSR.7); SPDR = sector_array_AD[210]; while (!SPSR.7); SPDR = sector_array_AD[211]; while (!SPSR.7); SPDR = sector_array_AD[212]; while (!SPSR.7); SPDR = sector_array_AD[213]; while (!SPSR.7); SPDR = sector_array_AD[214]; while (!SPSR.7); SPDR = sector_array_AD[215]; while (!SPSR.7); SPDR = sector_array_AD[216]; while (!SPSR.7); SPDR = sector_array_AD[217]; while (!SPSR.7); SPDR = sector_array_AD[218]; while (!SPSR.7); SPDR = sector_array_AD[219]; while (!SPSR.7); SPDR = sector_array_AD[220]; while (!SPSR.7); SPDR = sector_array_AD[221]; while (!SPSR.7); SPDR = sector_array_AD[222]; while (!SPSR.7); SPDR = sector_array_AD[223]; while (!SPSR.7); SPDR = sector_array_AD[224]; while (!SPSR.7); SPDR = sector_array_AD[225]; while (!SPSR.7); SPDR = sector_array_AD[226]; while (!SPSR.7); SPDR = sector_array_AD[227]; while (!SPSR.7); SPDR = sector_array_AD[228]; while (!SPSR.7); SPDR = sector_array_AD[229]; while (!SPSR.7); SPDR = sector_array_AD[230]; while (!SPSR.7); SPDR = sector_array_AD[231]; while (!SPSR.7); SPDR = sector_array_AD[232]; while (!SPSR.7); SPDR = sector_array_AD[233]; while (!SPSR.7); SPDR = sector_array_AD[234]; while (!SPSR.7); SPDR = sector_array_AD[235]; while (!SPSR.7); SPDR = sector_array_AD[236]; while (!SPSR.7); SPDR = sector_array_AD[237]; while (!SPSR.7); SPDR = sector_array_AD[238]; while (!SPSR.7); SPDR = sector_array_AD[239]; while (!SPSR.7); SPDR = sector_array_AD[240]; while (!SPSR.7); SPDR = sector_array_AD[241]; while (!SPSR.7); SPDR = sector_array_AD[242]; while (!SPSR.7); SPDR = sector_array_AD[243]; while (!SPSR.7); SPDR = sector_array_AD[244]; while (!SPSR.7); SPDR = sector_array_AD[245]; while (!SPSR.7); SPDR = sector_array_AD[246]; while (!SPSR.7); SPDR = sector_array_AD[247]; while (!SPSR.7); SPDR = sector_array_AD[248]; while (!SPSR.7); SPDR = sector_array_AD[249]; while (!SPSR.7); SPDR = sector_array_AD[250]; while (!SPSR.7); SPDR = sector_array_AD[251]; while (!SPSR.7); SPDR = sector_array_AD[252]; while (!SPSR.7); SPDR = sector_array_AD[253]; while (!SPSR.7); SPDR = sector_array_AD[254]; while (!SPSR.7); SPDR = sector_array_AD[255]; while (!SPSR.7); SPDR = sector_array_AD[256]; while (!SPSR.7); SPDR = sector_array_AD[257]; while (!SPSR.7); SPDR = sector_array_AD[258]; while (!SPSR.7); SPDR = sector_array_AD[259]; while (!SPSR.7); SPDR = sector_array_AD[260]; while (!SPSR.7); SPDR = sector_array_AD[261]; while (!SPSR.7); SPDR = sector_array_AD[262]; while (!SPSR.7); SPDR = sector_array_AD[263]; while (!SPSR.7); SPDR = sector_array_AD[264]; while (!SPSR.7); SPDR = sector_array_AD[265]; while (!SPSR.7); SPDR = sector_array_AD[266]; while (!SPSR.7); SPDR = sector_array_AD[267]; while (!SPSR.7); SPDR = sector_array_AD[268]; while (!SPSR.7); SPDR = sector_array_AD[269]; while (!SPSR.7); SPDR = sector_array_AD[270]; while (!SPSR.7); SPDR = sector_array_AD[271]; while (!SPSR.7); SPDR = sector_array_AD[272]; while (!SPSR.7); SPDR = sector_array_AD[273]; while (!SPSR.7); SPDR = sector_array_AD[274]; while (!SPSR.7); SPDR = sector_array_AD[275]; while (!SPSR.7); SPDR = sector_array_AD[276]; while (!SPSR.7); SPDR = sector_array_AD[277]; while (!SPSR.7); SPDR = sector_array_AD[278]; while (!SPSR.7); SPDR = sector_array_AD[279]; while (!SPSR.7); SPDR = sector_array_AD[280]; while (!SPSR.7); SPDR = sector_array_AD[281]; while (!SPSR.7); SPDR = sector_array_AD[282]; while (!SPSR.7); SPDR = sector_array_AD[283]; while (!SPSR.7); SPDR = sector_array_AD[284]; while (!SPSR.7); SPDR = sector_array_AD[285]; while (!SPSR.7); SPDR = sector_array_AD[286]; while (!SPSR.7); SPDR = sector_array_AD[287]; while (!SPSR.7); SPDR = sector_array_AD[288]; while (!SPSR.7); SPDR = sector_array_AD[289]; while (!SPSR.7); SPDR = sector_array_AD[290]; while (!SPSR.7); SPDR = sector_array_AD[291]; while (!SPSR.7); SPDR = sector_array_AD[292]; while (!SPSR.7); SPDR = sector_array_AD[293]; while (!SPSR.7); SPDR = sector_array_AD[294]; while (!SPSR.7); SPDR = sector_array_AD[295]; while (!SPSR.7); SPDR = sector_array_AD[296]; while (!SPSR.7); SPDR = sector_array_AD[297]; while (!SPSR.7); SPDR = sector_array_AD[298]; while (!SPSR.7); SPDR = sector_array_AD[299]; while (!SPSR.7); SPDR = sector_array_AD[300]; while (!SPSR.7); SPDR = sector_array_AD[301]; while (!SPSR.7); SPDR = sector_array_AD[302]; while (!SPSR.7); SPDR = sector_array_AD[303]; while (!SPSR.7); SPDR = sector_array_AD[304]; while (!SPSR.7); SPDR = sector_array_AD[305]; while (!SPSR.7); SPDR = sector_array_AD[306]; while (!SPSR.7); SPDR = sector_array_AD[307]; while (!SPSR.7); SPDR = sector_array_AD[308]; while (!SPSR.7); SPDR = sector_array_AD[309]; while (!SPSR.7); SPDR = sector_array_AD[310]; while (!SPSR.7); SPDR = sector_array_AD[311]; while (!SPSR.7); SPDR = sector_array_AD[312]; while (!SPSR.7); SPDR = sector_array_AD[313]; while (!SPSR.7); SPDR = sector_array_AD[314]; while (!SPSR.7); SPDR = sector_array_AD[315]; while (!SPSR.7); SPDR = sector_array_AD[316]; while (!SPSR.7); SPDR = sector_array_AD[317]; while (!SPSR.7); SPDR = sector_array_AD[318]; while (!SPSR.7); SPDR = sector_array_AD[319]; while (!SPSR.7); SPDR = sector_array_AD[320]; while (!SPSR.7); SPDR = sector_array_AD[321]; while (!SPSR.7); SPDR = sector_array_AD[322]; while (!SPSR.7); SPDR = sector_array_AD[323]; while (!SPSR.7); SPDR = sector_array_AD[324]; while (!SPSR.7); SPDR = sector_array_AD[325]; while (!SPSR.7); SPDR = sector_array_AD[326]; while (!SPSR.7); SPDR = sector_array_AD[327]; while (!SPSR.7); SPDR = sector_array_AD[328]; while (!SPSR.7); SPDR = sector_array_AD[329]; while (!SPSR.7); SPDR = sector_array_AD[330]; while (!SPSR.7); SPDR = sector_array_AD[331]; while (!SPSR.7); SPDR = sector_array_AD[332]; while (!SPSR.7); SPDR = sector_array_AD[333]; while (!SPSR.7); SPDR = sector_array_AD[334]; while (!SPSR.7); SPDR = sector_array_AD[335]; while (!SPSR.7); SPDR = sector_array_AD[336]; while (!SPSR.7); SPDR = sector_array_AD[337]; while (!SPSR.7); SPDR = sector_array_AD[338]; while (!SPSR.7); SPDR = sector_array_AD[339]; while (!SPSR.7); SPDR = sector_array_AD[340]; while (!SPSR.7); SPDR = sector_array_AD[341]; while (!SPSR.7); SPDR = sector_array_AD[342]; while (!SPSR.7); SPDR = sector_array_AD[343]; while (!SPSR.7); SPDR = sector_array_AD[344]; while (!SPSR.7); SPDR = sector_array_AD[345]; while (!SPSR.7); SPDR = sector_array_AD[346]; while (!SPSR.7); SPDR = sector_array_AD[347]; while (!SPSR.7); SPDR = sector_array_AD[348]; while (!SPSR.7); SPDR = sector_array_AD[349]; while (!SPSR.7); SPDR = sector_array_AD[350]; while (!SPSR.7); SPDR = sector_array_AD[351]; while (!SPSR.7); SPDR = sector_array_AD[352]; while (!SPSR.7); SPDR = sector_array_AD[353]; while (!SPSR.7); SPDR = sector_array_AD[354]; while (!SPSR.7); SPDR = sector_array_AD[355]; while (!SPSR.7); SPDR = sector_array_AD[356]; while (!SPSR.7); SPDR = sector_array_AD[357]; while (!SPSR.7); SPDR = sector_array_AD[358]; while (!SPSR.7); SPDR = sector_array_AD[359]; while (!SPSR.7); SPDR = sector_array_AD[360]; while (!SPSR.7); SPDR = sector_array_AD[361]; while (!SPSR.7); SPDR = sector_array_AD[362]; while (!SPSR.7); SPDR = sector_array_AD[363]; while (!SPSR.7); SPDR = sector_array_AD[364]; while (!SPSR.7); SPDR = sector_array_AD[365]; while (!SPSR.7); SPDR = sector_array_AD[366]; while (!SPSR.7); SPDR = sector_array_AD[367]; while (!SPSR.7); SPDR = sector_array_AD[368]; while (!SPSR.7); SPDR = sector_array_AD[369]; while (!SPSR.7); SPDR = sector_array_AD[370]; while (!SPSR.7); SPDR = sector_array_AD[371]; while (!SPSR.7); SPDR = sector_array_AD[372]; while (!SPSR.7); SPDR = sector_array_AD[373]; while (!SPSR.7); SPDR = sector_array_AD[374]; while (!SPSR.7); SPDR = sector_array_AD[375]; while (!SPSR.7); SPDR = sector_array_AD[376]; while (!SPSR.7); SPDR = sector_array_AD[377]; while (!SPSR.7); SPDR = sector_array_AD[378]; while (!SPSR.7); SPDR = sector_array_AD[379]; while (!SPSR.7); SPDR = sector_array_AD[380]; while (!SPSR.7); SPDR = sector_array_AD[381]; while (!SPSR.7); SPDR = sector_array_AD[382]; while (!SPSR.7); SPDR = sector_array_AD[383]; while (!SPSR.7); SPDR = sector_array_AD[384]; while (!SPSR.7); SPDR = sector_array_AD[385]; while (!SPSR.7); SPDR = sector_array_AD[386]; while (!SPSR.7); SPDR = sector_array_AD[387]; while (!SPSR.7); SPDR = sector_array_AD[388]; while (!SPSR.7); SPDR = sector_array_AD[389]; while (!SPSR.7); SPDR = sector_array_AD[390]; while (!SPSR.7); SPDR = sector_array_AD[391]; while (!SPSR.7); SPDR = sector_array_AD[392]; while (!SPSR.7); SPDR = sector_array_AD[393]; while (!SPSR.7); SPDR = sector_array_AD[394]; while (!SPSR.7); SPDR = sector_array_AD[395]; while (!SPSR.7); SPDR = sector_array_AD[396]; while (!SPSR.7); SPDR = sector_array_AD[397]; while (!SPSR.7); SPDR = sector_array_AD[398]; while (!SPSR.7); SPDR = sector_array_AD[399]; while (!SPSR.7); SPDR = sector_array_AD[400]; while (!SPSR.7); SPDR = sector_array_AD[401]; while (!SPSR.7); SPDR = sector_array_AD[402]; while (!SPSR.7); SPDR = sector_array_AD[403]; while (!SPSR.7); SPDR = sector_array_AD[404]; while (!SPSR.7); SPDR = sector_array_AD[405]; while (!SPSR.7); SPDR = sector_array_AD[406]; while (!SPSR.7); SPDR = sector_array_AD[407]; while (!SPSR.7); SPDR = sector_array_AD[408]; while (!SPSR.7); SPDR = sector_array_AD[409]; while (!SPSR.7); SPDR = sector_array_AD[410]; while (!SPSR.7); SPDR = sector_array_AD[411]; while (!SPSR.7); SPDR = sector_array_AD[412]; while (!SPSR.7); SPDR = sector_array_AD[413]; while (!SPSR.7); SPDR = sector_array_AD[414]; while (!SPSR.7); SPDR = sector_array_AD[415]; while (!SPSR.7); SPDR = sector_array_AD[416]; while (!SPSR.7); SPDR = sector_array_AD[417]; while (!SPSR.7); SPDR = sector_array_AD[418]; while (!SPSR.7); SPDR = sector_array_AD[419]; while (!SPSR.7); SPDR = sector_array_AD[420]; while (!SPSR.7); SPDR = sector_array_AD[421]; while (!SPSR.7); SPDR = sector_array_AD[422]; while (!SPSR.7); SPDR = sector_array_AD[423]; while (!SPSR.7); SPDR = sector_array_AD[424]; while (!SPSR.7); SPDR = sector_array_AD[425]; while (!SPSR.7); SPDR = sector_array_AD[426]; while (!SPSR.7); SPDR = sector_array_AD[427]; while (!SPSR.7); SPDR = sector_array_AD[428]; while (!SPSR.7); SPDR = sector_array_AD[429]; while (!SPSR.7); SPDR = sector_array_AD[430]; while (!SPSR.7); SPDR = sector_array_AD[431]; while (!SPSR.7); SPDR = sector_array_AD[432]; while (!SPSR.7); SPDR = sector_array_AD[433]; while (!SPSR.7); SPDR = sector_array_AD[434]; while (!SPSR.7); SPDR = sector_array_AD[435]; while (!SPSR.7); SPDR = sector_array_AD[436]; while (!SPSR.7); SPDR = sector_array_AD[437]; while (!SPSR.7); SPDR = sector_array_AD[438]; while (!SPSR.7); SPDR = sector_array_AD[439]; while (!SPSR.7); SPDR = sector_array_AD[440]; while (!SPSR.7); SPDR = sector_array_AD[441]; while (!SPSR.7); SPDR = sector_array_AD[442]; while (!SPSR.7); SPDR = sector_array_AD[443]; while (!SPSR.7); SPDR = sector_array_AD[444]; while (!SPSR.7); SPDR = sector_array_AD[445]; while (!SPSR.7); SPDR = sector_array_AD[446]; while (!SPSR.7); SPDR = sector_array_AD[447]; while (!SPSR.7); SPDR = sector_array_AD[448]; while (!SPSR.7); SPDR = sector_array_AD[449]; while (!SPSR.7); SPDR = sector_array_AD[450]; while (!SPSR.7); SPDR = sector_array_AD[451]; while (!SPSR.7); SPDR = sector_array_AD[452]; while (!SPSR.7); SPDR = sector_array_AD[453]; while (!SPSR.7); SPDR = sector_array_AD[454]; while (!SPSR.7); SPDR = sector_array_AD[455]; while (!SPSR.7); SPDR = sector_array_AD[456]; while (!SPSR.7); SPDR = sector_array_AD[457]; while (!SPSR.7); SPDR = sector_array_AD[458]; while (!SPSR.7); SPDR = sector_array_AD[459]; while (!SPSR.7); SPDR = sector_array_AD[460]; while (!SPSR.7); SPDR = sector_array_AD[461]; while (!SPSR.7); SPDR = sector_array_AD[462]; while (!SPSR.7); SPDR = sector_array_AD[463]; while (!SPSR.7); SPDR = sector_array_AD[464]; while (!SPSR.7); SPDR = sector_array_AD[465]; while (!SPSR.7); SPDR = sector_array_AD[466]; while (!SPSR.7); SPDR = sector_array_AD[467]; while (!SPSR.7); SPDR = sector_array_AD[468]; while (!SPSR.7); SPDR = sector_array_AD[469]; while (!SPSR.7); SPDR = sector_array_AD[470]; while (!SPSR.7); SPDR = sector_array_AD[471]; while (!SPSR.7); SPDR = sector_array_AD[472]; while (!SPSR.7); SPDR = sector_array_AD[473]; while (!SPSR.7); SPDR = sector_array_AD[474]; while (!SPSR.7); SPDR = sector_array_AD[475]; while (!SPSR.7); SPDR = sector_array_AD[476]; while (!SPSR.7); SPDR = sector_array_AD[477]; while (!SPSR.7); SPDR = sector_array_AD[478]; while (!SPSR.7); SPDR = sector_array_AD[479]; while (!SPSR.7); SPDR = sector_array_AD[480]; while (!SPSR.7); SPDR = sector_array_AD[481]; while (!SPSR.7); SPDR = sector_array_AD[482]; while (!SPSR.7); SPDR = sector_array_AD[483]; while (!SPSR.7); SPDR = sector_array_AD[484]; while (!SPSR.7); SPDR = sector_array_AD[485]; while (!SPSR.7); SPDR = sector_array_AD[486]; while (!SPSR.7); SPDR = sector_array_AD[487]; while (!SPSR.7); SPDR = sector_array_AD[488]; while (!SPSR.7); SPDR = sector_array_AD[489]; while (!SPSR.7); SPDR = sector_array_AD[490]; while (!SPSR.7); SPDR = sector_array_AD[491]; while (!SPSR.7); SPDR = sector_array_AD[492]; while (!SPSR.7); SPDR = sector_array_AD[493]; while (!SPSR.7); SPDR = sector_array_AD[494]; while (!SPSR.7); SPDR = sector_array_AD[495]; while (!SPSR.7); SPDR = sector_array_AD[496]; while (!SPSR.7); SPDR = sector_array_AD[497]; while (!SPSR.7); SPDR = sector_array_AD[498]; while (!SPSR.7); SPDR = sector_array_AD[499]; while (!SPSR.7); SPDR = sector_array_AD[500]; while (!SPSR.7); SPDR = sector_array_AD[501]; while (!SPSR.7); SPDR = sector_array_AD[502]; while (!SPSR.7); SPDR = sector_array_AD[503]; while (!SPSR.7); SPDR = sector_array_AD[504]; while (!SPSR.7); SPDR = sector_array_AD[505]; while (!SPSR.7); SPDR = sector_array_AD[506]; while (!SPSR.7); SPDR = sector_array_AD[507]; while (!SPSR.7); SPDR = sector_array_AD[508]; while (!SPSR.7); SPDR = sector_array_AD[509]; while (!SPSR.7); SPDR = sector_array_AD[510]; while (!SPSR.7); SPDR = sector_array_AD[511]; while (!SPSR.7); // Write end bytes SPDR = 0xFF; while (!SPSR.7); SPDR = 0xFF; while (!SPSR.7); while (tmp != 0xFF) begin SPDR = 0xFF; while(!SPSR.7); tmp = SPDR; end //Deselect SD Card PORTB.2 = 1; end