![]() |
|
Tài trợ cho PIC Vietnam |
Giao tiếp USB, CAN, I2C, SPI, USART... Những giao tiếp được tích hợp trên PIC |
![]() |
|
Ðiều Chỉnh | Xếp Bài |
|
![]() |
#1 |
Nhập môn đệ tử
Tham gia ngày: Oct 2007
Bài gửi: 9
: |
Bạn cứ làm theo sơ đồ trên trang http://www.teuthis.com/html/mmc_mp3.html với PIC16F88 vẫn chạy bình thường(với nguồn 3V3), không cần PIC16LF88, nhưng chắc chắn mạch trên không chỉnh âm lượng hoặc bass, treble được( chỉ có thể nhảy bài tới/lui, tạm dừng/hát thôi). Vì trong sơ đồ trên,vi điều khiển có thể ghi, đọc thẻ nhớ bằng đường truyền SPI( SDI(PIC) nối DO(MMC); SDO(PIC) nối DI(MMC)), còn vi điều khiển chỉ giao tiếp với VS1011 qua mấy chân XCS, XDCS,DREQ... chứ không qua đường SPI.
Sơ đồ trên hoạt động theo cách như sau:Vi điều khiển khởi tạo chế độ SPI của thẻ, tìm đến sector đầu tiên của file mp3 thông qua bảng FAT32; vi điều khiển gởi lệnh đọc(sector đầu tiên) đến thẻ nhớ; cho phép VS1011 hoạt động, vì chân SI của VS1011 nối với chân DO của thẻ nhớ trên bus SPI nên khi thẻ nhớ gởi dữ liệu ra, VS1011 sẽ đọc được và giải mã; cứ như vậy mỗi khi buffer trên VS1011 cạn, nó lại thông báo với vi điều khiển qua chân DREQ --> vi điều khiển lại ra lệnh đọc các sector tiếp theo từ thẻ nhớ, khi thẻ nhớ đẩy dữ liệu ra, VS1011 lại "đọc ké", cứ như vậy cho đến hết bài nhạc. Và nếu chưa chỉnh gì thì volume mặc định mà VS1011 xuất ra là mức cao nhất (255). Chân SO của VS1011 trên sơ đồ trên để trống vì trong project trên, tác giả không cần dùng ram đa dụng trên VS1011 hay đọc nội dung từ thanh ghi nào trong VS1011 hết. thay đổi nội dung bởi: xuandinh87, 08-06-2010 lúc 02:25 AM. |
![]() |
![]() |
![]() |
#2 |
Nhập môn đệ tử
Tham gia ngày: Nov 2008
Bài gửi: 4
: |
Cảm ơn mọi người đã giúp đỡ em đặc biệt là anh Xuandinh87. Mạch của em đã chạy và hoạt động ngon lành
|
![]() |
![]() |
![]() |
#3 | |
Đệ tử 1 túi
Tham gia ngày: Dec 2008
Bài gửi: 18
: |
Trích:
|
|
![]() |
![]() |
![]() |
#4 |
Nhập môn đệ tử
Tham gia ngày: Apr 2010
Bài gửi: 3
: |
tín hiệu DREQ.
The DREQ pin/signal is used to signal if VS1011e’s FIFO is capable of receiving data. If DREQ is high,
VS1011e can take at least 32 bytes of SDI data or one SCI command. When these criteria are not met, DREQ is turned low, and the sender should stop transferring new data. tớ nghĩ thế này mong mọi người góp ý:chân hay tín hiệu DREQ được sử dụng để báo hiệu xem bộ đệm vào trước ra trước của VS1011e có khả năng nhận dữ liệu nữa không.Nếu DREQ ở mức cao thì VS1011e có thể nhận ít nhất 32byte dữ liệu qua SDI hoặc 1 lênh qua SCI.Nếu nó ở mức thấp thì phải ngừng gứi dữ liệu mới! |
![]() |
![]() |
![]() |
#5 | |
Nhập môn đệ tử
Tham gia ngày: Mar 2015
Bài gửi: 2
: |
Trích:
|
|
![]() |
![]() |
![]() |
Ðiều Chỉnh | |
Xếp Bài | |
|
|