<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>انجمن های تخصصی برق و الکترونیک ECA - سایر ماژول‌ها و سنسورهای کاربردی</title>
		<link>https://forum.eca.ir/</link>
		<description>راه‌اندازی و آموزش ماژول‌های تغذیه، صوت، رله و مبدل‌ها، سنسورهای فاصله، حرکت، نور و گاز و اتصال آن‌ها به میکروکنترلرها.</description>
		<language>fa</language>
		<lastBuildDate>Sat, 14 Nov 2026 21:49:36 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>60</ttl>
		<image>
			<url>https://forum.eca.ir/images/logo/apple-touch-icon.png</url>
			<title>انجمن های تخصصی برق و الکترونیک ECA - سایر ماژول‌ها و سنسورهای کاربردی</title>
			<link>https://forum.eca.ir/</link>
		</image>
		<item>
			<title>چرا DFPlayer با اسم دلخواه آهنگ ها رو پخش میکنه ولی وقتی به میکرو وصلش میکنیم روی اسم فایل و پوشه گیر میده؟</title>
			<link>https://forum.eca.ir/forum/ماژول-ها-و-سنسورهای-الکترونیکی-و-مخابراتی/سایر-ماژول-ها/1166914-چرا-dfplayer-با-اسم-دلخواه-آهنگ-ها-رو-پخش-میکنه-ولی-وقتی-به-میکرو-وصلش-میکنیم-روی-اسم-فایل-و-پوشه-گیر-میده؟</link>
			<pubDate>Sat, 14 Nov 2026 12:35:13 GMT</pubDate>
			<description>یکی از اون دردسرهای بامزه DFPlayer Mini دقیقا همین جاست 
 
