hanhoc411

New Member

Download miễn phí Đề tài Đọc file nhạc và ảnh từ ổ cứng





Bìa i
Phiếu Chấm Bảo Vệ LVTN (giáo viên hướng dẫn)
Phiếu Chấm Bảo Vệ LVTN (giáo viên phản biện)
Nhiệm Vụ Luận Văn Tốt Nghiệp
Lời Cảm Ơn ii
Tóm Tắt Luận Văn iii
Mục Lục iv
Danh Mục Hình Vẽ ix
Danh Mục Bảng Biểu xi
Danh Sách Các Từ Viết Tắt xiii
CHƯƠNG 1 ARM7 LH79525 1
1.1 Tổng quan 1
1.2 Boot Controller 5
1.2.1 Nguyên tắc hoạt động 5
1.2.2 Các thanh ghi 7
1.3 Điều khiển bộ nhớ ngoài EMC 9
1.3.1 Giới thiệu chung về EMC 9
1.3.2 Nguyên tắc hoạt động 10
1.3.3 Bộ nhớ tĩnh 11
1.3.4 Chọn thiết bị bộ nhớ tĩnh 13
1.3.5 Bộ nhớ động 13
1.4 General purpose input/output (GPIO) 14
1.4.1 Cấu hình Port 15
1.4.2 Thanh ghi GPIO 18
1.5 Cổng nối tiếp đồng bộ SSP 22
1.5.1 Nguyên tắc hoạt động 22
1.5.2 Các thanh ghi 25
CHƯƠNG 2 CẤU TRÚC DỮ LIỆU Ổ ĐĨA CỨNG VÀ GIAO TIẾP IDE 28
2.1 Cấu trúc dữ liệu của ổ đĩa cứng 28
2.1.1 Track 28
2.1.2 Sector 28
2.1.3 Cluster 28
2.1.4 Cylinder 29
2.1.5 Phân vùng 29
2.2 Giới thiệu chuẩn giao tiếp IDE 30
2.3 Các chân data của IDE và chức năng của chúng 32
2.3.1 Các chân data của cáp IDE 32
2.3.2 Chức năng các chân tín hiệu 33
2.4 Các thanh ghi giao tiếp 35
2.4.1 Định địa chỉ device 35
2.4.2 Thanh ghi I/O 36
2.4.3 Thanh ghi Alternate status 36
2.4.4 Thanh ghi Command 36
2.4.5 Thanh ghi Cylinder high 37
2.4.6 Thanh ghi Cylinder low 37
2.4.7 Thanh ghi dữ liệu 37
2.4.8 Data port 38
2.4.9 Thanh ghi Device control 38
2.4.10 Thanh ghi Device/head 39
2.4.11 Thanh ghi lỗi 39
2.4.12 Thanh ghi Features 39
2.4.13 Thanh ghi đếm sector 40
2.4.14 Thanh ghi số sector 40
2.4.15 Thanh ghi trạng thái 40
2.5 Tập lệnh 41
2.5.1 Identify device 41
2.5.2 Read sector 47
2.5.3 Ghi sector 48
2.5.4 Check Power Mode 49
CHƯƠNG 3 CHUẨN FAT 32 51
3.1 Giới thiệu FAT 32 51
3.1.1 Định nghĩa FAT 51
3.1.2 Các loại FAT 51
3.1.3 Ưu nhược điểm của các loại FAT 52
3.2 Quản lý bộ nhớ trong thiết bị lưu trữ và quá trình Boot của PC 53
3.2.1 Quá trình khởi động của PC 53
3.2.2 Đơn vị lưu trữ dữ liệu trên các thiết bị có dung lượng lớn 53
3.3 Quá trình đầu tiên khi Boot ổ cứng để đọc các thông số 53
3.3.1 Master Boot Record 53
3.3.2 Entry Partition 54
3.4 Quá trình nhảy từ các Entry của Master Boot Record 55
3.4.1 Quá trình nhảy đến Volume ID 55
3.4.2 Quá trình nhảy đến Extent MBR 56
3.4.3 Quá trình nhảy tới Volume ID của Secondary Partition 56
3.5 Phân tích Volume ID (PBR) 57
3.6 Xác định bảng FAT trên Partition 59
3.7 Phân tích Root Directory và xác định File/Folder 59
3.7.1 Root Directory 59
3.7.2 Cách nhận dạng Long File Name và Short File Name 60
3.8 Phân tích bảng FAT và cách truy xuất File/Folder 63
3.8.1 Định nghĩa bảng FAT 63
3.8.2 Cấu trúc bảng FAT 64
CHƯƠNG 4 LCD TFT&TSC 66
4.1 Giới thiệu ILI9320 66
4.2 Những đặc trưng của ILI9320 66
4.3 Sơ đồ khối 68
4.4 Mô tả chân 69
4.5 Mô tả khối 69
4.5.1 Giao tiếp hệ thống MPU 69
4.5.2 Giao tiếp RGB và VSYNC 70
4.5.3 Bộ đếm địa chỉ (AC) 70
4.5.4 RAM đồ họa (GRAM) 71
4.5.5 Grayscale Voltage Generating Circuit 71
4.5.6 Timing Controller 71
4.5.7 Bộ tạo dao động (OSC) 71
4.5.8 Mạch điều khiển LCD 71
4.5.9 Mạch cấp nguồn điều khiển LCD 71
4.6 Giao tiếp hệ thống 72
4.6.1 Đặc tính của giao tiếp 72
4.6.2 Input Interfaces 73
4.6.3 Giao tiếp ngoại vi nối tiếp SPI 74
4.6.4 Giao tiếp VSYNC 76
4.6.5 Giao tiếp RGB 77
4.7 Mô tả thanh ghi 79
4.7.1 Truy cập các thanh ghi 79
4.7.2 Mô tả hướng dẫn 81
4.8 Màn hình cảm ứng 98
4.8.1 Giới thiệu 98
4.8.2 Nguyên lý ADC 99
4.8.3 Kiến trúc SAR 99
4.8.4 Nguyên lý màn hình cảm ứng 100
4.8.5 Điều kiện Sensing Touch và No Touch 102
4.8.6 Cách dùng SHARP ADC 103
4.8.7 Hook up and Programming 103
4.9 Cấu trúc BMP 107
4.9.1 Header BMP 108
4.9.2 Thông tin BMP 109
4.9.3 Color Palette 110
4.9.4 Dữ liệu BMP 111
CHƯƠNG 5 MP3 AUDIO DECODER VS1011e 113
5.1 Giới thiệu 113
5.1.1 Chức năng 113
5.2.1 Gói 115
5.2.2 Mô tả chân của LQFP-48 và BGA-49 116
5.3 Sơ đồ kết nối LQFP-48 117
5.4 Bus SPI 118
5.4.1 Tổng quát về SPI 118
5.4.2 Serial Protocol for Serial Data Interface (SDI) 119
5.4.3 Serial Protocol for Serial Command Interface (SCI) 120
5.4.4 Yêu cầu dữ liệu chân DREQ 122
5.4.5 SPI Timing Diagram 122
5.5 Mô tả chức năng 123
5.5.1 Tính năng chính 123
5.5.2 Các định dạng audio mà codec hỗ trợ 123
5.5.3 Data Flow of VS1011e 126
5.6 Hoạt động 128
5.6.1 Clocking 128
5.6.2 Hardware Reset 128
5.6.3 Software Reset 129
5.6.4 SPI Boot 129
5.6.5 Play/Decode 129
5.6.6 Feeding PCM data 130
5.6.7 SDI Tests 130
5.7 Các thanh ghi của VS1011e 130
5.7.1 Thanh ghi SCI 130
5.7.2 Thanh ghi dữ liệu nối tiếp 130
5.7.3 Thanh ghi DAC 130
5.7.4 Thanh ghi GPIO 131
5.8 Cấu trúc file MP3 131
5.8.1 Tổng quan về file MP3 131
5.8.2 File cấu trúc 131
CHƯƠNG 6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 137
6.1 Kết Luận 137
6.2 Hướng phát triển 137
Tài Liệu Tham Khảo 139
 
 



Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

