Luận văn Máy nghe nhạc sử dụng chip arm cortex-M3 32-bit

MÁY NGHE NHẠC SỬ DỤNG CHIP ARM CORTEX-M3 32-BIT Luận văn bao gồm 4 chương.Trình bày những kiến thức cơ bản về ARM Cortex-M3 cũng như ứng dụng được phát triển trên CHIP ARM STM32F103RC. Nội dung chính của luận văn tập trung vào việc phát triển sản phẩm máy nghe nhạc dựa trên EASY KIT được phát triển bởi nhóm ARM Việt Nam.Nội dung chủ yếu và quan trọng tập trung vào chương 2 và chương 3 Luận văn được tách riêng làm 4 phần chính nằm trong 4 chương riêng biệt nhằm làm cho người đọc tiện theo dõi những kiến thức phần cứng cũng như phần mềm cần thiết đề tạo thành máy nghe nhạc đơn giản trên nền hệ thống nhúng. Chương 1: Giới Thiệu Chung Về Sản Phẩm. Nội dung chương này gồm 3 phần: Phần 1: Giới thiệu những đặc điểm chung của sản phẩm, cung cấp cho người đọc cái nhìn tổng quát về sản phẩm thông qua sơ đồ khối. Phần 2: Trình bày nguyên lý hoạt động cơ bản của sản phẩm. Phần 3: Giới thiệu về dòng ARM Cortex-M3, một số đặc điểm chính và nổi trội so với các dòng ARM khác.Trình bày những ngoại vi được tích hợp với lõi ARM để phát triển những ứng dụng vừa và nhỏ.Giới thiệu CHIP STM32F103RC, được sản xuất bởi STMicroelectronics, về tốc độ CPU, bộ nhớ cũng như các ngoại vi được tích hợp. Chương 2: Mô Hình Phần Cứng Nội dung của chương này giới thiệu các module phần cứng cần sử dụng để tạo thành sản phẩm. Với các ngoại vi tích hợp sẵn bên trong CHIP như SPI, DAC, DMA đầu tiên sẽ trình bày những đặc tính cơ bản, sau đó là phần cấu hình phần cứng của ngoại vi để tương thích với những yêu cầu của sản phẩm. Với những Module bên ngoài như LCD, mạch khuếch đại công suất sẽ trình bày sơ đồ nguyên lý và chế độ hoạt động. Chương 3: Mô Hình Phần mềm Chương này trình bày kiến thức về phần mềm để lập trình cho sản phẩm dựa vào phần cứng tích hợp sẵn trên EASY KIT. Nội dung bao gồm 4 phần: Phần 1: Giới thiệu format của một file nhạc WAVE Phần 2: Trình bày các công cụ hỗ trợ cho quá trình lập trình. Phần 3: Giới thiệu về hai bộ thư viện hỗ trợ giúp tiết kiệm thời gian trong quá trình viết chương trình. Phần 4: Trình bày các giải thuật của chương trình, từ chương trình chính đến các chương trình phục vụ ngắt. Chương 4: Những Hạn Chế Và Hướng Phát Triển Chương này nêu ra những hạn chế cũng như những hướng phát triển tiếp theo.