فرض کنید چند تا فایل صوتی داریم با اسم های دلخواه مثل alarm.mp3 و welcome.mp3 و music.mp3...</description>
			<content:encoded><![CDATA[یکی از اون دردسرهای بامزه DFPlayer Mini دقیقا همین جاست<br />
<br />
فرض کنید چند تا فایل صوتی داریم با اسم های دلخواه مثل alarm.mp3 و welcome.mp3 و music.mp3<br />
<br />
فایل ها رو روی کارت حافظه میریزیم و ماژول رو بدون میکروکنترلر راه میندازیم. با کلیدهای Next و Previous هم آهنگ ها یکی یکی پخش میشن و همه چیز مرتبه.<br />
<br />
حالا همون ماژول رو به آردوینو وصل میکنیم و میخوایم با یه فرمان مشخص صدای هشدار رو پخش کنیم.<br />
<br />
اینجاست که ممکنه آهنگ اشتباهی پخش بشه یا اصلا خبری از صدا نباشه!<br />
<br />
آدم اول فکر میکنه مشکل از ارتباط سریال یا برنامه آردوینو هست ولی خیلی وقت ها ماجرا به روش پیدا کردن فایل ها برمیگرده.<br />
<br />
<b>چرا پخش مستقل با هر اسمی کار میکنه؟</b><br />
<br />
ماژول DFPlayer Mini علاوه بر ارتباط UART قابلیت کنترل مستقیم با کلیدهای IO و ADKEY رو هم داره.<br />
<br />
وقتی از کلیدهای Next و Previous استفاده میکنیم ماژول معمولا بین فایل های صوتی شناسایی شده جابه جا میشه.<br />
<br />
برای این کار لازم نیست حتما اسم فایل ها معنی خاصی داشته باشه.<br />
<br />
ماژول اطلاعات فایل ها رو از سیستم فایل کارت حافظه میخونه و میتونه بین اونها حرکت کنه.<br />
<br />
ولی یه نکته مهم وجود داره.<br />
<br />
ترتیب پخش لزوما براساس اسم فایل ها نیست و در بعضی فرمان ها به ترتیب ثبت فایل ها روی کارت حافظه بستگی داره.<br />
<br />
یعنی ممکنه فایلی که اسمش 0001.mp3 هست اولین آهنگ پخش شده نباشه!<br />
<br />
<b>پس وقتی میکروکنترلر وارد ماجرا میشه چی تغییر میکنه؟</b><br />
<br />
در واقع خود ماژول عوض نشده. فقط روش انتخاب آهنگ فرق کرده.<br />
<br />
وقتی از طریق UART فرمان ارسال میکنیم چند روش مختلف برای انتخاب فایل داریم که هر کدوم قواعد خودشون رو دارن.<br />
<br />
مثلا در کتابخانه معروف DFRobotDFPlayerMini فرمان زیر وجود داره.<br />
<br />
myDFPlayer.play(1);<br />
<br />
این فرمان معمولا آهنگ شماره 1 رو براساس ترتیب داخلی فایل های شناسایی شده انتخاب میکنه و الزاما دنبال فایلی با اسم 0001.mp3 نمیگرده.<br />
<br />
پس اگه فایل ها رو با ترتیب متفاوت روی کارت حافظه کپی کرده باشیم ممکنه نتیجه چیزی نباشه که انتظار داریم.<br />
<br />
ولی فرمان زیر داستان متفاوتی داره.<br />
<br />
myDFPlayer.playMp3Folder(1);<br />
<br />
در فریمورهای سازگار این فرمان سراغ پوشه مخصوص MP3 میره و فایل شماره 0001.mp3 رو انتخاب میکنه.<br />
<br />
ساختار فایل ها باید به این شکل باشه.<br />
MicroSD<br />
└── MP3<br />
├── 0001.mp3<br />
├── 0002.mp3<br />
└── 0003.mp3<br />
<br />
حالا اگه بخوایم آهنگ ها رو داخل پوشه های جداگانه قرار بدیم میتونیم از فرمان انتخاب پوشه و فایل استفاده کنیم.<br />
<br />
مثلا<br />
<br />
myDFPlayer.playFolder(1, 2);<br />
<br />
در ماژول های سازگار با این پروتکل یعنی فایل 002.mp3 از پوشه 01 پخش بشه.<br />
<br />
ساختار کارت حافظه هم به این صورت میشه.<br />
MicroSD<br />
├── 01<br />
│ ├── 001.mp3<br />
│ └── 002.mp3<br />
└── 02<br />
├── 001.mp3<br />
└── 002.mp3<br />
<br />
طبق مستندات اصلی DFPlayer در این روش پوشه ها معمولا از 01 تا 99 شماره گذاری میشن و هر پوشه میتونه تا 255 فایل با شماره های سه رقمی داشته باشه.<br />
<br />
<b>یه نکته ریز که حسابی دردسر درست میکنه!</b><br />
<br />
فرض کنید روی کارت حافظه 3 تا آهنگ داریم.<br />
<br />
اول فایل 0003.mp3 رو کپی میکنیم و بعد 0001.mp3 و در آخر 0002.mp3 رو.<br />
<br />
ممکنه وقتی فرمان play با شماره 1 رو میفرستیم فایل 0003.mp3 پخش بشه!<br />
<br />
چون در این روش شماره آهنگ میتونه به ترتیب ثبت فایل ها روی کارت وابسته باشه نه شماره ای که داخل اسم فایل نوشته شده.<br />
<br />
حالا اگه فقط اسم فایل ها رو تغییر بدیم لزوما ترتیب داخلی هم اصلاح نمیشه.<br />
<br />
برای همین یکی از راه های کم کردن خطا اینه که کارت حافظه رو با FAT32 فرمت کنیم و فایل ها رو به ترتیب دلخواه دوباره کپی کنیم.<br />
<br />
البته برای انتخاب دقیق و قابل پیش بینی فایل بهتره از ساختار پوشه و نام گذاری مخصوص فرمان مورد استفاده کمک بگیریم.<br />
<br />
<b>آیا همه DFPlayer Mini ها دقیقا همین رفتار رو دارن؟</b><br />
<br />
اینجا باید حواسمون جمع باشه.<br />
<br />
بردهای مختلفی با اسم DFPlayer Mini توی بازار وجود دارن و ممکنه تراشه و فریمور داخلی اونها متفاوت باشه.<br />
<br />
برای همین پشتیبانی از بعضی فرمان ها و نحوه تفسیر شماره فایل همیشه یکسان نیست.<br />
<br />
حتی ممکنه یه برد با کلیدها کاملا درست کار کنه ولی با یه فرمان خاص از کتابخانه آردوینو نتیجه متفاوتی بده.<br />
<br />
پس اگه اسم گذاری رو درست انجام دادیم و باز هم فایل مورد نظر پخش نشد بهتره سازگاری فرمان و کتابخانه با نسخه ماژول رو هم بررسی کنیم.<img src="https://forum.eca.ir/core/images/smilies/Various-017.png" border="0" alt="" title="Various 017" smilieid="341" class="inlineimg" /><br />
]]></content:encoded>
			<category domain="https://forum.eca.ir/forum/ماژول-ها-و-سنسورهای-الکترونیکی-و-مخابراتی/سایر-ماژول-ها">سایر ماژول‌ها و سنسورهای کاربردی</category>
			<dc:creator>دکتر شیبابا</dc:creator>
			<guid isPermaLink="true">https://forum.eca.ir/forum/ماژول-ها-و-سنسورهای-الکترونیکی-و-مخابراتی/سایر-ماژول-ها/1166914-چرا-dfplayer-با-اسم-دلخواه-آهنگ-ها-رو-پخش-میکنه-ولی-وقتی-به-میکرو-وصلش-میکنیم-روی-اسم-فایل-و-پوشه-گیر-میده؟</guid>
		</item>
	</channel>
</rss>
