Đồ án Máy nghe nhạc MP3 (Phần 1)
Bạn đang xem 20 trang mẫu của tài liệu "Đồ án Máy nghe nhạc MP3 (Phần 1)", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
do_an_may_nghe_nhac_mp3_phan_1.pdf
Nội dung text: Đồ án Máy nghe nhạc MP3 (Phần 1)
- BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA ĐIỆN - ĐIỆN TỬ ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ - TRUYỀN THÔNG MÁY NGHE NHẠC MP3 GVHD: ThS. NGUYỄN TRƯỜNG DUY SVTH: LÊ VĂN SĨ MSSV: 11141172 SVTH: NGUYỄN THÀNH NAM MSSV: 11141138 S K L 0 0 4 2 0 5 Tp. Hồ Chí Minh, tháng 1/2016
- TRƢỜNG ĐH. SƢ PHẠM KỸ THUẬT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TP. HỒ CHÍ MINH ĐỘC LẬP - TỰ DO - HẠNH PHÚC KHOA ĐIỆN-ĐIỆN TỬ Tp. HCM, ngày 05 tháng 10 năm 2015 NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: Lê Văn Sĩ MSSV: 11141172 Nguyễn Thành Nam MSSV: 11141138 Chuyên ngành: Kỹ thuật Điện - Điện tử Mã ngành: 01 Hệ đào tạo: Đại học chính quy Mã hệ: 1 Khóa: 2011 Lớp: 11141DT1B 11141DT2B I. TÊN ĐỀ TÀI: MÁY NGHE NHẠC MP3 II. NHIỆM VỤ 1. Các số liệu ban đầu: Mục đích của đề tài: Tìm hiểu và ứng dụng chip Vi điều khiển STM32F103VET6 vào máy nghe nhạc. Đồ án tốt nghiệp đƣợc thực hiện tại: Bộ môn Điện Tử Công Nghiệp, Khoa Điện - Điện Tử, Trƣờng Đại Học Sƣ Phạm Kỹ Thuật Thành Phố Hồ Chí Minh. 2. Nội dung thực hiện: Thiết kế “máy nghe nhạc Mp3” sử dụng vi điều khiển ARM STM32F103VET6 giao tiếp với: - SD-Card thông qua chuẩn SPI. - USB thông qua chuẩn SPI với IC CH376T - VS1003 thông qua chuẩn SPI. - Màn hình TFT 320x240. Qua chuẩn truyền dữ liệu song song(GLCD), SPI(ADS7843). III. NGÀY GIAO NHIỆM VỤ: 05/10/2015 IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 22/01/2016 V. HỌ VÀ TÊN CÁN BỘ HƢỚNG DẪN: Ths. Nguyễn Trƣờng Duy CÁN BỘ HƢỚNG DẪN BM. ĐIỆN TỬ CÔNG NGHIỆP i
- TRƢỜNG ĐẠI HỌC SPKT TPHCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Khoa Điện - Điện Tử Độc lập - Tự do - Hạnh phúc Bộ Môn Điện Tử Công Nghiệp Tp. Hồ Chí Minh, ngày 05 tháng 10 năm 2015 LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên 1: Lê Văn Sĩ Lớp:11141DT1A MSSV:11141172 Họ tên sinh viên 2: Nguyễn Thành Nam Lớp:11141DT2B MSSV:11141138 Tên đề tài: MÁY NGHE NHẠC MP3 Xác nhận Tuần/ngày Nội dung GVHD GV HƢỚNG DẪN (Ký và ghi rõ họ và tên) ii
- LỜI MỞ ĐẦU Thế giới ngày nay với khoa học kĩ thuật phát triển mạnh mẽ cuộc sống con ngƣời ngày càng đƣợc phát triển tốt hơn. Khoa học kỹ thuật đem lại nhiều tiện ích thiết thực hơn cho cuộc sống con ngƣời. Góp phần không thể thiếu để mang lại những thành tựu to lớn là sự phát triển không ngừng của Vi xử lý. Kỹ thuật Vi xử lý đã mang đến những thay đổi to lớn trong khoa học và công nghệ cũng nhƣ trong nhu cầu đời sống hàng ngày của con ngƣời. Nhờ sự phát triển đó, các thiết bị máy móc ngày càng trở nên thông minh hơn, các công việc đƣợc thực hiện hiệu quả hơn, đó cũng là nhờ kỹ thuật Vi xử lý hay các bộ Vi điều khiển . Kỹ thuật Vi xử lý, Vi điều khiển là kỹ thuật của tƣơng lai, là chìa khóa đi vào công nghệ hiện đại. Đối với sinh viên chuyên ngành điện tử, đây là một lĩnh vực đầy hứa hẹn mở ra nhiều triển vọng. Việt Nam là một nƣớc đang phát triển và trong giai đoạn “Công nghiệp hóa, hiện đại hóa” nhƣ vậy nhu cầu về khoa học kỹ thuật để đáp ứng cho giai đoạn này là rất cao. Ứng dụng cho các hệ thống Vi điều khiển hiện nay ngày càng trở nên phức tạp, không phải đơn giản chỉ là điều khiển một chốt đèn giao thông định thời, đếm số ngƣời ra vào cửa, điều khiển động cơ ON-OFF, hiển thị một câu thông báo trên LCD. Xu thế tất yếu, các nhân điều khiển cần có cấu hình mạnh hơn, đáp ứng thời gian thực tốt hơn các nhân điều khiển 8bit đang dùng. Chính vì thế mà Vi xử lý mang tên ARM ra đời. Cấu trúc ARM (viết tắt từ tên gốc là Acorn RISC Machine) là một loại cấu trúc Vi xử lý đƣợc sử dụng rộng rãi trong các thiết kế nhúng. Do có đặc điểm tiết kiệm năng lƣợng, tốc độ xử lý nhanh, độ chính xác và sự mềm dẻo cao. Để góp phần tạo nên nền tảng ban đầu vững chắc cho việc học tập, tìm hiểu kỹ thuật vi xử lý, vi điều khiển và quen với lập trình bằng ngôn ngữ cấp cao, ngƣời thực hiện đề tài đã tập trung nghiên cứu đề tài: “MÁY NGHE NHẠC MP3” để ứng dụng Vi xử lý ARM vào thực tế. Những kiến thức, năng lực đạt đƣợc trong quá trình học tập ở trƣờng sẽ đƣợc đánh giá qua đợt bảo vệ đồ án cuối khóa. Vì vậy ngƣời thực hiện đề tài cố iii
- gắng tận dụng những kiến thức đã học ở trƣờng cùng với sự tìm tòi, nghiên cứu cùng với sự hƣớng dẫn tận tình của Giáo viên hƣớng dẫn cùng Thầy/Cô thuộc Khoa Điện-Điện Tử để có thể hoàn thành tốt đồ án này. Mặc dù ngƣời thực hiện đề tài đã cố gắng hoàn thành nhiệm vụ đề tài đặt ra và đúng thời hạn nhƣng chắc chắn sẽ không tránh khỏi những thiếu sót, mong quý Thầy/Cô và các bạn sinh viên thông cảm. Ngƣời thực hiện đề tài mong nhận đƣợc những ý kiến đóng góp của quý Thầy/Cô và các bạn sinh viên. Xin chân thành cảm ơn! Ngƣời thực hiện đề tài Lê Văn Sĩ Nguyễn Thành Nam iv
- LỜI CAM ĐOAN Chúng tôi – Lê Văn Sĩ và Nguyễn Thành Nam cam đoan ĐATN là công trình nghiên cứu của bản thân chúng tôi dƣới sự hƣớng dẫn của Ths.Nguyễn Trƣờng Duy. Các kết quả công bố trong ĐATN là trung thực và không sao chép từ bất kỳ công trình nào khác. Ngƣời thực hiện đề tài Lê Văn Sĩ Nguyễn Thành Nam v
- LỜI CẢM ƠN Ngƣời thực hiện đề tài xin đƣợc gửi lời cảm ơn chân thành đến quý Thầy Cô trong khoa Điện – Điện Tử, và nhất là quý Thầy Cô thuộc bộ môn Điện Tử Công Nghiệp đã giảng dạy và truyền đạt kiến thức chuyên ngành cho ngƣời thực hiện đồ án trong thời gian vừa qua. Đặc biệt ngƣời thực hiện xin gửi lời cảm ơn sâu sắc tới thầy ThS. Nguyễn Trƣờng Duy vì sự tận tình hƣớng dẫn cũng nhƣ đã tạo những điều kiện thuận lợi nhất cho ngƣời thực hiện đồ án để có thể thực hiện và hoàn thành tốt đề tài này. Ngƣời thực hiện đồ án cũng không quên cảm ơn các bạn trong lớp đã trao đổi, góp ý để ngƣời thực hiện hoàn thành đề tài này một cách tốt đẹp và đúng thời gian. Mặc dù đã có nhiều cố gắng và nỗ lực thực hiện, nhƣng do kiến thức cũng nhƣ khả năng bản thân còn nhiều hạn chế nên trong quá trình thực hiện đề tài không thể tránh khỏi những sai phạm, thiếu sót Nhóm thực hiện đề tài kính mong nhận đƣợc sự thông cảm và tận tình đóng góp ý kiến của quý thầy cô và các bạn. Một lần nữa nhóm xin cảm ơn tất cả mọi ngƣời! Ngƣời thực hiện đề tài Lê Văn Sĩ Nguyễn Thành Nam vi
- MỤC LỤC NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP i LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP ii LỜI MỞ ĐẦU iii LỜI CAM ĐOAN v LỜI CẢM ƠN vi MỤC LỤC vii DANH MỤC HÌNH x DANH MỤC BẢNG xii Chƣơng 1 DẪN NHẬP 1 1.1 ĐẶT VẤN ĐỀ 1 1.2 LÝ DO CHỌN ĐỀ TÀI 1 1.3 ĐỐI TƢỢNG NGHIÊN CỨU 2 1.4 GIỚI HẠN ĐỀ TÀI 2 1.5 BỐ CỤC CỦA ĐỀ TÀI 2 1.6 Ý NGHĨA THỰC TIỄN 3 Chƣơng 2 CƠ SỞ LÝ THUYẾT 4 2.1 ĐỊNH DẠNG MP3 4 2.1.1 Giới thiệu 4 2.1.2 Cấu trúc dữ liệu mp3 4 2.2 GIỚI THIỆU VỀ VI ĐIỀU KHIỂN ARM 7 2.2.1 Tổng quan về vi điều khiển ARM 8 2.2.1.1 Lịch sử phát triển 8 2.2.1.3 ARM Cortex 9 2.2.1.4 ARM Cortex-M3 10 2.2.1.4 Truy xuất dữ liệu không xếp hàng (unaligned data accesses) . 11 2.2.1.5 Tập lệnh Thumb-2 12 2.2.1.6 Cấu trúc đƣờng ống 3 tầng 13 2.2.2 Dòng vi điều khiển ARM STM32F103xx 14 vii
- 2.2.2.1 Kiến trúc của ARM STM32F103xx 15 2.2.2.3 Giao tiếp ngoại vi nối tiếp (SPI) 16 2.3 IC GIẢI MÃ ÂM THANH VS1003B 17 2.3.1 Tổng quan 17 2.3.1.1 Miêu tả 17 2.3.1.2 Đặc trƣng 18 2.3.2 Sơ đồ khối và chức năng từng khối của chip VS1003 19 2.3.3 Khối xử lý trung tâm VSDSP 21 2.4 SD CARD 23 2.4.1 Sơ lƣợt về SD Card 23 2.4.2 Cấu trúc SD Card 25 2.4.3 Cấu trúc lƣu trữ file của SD Card 27 2.4.3.1 Cấu trúc file chung của một SD Card 27 2.4.3.2 Cấu trúc file của mỗi phân vùng 28 2.5 UFD – USB Flash Disk 33 2.5.1 Giới thiệu UFD 33 2.5.2 Cấu tạo 34 2.5.2.1 Đầu Cắm USB 35 2.5.2.2 Ic giao tiếp 36 2.5.2.3 Chip nhớ ( Dạng EPPROM) 36 2.5.2.4 Thạch anh 12 MHz 36 2.5.3 Sơ lƣợc chuẩn giao tiếp USB 37 2.6 Giao tiếp ngoại vi nối tiếp (SPI) 39 Chƣơng 3 THIẾT KẾ VÀ THI CÔNG 42 3.1 Sơ đồ khối hệ thống 42 3.2 SƠ ĐỒ NGUYÊN LÝ CÁC KHỐI 44 3.2.1 Nguyên lý toàn bộ hệ thống 45 3.2.1 Nguyên lý các khối nguồn 46 3.2.2 Nguyên lý khối lọc nguồn 47 3.2.3 Nguyên lý khối trung tâm 48 3.2.4 Nguyên lý khối hiển thị 50 3.2.5 Nguyên lý khối SD CARD 52 3.2.5Nguyên lý khối USB 53 viii
- 3.2.6 Nguyên lý khối giải mã âm thanh 56 3.2.7 Nguyên lý khối khuếch đại công suất 60 3.2.8 Sơ đồ mạch in 62 3.3 THIẾT KẾ PHẦN PHỀM 64 3.3.1 Giới thiệu về ngôn ngữ C và phần mềm KeilC 5 cho ARM 64 3.3.2 Thiết kế giao diện hiển thị và điều khiển 67 3.3.3 Lƣu đồ giải thuật 68 Chƣơng 4 KẾT QUẢ ĐẠT ĐƢỢC 73 4.1 KẾT QUẢ THI CÔNG PHẦN CỨNG 73 4.2 KẾT QUẢ THI CÔNG PHẦN MỀM 75 Chƣơng 5 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN 77 5.1 ƢU ĐIỂM VÀ KHUYẾT ĐIỂM 77 5.1.1 Ƣu điểm 77 5.1.2 Khuyết điểm 77 5.2 HƢỚNG PHÁT TRIỂN 77 PHỤ LỤC 79 TÀI LIỆU THAM KHẢO 80 ix
- DANH MỤC HÌNH Hình 2. 1 Một số ứng dụng của vi điều khiển ARM 7 Hình 2. 2 Sơ đồ khối của ARM Cortex-M3 11 Hình 2. 3 Truy xuất dữ liệu không xếp hàng của ARM Cortex-M3 so với thế hệ trƣớc 12 Hình 2. 4 So sánh hiệu năng và mức độ tổn hao bộ nhớ của 3 tập lệnh ARM, Thumb-2 và Thumb 13 Hình 2. 5 Cấu trúc đƣờng ống 3 tầng của ARM Cortex-M3 14 Hình 2. 6 Mô tả chân và hình ảnh thực tế của STM32F103VET6 15 Hình 2. 7 Kiến trúc của ARM STM32F103xx 15 Hình 2. 8 Khối SPI 17 Hình 2. 9 Ảnh thực tế VS1003B 17 Hình 2. 10 Sơ đồ khối VS1003 19 Hình 2. 11 Sơ đồ chân VS1003 20 Hình 2. 12 Các loại SD Card 24 Hình 2. 13 Cấu trúc SD Card 25 Hình 2. 14 Cấu trúc chung của mỗi phân vùng 29 Hình 2. 15 Hình ảnh thực tế 34 Hình 2. 16 Cấu tạo USB 34 Hình 2. 17 Đầu cắm USB 35 Hình 2. 18 Đầu cắm thực tế 35 Hình 2. 19 Chip nhớ ( Dạng EPPROM) 36 Hình 2. 20 Các dạng thạch anh 12 MHz trên thi trƣờng 37 Hình 2. 21 Hai loại đầu kết nối của USB 38 Hình 2. 22 Khối SPI 39 Hình 2. 23 Giao thức Master – Slave trong giao tiếp SPI 40 Hình 2. 24 Ghép nối một thiết bị 40 Hình 2. 25 Ghép nối nhiều thiết bị 41 Hình 3. 1 Sơ đồ khối hệ thống 42 Hình 3. 2 Sơ đồ nguyên lý toàn bộ hệ thống 45 x
- Hình 3. 3 Sơ đồ nguyên lý các khối nguồn 5V, 3V3, 2V8 và 2V5 cung cấp cho hệ thống 46 Hình 3. 4 Sơ đồ nguyên lý khối lọc nguồn 47 Hình 3. 5 Nguyên lý khối xử lý trung tâm dùng STM32F103VET6 49 Hình 3. 6 Nguyên lý khối hiển thị 50 Hình 3. 7 Hình ảnh thực tế màn hình TFT 3.2 inch 51 Hình 3. 8 Nguyên lý khối SD Card 53 Hình 3. 9 Sơ đồ nguyên lý khối giao tiếp USB 54 Hình 3. 10 Các ứng dụng của CH376 55 Hình 3. 11 IC CH376T 56 Hình 3. 12 Sơ đồ nguyên lý khối giải mã âm thanh 57 Hình 3. 13 Dòng dữ liệu của VS1003 59 Hình 3. 14 Sơ đồ nguyên lý khối khuếch đại công suất 61 Hình 3. 15 Sơ đồ mạch in lớp Top 62 Hình 3. 16 Sơ đồ mạch in lớp Bottom 62 Hình 3. 17 Sơ đồ linh kiện lớp Top 63 Hình 3. 18 Sơ đồ linh kiện lơp Bottom 63 Hình 3. 19 Giao diện trình biên dịch KeilC 5 67 Hình 3. 20 Lƣu đồ giải thuật chƣơng trình chính 69 Hình 3. 21 Lƣu đồ các button điều khiển 70 Hình 3. 22 Lƣu đồ giải thuật đọc file mp3 71 Hình 4. 2 Hình ảnh máy nghe nhạc sau khi thi công 73 Hình 4. 3 Mặt sau máy nghe nhạc 74 Hình 4. 4 Mạch khuếch đại công suất 74 Hình 4. 5 Giao diện đăng nhập máy in 3D 75 Hình 4. 6 Giao diện các nút điều khiển 76 Hình 4. 7 Giao diện Playlist bài hát 76 xi
- DANH MỤC BẢNG Bảng 2. 1 Các dòng phát triển của ARM 9 Bảng 2. 2 Thanh ghi SCI 23 Bảng 2. 3 Sơ đồ chân SD Card 26 Bảng 2. 4 Các thanh ghi trong SD Card 26 Bảng 2. 5 Cấu trúc của ổ đĩa 27 Bảng 2. 6 Mark Boot Recor 27 Bảng 2. 7 Thông tin của một phân vùng 28 Bảng 2. 8 Thông tin chứa trong Boot sector 31 Bảng 2. 9 Giá trị của các mục nhập trong FAT 32 Bảng 2. 10 Cấu trúc của Directory Table 32 Bảng 3. 1 Mô tả trạng thái chân VS1003 58 xii
- ĐỒ ÁN TỐT NGHIỆP MÁY NGHE NHẠC MP3 Chƣơng 1DẪN NHẬP 1.1ĐẶT VẤN ĐỀ Với chất lƣợng cuộc sống ngày càng đƣợc nâng cao nhƣ hiện nay, vấn đề về hƣởng thụ ngày càng đƣợc quan tâm sâu sắc, trong đó âm nhạc là một phần không thể thiếu đối với mỗi ngƣời. Với sự phát triển nhanh chóng của khoa học kỹ thuật, các thiết bị phục vụ cho nhu cầu giải trí của con ngƣời đƣợc chế tạo ngày càng tinh vi, nhỏ gọn. Sự ra đời của những máy nghe nhạc nhƣ ipod, ipod nano đã tạo bƣớc đột phá mới trong lĩnh vực sản xuất máy nghe nhạc. Mặc dù vi xử lý, vi điều khiển đã ra đời vài thập kỷ, nhƣng nó vẫn không ngừng phát triển và luôn đƣợc cải tiến nhiều tính năng mới vô cùng tiện ích và phong phú. Trong quá trình học tập tại trƣờng, ngƣời học đƣợc trang bị những kiến thức cơ bản về vi điều khiển, vi xứ lý. Tuy nhiên, để có thể áp dụng những kiến thức đó vào thực tế, ngƣời học cần phải tìm tòi, nghiên cứu. Việc áp dụng những kiến thức đã học để tạo nên một sản phẩm gần gũi và gắn liền với cuộc sống của mỗi ngƣời nhƣ một chiếc máy nghe nhạc luôn là mong muốn của tất cả các sinh viên chuyên ngành điện tử. 1.2 LÝ DO CHỌN ĐỀ TÀI Đối với mỗi sinh viên chúng ta, việc làm đƣợc một sản phẩm đơn giản phục vụ cho chính nhu cầu của mình luôn là một mong muốn và nó mang lại một ý nghĩa nhất định. Sau những giờ học tập và làm việc căng thẳng, mỗi ngƣời cần có những giây phút thƣ giãn cân bắng lại cuộc sống. Âm nhạc luôn là sự lựa chọn không thể thiếu. Bên cạnh đó,ARM, một dòng vi điều khiển mới , có nhiều tính năng với giá thành tƣơng đối rẽ, hứa hẹn sẽ đƣợc ứng dụng nhiều trong tƣơng lai.Việc thực hiện một sản phẩm sử dụng chíp ARM cũng có thể đƣợc xem là bắt kịp theo xu hƣớng phát triển của lĩnh vực điện tử hiện nay . 1
- ĐỒ ÁN TỐT NGHIỆP MÁY NGHE NHẠC MP3 Bằng những kiến thức đã đƣợc trang bị trong quá trình học tập tại trƣờng về vi điều khiển ARM cùng quá trình tìm tòi, nghiên cứu, nhóm thực hiện đồ án quyết định thực hiện đề tài “MÁY NGHE NHẠC MP3” . 1.3 ĐỐI TƢỢNG NGHIÊN CỨU Trong giới hạn của đề tài, nhóm thực hiện chỉ tập trung vào nghiên cứu các nội dung cơ bản : Đặc điểm họ vi điều khiển STM32F103xxx Cấu trúc thẻ nhớ,USB và việc truyền dữ liệu giữa vi điều khiển với thẻ nhớ,USB thông qua giao tiếp SPI Giao tiếp với IC giải mã VS1013B. Module công suất ampli 2.1 Các phần mềm hỗ trợ:Altium Designed, KeilC 5. 1.4 GIỚI HẠN ĐỀ TÀI Thiết kế máy nghe nhạc mp3 dùng vi điều khiển ARM STM32F103VET6. Giao diện điều khiển hiển thị trên màn hình cảm ứng TFT 3.2 inch. Xử lí các flie nhạc định dạng mp3 đọc từ SD Card và USB. Âm thanh đƣợc xử lí qua mạch khuếch đại công suất ampli 2.1 phát ra loa. 1.5 BỐ CỤC CỦA ĐỀ TÀI Đồ án thực hiện bao gồm những nội dung chính nhƣ sau: Giới thiệu ban đầu: Đƣa ra vấn đề cần giải quyết, xây dựng ý tƣởng giải quyết đề tài, giới thiệu tổng quan về tình hình nghiên cứu hiện nay và đƣa ra ý nghĩa thực tiễn của nó. Tìm hiểu và phân tích: Các khái niệm, cơ sở lý thuyết ban đầu về các vấn đề liên quan đến vi điều khiển ARM, chuẩn giao tiếp SPI ,phân tích cấu trúc module 2
- ĐỒ ÁN TỐT NGHIỆP MÁY NGHE NHẠC MP3 giải mã VS1003B, ngôn ngữ KeilC và các kiến thức liên quan đến thực hiện đề tài đƣợc trình bày trong phần cơ sở lý thuyết. Thiết kế và thi công hệ thống: Trình bày về sơ đồ khối hệ thống, thiết kế khối nguồn cung cấp cho mạch hoạt động, khối xử lý dữ liệu và khối hiển thị .Đồng thời tính toán, phân tích những khó khăn và cách khắc phục chi tiết cho từng khối thiết kế. Thiết kế phần mềm: Giới thiệu cơ sở lý thuyết về lập trình: Ngôn ngữ lập trình C cho ARM STM32F103VET6. Kết quả nghiên cứu thực hiện: Trình bày những kết quả của đồ án đã thực hiện đƣợc, đánh giá và so sánh kết quả với thực nghiệm. Kết luận và hƣớng phát triển đề tài: nêu bật những ƣu, khuyết điểm của đề tài, những kiến thức và kinh nghiệm đã thu đƣợc trong quá trình thực hiện đề tài. 1.6 Ý NGHĨA THỰC TIỄN Mặc dù máy nghe nhạc MP3 ngày nay đã rất phổ biến và giá thành không quá đắt nhƣng việc thực hiện thành công đề tài mang nhiều ý nghĩa thực tiễn. Đó là việc tạo ra một thiết bị điện tử phục vụ cho nhu cầu thực tế của con ngƣời mà cụ thể là thƣởng thức âm nhạc. Ngoài ra việc giao tiếp thành công giữa vi điều khiển và thẻ nhớ,USB đã mở ra nhiều ứng dụng mà đòi hỏi sử dụng bộ nhớ ngoài để lƣu dữ liệu. 3
- ĐỒ ÁN TỐT NGHIỆP MÁY NGHE NHẠC MP3 Chƣơng 2CƠ SỞ LÝ THUYẾT 2.1 ĐỊNH DẠNG MP3 2.1.1 Giới thiệu Tín hiệu âm thanh số chất lƣợng CD có dung lƣợng số liệu rất lớn, nên rất khó khăn cho lƣu trữ cũng nhƣ truyền dẫn. Do đó cần làm sao giảm lƣợng số liệu này xuống mà chất lƣợng ít bị suy giảm so với tín hiệu gốc. Vào những năm 80, một nhóm MPEG (Moving picture expert Group) thuộc tổ chức ISO (International Organization for Standardization) đã đƣa ra tiêu chuẩn về kỹ thuật nén Âm thanh và hình ảnh. Cũng giống nhƣ các phƣơng pháp nén khác (ADPCM), thì phƣơng pháp MPEG là phƣơng pháp nén có suy hao, tuy nhiên phƣơng pháp MPEG có chất lƣợng khá tốt. MP3 là cách gọi ngắn của nén MPEG-1 lớp III. MP3 hỗ trợ các tần số lấy mẫu khác nhau nhƣ 32kHz, 44.1kHz và 48kHz; tốc độ bit có thể thay đổi từ 32 đến 448 kbps; mode mã hóa có thể thay đổi, bao gồm: mono, dual mono, stereo và joint stereo. 2.1.2 Cấu trúc dữ liệu mp3 Lớp thứ 3 nén file âm thanh PCM gốc với tỉ lệ 12:1 mà không có suy hao chất lƣợng đáng kể. Nén MPEG-1 lớp III chuẩn có tốc độ bit từ 8 kbit/s tới 320 kbit/s (tốc độ mặc định 128 kbit/s ). Tốc độ bit (Bitrate) có hai loại khác nhau: Tốc độ bit không đổi CBR (Constant Bit Rate). Tốc độ bit thay đổi VBR (Variable Bit Rate). Tốc độ bit trung bình ABR (Average Bit Rate). Khi mã hóa dùng CBR (thƣờng là mặc định), thì mỗi phần của bài hát đƣợc mã hóa với cùng một số lƣợng bit. Nhƣng phần lớn những bài hát thay đổi rất phức tạp (một số phần dùng các nhạc cụ và hiệu ứng âm thanh khác nhau, trong khi có một số phần khá đơn giản). 4
- ĐỒ ÁN TỐT NGHIỆP MÁY NGHE NHẠC MP3 Phƣơng pháp VBR (có hiệu quả hơn) cho phép tốc độ thay đổi phụ thuộc vào dải động của tín hiệu. Dòng dữ liệu đã mã hóa đƣợc chia thành một số khung, nên phƣơng pháp VBR có thể mã hóa các khung với tốc độ bit khác nhau. Nhƣng nó có nhƣợc điểm là gây ra sai lệch thời gian của bộ mã hóa. Vì vậy phƣơng pháp CBR thƣờng đƣợc dùng trong phát thanh truyền hình. Tốc độ bit cao cho ta sự chính xác giá trị lấy mẫu, ngƣợc lại thì tần số lấy mẫu cao sẽ cho khả năng lƣu trữ nhiều giá trị hơn. ABR (Average Bit Rate): Gần giống VBR ngoại trừ kích thƣớc file biết trƣớc (với VBR, kích thƣớc file có khi lớn, khi nhỏ tuỳ vào độ phức tạp của âm thanh) nhờ điều chỉnh mức thay đổi quanh giá trị bitrate trung bình ấn định trƣớc. Tất cả các file MP3 chia thành nhiều thành phần nhỏ hơn gọi là khung, mỗi khung có 1.152 mẫu âm thanh và thời gian 62ms. Điều này có nghĩa là tốc độ khoảng 38 khung/một giây. Một khung đƣợc chia tiếp thành hai thành phần nhỏ hơn gọi là khung nhỏ (Granule) chứa 576 mẫu. Do tốc độ bit lại dựa trên kích thƣớc của mỗi mẫu, nên tăng tốc độ bit cũng sẽ làm tăng kích thƣớc của một khung. Kích thƣớc này cũng phụ thuộc vào tần số lấy mẫu theo: 144*Tốc độ bit + Phần đệm / Tần số lấy mẫu Phần đệm là một bit đặc biệt đặt ở đầu khung, (trong một số khung) để đảm bảo tốc độ bit. Sắp xếp các khung. Một khung bao gồm 5 phần gồm: Tiêu đề, mã sửa sai CRC, thông tin phụ, số liệu chính, số liệu phụ Tiêu đề khung. Tiêu đề dài 32 bit, có từ mã đồng bộ. Từ mã đồng bộ đƣợc đặt ở đầu của mỗi khung cho phép các phần (nhận MP3) đồng bộ với tín hiệu tại bất cứ vị trí nào trong dòng số liệu. Mã sửa sai CRC. Trƣờng này chỉ tồn tại khi bit bảo vệ trong phần tiêu đề có giá trị 1 và nó có tác dụng kiểm tra các số liệu phát hiện lỗi truyền dẫn. Các số liệu này 5
- ĐỒ ÁN TỐT NGHIỆP MÁY NGHE NHẠC MP3 là bit 11 tới bit 31 trong phần tiêu đề và phần thông tin phụ. Nếu số liệu này là không đúng, chúng sẽ làm sai lệch toàn bộ khung trong khi một lỗi trong phần số liệu chính chỉ làm sai lệch một phần khung. Một khung bị sai lệch sẽ bị làm câm tiếng hoặc đƣợc thay thế bằng một khung trƣớc nó. Thông tin phụ. Thông tin phụ của khung (bao gồm thông tin cần thiết cho giải mã số liệu chính), có kích thƣớc phụ thuộc vào loại mã hoá kênh. Nếu là dòng dữ liệu kênh đơn, thì kích thƣớc là 17 Byte; Nếu không phải kênh đơn, là 32 byte. Số liệu chính. Phần số liệu chính của khung gồm các hệ số tỉ lệ, các bit mã hóa Huffman và các số liệu phụ. - Các trƣờng hệ số tỉ lệ (Scale factors): Mục đích của các hệ số tỉ lệ là làm giảm nhiễu lƣợng tử. Nếu các mẫu trong dải hệ số tỉ lệ đƣợc quét theo đúng cách, thì nhiễu lƣợng tử sẽ đƣợc phát hiện. Quá trình chia nhỏ tần phổ trong các dải hệ số tỉ lệ (scale factor) đƣợc giữ cố định cho mỗi cửa sổ, tần số lấy mẫu và lƣu trữ trong các bảng của bộ mã hóa và giải mã . - Các bit mã Huffman: Phần này của khung chứa các bit mã Huffman. Ta có thể tìm thấy các thông tin về cách giải mã các bit này trong phần thông tin phụ. Các giá trị lớn (big-values Region) luôn đƣợc mã hóa theo từng cặp. Vì phụ thuộc vào việc dùng các khối ngắn hay dài, trật tự số liệu Huffman sẽ khác nhau. Nếu dùng khối dài, ngƣời ta sắp xếp các số liệu Huffman theo trật tự các tần số tăng dần. Số liệu phụ. Số liệu phụ tùy ý, số bit là không cố định. Số liệu phụ đƣợc đặt ngay sau các bit mã Huffman và ở khu vực gần với điểm bắt đầu số liệu chính của khung tiếp sau. 6
- ĐỒ ÁN TỐT NGHIỆP MÁY NGHE NHẠC MP3 2.2 GIỚI THIỆU VỀ VI ĐIỀU KHIỂN ARM Cấu trúc ARM (viết tắt từ tên gốc là Acorn RISC Machine) là một loại cấu trúc vi xử lý 32 bit kiểu RISC (thuộc kiến trúc Hardvard, có tập lệnh rút gọn) đƣợc sử dụng rộng rãi trong các thiết kế nhúng. Do có đặc điểm tiết kiệm năng lƣợng, các bộ CPU ARM chiếm ƣu thế trong các sản phẩm điện tử di động, mà với các sản phẩm này việc tiêu tán công suất thấp là một mục tiêu thiết kế quan trọng hàng đầu. Ngày nay ARM đƣợc ứng dụng và rộng rãi trên mọi lĩnh vực của đời sống: Robot, máy tinh, điện thoại, xe hơi, máy giặt Hình 2. 1Một số ứng dụng của vi điều khiển ARM [ Nguồn: Forum.arm.vn] 7
- ĐỒ ÁN TỐT NGHIỆP MÁY NGHE NHẠC MP3 2.2.1Tổng quan về vi điều khiển ARM 2.2.1.1 Lịch sử phát triển Việc thiết kế ARM đƣợc bắt đầu từ năm 1983 trong một dự án phát triển của công ty máy tính Acorn. Nhóm thiết kế hoàn thành việc phát triển mẫu gọi là ARM1vào năm 1985, và vào năm sau, nhóm hoàn thành sản phẩm “thực’’ gọi là ARM2với thiết kế đơn giản chỉ gồm 30.000 transistor. ARM2 có tuyến dữ liệu 32 bit, không gian địa chỉ 26 bit tức cho phép quản lý đến 64 Mbyte địa chỉ và 16 thanh ghi 32 bit. Thế hệ sau, ARM3, đƣợc tạo ra với 4KB cache và có chức năng đƣợc cải thiện tốt hơn nữa. Vào những năm cuối thập niên 80, hãng máy tính Apple Computer và hãng VLSI Technology bắt đầu hợp tác với Acorn để phát triển các thế hệ lõi ARM mới. Kết quả sự hợp tác này là ARM6. Mẫu đầu tiên đƣợc công bố vào năm 1992 và Apple đã sử dụng bộ vi xử lý ARM 610 dựa trên ARM6 làm cơ sở cho PDA hiệu Apple Newton. Vào năm 1994, Acorn dùng ARM 610 làm CPU trong các máy vi tính RiscPC của họ. Trải qua nhiều thế hệ nhƣng lõi ARM gần nhƣ không thay đổi kích thƣớc. ARM2 có 30.000 transistors trong khi ARM6 chỉ tăng lên đến 35.000. Ý tƣởng của nhà sản xuất lõi ARM là sao cho ngƣời sử dụng có thể ghép lõi ARM với một số bộ phận tùy chọn nào đó để tạo ra một CPU hoàn chỉnh, một loại CPU mà có thể tạo ra trên những nhà máy sản xuất bán dẫn cũ và vẫn tiếp tục tạo ra đƣợc sản phẩm với nhiều tính năng mà giá thành vẫn thấp. Kiến trúc Số bit Tên lõi ARMv1 32/26 ARM1 ARMv2 32/26 ARM2, ARM3 ARMv3 32 ARM6, ARM7 ARMv4 32 ARM8 ARM v4T 32 ARM7TDMI, ARM9TDMI ARMv5 32 ARM7EJ, ARM9E, ARM10E 8
- S K L 0 0 2 1 5 4