亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? fat16.lst

?? 實現了avr下對sd卡的讀寫,支持文件存取,刪除的功能
?? LST
?? 第 1 頁 / 共 2 頁
字號:
  47:FAT16.c       **** //-------------------------------------------------------------------------
  48:FAT16.c       **** uint8_t IsEqual(uint8_t *pa,uint8_t *pb,uint8_t size){	//內存比較
 281               	.LM19:
 282               	/* prologue: frame size=0 */
 283               	/* prologue end (size=0) */
 284 00b6 DC01      		movw r26,r24
 285 00b8 FB01      		movw r30,r22
 286               	.L23:
  49:FAT16.c       **** 	for(;size;size--)if(*pa++!=*pb++)return 0;
 288               	.LM20:
 289 00ba 4423      		tst r20
 290 00bc 49F0      		breq .L22
 291 00be 9191      		ld r25,Z+
 292 00c0 8D91      		ld r24,X+
 293 00c2 8917      		cp r24,r25
 294 00c4 19F0      		breq .L18
 295 00c6 80E0      		ldi r24,lo8(0)
 296 00c8 90E0      		ldi r25,hi8(0)
 297 00ca 0895      		ret
 298               	.L18:
 299 00cc 4150      		subi r20,lo8(-(-1))
 300 00ce F5CF      		rjmp .L23
 301               	.L22:
  50:FAT16.c       **** 	return 1;
 303               	.LM21:
 304 00d0 81E0      		ldi r24,lo8(1)
 305 00d2 90E0      		ldi r25,hi8(1)
  51:FAT16.c       **** }
 307               	.LM22:
 308 00d4 0895      		ret
 309               	/* epilogue: frame size=0 */
 310               	/* epilogue: noreturn */
 311               	/* epilogue end (size=0) */
 312               	/* function IsEqual size 16 (16) */
 314               	.Lscope5:
 318               	.global	EmptyBytes
 320               	EmptyBytes:
  52:FAT16.c       **** //-------------------------------------------------------------------------
  53:FAT16.c       **** void EmptyBytes(uint8_t *pd,uint16_t size){			//內存清空,因為單片機資源很緊張的,一個512的緩沖區要反
 322               	.LM23:
 323               	/* prologue: frame size=0 */
 324               	/* prologue end (size=0) */
 325 00d6 FC01      		movw r30,r24
 326               	.L31:
  54:FAT16.c       **** 	for(;size;size--)*pd++ =0;
 328               	.LM24:
 329 00d8 6115      		cp r22,__zero_reg__
 330 00da 7105      		cpc r23,__zero_reg__
 331 00dc 21F0      		breq .L30
 332 00de 1192      		st Z+,__zero_reg__
 333 00e0 6150      		subi r22,lo8(-(-1))
 334 00e2 7040      		sbci r23,hi8(-(-1))
 335 00e4 F9CF      		rjmp .L31
 336               	.L30:
 337 00e6 0895      		ret
 338               	/* epilogue: frame size=0 */
 339               	/* epilogue: noreturn */
 340               	/* epilogue end (size=0) */
 341               	/* function EmptyBytes size 9 (9) */
 343               	.Lscope6:
 345               	.global	ReadMBR
 347               	ReadMBR:
  55:FAT16.c       **** }
  56:FAT16.c       **** //-------------------------------------------------------------------------
  57:FAT16.c       **** uint8_t ReadMBR(void){									//讀取MBR數據結構
 349               	.LM25:
 350               	/* prologue: frame size=0 */
 351               	/* prologue end (size=0) */
  58:FAT16.c       **** 	uint8_t ok;
  59:FAT16.c       **** 	FAT_MBR * MBR=(FAT_MBR*)BUFFER;
  60:FAT16.c       **** 	ok=ReadBlock(MBR_Sector);//已經把值存到buffer里了
 353               	.LM26:
 354 00e8 60E0      		ldi r22,lo8(0)
 355 00ea 70E0      		ldi r23,hi8(0)
 356 00ec 80E0      		ldi r24,hlo8(0)
 357 00ee 90E0      		ldi r25,hhi8(0)
 358 00f0 0E94 0000 		call ReadBlock
  61:FAT16.c       **** 	if(ok==SD_FAIL)return SD_FAIL;
 360               	.LM27:
 361 00f4 8130      		cpi r24,lo8(1)
 362 00f6 39F0      		breq .L35
  62:FAT16.c       **** 	if(MBR->MBR_Signature!=0xAA55)return SD_FAIL;		//讀有效標志,55AA????(網上資料所給)
 364               	.LM28:
 365 00f8 8091 0000 		lds r24,BUFFER+510
 366 00fc 9091 0000 		lds r25,(BUFFER+510)+1
 367 0100 8555      		subi r24,lo8(-21931)
 368 0102 9A4A      		sbci r25,hi8(-21931)
 369 0104 19F0      		breq .L34
 370               	.L35:
 371 0106 81E0      		ldi r24,lo8(1)
 372 0108 90E0      		ldi r25,hi8(1)
 373 010a 0895      		ret
 374               	.L34:
  63:FAT16.c       **** 		
  64:FAT16.c       **** 	//獲取參數
  65:FAT16.c       **** 	PB_RelativeSector=MBR->MBR_pb[0].PB_RelativeSector;//讀邏輯地址與絕對地址的偏移
 376               	.LM29:
 377 010c 8091 0000 		lds r24,BUFFER+454
 378 0110 8093 0000 		sts PB_RelativeSector,r24
  66:FAT16.c       **** 	return SD_SUCC;
 380               	.LM30:
 381 0114 80E0      		ldi r24,lo8(0)
 382 0116 90E0      		ldi r25,hi8(0)
  67:FAT16.c       **** }
 384               	.LM31:
 385 0118 0895      		ret
 386               	/* epilogue: frame size=0 */
 387               	/* epilogue: noreturn */
 388               	/* epilogue end (size=0) */
 389               	/* function ReadMBR size 26 (26) */
 391               	.Lscope7:
 393               	.global	ReadBPB
 395               	ReadBPB:
  68:FAT16.c       **** //-------------------------------------------------------------------------
  69:FAT16.c       **** uint8_t ReadBPB(void){									//讀取BPB數據結構,共4字節
 397               	.LM32:
 398               	/* prologue: frame size=0 */
 399               	/* prologue end (size=0) */
  70:FAT16.c       **** 	uint8_t ok;
  71:FAT16.c       **** 	FAT_BPB * BPB=(FAT_BPB*)BUFFER;
  72:FAT16.c       **** 	ok=ReadFatBlock(FAT_Sector);
 401               	.LM33:
 402 011a 60E0      		ldi r22,lo8(0)
 403 011c 70E0      		ldi r23,hi8(0)
 404 011e 80E0      		ldi r24,hlo8(0)
 405 0120 90E0      		ldi r25,hhi8(0)
 406 0122 0E94 0000 		call ReadFatBlock
  73:FAT16.c       **** 	if(ok==SD_FAIL)return SD_FAIL;
 408               	.LM34:
 409 0126 8130      		cpi r24,lo8(1)
 410 0128 19F4      		brne .L37
 412               	.LM35:
 413 012a 81E0      		ldi r24,lo8(1)
 414 012c 90E0      		ldi r25,hi8(1)
 415 012e 0895      		ret
 416               	.L37:
  74:FAT16.c       **** 	
  75:FAT16.c       **** 	//獲取參數,從512的結構體中獲取信息
  76:FAT16.c       **** 	BPB_BytesPerSec = BPB->BPB_BytesPerSec;//每扇區的字節數,一般為512
 418               	.LM36:
 419 0130 8091 0000 		lds r24,BUFFER+11
 420 0134 9091 0000 		lds r25,(BUFFER+11)+1
 421 0138 9093 0000 		sts (BPB_BytesPerSec)+1,r25
 422 013c 8093 0000 		sts BPB_BytesPerSec,r24
  77:FAT16.c       **** 	BPB_SecPerClus = BPB->BPB_SecPerClus;//每簇扇區數,一般為8
 424               	.LM37:
 425 0140 8091 0000 		lds r24,BUFFER+13
 426 0144 8093 0000 		sts BPB_SecPerClus,r24
  78:FAT16.c       **** 	BPB_RsvdSecCnt = BPB->BPB_RsvdSecCnt;//保留扇區數,一般為2
 428               	.LM38:
 429 0148 8091 0000 		lds r24,BUFFER+14
 430 014c 9091 0000 		lds r25,(BUFFER+14)+1
 431 0150 9093 0000 		sts (BPB_RsvdSecCnt)+1,r25
 432 0154 8093 0000 		sts BPB_RsvdSecCnt,r24
  79:FAT16.c       **** 	BPB_NumFATs = BPB->BPB_NumFATs;//FAT 表數目,一般為2
 434               	.LM39:
 435 0158 8091 0000 		lds r24,BUFFER+16
 436 015c 8093 0000 		sts BPB_NumFATs,r24
  80:FAT16.c       **** 	BPB_RootEntCnt = BPB->BPB_RootEntCnt;//根目錄區的目錄項數,來計算根目錄的扇區數
 438               	.LM40:
 439 0160 8091 0000 		lds r24,BUFFER+17
 440 0164 9091 0000 		lds r25,(BUFFER+17)+1
 441 0168 9093 0000 		sts (BPB_RootEntCnt)+1,r25
 442 016c 8093 0000 		sts BPB_RootEntCnt,r24
  81:FAT16.c       **** 	BPB_TotSec16 = BPB->BPB_TotSec16;//總扇區數
 444               	.LM41:
 445 0170 8091 0000 		lds r24,BUFFER+19
 446 0174 9091 0000 		lds r25,(BUFFER+19)+1
 447 0178 9093 0000 		sts (BPB_TotSec16)+1,r25
 448 017c 8093 0000 		sts BPB_TotSec16,r24
  82:FAT16.c       **** 	BPB_FATSz16 = BPB->BPB_FATSz16;//FAT 表所占的扇區數, 以16 位表示,這里一般一個表242項,每項4B,這樣24
 450               	.LM42:
 451 0180 8091 0000 		lds r24,BUFFER+22
 452 0184 9091 0000 		lds r25,(BUFFER+22)+1
 453 0188 9093 0000 		sts (BPB_FATSz16)+1,r25
 454 018c 8093 0000 		sts BPB_FATSz16,r24
  83:FAT16.c       **** 	BPB_HiddSec = BPB->BPB_HiddSec;//隱藏扇區數,一般為0
 456               	.LM43:
 457 0190 8091 0000 		lds r24,BUFFER+28
 458 0194 9091 0000 		lds r25,(BUFFER+28)+1
 459 0198 A091 0000 		lds r26,(BUFFER+28)+2
 460 019c B091 0000 		lds r27,(BUFFER+28)+3
 461 01a0 8093 0000 		sts BPB_HiddSec,r24
 462 01a4 9093 0000 		sts (BPB_HiddSec)+1,r25
 463 01a8 A093 0000 		sts (BPB_HiddSec)+2,r26
 464 01ac B093 0000 		sts (BPB_HiddSec)+3,r27
  84:FAT16.c       **** 	return SD_SUCC;
 466               	.LM44:
 467 01b0 80E0      		ldi r24,lo8(0)
 468 01b2 90E0      		ldi r25,hi8(0)
  85:FAT16.c       **** }
 470               	.LM45:
 471 01b4 0895      		ret
 472               	/* epilogue: frame size=0 */
 473               	/* epilogue: noreturn */
 474               	/* epilogue end (size=0) */
 475               	/* function ReadBPB size 78 (78) */
 477               	.Lscope8:
 479               	.global	DirStartSec
 481               	DirStartSec:
  86:FAT16.c       **** //-------------------------------------------------------------------------
  87:FAT16.c       **** uint32_t DirStartSec(void){							//獲取根目錄開始扇區號
 483               	.LM46:
 484               	/* prologue: frame size=0 */
 485               	/* prologue end (size=0) */
  88:FAT16.c       **** 	return BPB_RsvdSecCnt+BPB_NumFATs*BPB_FATSz16;////因為dbr是邏輯第0扇區,所以其有2個扇區這么大,是操

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91片黄在线观看| 国产91精品入口| 亚洲欧美aⅴ...| 国产精品欧美精品| 日本一区二区三区高清不卡 | 色噜噜久久综合| 91在线精品一区二区三区| 99麻豆久久久国产精品免费 | 91女厕偷拍女厕偷拍高清| kk眼镜猥琐国模调教系列一区二区| 黑人巨大精品欧美黑白配亚洲| 精品亚洲成a人在线观看| 国产专区综合网| 国产成人午夜精品影院观看视频 | 久久精品人人做人人爽人人| 久久人人爽人人爽| 欧美国产精品劲爆| 亚洲免费毛片网站| 日韩和的一区二区| 国产一区二区三区黄视频| 盗摄精品av一区二区三区| 色综合久久久久久久久| 欧美在线不卡视频| 日韩一区二区中文字幕| 久久精品亚洲乱码伦伦中文| 18欧美亚洲精品| 日本欧美一区二区在线观看| 狠狠色丁香久久婷婷综| 色婷婷综合中文久久一本| 在线电影欧美成精品| 国产网站一区二区三区| 亚洲一区二区三区在线| 国产一区二区三区日韩| 色狠狠综合天天综合综合| 欧美高清精品3d| 欧美国产一区在线| 亚洲一区二区三区四区在线免费观看 | 国产91精品一区二区麻豆网站| av一本久道久久综合久久鬼色| 欧美放荡的少妇| 国产精品三级电影| 日本不卡在线视频| 91视频精品在这里| 亚洲精品一区二区三区99| 一区二区免费在线| 国产黑丝在线一区二区三区| 欧洲另类一二三四区| 久久免费电影网| 午夜精品在线看| 99国产精品99久久久久久| 日韩欧美一区二区免费| 一区二区三区在线影院| 国产suv精品一区二区883| 91精品国产综合久久国产大片| 亚洲天堂免费在线观看视频| 精品一区二区影视| 色综合欧美在线| 国产偷国产偷精品高清尤物| 美女性感视频久久| 欧美日韩国产另类一区| 亚洲精品视频在线看| av资源站一区| 国产婷婷精品av在线| 国产一区二区影院| 日韩三级免费观看| 日本成人在线网站| 91精品国产综合久久福利软件| 一区二区三区四区不卡视频| 99国产欧美另类久久久精品| 国产精品免费丝袜| 成人午夜在线视频| 亚洲国产成人私人影院tom| 国产美女在线精品| 欧美精品一区二区三| 免费在线观看一区二区三区| 欧美精品乱人伦久久久久久| 亚洲国产成人porn| 欧美日韩国产高清一区二区三区 | 欧美亚洲丝袜传媒另类| 一区二区三区在线免费播放| 91久久精品一区二区三区| 亚洲嫩草精品久久| 欧美亚洲日本国产| 亚洲一二三四区不卡| 欧美日韩一级片在线观看| 亚洲国产综合色| 91麻豆精品国产91久久久使用方法| 午夜精品爽啪视频| 欧美一区二区在线看| 久久se这里有精品| 国产午夜精品一区二区| 99久久精品国产一区二区三区 | 一二三区精品福利视频| 在线观看日韩电影| 日本在线不卡一区| 欧美精品一区二区三区蜜桃 | 久久精品夜色噜噜亚洲a∨| 国产成a人亚洲精品| 亚洲女女做受ⅹxx高潮| 欧美老女人在线| 久久机这里只有精品| 国产蜜臀97一区二区三区 | 狠狠色丁香婷婷综合| 国产欧美精品一区二区色综合朱莉| 国产自产高清不卡| 国产精品国产自产拍在线| 在线视频中文字幕一区二区| 免费在线视频一区| 国产精品丝袜久久久久久app| 色婷婷av一区二区| 全国精品久久少妇| 欧美韩国一区二区| 欧美日韩一区 二区 三区 久久精品| 蜜臀av亚洲一区中文字幕| 久久久五月婷婷| 色婷婷av一区二区三区gif| 蜜臀av一区二区| 亚洲日本在线视频观看| 91精品国产91久久久久久一区二区 | 欧美日免费三级在线| 激情另类小说区图片区视频区| 国产精品人妖ts系列视频| 精品视频999| 懂色av一区二区在线播放| 天使萌一区二区三区免费观看| 国产三级一区二区三区| 欧美日韩一区二区在线观看| 国产精品一线二线三线精华| 亚洲国产日韩在线一区模特| 久久精品一区四区| 日韩一区二区中文字幕| 91黄色激情网站| 国产成人精品免费看| 日本成人在线电影网| 一级特黄大欧美久久久| 国产免费成人在线视频| 精品欧美一区二区在线观看| 欧美三级电影精品| 91麻豆蜜桃一区二区三区| 国产成人精品三级| 九色porny丨国产精品| 亚洲成人第一页| 亚洲免费观看在线观看| 中文字幕av一区二区三区高| 精品国产91乱码一区二区三区 | 久久久久久影视| 欧美片在线播放| 日本韩国欧美在线| 成人激情免费网站| 国产一区二区三区在线观看免费| 手机精品视频在线观看| 亚洲自拍偷拍av| 亚洲一区二区成人在线观看| 亚洲另类春色校园小说| 日韩美女视频一区| 中文字幕亚洲综合久久菠萝蜜| 国产性色一区二区| 日本一区二区三区在线观看| 国产亚洲精品bt天堂精选| 精品国产一区二区三区不卡 | 日韩电影在线免费观看| 午夜免费久久看| 午夜视频一区二区| 天天综合网 天天综合色| 亚洲成人福利片| 三级亚洲高清视频| 日韩中文字幕区一区有砖一区 | 亚洲天堂精品在线观看| 一区二区中文视频| 亚洲人成电影网站色mp4| 日韩毛片高清在线播放| 国产精品久久久久久久浪潮网站| 国产亚洲成aⅴ人片在线观看| 国产欧美视频在线观看| 中文字幕第一区综合| 136国产福利精品导航| 日韩毛片在线免费观看| 亚洲韩国精品一区| 另类小说图片综合网| 黄网站免费久久| 大陆成人av片| 欧美亚洲国产一区二区三区| 欧美老肥妇做.爰bbww视频| 欧美一级理论性理论a| 久久久久久麻豆| 亚洲日本在线a| 日韩avvvv在线播放| 精品一区二区三区免费播放| 国产91精品欧美| 欧美三级电影在线观看| 精品入口麻豆88视频| 国产精品国产自产拍高清av | 精品一区二区三区不卡| 国产激情视频一区二区三区欧美 | 在线综合亚洲欧美在线视频 | 欧美肥妇毛茸茸| 久久婷婷色综合| 亚洲免费电影在线| 秋霞成人午夜伦在线观看| 国产成人日日夜夜|