ectory) được kiểm soát bởi số Cluster.
Hai thông số cần quan tâm đó là địa chỉ bắt đầu của bảng FAT và địa chỉ bắt đầu của Cluster đã được tính ở slide trước.
Công thức tính vị trí của 1 Cluster bất kỳ:
LBA of Address = LBA Begin of Cluster + (No. of Cluster - 2) * Sectors Per Cluster.
Lưu ý: Từ Root Directory trở đi, quá trình quản lý vùng nhớ được tính bằng số Cluster chứ không quản lý bằng Sector.
Bảng 3.7 Vị trí bảng FAT trên Partion
3.7 Phân tích Root Directory và xác định File/Folder
3.7.1 Root Directory
Mỗi Partition chứa PBR (Volume ID), bảng FAT, Root Directory, Folder và File. Tất cả các File và Folder (bao gồm cả Root Directory) đều được hệ thống quản lý bằng số Cluster. Hai thông tin quan trọng khi truy xuất File/Folder đó là vị trí bắt đầu của File/Folder và vị trí các Cluster chứa File/Folder. Tên của Root Directory chính là tên của Partition, Root Directory quản lý tên, chiều dài và vị trí bắt đầu của File/Folder. Tuy nhiên Root Directory còn cung cấp một số thông tin như thuộc tính, thời gian ghi, thời gian hiệu chỉnh File/Folder. Dựa vào địa chỉ bắt đầu của File/Folder trên Root Directory chúng ta sẽ truy xuất chúng từ bảng FAT. Vậy, để truy xuất File/Foler chúng ta phải sử dụng Root Directory và FAT Table.
Root Directory quản lý các File/Folder thông qua các Entry (mỗi entry có chiều dài 32 byte). Có các loại Entry sau:
-Normal Record with Short filename – Attrib is normal.
-Long filename text – Attrib has all four type bits set.
-Unused – First byte is 0xE5.
-End of directory – First byte is zero.
Trong Root Directory, thông tin mỗi Short filename được chứa trong 1 Entry. Đối với Long name text thì số lượng Entry này sẽ thay đổi tùy theo chiều dài tên. Unused Entries có Byte đầu tiên là 0xE5 để báo hệ thống biết File/Folder đã bị xóa, vì vậy vùng nhớ đó có quyền sử dụng cho các File/Folder khác.
Kết luận: không truy xuất các Entry bắt đầu bằng 0x00 hay 0xE5.
3.7.2 Cách nhận dạng Long File Name và Short File Name
Trong Root Directory chúng ta chỉ quan tâm đến các Entry có chứa thông tin (Long File Name và Short File Name).
- Nếu Byte đầu tiên của Entry là 0xE5 (Unused) thì Entry này đã bị xóa (không chứa thông tin).
- Nếu Byte đầu tiên của Entry là 0x00 (End of Directory) thì từ Entry đó xuống dưới hết thông tin (kết thúc Root Directory).
Việc phân biệt Entry của LFN và SFN được dựa vào byte thuộc tính Attrib có địa chỉ offset 0x0B. Nếu Attrib là 0x0F thì đây là entry của LFN, các entry kế tiếp chứa tên của LFN. Nếu Attrib khác 0x0F thì đây là entry của SFN.
Nếu Entry là Short File Name thì nội dung của Entry sẽ được mô tả ở slide kế tiếp.
Kết luận: để xác định số lượng File và Folder trong Partition chúng ta phải đọc và phân tích toàn bộ Root Directory.
Normal Record with Short filename: Mỗi File/Folder có tên ngắn (nhỏ hơn 11Byte bao gồm tên mở rộng) được quản lý trong 1 Entry, Entry này được mô tả như sau:
Bảng 3.8 Kích thước chi tiết entry của short file name
Field
Offset
Size
Short Filename
0x00
11 Bytes
Attrib Byte
0x0B
1 Byte
First Cluster High
0x14
2 Byes
First Cluster Low
0x1A
2 Bytes
File Size
0x1C
4 Bytes
Bảng 3.9 Chức năng của bit Attrib
Attrib Bit
Function
LFN
Comment
0(LSB)
Read Only
1
Not allow writing
1
Hidden
1
Not show in dir listing
2
System
1
File is operating system
3
Volume ID
1
File is Volume ID
4
Directory
X
Is a subdirectory
5
Archive
x
Change sine last backup
Short Filename: Có chiều dài 11 Byte, mỗi byte chứa 1 ký tự của tên (ASCII) theo định dạng 8.3 (8 ký tự ASCII của tên + 3 ký tự mở rộng), nếu tên File/Folder ngắn hơn 8 ký tự thì vùng còn trống sẽ được chèn ký tự space. Byte đầu tiên phải có giá trị khác 0x00 và 0xE5.
Attrib Byte: Cung cấp các thông tin về File/Folder như: Read only, Hidden, System File, Directorty…
First Cluster: Cung cấp địa chỉ bắt đầu của File/Folder (4 Byte).
File Size: Chiều dài 1 File tối đa 232 = 4GB.
Long filename text: Tương tự như Short Filename, nhưng sẽ thêm vào một vài entries trước entries thông thường (Entry thông thường là entry có chứa địa chỉ đầu tiên và dung lượng của File/Folder đó) để quản lý tên File/Folder (tên lớn hơn 13 ký tự bao gồm tên mở rộng). Vì vậy vấn đề truy xuất File/Folder có tên dài chỉ nằm ở vấn đề truy xuất tên File/Folder, sau khi truy xuất tên File/Folder thì công việc còn lại giống như truy xuất File/Folder có tên ngắn.
Tên File/Folder có chiều dài tối đa 255 ký tự ASCII, mỗi entry chứa 13 ký tự và số entry sử dụng luôn là số nguyên vì vậy nếu entry chứa các ký tự cuối cùng (entry đầu tiên) có số ký tự nhỏ hơn 13 thì sẽ được thêm vào các byte 0x00 0x00 (UTF) hay 0xFF 0xFF.
- Quá trình đọc Entry của File/Folder có tên dài (LFN) hoàn toàn tương tự quá trình đọc File/Folder có tên ngắn, nhưng có sự thay đổi trong một vài trường và được mô tả như hình bên.
- Entry đầu tiên của LNF chứa tên mở rộng (đối với File) và một vài ký tự cuối cùng của tên File/Folder nên được gọi là entry cuối cùng của LFN. Vùng còn trống trong entry này sẽ được thêm vào 0xFF 0xFF.
- Byte đầu tiên của các Entry (Sequence Number) có chiều dài 7 bit và bit thứ 7 để báo cho chương trình biết đây là entry cuối cùng của LFN (nằm đầu tiên).
Bảng 3.10 Kích thước chi tiết entry của long file name
Offset
Length
Description
0x00
1 Byte
Sequence Number
0x01
10 Byte
Name Characters (5 UTF)
0x0B
1 Byte
Attrib (Always 0x0F)
0x0C
1 Byte
Reserved (Always 0x00)
0x0D
1 Byte
Checksum
0x0E
12 Byte
Name Characters (6 UTF)
0x1A
2 Byte
First Cluster (Always 0x00)
0x1C
4 Byte
Name Character (2 UTF)
Sequence Number: Đối với Short File Name thì đây là Byte chứa ký tự đầu tiên của tên File. Nhưng đối với LFN thì Byte này sẽ cho biết có bao nhiêu Entry chứa tên LFN tiếp theo. Giá trị offset của byte này là 0x40, vì vậy để xác định số lượng Entry chứa tên LFN ta lấy (Sequence Number - 0x40). Entry tiếp theo, Sequence Number sẽ có giá trị (Sequence Number - 0x40 - 1) và giá trị của byte này ở các Entry tiếp theo sẽ giảm đi 1 cho đến khi bằng 0x01 thì đây là Entry cuối cùng của LFN. Entry tiếp theo sẽ chứa tên Short File Name (8.3 ; 8 ký tự đầu tiên được viết hoa và đuôi mở rộng) của File/Folder đó và cho biết dung lượng và Cluster đầu tiên của File/Folder.
Ví dụ: File có tên dài “File with very long filename.txt” thì sẽ được lưu trong các Entry như sau:
Sequence No.
Entry Data
0x43
“me.txt”
0x02
“y long filena”
0x01
“File with ver”
???
Normal 8.3 entry
Attrib: Luôn luôn là 0x0F trong LFN.
Name Character: Gồm 13 ký tự UTF (26 byte) được phân bố ở 3 vị trí offset trong entry LFN.
First Cluster: Luôn luôn là 0x00, byte này chỉ có giá trị trong entry Short File Name.
3.8 Phân tích bảng FAT và cách truy xuất File/Folder
3.8.1 Định nghĩa bảng FAT
Bảng FAT là bản đồ địa chỉ của Partition. Nhưng thay vì quản lý đơn vị Byte/Sector của Partition thì ở đây chúng quản lý số Cluster của Partition. Nhiệm vụ của bảng FAT cho hệ thống biết File/Folder nằm trên những Cluster nào của Partition. Mỗi một vị trí trên bảng FAT (12/16/32 bit) được gọi là đơn vị bảng FAT, mỗi đơn vị ở vị trí tương ứng (từ 0 trở đi) biểu diễn cho 1 Cluster trên Partition.
Sự khác nhau cơ bản giữa FAT12/16/32 là đơn vị bảng FAT. Trong FAT12, để biểu diễn cho 1 Cluster người ta sử dụng 12 bit. Vì vậy việc đọc bảng FAT trở nên gặp khó khăn vì 12 bit không phải là số nguyên của 1 byte (8 bit) do phải hiệu chỉnh liên tục và FAT16 đã khắc phục vấn đề này, ...
 

Các chủ đề có liên quan khác

Top