pdf94 trang | Chia sẻ: lvcdongnoi | Lượt xem: 3269 | Lượt tải: 5download
Bạn đang xem trước 20 trang tài liệu Luận văn Máy nghe nhạc sử dụng chip arm cortex-M3 32-bit, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
A DMA (direct memory access) được sử dụng để truyền dữ liệu tốc độ cao giữa ngoại vi và bộ nhớ cũng như giữa bộ nhớ và bộ nhớ mà không cần đến CPU. Điều này làm cho CPU rãnh để thực hiện tác vụ khác. Hai bộ điều khiển DMA bao gồm 12 kênh ( 7 kênh cho DMA1, 5 kênh cho DMA2) 2.3.5.2 Đặc điểm chính  12 kênh có thể cấu hình độc lập  Có sự ưu tiên giữa các yêu cầu, bao gồm 4 mức ( very high, high, medium, low ) lập trình bằng phần mềm hay sự ưu tiên bằng phần cứng trong trường hợp cùng mức ưu tiên ở phần mềm.  Có thể chuyển dữ liệu theo từng đơn vị byte, haft word, word từ nguồn bất kỳ tới đích bất kỳ. Địa chỉ nguồn và đích phải được canh đúng với đơn vị dữ liệu tương ứng.  Hỗ trợ việc quản lý bộ đệm vòng. ( circular buffer management).  3 cờ sự kiện giúp giám sát quá trình chuyển dữ liệu ( DMA haft transfer, DMA transfer complete, DMA transfer error).  Hỗ trợ chuyển dữ liệu từ: bộ nhớ đến bộ nhớ, bộ nhớ đến ngoại vi, ngoại vi đến bộ nhớ, ngoại vi đến ngoại vi.  Độ lớn dữ liệu cần chuyển có thể lên đến 65536 bytes. LUẬN VĂN TỐT NGHIỆP Chương 2 Mô hình phần cứng SVTH: PHẠM VĂN VANG Trang 27 Hình 2.19: Sơ đồ khối của bộ điều khiển DMA. 2.3.5.3 Hoạt động vận chuyển dữ liệu của DMA Sau một sự kiện, ngoại vi gửi tín hiệu yêu cầu đến bộ điều khiển DMA. Bộ điều khiển DMA phục vụ yêu cầu này tùy vào mức độ ưu tiên của nó. Ngay sau khi bộ điều khiển DMA truy suất đến ngoại vi, một xác nhận được gửi đến ngoại vi bởi bộ điều khiển DMA. Ngoại vi nhả yêu cầu ngay khi nó nhận được xác nhận này. Khi ngoại vi gửi yêu cầu một lần nữa thì bộ điều khiển DMA nhả xác nhận này. Nếu có nhiều yêu cầu, ngoại vi có thể bắt đầu quá trình trao đổi dữ liệu. 2.3.5.4 Bộ phân xử Bộ phân xử quản lý yêu cầu từ các kênh dựa trên độ ưu tiên của từng kênh và tiến hành truy xuất bộ nhớ hay ngoại vi theo thứ tự. Sự ưu tiên được quản lý trong hai tầng:  Bằng phần mềm: có 4 mức ưu tiên dành cho 12 kênh - Very high priority - High priority - Medium priority - Low priority LUẬN VĂN TỐT NGHIỆP Chương 2 Mô hình phần cứng SVTH: PHẠM VĂN VANG Trang 28  Bằng phần cứng: nếu hai kênh có cùng mức ưu tiên bằng phần mềm thì nó sẽ được phân xử bằng phần cứng. Kênh có số thứ tự nhỏ hơn được ưu tiên hơn. Ngoài ra DMA1 có ưu tiên cao hơn DMA2. 2.3.5.5 Ngắt DMA Một ngắt có thể được tạo ra khi: Half-Transfer, Transfer complete, Transfer error. Bảng 2.10 Các yêu cấu ngắt của DMA Chú ý: một nhóm ngoại vi cụ thể dùng chung một kênh DMA, do đó tại mỗi thời điểm chỉ có một ngoại vi trong nhóm này được dùng DMA. 2.3.5.6 DMA dành cho 2 kênh DAC Hình 2.20: Bộ điều khiển DMA2 và ánh xạ ngoại vi của nó DMA2_Channel3 dành cho DAC_Channel1 DMA2_Channel4 dành cho DAC_Channel2 LUẬN VĂN TỐT NGHIỆP Chương 2 Mô hình phần cứng SVTH: PHẠM VĂN VANG Trang 29 2.3.5.7 Cấu hình DMA cho sản phẩm  Stereo player  Kênh phải: dùng DMA2_Channel3 chuyển dữ liệu đến DAC_Channel1 Cấu hình DMA2_Channel3:  Chuyển dữ liệu từ bộ nhớ đến ngoại vi  Đơn vị dữ liệu: byte  Kích thước bộ đệm: 512 bytes  Địa chỉ nguồn: địa chỉ của bộ đệm chứa dữ liệu kênh phải  Địa chỉ đích: địa chỉ thanh ghi DAC_DHR8R1 của DAC_Channel1  Ưu tiên ngắt: high priority  DMA mode: normal ( không dùng bộ đệm vòng)  Cho phép ngắt: Half-Transfer, Transfer complete  Kênh trái: dùng DMA2_Channel4 chuyển dữ liệu đến DAC_Channel2 Cấu hình DMA2_Channel4:  Chuyển dữ liệu từ bộ nhớ đến ngoại vi  Đơn vị dữ liệu: byte  Kích thước bộ đệm: 512 bytes  Địa chỉ nguồn: địa chỉ của bộ đệm chứa dữ liệu kênh trái  Địa chỉ đích: địa chỉ thanh ghi DAC_DHR8R2 của DAC_Channel2  Ưu tiên ngắt: high priority  DMA mode: normal ( không dùng bộ đệm vòng)  Không cho phép ngắt  Mono player Dùng DMA2_Channel4 chuyển dữ liệu đến DAC_Channel2 Cấu hình DMA2_Channel4:  Chuyển dữ liệu từ bộ nhớ đến ngoại vi  Đơn vị dữ liệu: byte LUẬN VĂN TỐT NGHIỆP Chương 2 Mô hình phần cứng SVTH: PHẠM VĂN VANG Trang 30  Kích thước bộ đệm: 512 bytes  Địa chỉ nguồn: địa chỉ của bộ đệm chứa dữ liệu kênh phải  Địa chỉ đích: địa chỉ thanh ghi DAC_DHR8R2 của DAC_Channel2  Ưu tiên ngắt: high priority  DMA mode: normal ( không dùng bộ đệm vòng)  Cho phép ngắt: Half-Transfer, Transfer complete 2.3.6 Giao diện EXTI (External event/ interrupt controller) EXTI: External event/ interrupt controller 2.3.6.1 Đặc điểm chính  Xung kích độc lập và được che mặt nạ trên mỗi đường interrupt/event  Mỗi đường có một bít trạng thái  Tạo ra hơn 19 yêu cầu ngắt và sự kiện  Phát hiện được xung có thời gian nhỏ  Để sử dụng một đường ngắt thì cần phải cấu hình nó .  Có thể tạo ra một ngắt bằng phần cứng hay phần mềm.  Ở chế độ ngắt bằng phần cứng, chân input có thể cấu hình để tạo ra ngắt cạnh xuống, cạnh lên hay cả hai. LUẬN VĂN TỐT NGHIỆP Chương 2 Mô hình phần cứng SVTH: PHẠM VĂN VANG Trang 31 Hình 2.21: Sơ đồ khối của EXTI 2.3.6.2 Định vị các nguồn ngắt ngoài Hình 2.22: Các nguồn ngắt của EXTI0 LUẬN VĂN TỐT NGHIỆP Chương 2 Mô hình phần cứng SVTH: PHẠM VĂN VANG Trang 32 Hình 2.23: Các nguồn ngắt của EXTI15 Mỗi đường ngắt có thể đến từ nhiều nguồn khác nhau như ở hai hình trên. Do đó tại mỗi thời điểm chỉ có một nguồn được tích cực trên một đường ngắt nhất định. 2.3.7 Khối điều khiển ( các nút nhấn) Khối điều khiển hoạt động dựa vào các nguồn ngắt ngoài, 3 nút điều khiển được kết nối đến 3 nguồn ngắt ngoài là EXTI1, EXTI9 và EXTI10 để tạo tín hiệu điều khiển.  Sơ đồ khối của khối điều khiển Pre Next Pause/play Hình 2.24: Sơ đồ khối của module điều khiển Các nút nhấn được nối vào các nguốn ngắt ngoài tương ứng Nút nhấn 1: Nối với nguồn ngắt EXTI9 Nút nhấn 2: Nối với nguồn ngắt EXTI10 Nút nhấn 3: nối với nguồn ngắt EXTI1 4 3 1 LUẬN VĂN TỐT NGHIỆP Chương 2 Mô hình phần cứng SVTH: PHẠM VĂN VANG Trang 33 Sơ đồ nguyên lý các nút nhấn Hình 2.25: Sơ đồ nguyên lý các nút nhấn Khi nhấn nút sẽ tạo ra một xung cạnh xuống tác động đến nguồn ngắt ngoài tương ứng được kết nối với nút nhấn đó. Nhiệm vụ của các ngắt  EXTI1 : bắt đầu chơi nhạc, pause, play  EXTI9 : chuyển đến bài tiếp theo  EXTI10 : lùi lại bài trước Cấu hình cho các ngắt PB9 PB1 PB10 LUẬN VĂN TỐT NGHIỆP Chương 2 Mô hình phần cứng SVTH: PHẠM VĂN VANG Trang 34  Cả 3 ngắt trên đều được cấu hình giống nhau chỉ khác nhau ở mức ưu tiên. Tuy nhiên điều này không quan trọng vì trong thực tế ít có trường hợp cả 2 ngắt cùng xảy ra.  Ngắt theo cạnh xuống  Hoạt động ở mode interrupt ( mode khác là mode event) Hoạt động của các nút điều khiển  EXTI1: khi phát hiện cạnh xuống ở chân PB1, chương trình sẽ chuyển vào phục vụ ngắt. Đối với ngắt EXTI1 lần ngắt đầu tiên sẽ tìm và phát file nhạc. Các lần ngắt sau đó thì tùy thuộc vào trạng thái trước đó mà có các tác vụ Pause hay Play tương ứng.  EXTI9: khi phát hiện cạnh xuống ở chân PB9, chương trình sẽ chuyển vào phục vụ ngắt. Chương trình phục vụ ngắt có nhiệm vụ tìm và phát file nhạc tiếp theo.  EXTI10: khi phát hiện cạnh xuống ở chân PB10, chương trình sẽ chuyển vào phục vụ ngắt. Chương trình phục vụ ngắt có nhiệm vụ phát lại file nhạc trước đó. 2.3.8 Khối hiển thị LCD Hình 2.26: Sơ đồ nguyên lý khố LCD PC2 R26 10K R27 470 L C D 1 6 X 2 LCD 16X2 16 K 15 A 14 D7 13 D6 12 D5 11 D4 10 D3 9 D2 8 D1 6 EN 5 R/W 4 RS 3 Vee 2 VCC 1 VSS 7 D0 LCD PC4 R28 100 PC1 R29 4.7K PC0 PC5 PC6 PC7 VCC 5V LUẬN VĂN TỐT NGHIỆP Chương 2 Mô hình phần cứng SVTH: PHẠM VĂN VANG Trang 35 Giao tiếp tương tự như mode 8 bit, chỉ cần chú ý một số khác biệt so với mode 8 bit như sau:  Chỉ dùng 4 đường dữ liệu ( D4, D5, D6, D7), 4 đường kia bỏ trống  4 bit cao được xử lý trước, sau đó đến 4 bit thấp. Trước khi đưa LCD vào mode 4 bit cần tạo một lệnh giả lập để cho LCD hiểu ta đang muốn giao tiếp với nó ở Mode 4 bit. Nghĩa là trước khi gửi lệnh 0x28 thì cần gửi lệnh với giá trị 0x2- (- :tùy định). Và điều này còn tùy vào loại LCD cũng như thời gian hiển thị chữ. Hình 2.27: Sơ đồ giải thuật mô tả trình tự giao tiếp với LCD LUẬN VĂN TỐT NGHIỆP Chương 2 Mô hình phần cứng SVTH: PHẠM VĂN VANG Trang 36 2.3.9 Mạch khuếch đại công suất Sơ đồ nguyên lý mạch khuếch đại công suất Hình 2.28: Sơ đồ nguyên lý mạch khuếch đại công suất Dùng IC TDA2822 đề khuếch đại tín hiệu audio từ bộ DAC Đặc điểm:  Công suất bé  Không thế cân chỉnh mạch từ bên ngoài  IC TDA2822 chứa 2 bộ khuếch đại riêng biệt 100K VAR 100K VAR R3 4.7 R4 4.7 Load 8 Load 8 C1 100u C2 100u C3 470u C4 470u C5 100u C6 0.1u C7 0.1u U1 TDA2822 OUTPUT1 1Vc c 2 NP2 5 NP1 8 INPUT2 6 GN D 4 INPUT1 7 OUTPUT2 3 5 V DAC_OUT2 (PA5) DAC_OUT1 (PA4) LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 37 CHƢƠNG 3 MÔ HÌNH PHẦN MỀM 3.1 Định dạng file WAVE Định dạng file WAV là một tập con của đặc tả Microsoft's RIFF cho việc lưu trữ những file đa phương tiện truyền thông. Một file RIFF bắt đầu với một header theo sau bởi một thứ tự của các chunk dữ liệu. Một file WAVE thường là một file RIFF với một chunk “WAVE” đơn trong đó bao gồm hai chunk con: chunk “fmt” : xác định định dạng dữ liệu; chunk “ data” chứa các mẫu dữ liệu thật sự. Định dạng kiểu này thường được gọi như là "Canonical form" Hình 3.1: Định dạng file WAVE LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 38 Header của file WAVE:  Chunk ID: chứa chuỗi ký tự “ RIFF” ở dạng ASCII  Chunk size: 36 + Chunk2size, là kích thước của toàn bộ file theo đơn vị Byte trừ đi 8 bytes cho 2 trường không được bao gồm là Chunk ID và Chunk size.  Format: Chứa chuỗi ký tự “WAVE” Hai subchunk còn lại: Subchunk “fmt” mô tả định dạng dữ liệu âm thanh  Subchunk1ID chứa chuỗi ký tự “fmt”  Subchunk1Size kích thước phần còn lại của Chunk này.  AudioFormat PCM = 1, giá trị khác 1 chỉ ra một dạng nén khác  NumChannels Mono = 1, Stereo = 2  SampleRate 8000, 44100 vv  ByteRate = SampleRate * NumChannels * BitsPerSample/8  BlockAlign = NumChannels * BitsPerSample/8  BitsPerSample 8 bits = 8, 16 bits = 16 vv Subchunk “data” chứa kích thước dữ liệu và dữ liệu âm thanh thật sự  Subchunk2ID chứa chuỗi ký tự “data”  Subchunk2Size == NumSamples * NumChannels * BitsPerSample/8 Đây là số bytes của dữ liệu âm thanh thật sự Ví dụ về một file WAVE cụ thể Ở dưới là 72 bytes của một file WAVE được viết dưới dạng số HEX 52 49 46 46 24 08 00 00 57 41 56 45 66 6d 74 20 10 00 00 00 01 00 02 00 22 56 00 00 88 58 01 00 04 00 10 00 64 61 74 61 00 08 00 00 00 00 00 00 24 17 1e f3 3c 13 3c 14 16 f9 18 f9 34 e7 23 a6 3c f2 24 f2 11 ce 1a 0d LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 39 Hình 3.2: Minh họa định dạng của file WAVE 3.2 Công cụ hỗ trợ lập trình 3.2.1 Trình biên dịch Keil uVerion4 Đây là trình biên dịch dành cho các vi điều khiển, hỗ trợ sẵn các Startup code. Các bước tạo một Project trong Keil uVersion4 : Bước 1: Tạo một Project mới và chọn nơi lưu. Bước 2: Chọn linh kiện( ở đây là STM32F103RC của ST). Bước 3: Add các file người dùng vào Project. Bước 4: Chỉnh đường dẫn đến thư viện CMSIS. Bước 5: Cấu hình Flash. Bước 6: Tiến hành biên dịch. Ở đây chỉ là những bước cần phải làm để có thể biên dịch thành công một chương trình trong Keil, không trình bày chi tiết. 3.2.2 Trình soạn thảo Source Insight LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 40  Đây là một công cụ rất hữu ích cho việc lập trình, đặc biệt khi chương trình chứa nhiều modules và chứa nhiều hàm con.  Nó cung cấp cho người lập trình một giao diện trực quang trong việc quản lý hàm, biến cũng như các macro.  Cung cấp công cụ tìm kiếm rất mạnh giúp người lập trình tiết kiệm thời gian trong quá trình sử dụng hàm, quản lý biến được khai báo.  Đặc biệt nó liên kết đến các file trong Project của trình biên dịch ( ở đây là Keil), do đó bất kỳ sự chỉnh sửa nào ở Source Insight cũng tác động đến trình biên dịch và ngược lại. 3.2.3 Chƣơng trình nạp Flash Loader Demonstrator (FLD) FLD là chương trình nạp được ST hỗ trợ cho dòng STM32 bao gồm nhiều chức năng như xóa, ghi, đọc code, chế độ bảo vệ. Các bước tiến hành để nạp một chương trình vào STM32 dùng FLD: 5 bước cơ bản Bƣớc 1: Trang cài đặt kết nối Ở bước này ta kết nối thiết bị với PC thông qua UART, chọn các chế độ kết nối thích hợp ( port name, baud rate, time out). Để tối ưu cấu hình ta đặt Baud Rate là 115200 bps. Nhấn Next, nếu kết nối được thiết lập FLD chuyển qua bước khác, nếu không sẽ báo lỗi. Xem hình 4.3 Bƣớc 2: Trang báo trạng thái Flash Ở bước này, kết nối đã được thiết lập, trao đổi thông tin đã diễn ra. Nó chỉ ra trạng thái của Flash, có thể là Readable, Read-protected Nhấn Next, FLD sẽ chuyển qua bước tiếp theo. Xem hình 4.4 LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 41 Hình 3.3: Trang cài đặt kết nối Hình 3.4: Trang trạng thái của Flash LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 42 Bƣớc 3:Trang thông tin về thiết bị Hiển thị tất cả các thông tin về thiết bị như bên dưới ( hình 3.5 ) Bƣớc 4: Trang chọn tác vụ Chọn các tác vụ tương ứng như Erase, Download, Upload or Disable/Enable Flash protection or Edit option bytes Các tác vụ này là tùy theo yêu cầu, được diễn tả như bên dưới ( hình 3.6 ) Bƣớc 5: Quá trình nạp Sau khi thực hiện xong các bước trên, ta chọn đường dẫn tới file chứa code cần nạp( file HEX) Nhấn Next và đợi tới khi hoàn thành nạp như bên dưới ( hình 3.7) Ở trên chỉ là những bước cơ bản nhất đủ để thực hiện tác vụ nạp code vào cho STM32 bằng FLD, ngoài ra FLD còn cung cấp nhiều tính năng khác nhưng không trình bày ở đây. Hình 3.5: Trang thông tin về thiết bị LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 43 Hình 3.6: Trang chọn tác vụ Hình 3.7: Quá trình nạp LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 44 3.3 Giới thiệu các bộ thƣ viện hỗ trợ lập trình 3.3.1 Bộ thƣ viện chuẩn CMSIS ( The Cortex Microcontroller Software Interface Standard)  Đây là bộ thư viện chuẩn được cung cấp bởi ST, giúp người lập trình có thể giao tiếp với các thiết bị phần cứng chuẩn của các dòng Cortex-M3 do ST sản xuất một cách dễ dàng.  Thư viện được chia làm 2 phần chính:  Phần hỗ trợ nhân Cortex – M3: bao gồm mã giao tiếp với nhân CPU, và đoạn mã start up code.  Phần hỗ trợ các thiết bị ngoại vi: chứa toàn bộ các hàm thư viện điều khiển thiết bị ngoại vi của ST.  Cấu trúc thư viện CMSIS như sau: Hình 3.8: Tố chức thư viện CMSIS 3.3.2 Bộ thƣ viện DOSFS  Được viết bởi Lewin A.R.W. Edwards (sysadm@zws.com), nó là một thư viện tương thích với hệ thống FAT file.  Có xu hướng hỗ trợ trong các hệ thống nhúng  Đặc điểm:  Hỗ trợ các ổ đĩa có định dạng FAT12, FAT16 và FAT32. Library + CMSIS + CM3 + CoreSupport //thư mục chứa hàm hỗ trợ nhân Cortex- M3 + DeviceSupport + ST + STM32F10X //System startup code + startup //Start up code + Documentation //tài liệu hỗ trợ + STM32F10x_StdPeriph_Driver //thư mục chứa hàm hỗ trợ thiết bị ngoại vi + inc //thư mục chứa header file + src //thư mục chứa mã nguồn LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 45  Hỗ trợ các ổ đĩa có dung lượng lên đến 2048Gb.  Hỗ trợ các ổ đĩa có hay không có MBR.  Hỗ trợ ổ đĩa có nhiều phân vùng với MBR.  Hỗ trợ thư mục con.  Trong ứng dụng này chỉ dùng 5 hàm chính của bộ thư viện DOSFS 1) uint32_t DFS_GetPtnStart(uint8_t unit, uint8_t *scratchsector, uint8_t pnum, uint8_t *pactive, uint8_t *pptype, uint32_t *psize) Hàm lấy địa chỉ Boot Sector của một phân vùng xác định bởi đối số unit. Giá trị trả về chính là địa chỉ của Boot Sector. 2) uint32_t DFS_GetVolInfo(uint8_t unit, uint8_t *scratchsector, uint32_t startsector, PVOLINFO volinfo) Hàm này lấy tất cả các thông tin về phân vùng dựa vào địa chỉ của Boot Sector ở trên. 3) uint32_t DFS_OpenDir(PVOLINFO volinfo, PDIRINFO dirinfo) Hàm này có chức năng mở thư mục. 4) uint32_t DFS_GetNext(PVOLINFO volinfo, PDIRINFO dirinfo, PDIRENT dirent) Hàm này chức năng tìm file tiếp theo. 5) uint32_t DFS_GetFAT(PVOLINFO volinfo, uint8_t *scratch, uint32_t *scratchcache, uint32_t cluster) Hàm này tìm Cluster tiếp theo chứa dữ liệu của file đang mở. LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 46 3.4 Sơ đồ giải thuật Sơ đồ giải thuật chương trình chính Hình 3.9: Sơ đồ giải thuật chương trình chính Chương trình chính chỉ có nhiệm vụ cấu hình cơ bản cho các module sử dụng để đọc và phát file nhạc. Nhiệm vụ chính như đọc và phát file nhạc nằm ở chương trình phục vụ ngắt. LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 47 Các ngắt EXTI1_IRQHandler, EXTI9_5_IRQHandler, EXTI9_5_IRQHandler là các ngắt ngoài thực hiện nhiệm vụ điều khiển tương ứng là pause/play, next, previous Ngoài ra, ngắt EXTI1_IRQHandler lần đầu tiên xảy ra thực hiện nhiệm vụ khởi tạo chương trình như lấy file WAVE đầu tiên, tìm thông tin ( bao gồm tần số lấy mẫu, số kênh, cluster đầu tiên chứa file và bắt đầu phát nhạc như sơ đồ giải thuật ở dưới. Ngắt DMA2_Channel3_IRQHandler dùng để phát file nhạc Stereo Ngắt DMA2_Channel4_5_IRQHandler dùng để phát file nhạc Mono Ý tƣởng để đọc và phát nhạc qua DAC:  Mỗi kênh dùng 2 bộ đệm  Khi DMA chuyển được một nữa bộ đệm thứ nhất đến DAC ngắt Haft transfer xảy ra, chương trình phục vụ ngắt sẽ đọc dữ liệu từ Micro SD Card vào bộ đệm thứ hai.  Khi DMA chuyển hết bộ đệm thứ nhất đến DAC ngắt Transfer complete xảy ra, chương trình phục vụ ngắt sẽ cấu hình lại DMA để DMA chuyển dữ liệu từ bộ đệm thứ hai tới DAC thay vì bộ đệm thứ nhất.  Khi DMA chuyển được một nửa bộ đệm thứ hai đến DAC, ngắt Haft transfer xảy ra, chương trình phục vụ ngắt sẽ đọc dữ liệu từ Micro SD Card vào bộ đệm thứ nhất.  Khi DMA chuyển hết bộ đệm thứ nhất đến DAC, ngắt Transfer complete xảy ra, chương trình phục vụ ngắt sẽ cấu hình lại DMA để DMA chuyển dữ liệu từ bộ đệm thứ nhất tới DAC thay vì bộ đệm thứ hai.  Quá trình này được lặp lại liên tục cho đến khi hết một cluster (512 bytes)  Khi hết một cluster, chương trình sẽ kiểm tra xem đã hết file chưa, nếu chưa thì lấy cluster tiếp theo chứa file và tiếp tục công việc như trên cho đến khi hết file.  Khi hết file chương trình sẽ lấy file WAVE tiếp theo để phát. Đối với Stereo hay Mono thì ý tưởng là hoàn toàn giống nhau . Đối với Mono do chỉ có một kênh nên ta dùng 2 bộ đệm, đối với Stereo do có hai kênh nên cần đến 4 bộ đệm, cộng thêm một bộ đệm để phân chia dữ liệu của hai kênh thành ra cần 5 bộ đệm. Phần sau là giải thuật của từng ngắt LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 48 Sơ đồ giải thuật của EXTI1_IRQHandler 0 0 0 Hình 3.10: Sơ đồ giải thuật của EXTI1_IRQHandler Clear pending bit Bd = 1 Mở thƣ mục gốc Lấy địa chỉ Boot Sector của partition0 EXTI1_IRQHandle r Bd = = 0 Đọc dữ liệu vào buff21, buff22 Lấy thông tin của file WAV đầu tiên WAV_MONO_PLAYER() Đọc dữ liệu vào buff21 Bd =2 Hiển thị LCD Mono? Bd =1 Diasable TIM6, TIM7, DAC1, DAC2, DMA1, DMA2, DMA cho DAC1 và DAC2 WAV_STEREO_PLAYER() Bd = = 1 Enable TIM6, TIM7, DAC1, DAC2, DMA1, DMA2, DMA cho DAC1 và DAC2 END Sc = 2 LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 49 Sơ đồ giải thuật của EXTI9_5_IRQHandler 0 Hình 3.11: Sơ đồ giải thuật của EXTI9_5_IRQHandler EXTI9_5_IRQHandler Lấy thông tin của file WAVE tiếp theo Clear pending bit Hiển thị LCD Mono? Đọc dữ liệu vào buff21 Đọc dữ liệu vào buff21, buff22 WAV_MONO_PLAYER() WAV_STEREO_PLAYER() END Sc = 2 LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 50 Sơ đồ giải thuật của EXTI15_10_IRQHandler 0 Hình 3.12: Sơ đồ giải thuật của EXTI15_10_IRQHandler EXTI15_10_IRQHandle r Lấy thông tin của file WAVE trƣớc. Clear pending bit Hiển thị LCD Mono? Đọc dữ liệu vào buff21 Đọc dữ liệu vào buff21, buff22 WAV_MONO_PLAYER() WAV_STEREO_PLAYER() END Sc = 2 LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 51 Sơ đồ giải thuật của DMA2_Channel3_IRQHandler Hình 3.13: Sơ đồ giải thuật của DMA2_Channel3_IRQHandler LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 52 Sơ đồ giải thuật của DMA2_Channel4_5_IRQHandler Hình 3.14: Sơ đồ giải thuật của DMA2_Channel4_5_IRQHandler LUẬN VĂN TỐT NGHIỆP Chương 3 Mô hình phần mềm SVTH: PHẠM VĂN VANG Trang 53 Sơ đồ giải thuật của hai hàm phát nhạc  WAV_STEREO_PLAYER() void WAV_STEREO_PLAYER(uint8_t *buff_addr1, uint8_t *buff_addr2, uint16_t sampl_scale);  WAV_MONO_PLAYER void WAV_MONO_PLAYER(uint8_t *buff_addr, uint16_t sampl_scale); Hình 3.15: Sơ đồ giải thuật của hàm Hình 3.16: Sơ đồ giải thuật của hàm WAV_STEREO_PLAYER WAV_MONO_PLAYER WAV_STEREO_PLAYER() Cấu hình DMA1 chuyển dữ liệu từ buff_addr1 đến DAC1 Cấu hình DMA2 chuyển dữ liệu từ buff_addr2 đến DAC2 Enable HT và TC của DMA1 Disable HT và TC của DMA2 Enable TIM6, TIM7, DAC1, DAC2, DMA1, DMA2, DMA cho DAC1 và DAC2 END WAV_MONO_PLAYER() Cấu hình DMA2 chuyển dữ liệu từ buff_addr1 đến DAC Cấu hình TIM6, TIM7 theo đúng tần số lấy mẫu Cấu hình TIM7 theo đúng tần số lấy mẫu Enable HT và TC của DMA2 Disable HT và TC của DMA2 Enable TIM6, TIM7, DAC1, DAC2, DMA1, DMA2, DMA cho DAC1 và DAC2 END LUẬN VĂN TỐT NGHIỆP Chương 4. Những hạn chế và hướng phát triển SVTH: PHẠM VĂN VANG Trang 55 CHƯƠNG 4 NHỮNG HẠN CHẾ VÀ HƯỚNG PHÁT TRIỂN 4.1 Những hạn chế của sản phẩm  Chỉ phát được file WAVE 8 bit /sample  Chưa linh hoạt trong việc đọc file từ Micro SD Card: như chỉ đọc file từ thư mục gốc…  Do dùng thư viện DOSFS nên còn môt số hạn chế trong việc hỗ trợ long_file_name.  Các nút điều khiển còn tạo ra nhiễu 4.2 Hướng phát triển tiếp theo  Dùng IC decoder 16 bit như STW5094A, PCM1772 để phát được các file có số bit/sample lớn như 16, 24 bit.  Phát triển thêm phần DOSFS để đọc file trong thư mục gốc.  Chuyển sang dùng bộ thư viện FATFS.  Nhúng thư viện Mp3 decoder của cộng đồng helix vào để chơi thêm nhạc MP3.  Dùng LCD graphic để hiển thị LUẬN VĂN TỐT NGHIỆP Tài liệu tham khảo SVTH: PHẠM VĂN VANG Trang 56 Tài liệu tham khảo [1] Diễn đàn ARM Việt Nam. www.arm.vn. [2] www.arm.com. (2005-2006) Cortex-M3 Technical Reference Manual. [3] STMicroelectronics. (2008). STM32F103xx-Reference Manual. [4] Thư viện DOSFS. Lewin A.R.W. Edwards (sysadm@zws.com). www.larwe.com/zws/products/dosfs/index.html. [5] www.ccrma.stanford.edu. Microsoft WAVE soundfile format. [6] www.en.wikipedia.org/wiki/File_Allocation_Table (FAT file) [7] STMicroelctronics. www.st.com. [8] Stm32circleos forum. www.stm32circle.org 1. TDA2822 DUAL POWER AMPLIFIER .SUPPLY VOLTAGE DOWN TO 3 V .LOW CROSSOVER DISTORSION .LOW QUIESCENT CURRENT .BRIDGE OR STEREO CONFIGURATION DESCRIPTION The TDA2822 is a monolithic integrated circuit in 12+2+2 powerdip, intended for use as dual audio power amplifier in portable radios and TS sets. POWERDIP (Plastic 12+2+2) ORDERING NUMBER : TDA2822 TYPICAL APPLICATION CIRCUIT (STEREO) LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG SCHEMATIC DIAGRAM ABSOLUTE MAXIMUM RATINGS Symbol Parameter Value Unit Vs Supply Voltage 15 V Io Output Peak Current 1.5 A Ptot Total Power Dissipation at Tamb = 50 °C at Tcase = 70 °C 1.25 4 W W Tstg, Tj Storage and Junction Temperature – 40 to 150 °C PIN CONNECTION (top view) SVTH: PHẠM VĂN VANG LUẬN VĂN TỐT NGHIỆP Datasheet các IC THERMAL DATA Symbol Parameter Value Unit Rth j-amb Rth j-case Thermal Resistance Junction-ambient Thermal Resistance Junction-pins Max Max 80 20 °C/W °C/W ELECTRICAL CHARACTERISTICS (Vs = 6 V, Tamb = 25 °C, unless otherwise specified) STEREO (test circuit of fig. 1) Symbol Parameter Test Condition Min. Typ. Max. Unit Vs Supply Voltage 3 15 V Vc Quiescent Output Voltage Vs = 9 V Vs = 6 V 4 2.7 V V Id Quiescent Drain Current 6 12 mA Ib Input Bias Current 100 nA Po Output Power (each channel) d = 10 % f = 1 kHz Vs = 9 V RL = 4 Ω Vs = 6 V RL = 4 Ω Vs = 4.5 V RL = 4 Ω 1.3 0.45 1.7 0.65 0.32 W W W Gv Closed Loop Voltage Gain f = 1 kHz 36 39 41 dB Ri Input Resistance f = 1 kHz 100 kΩ eN Total Input Noise Rs = 10 kΩ B = 22 Hz to 22 kHz Curve A 2.5 2 µV µV SVR Supply Voltage Rejection f = 100 Hz 24 30 dB CS Channel Separation Rg = 10 kΩ f = 1 kHz 50 dB BRIDGE (test circuit of fig. 2) Vs Supply Voltage 3 15 V Id Quiescent Drain Current RL = ∞ 6 12 mA Vos Output Offset Voltage RL = 8 Ω 10 60 mV Ib Input Bias Current 100 nA Po Output Power d = 10 % f = 1 kHz Vs = 9 V RL = 8 Ω Vs = 6 V RL = 8 Ω Vs = 4.5 V RL = 4 Ω 2.7 0.9 3.2 1.35 1 W W W d Distortion (f = 1 kHz) RL = 8 Ω Po = 0.5 W 0.2 % Gv Closed Loop Voltage Gain f = 1 kHz 39 dB Ri Input Resistance f = 1 kHz 100 kΩ eN Total Input Noise Rs = 10 kΩ B = 22 Hz to 22 kHz Curve A 3 2.5 µV µV SVR Supply Voltage Rejection f = 100 Hz 40 dB SVTH: PHẠM VĂN VANG Trang LUẬN VĂN TỐT NGHIỆP Datasheet các IC Figure 1 : Test Circuit (stereo). Figure 2 : P.C. Board and Components Layout of the Circuit of Figure 1 (1:1 scale). SVTH: PHẠM VĂN VANG Trang LUẬN VĂN TỐT NGHIỆP Datasheet các IC Figure 3 : Test Circuit (bridge). Figure 4 : P.C. Board and Components Layout of the Circuit of Figure 3 (1:1 scale). LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG Figure 5 : Output Power vs. Supply Voltage (Stereo). Figure 6 : Output Power vs. Supply Voltage (Bridge). Figure 7 : Distorsion vs. Output Power (Bridge). Figure 8 : Distorsion vs. Output Power (Bridge). Figure 9 : Supply Voltage Rejection vs. Frequency. Figure 10 : Quiescent Current vs. Supply Voltage. LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG Figure 11 : Total Power Dissipation vs. Output Power (Stereo). Figure 12 : Total Power Dissipation vs. Output Power (Bridge). Figure 13 : Total Power Dissipation vs. Output Power (Bridge). LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG Figure 14 : Application Circuit for Portable Radios. MOUNTING INSTRUCTION The Rth j-amb of the TDA2822 can be reduced by sol- dering the GND pins to a suitable copper area of the printed circuit board (Figure 15) or to an external heatsink (Figure 16). The diagram of Figure 17 shows the maximum dis- sipable power Ptot and the Rth j-amb as a function of the side "∂" of two equal square copper areas having a thickness of 35 µ (1.4 mils). During soldering the pins temperature must not ex- ceed 260 °C and the soldering time must not be longer than 12 seconds. The external heatsink or printed circuit copper area must be connected to electrical ground. Figure 15 : Example of P.C. Board Copper Area which is used as Heatsink. Figure 16 : External Heatsink Mounting Example. LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG Figure 6 : Maximum Dissipable Power and Junction to Ambient Thermal Resistance vs. Side "∂". Figure 7 : Maximum Allowable Power Dissipation vs. Ambient Temperature. LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG POWERDIP 16 PACKAGE MECHANICAL DATA DIM. mm inch MIN. TYP. MAX. MIN. TYP. MAX. a1 0.51 0.020 B 0.85 1.40 0.033 0.055 b 0.50 0.020 b1 0.38 0.50 0.015 0.020 D 20.0 0.787 E 8.80 0.346 e 2.54 0.100 e3 17.78 0.700 F 7.10 0.280 I 5.10 0.201 L 3.30 0.130 Z 1.27 0.050 LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG 2. LM1117/LM1117I 800mA Low-Dropout Linear Regulator General Description The LM1117 is a series of low dropout voltage regulators with a dropout of 1.2V at 800mA of load current. It has the same pin-out as National Semiconductor’s industry standard LM317. The LM1117 is available in an adjustable version, which can set the output voltage from 1.25V to 13.8V with only two external resistors. In addition, it is also available in five fixed voltages, 1.8V, 2.5V, 2.85V, 3.3V, and 5V. The LM1117 offers current limiting and thermal shutdown. Its circuit includes a zener trimmed bandgap reference to as- sure output voltage accuracy to within ±1%. The LM1117 series is available in SOT-223, TO-220, and TO-252 D-PAK packages. A minimum of 10µF tantalum ca- pacitor is required at the output to improve the transient response and stability. Features n Available in 1.8V, 2.5V, 2.85V, 3.3V, 5V, and Adjustable Versions n Space Saving SOT-223 Package n Current Limiting and Thermal Protection n Output Current 800mA n Line Regulation 0.2% (Max) n Load Regulation 0.4% (Max) n Temperature Range — LM1117 0˚C to 125˚C — LM1117I −40˚C to 125˚C Applications n 2.85V Model for SCSI-2 Active Termination n Post Regulator for Switching DC/DC Converter n High Efficiency Linear Regulators n Battery Charger n Battery Powered Instrumentation Typical Application Active Terminator for SCSI-2 Bus DS100919-5 Fixed Output Regulator DS100919-28 LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG Package Temperature Range Part Number Packaging Marking Transport Media NSC Drawing 3-lead SOT-223 0˚C to +125˚C LM1117MPX-ADJ N03A Tape and Reel MA04A LM1117MPX-1.8 N12A Tape and Reel LM1117MPX-2.5 N13A Tape and Reel LM1117MPX-2.85 N04A Tape and Reel LM1117MPX-3.3 N05A Tape and Reel LM1117MPX-5.0 N06A Tape and Reel −40˚C to +125˚C LM1117IMPX-ADJ N03B Tape and Reel LM1117IMPX-3.3 N05B Tape and Reel LM1117IMPX-5.0 N06B Tape and Reel 3-lead TO-220 0˚C to +125˚C LM1117T-ADJ LM1117T-ADJ Rails T03B LM1117T-2.85 LM1117T-2.85 Rails LM1117T-3.3 LM1117T-3.3 Rails LM1117T-5.0 LM1117T-5.0 Rails 3-lead TO-252 0˚C to +125˚C LM1117DTX-ADJ LM1117DT-ADJ Tape and Reel TD03B LM1117DTX-1.8 LM1117DT-1.8 Tape and Reel LM1117DTX-2.5 LM1117DT-2.5 Tape and Reel LM1117DTX-2.85 LM1117DT-2.85 Tape and Reel LM1117DTX-3.3 LM1117DT-3.3 Tape and Reel LM1117DTX-5.0 LM1117DT-5.0 Tape and Reel −40˚C to +125˚C LM1117IDTX-ADJ LM1117IDT-ADJ Tape and Reel LM1117IDTX-3.3 LM1117IDT-3.3 Tape and Reel LM1117IDTX-5.0 LM1117IDT-5.0 Tape and Reel Block Diagram DS100919-1 LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG Connection Diagrams SOT-223 DS100919-4 Top View TO-220 DS100919-2 Top View TO-252 DS100919-38 Top View LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG Absolute Maximum Ratings (Note 1) If Military/Aerospace specified devices are required, please contact the National Semiconductor Sales Office/ Distributors for availability and specifications. Maximum Input Voltage (VIN to GND) LM1117-ADJ, LM1117-1.8, LM1117-2.5, LM1117-3.3, LM1117-5.0, LM1117I-ADJ, LM1117I-3.3, LM1117I-5.0 20V Power Dissipation (Note 2) Internally Limited Junction Temperature (TJ) (Note 2) 150˚C Storage Temperature Range -65˚C to 150˚C Lead Temperature TO-220 (T) Package 260˚C, 10 sec SOT-223 (IMP) Package 260˚C, 4 sec ESD Tolerance (Note 3) 2000V Operating Ratings (Note 1) Input Voltage (VIN to GND) LM1117-ADJ, LM1117-1.8, LM1117-2.5, LM1117-3.3, LM1117-5.0, LM1117I-ADJ, LM1117I-3.3, LM1117I-5.0 15V LM1117-2.85 10V Junction Temperature Range (TJ)(Note 2) LM1117 0˚C to 125˚C LM1117I −40˚C to 125˚C LM1117 Electrical Characteristics Typicals and limits appearing in normal type apply for TJ = 25˚C. Limits appearing in Boldface type apply over the entire junc- tion temperature range for operation, 0˚C to 125˚C. Symbol Parameter Conditions Min(Note 5) Typ (Note 4) Max (Note 5) Units VREF Reference Voltage LM1117-ADJ IOUT = 10mA, VIN-VOUT = 2V, TJ = 25˚C 10mA ≤ IOUT ≤ 800mA, 1.4V ≤ VIN-VOUT ≤ 10V 1.238 1.225 1.250 1.250 1.262 1.270 V V VOUT Output Voltage LM1117-1.8 IOUT = 10mA, VIN = 3.8V, TJ = 25˚C 0 ≤ IOUT ≤ 800mA, 3.2V ≤ VIN ≤ 10V 1.782 1.746 1.800 1.800 1.818 1.854 V V LM1117-2.5 IOUT = 10mA, VIN = 4.5V, TJ = 25˚C 0 ≤ IOUT ≤ 800mA, 3.9V ≤ VIN ≤ 10V 2.475 2.450 2.500 2.500 2.525 2.550 V V LM1117-2.85 IOUT = 10mA, VIN = 4.85V, TJ = 25˚C 0 ≤ IOUT ≤ 800mA, 4.25V ≤ VIN ≤ 10V 0 ≤ IOUT ≤ 500mA, VIN = 4.10V 2.820 2.790 2.790 2.850 2.850 2.850 2.880 2.910 2.910 V V V LM1117-3.3 IOUT = 10mA, VIN = 5V TJ = 25˚C 0 ≤ IOUT ≤ 800mA, 4.75V≤ VIN ≤ 10V 3.267 3.235 3.300 3.300 3.333 3.365 V V LM1117-5.0 IOUT = 10mA, VIN = 7V, TJ = 25˚C 0 ≤ IOUT ≤ 800mA, 6.5V ≤ VIN ≤ 12V 4.950 4.900 5.000 5.000 5.050 5.100 V V ∆VOUT Line Regulation (Note 6) LM1117-ADJ IOUT = 10mA, 1.5V ≤ VIN-VOUT ≤ 13.75V 0.035 0.2 % LM1117-1.8 IOUT = 0mA, 3.2V ≤ VIN ≤ 10V 1 6 mV LM1117-2.5 IOUT = 0mA, 3.9V ≤ VIN ≤ 10V 1 6 mV LM1117-2.85 IOUT = 0mA, 4.25V ≤ VIN ≤ 10V 1 6 mV LM1117-3.3 IOUT = 0mA, 4.75V ≤ VIN ≤ 15V 1 6 mV LM1117-5.0 IOUT = 0mA, 6.5V ≤ VIN ≤ 15V 1 10 mV LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG Typicals and limits appearing in normal type apply for TJ = 25˚C. Limits appearing in Boldface type apply over the entire junc- tion temperature range for operation, 0˚C to 125˚C. Symbol Parameter Conditions Min(Note 5) Typ (Note 4) Max (Note 5) Units ∆VOUT Load Regulation (Note 6) LM1117-ADJ VIN-VOUT = 3V, 10 ≤ IOUT ≤ 800mA 0.2 0.4 % LM1117-1.8 VIN = 3.2V, 0 ≤ IOUT ≤ 800mA 1 10 mV LM1117-2.5 VIN = 3.9V, 0 ≤ IOUT ≤ 800mA 1 10 mV LM1117-2.85 VIN = 4.25V, 0 ≤ IOUT ≤ 800mA 1 10 mV LM1117-3.3 VIN = 4.75V, 0 ≤ IOUT ≤ 800mA 1 10 mV LM1117-5.0 VIN = 6.5V, 0 ≤ IOUT ≤ 800mA 1 15 mV VIN-V OUT Dropout Voltage (Note 7) IOUT = 100mA 1.10 1.20 V IOUT = 500mA 1.15 1.25 V IOUT = 800mA 1.20 1.30 V ILIMIT Current Limit VIN-VOUT = 5V, TJ = 25˚C 800 1200 1500 mA Minimum Load Current (Note 8) LM1117-ADJ VIN = 15V 1.7 5 mA Quiescent Current LM1117-1.8 VIN ≤ 15V 5 10 mA LM1117-2.5 VIN ≤ 15V 5 10 mA LM1117-2.85 VIN ≤ 10V 5 10 mA LM1117-3.3 VIN ≤ 15V 5 10 mA LM1117-5.0 VIN ≤ 15V 5 10 mA Thermal Regulation TA = 25˚C, 30ms Pulse 0.01 0.1 %/W Ripple Regulation fRIPPLE =1 20Hz, VIN-VOUT = 3V VRIPPLE = 1VPP 60 75 dB Adjust Pin Current 60 120 µA Adjust Pin Current Change 10 ≤ IOUT≤ 800mA, 1.4V ≤ VIN-VOUT ≤ 10V 0.2 5 µA Temperature Stability 0.5 % Long Term Stability TA = 125˚C, 1000Hrs 0.3 % RMS Output Noise (% of VOUT), 10Hz ≤ f ≤10kHz 0.003 % Thermal Resistance Junction-to-Case 3-Lead SOT-223 3-Lead TO-220 3-Lead TO-252 15.0 3.0 10 ˚C/W ˚C/W ˚C/W Thermal Resistance Junction-to-Ambient (No heat sink; No air flow) 3-Lead SOT-223 3-Lead TO-220 3-Lead TO-252 (Note 9) 136 79 92 ˚C/W ˚C/W ˚C/W LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG Typicals and limits appearing in normal type apply for TJ = 25˚C. Limits appearing in Boldface type apply over the entire junc- tion temperature range for operation, −40˚C to 125˚C. Symbol Parameter Conditions Min(Note 5) Typ (Note 4) Max (Note 5) Units VREF Reference Voltage LM1117I-ADJ IOUT = 10mA, VIN-VOUT = 2V, TJ = 25˚C 10mA ≤ IOUT ≤ 800mA, 1.4V ≤ VIN-VOUT ≤ 10V 1.238 1.200 1.250 1.250 1.262 1.290 V V VOUT Output Voltage LM1117I-3.3 IOUT = 10mA, VIN = 5V, TJ = 25˚C 0 ≤ IOUT ≤ 800mA, 4.75V ≤ VIN ≤ 10V 3.267 3.168 3.300 3.300 3.333 3.432 V V LM1117I-5.0 IOUT = 10mA, VIN = 7V, TJ = 25˚C 0 ≤ IOUT ≤ 800mA, 6.5V ≤ VIN ≤ 12V 4.950 4.800 5.000 5.000 5.050 5.200 V V ∆VOUT Line Regulation (Note 6) LM1117I-ADJ IOUT = 10mA, 1.5V ≤ VIN-VOUT ≤ 13.75V 0.035 0.3 % LM1117I-3.3 IOUT = 0mA, 4.75V ≤ VIN ≤ 15V 1 10 mV LM1117I-5.0 IOUT = 0mA, 6.5V ≤ VIN ≤ 15V 1 15 mV ∆VOUT Load Regulation (Note 6) LM1117I-ADJ VIN-VOUT = 3V, 10 ≤ IOUT ≤ 800mA 0.2 0.5 % LM1117I-3.3 VIN = 4.75V, 0 ≤ IOUT ≤ 800mA 1 15 mV LM1117I-5.0 VIN = 6.5V, 0 ≤ IOUT ≤ 800mA 1 20 mV VIN-V OUT Dropout Voltage (Note 7) IOUT = 100mA 1.10 1.30 V IOUT = 500mA 1.15 1.35 V IOUT = 800mA 1.20 1.40 V ILIMIT Current Limit VIN-VOUT = 5V, TJ = 25˚C 800 1200 1500 mA Minimum Load Current (Note 8) LM1117I-ADJ VIN = 15V 1.7 5 mA Quiescent Current LM1117I-3.3 VIN ≤ 15V 5 15 mA LM1117I-5.0 VIN ≤ 15V 5 15 mA Thermal Regulation TA = 25˚C, 30ms Pulse 0.01 0.1 %/W Ripple Regulation fRIPPLE =1 20Hz, VIN-VOUT = 3V VRIPPLE = 1VPP 60 75 dB Adjust Pin Current 60 120 µA Adjust Pin Current Change 10 ≤ IOUT≤ 800mA, 1.4V ≤ VIN-VOUT ≤ 10V 0.2 10 µA Temperature Stability 0.5 % Long Term Stability TA = 125˚C, 1000Hrs 0.3 % RMS Output Noise (% of VOUT), 10Hz ≤ f ≤10kHz 0.003 % Thermal Resistance Junction-to-Case 3-Lead SOT-223 -Lead TO-252 15.0 10 ˚C/W ˚C/W Thermal Resistance Junction-to-Ambient (No heat sink; No air flow) 3-Lead SOT-223 3-Lead TO-252 (Note 9) 136 92 ˚C/W ˚C/W Note 1: Absolute Maximum Ratings indicate limits beyond which damage to the device may occur. Operating Ratings indicate conditions for which the device is intended to be functional, but specific performance is not guaranteed. For guaranteed specifications and the test conditions, see the Electrical Characteristics. Note 2: The maximum power dissipation is a function of TJ(max) , θJA, and TA. The maximum allowable power dissipation at any ambient temperature is PD = (TJ(max)–TA)/θJA. All numbers apply for packages soldered directly into a PC board. LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG Note 3: For testing purposes, ESD was applied using human body model, 1.5kΩ in series with 100pF. Note 4: Typical Values represent the most likely parametric norm. Note 5: All limits are guaranteed by testing or statistical analysis. Note 6: Load and line regulation are measured at constant junction room temperature. Note 7: The dropout voltage is the input/output differential at which the circuit ceases to regulate against further reduction in input voltage. It is measured when the output voltage has dropped 100mV from the nominal value obtained at VIN = VOUT +1.5V. Note 8: The minimum output current required to maintain regulation. Note 9: Minimum pad size of 0.038in2 Typical Performance Characteristics Dropout Voltage (VIN-V OUT) DS100919-22 Short-Circuit Current DS100919-23 Load Regulation DS100919-43 LM1117-ADJ Ripple Rejection DS100919-6 LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG LM1117-ADJ Ripple Rejection vs. Current DS100919-7 Temperature Stability DS100919-25 Adjust Pin Current DS100919-26 LM1117-2.85 Load Transient Response DS100919-8 LM1117-5.0 Load Transient Response DS100919-9 LM1117-2.85 Line Transient Response DS100919-10 LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG APPLICATION NOTE 1.0 External Capacitors/Stability 1.1 Input Bypass Capacitor An input capacitor is recommended. A 10µF tantalum on the input is a suitable input bypassing for almost all applications. 1.2 Adjust Terminal Bypass Capacitor The adjust terminal can be bypassed to ground with a by- pass capacitor (CADJ) to improve ripple rejection. This by- pass capacitor prevents ripple from being amplified as the output voltage is increased. At any ripple frequency, the impedance of the CADJ should be less than R1 to prevent the ripple from being amplified: 1/(2pi*fRIPPLE*CADJ) < R1 The R1 is the resistor between the output and the adjust pin. Its value is normally in the range of 100-200Ω. For example, with R1 = 124Ω and fRIPPLE = 120Hz, the CADJ should be > 11µF. 1.3 Output Capacitor The output capacitor is critical in maintaining regulator sta- bility, and must meet the required conditions for both mini- mum amount of capacitance and ESR (Equivalent Series Resistance). The minimum output capacitance required by the LM1117 is 10µF, if a tantalum capacitor is used. Any increase of the output capacitance will merely improve the loop stability and transient response. The ESR of the output capacitor should be less than 0.5Ω. In the case of the adjustable regulator, when the CADJ is used, a larger output capacitance (22µf tantalum) is required. 2.0 Output Voltage The LM1117 adjustable version develops a 1.25V reference voltage, VREF, between the output and the adjust terminal. As shown in Figure 1, this voltage is applied across resistor R1 to generate a constant current I1. The current IADJ from the adjust terminal could introduce error to the output. But since it is very small (60µA) compared with the I1 and very constant with line and load changes, the error can be ig- nored. The constant current I1 then flows through the output set resistor R2 and sets the output voltage to the desired level. For fixed voltage devices, R1 and R2 are integrated inside the devices. 3.0 Load Regulation The LM1117 regulates the voltage that appears between its output and ground pins, or between its output and adjust pins. In some cases, line resistances can introduce errors to the voltage across the load. To obtain the best load regula- tion, a few precautions are needed. Figure 2, shows a typical application using a fixed output regulator. The Rt1 and Rt2 are the line resistances. It is obvious that the VLOAD is less than the VOUT by the sum of the voltage drops along the line resistances. In this case, the load regulation seen at the RLOAD would be degraded from the data sheet specification. To improve this, the load should be tied directly to the output terminal on the positive side and directly tied to the ground terminal on the negative side. LM1117-5.0 Line Transient Response DS100919-11 DS100919-17 FIGURE 1. Basic Adjustable Regulator DS100919-18 FIGURE 2. Typical Application using Fixed Output Regulator LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG APPLICATION NOTE When the adjustable regulator is used (Figure 3), the best performance is obtained with the positive side of the resistor R1 tied directly to the output terminal of the regulator rather than near the load. This eliminates line drops from appearing effectively in series with the reference and degrading regu- lation. For example, a 5V regulator with 0.05Ω resistance between the regulator and load will have a load regulation due to line resistance of 0.05Ω x IL. If R1 (=125Ω) is con- nected near the load, the effective line resistance will be 0.05Ω (1+R2/R1) or in this case, it is 4 times worse. In addition, the ground side of the resistor R2 can be returned near the ground of the load to provide remote ground sens- ing and improve load regulation. 4.0 Protection Diodes Under normal operation, the LM1117 regulators do not need any protection diode. With the adjustable device, the internal resistance between the adjust and output terminals limits the current. No diode is needed to divert the current around the regulator even with capacitor on the adjust terminal. The adjust pin can take a transient signal of ±25V with respect to the output voltage without damaging the device. When a output capacitor is connected to a regulator and the input is shorted to ground, the output capacitor will discharge into the output of the regulator. The discharge current de- pends on the value of the capacitor, the output voltage of the regulator, and rate of decrease of VIN. In the LM1117 regu- lators, the internal diode between the output and input pins can withstand microsecond surge currents of 10A to 20A. With an extremely large output capacitor (≥1000 µF), and with input instantaneously shorted to ground, the regulator could be damaged. In this case, an external diode is recommended between the output and input pins to protect the regulator, as shown in Figure 4. 5.0 Heatsink Requirements When an integrated circuit operates with an appreciable current, its junction temperature is elevated. It is important to quantify its thermal limits in order to achieve acceptable performance and reliability. This limit is determined by sum- ming the individual parts consisting of a series of tempera- ture rises from the semiconductor junction to the operating environment. A one-dimensional steady-state model of con- duction heat transfer is demonstrated in Figure 5. The heat generated at the device junction flows through the die to the die attach pad, through the lead frame to the surrounding case material, to the printed circuit board, and eventually to the ambient environment. Below is a list of variables that may affect the thermal resistance and in turn the need for a heatsink. RθJC(Component Vari- ables) RθCA (Application Vari- ables) Leadframe Size & Material Mounting Pad Size, Material, & Location No. of Conduction Pins Placement of Mounting Pad Die Size PCB Size & Material Die Attach Material Traces Length & Width Molding Compound Size and Material Adjacent Heat Sources Volume of Air Ambient Temperatue Shape of Mounting Pad DS100919-19 FIGURE 3. Best Load Regulation using Adjustable Output Regulator DS100919-15 FIGURE 4. Regulator with Protection Diode DS100919-37 FIGURE 5. Cross-sectional view of Integrated Circuit Mounted on a printed circuit board. Note that the case temperature is measured at the point where the leads contact with the mounting pad surface LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG APPLICATION NOTE (Continued) The LM1117 regulators have internal thermal shutdown to protect the device from over-heating. Under all possible operating conditions, the junction temperature of the LM1117 must be within the range of 0˚C to 125˚C. A heatsink may be required depending on the maximum power dissipation and maximum ambient temperature of the application. To deter- mine if a heatsink is needed, the power dissipated by the regulator, PD , must be calculated: IIN = IL + IG PD = (VIN-VOUT)I L + VINIG Figure 6 shows the voltages and currents which are present in the circuit. The next parameter which must be calculated is the maxi- mum allowable temperature rise, TR(max): TR(max) = TJ(max)-TA(max) where TJ(max) is the maximum allowable junction tempera- ture (125˚C), and TA(max) is the maximum ambient tem- perature which will be encountered in the application. Using the calculated values for TR(max) and PD, the maxi- mum allowable value for the junction-to-ambient thermal resistance (θJA) can be calculated: θJA = TR(max)/PD If the maximum allowable value for θJA is found to be ≥136˚C/W for SOT-223 package or ≥79˚C/W for TO-220 package or ≥92˚C/W for TO-252 package, no heatsink is needed since the package alone will dissipate enough heat to satisfy these requirements. If the calculated value for θJA falls below these limits, a heatsink is required. As a design aid, Table 1 shows the value of the θJA of SOT-223 and TO-252 for different heatsink area. The copper patterns that we used to measure these θJAs are shown at the end of the Application Notes Section. Figure 7 and Figure 8 reflects the same test results as what are in the Table 1 Figure 9 and Figure 10 shows the maximum allowable power dissipation vs. ambient temperature for the SOT-223 and TO-252 device. Figures Figure 11 and Figure 12 shows the maximum allowable power dissipation vs. copper area (in2) for the SOT-223 and TO-252 devices. Please see AN1028 for power enhancement techniques to be used with SOT-223 and TO-252 packages. TABLE 1. θJA Different Heatsink Area Layout Copper Area Thermal Resistance Top Side (in2)* Bottom Side (in2) (θJA,˚C/W) SOT-223 (θJA,˚C/W) TO-252 1 0.0123 0 136 103 2 0.066 0 123 87 3 0.3 0 84 60 4 0.53 0 75 54 5 0.76 0 69 52 6 1 0 66 47 7 0 0.2 115 84 8 0 0.4 98 70 9 0 0.6 89 63 10 0 0.8 82 57 11 0 1 79 57 12 0.066 0.066 125 89 13 0.175 0.175 93 72 14 0.284 0.284 83 61 15 0.392 0.392 75 55 16 0.5 0.5 70 53 *Tab of device attached to topside copper DS100919-16 FIGURE 6. Power Dissipation Diagram LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG DS100919-13 FIGURE 7. θJA vs. 1oz Copper Area for SOT-223 DS100919-34 FIGURE 8. θJA vs. 2oz Copper Area for TO-252 DS100919-12 FIGURE 9. Maximum Allowable Power Dissipation vs. Ambient Temperature for SOT-223 DS100919-36 FIGURE 10. Maximum Allowable Power Dissipation vs. Ambient Temperature for TO-252 DS100919-14 FIGURE 11. Maximum Allowable Power Dissipation vs. 1oz Copper Area for SOT-223 DS100919-35 FIGURE 12. Maximum Allowable Power Dissipation vs. 2oz Copper Area for TO-252 LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG DS100919-41 FIGURE 13. Top View of the Thermal Test Pattern in Actual Scale LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG DS100919-42 FIGURE 14. Bottom View of the Thermal Test Pattern in Actual Scale LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG Typical Application Circuits DS100919-30 Adjusting Output of Fixed Regulators DS100919-31 Regulator with Reference DS100919-29 1.25V to 10V Adjustable Regulator with Improved Ripple Rejection DS100919-27 5V Logic Regulator with Electronic Shutdown* DS100919-32 Battery Backed-Up Regulated Supply LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG Typical Application Circuits (Continued) DS100919-33 Low Dropout Negative Supply LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG Physical Dimensions inches (millimeters) unless otherwise noted 3-Lead SOT-223 NS Package Number MA04A LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG Physical Dimensions inches (millimeters) unless otherwise noted (Continued) 3-Lead TO-220 NS Package Number T03B LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG Physical Dimensions inches (millimeters) unless otherwise noted (Continued) 3-Lead TO-252 NS Package Number TD03B LUẬN VĂN TỐT NGHIỆP Datasheet các IC SVTH: PHẠM VĂN VANG

Các file đính kèm theo tài liệu này:

  • pdfMáy Nghe Nhạc Sử Dụng Chip ARM CORTEX-M3 32-Bit.pdf