نمایش/عدم نمایش سایدبار
رفتن به بالای صفحه
آزادی حجاز از دست نااهلان
مهدی دمیرچیلو

پروژه و کتابخونه و آموزش nrf24l01 با آردوینو

به نام خدا : بلاخره کتابخونه nRF24L01 رو نوشتم و تو سایت ECA منتشر کردم، چند وقتی بود میخواستم تو سایت خودم هم قرارش بدم ولی حالش رو نداشتم، این کتابخونه برای برد آردوینو هستش، تقریبا از تمام امکانات اصلی ماژول NRF24L01 استفاده کردم در این کتابخونه، کتابخونه دو سری NRF24L01 و +NRF24L01 رو براتون قرار دادم در این مطلب، پروژه نمونه، پروژه های نمونه بیشتر با این کتابخونه رو بعدا براتون میزارم، این پروژه هایی که میزارم، پروژه آردوینو هستن فقط و نه کدویژن و نه چیز دیگه ای.
پروژه و کتابخونه و آموزش nrf24l01 با آردوینو

پروژه و کتابخونه و آموزش nrf24l01 با آردوینو


 
 

تغییرات داده شده در کتابخونه +NRF24L01

سه شنبه – ۶ مهر ۱۳۹۵

  1. تابع ارسال عدد اعشاری
  2. تابع ارسال عدد صحیح
  3. تابع پیدا کردن تعداد ارقام یه عدد صحیح ( به صورت Privete تعریف شده و برای شما قابل استفاده نیست )
  4. اضافه شدن دو پروژه ارسال و دریافت عدد اعشاری
  5. اضافه شدن دو پروژه ارسال و دریافت عدد صحیح
  6. حل مشکل عدم نمایش لیست مثال ها در آردوینو

 

تغییراتی که در کتابخونه +NRF24L01 باید داده شود

  1. اضافه کردن spi مجازی
  2. private کردن توابع و متغییر های غیر ظرروری
  3. استفاده از پایه وقفه ماژول Nrf24l01

 
 

ویژگی های ماژول NRF24L01

  1. فراهم بودن باند آزاد (ISM1) و حهانی ۴Ghz
  2. تا Mbps2 نرخ انتقال داده (در) هوا
  3. توان مصرفی فوق العاده کم
  4. ۳mA جریان مصرفی فرستنده(مد TX) در ۴۰dbm
  5. ۳mA جریان مصرفی گیرنده(مد RX) در نرخ انتقال داده هوا ۲Mbps
  6. ۹۰۰nA در مد PowerDown
  7. ۲۲uA در مد Standby-1
  8. وجود رگولاتور ولتاژ بر روی تراشه
  9. تامین محدوده ولتاژ ۱٫۹ الی ۳٫۶ ولت
  10. وجود تکنولوژی Enhanced ShockBurst 3
  11. جابجایی خودکار بسته های اطلاعاتی
  12. معامله خودکار بسته های اطلاعاتی
  13. ۶ لوله دیتا MULTICEIVER برای ارتباط چند ماژول به یکدیگر و ایجاد یک شبکه محلی
  14. سازگاری هوایی با ماژول های nRF2401A ,02 ,E1 AND E2
  15. یه چیپ ( BOM) کم هزینه.(قسمت ماژول رو میگه!)
  16. وجود کریستال ۱۶MHz با خطای +-۶۰ppm5
  17. تحمل ولتاژ ۵ ولت ورودی
  18. پکیج QFN (فشرده و کوچ) به اندازه ۴*۴  میلی متر با ۲۰ پایه

 
گفتن ویژگی های ماژول nRF24L01 به صورت دیگه ای : 
nRF24L01 شامل ویژگی های زیر هستش :
رادیو

  • فراهم بودن باند فرکانسی آزاد(ISM) 4GHz
  • ۱۲۶ کانال رادیویی
  • پایه های RX و TX مشترک
  • مودلاسون GFSK
  • نرخ انتقال داده در هوا با ۱-۲Mbps
  • در هر دو نرخ انتقال داده همپوشانی فرکانسی رخ نمیده در اون نرخ انتقال داده با بقیه امواج

فرستنده

  • قابلیت تنظیم توان خروجی : ۰, -۶, -۱۲ or -18dBm
  • ۳mA در ۰dBm توان خروجی

گیرنده

  • Integrated channel filters
  • ۳mA در ۲Mbps
  • حساسیت -۸۲dBm در ۲Mbps
  • حساسیت -۸۵dBm در ۱Mbps
  • قابلیت برنامه ریزی LNA gain

 
ماژول NRF24L01

موارد استفاده از ماژول NRF24L01

  1. لوازم جانبی وایرلس(بیسیم) کامپیوتر
  2. موس، کیبورد و کنترل از راه دورها
  3. ۳-in-one desktop bundles
  4. کنترل از راه دور وسایل مرکزی پیشرفته
  5. هدست های VoIP
  6. دستگاه های کنترل کننده بازی
  7. ساعت های هوشمند و سنسورها
  8. کنترل از راه دور دستگاه های مصرف کننده الکترونیکی
  9. اتوماسیون خانگی و صنعتی
  10. سنسور های شبکه با توان مصرفی خیلی پایین
  11. RFID های فعال۲
  12. سیستم های ردیابی اموال
  13. اسباب بازی ها

 

معرفی پایه های ماژول NRF24L01

خب همون طور که در شکل زیر میبیند این ماژول حدود ۸ تا پایه داره، ۲ تای اول برا تغذیه ماژول هستش که باید ولتاژ ۳٫۳ ولت بهش بدی، ۵ تا پایه بعدی برا بحث ارسال و دریافت داده از ماژول هستش که این ماژول از پروتکول SPI استفاده میکنه، و پایه آخری هم پایه وقفه ماژول هستش، که من در این کتابخونه ازش استفاده نکردم، حالا شاید تو آینده این امکان رو بهش اضافه کردم شاید هم نکردم :-D، این ترتیب پایه ها رو هم ببینید تا در عمل و در بستن مدار به مشکل بر نخورید. heart
معرفی پایه های ماژول NRF24L01
 
اینم از ماژول سری بدون آنتن که ترتیب پایه هاش رو مشاهده میکنید و فرقی با سری آنتن دار نداره.
پروژه nrf با آردوینو
 

اتصال ماژول NRF به آردوینو

برای این کار باید اتصالاتتون همانند شکل زیر باشه، ولی میتونید از طریق کدهای پروژه پایه های ۳و۴ ماژول رو جاشون رو تغییر بدین و به یه پایه های دیگه از از بردتون وصل کنید، ولی برا پایه های مربوط به SPI نمیتونید این کار رو بکنید چون من تو کتابخونه از SPI سخت افزاری استفاده کردم و نه مجازی، جالا اگه بعدا یادم بود و وقتش و حسش و… بود این امکان رو هم اضافه میکنم.
این عکس زیر رو هم که میبینید، من یادمه رفتم سراغ راه اندازی NRF24L01 بعد کتابخونه آماده دانلود کردم و شماتیک اون کتابخونه همین عکس زیر بود، بعد من از کتابخونه هه خوشم نیومد و رفتم شروع کردم به نوشتن کتابخونه، و این کار حدود ۱ ماه برام طول کشید، ترجمه دیتاشیت، مطالعات جانبی در مرود اصطلاحات اختصاصی و چیزای دیگه، مطالعه در زمینه برنامه نویسی و مخصوصا کار با اشاره گرها، نوشتن مطالب مورد نیاز در سایت و… و این شماتیک پیشم موند و مدارم رو بر طبق همین بستم و الان هم همین طور هستش laugh
اتصال ماژول NRF به آردوینو
 
برای اتصال ماژول به میکرو کنترلر arduino mega باید اتصالات به صورت زیر باشه، توچه کنید که در زیر ماژول رو چرخوندن و اگه ماژول در عکس زیر و عکس بالا رو با هم مقایسه کنید میبینید که ماژول چرخیده، برا میکرو های دیگه هم به همین صورت هستش، پایه های Spi ماژول رو که باید به پایه های Spi اون میکرو وصل کنید و پایه های gnd و ۳٫۳ ولت هم که گفتن نداره^_^، پایه های ce و csn هم که قابل تعیین کردن هستش.
این پروژه رو با مگا هم تست کردم با ماژول های سری بدون آنتن هم تست کردم، با یه مگا و یه یونو هم تست کردم و در همه حالات جواب داده.
پروژه NRF24L01
 

تفاوت بین NRF24L01 و +NRF24L01

خب همون طور که در شکل زیر میبینید مدار هر دو ماژول فوق یکسان هستش، یعنی برید دیتاشیت هر دو ماژول رو بخونید همین مدار زیر رو عینا میبینید، تنها تفاوت این دو، در هسته مرکزیشون و اون IC اصلیشون هستش، که +NRF24L01 نسخه ارتقا یافته NRF24L01 هستش.(اگه خواستین میتونید خودتون هم این ماژول رو بسازید و اگه خواستید هم میتونید برید به قیمتی حدود ۳۰ تومن برا سری آنتن دار و ۱۰ تومن برا سری بدون آنتن بخرید.)
تفاوت بین NRF24L01 و +NRF24L01
که تفاوت این دو مورد رو در زیر براتون قرار میدم :

+NRF24L01 NRF24L01
۲۵۰kbps, 1Mbps and 2Mbps on air data rates ۱Mbps and 2Mbps on air data rates
۱۳٫۵mA RX at 2Mbps air data rate ۱۲٫۳mA RX at 2Mbps air data rate
۲۶µA in standby-I ۲۲µA in standby-I
در مکان ۰۹ حافظه ریجستر RPD قرار دارد در مکان ۰۹ حافظه ریجستر CD قرار دارد
این بیت حذف شده. وجود بیت LNA_HCURR از ریجستر RF_SETUP
این بیت مربوطه به جریان مصرفی اگه اشتباه نکنم.
 
 

دیتاشیت فارسی و انگلیسی ماژول NRF24L01

خب این دیتاشیت ماژول رو براتون ترجمه کردم و در زیر برا دانلود براتون قرار میدم، اگه میخواین خودتون کتابخونه منو تغییر بدین و یا خودتون کتابخونه بنویسید و یا هر کاربرد دیگه ای که نیاز به ترجمه دیتاشیت داشته باشه میتونید از این فایل استفاده کنید.
مشکلاتی در ترجمه هستش قطعا که بعضیاش رو میخواستم تصحیح کنم ولی قسمت نشد بعضیاش رو هم بزارید رو حساب بی سوادی ما.

دانلود دیتاشیت فارسی و انگلیسی ماژول + توضیحات و فایل های مورد نیاز NRF24L01

 
 

توضیح توابع کتابخانه ماژول NRF24L01

خب این کتابخونه ای که من نوشتم شامل توابع زیر هستش(حالا هی من من کن، خوب شد کار بزرگی نکردی اون موقع چی کار میکردی buba خودم خودمو نصیحت میکنم laugh )
لیست توابع این کتابخونه رو در زیر قرار میدم و بعد میرم مورد به مورد هر کدوم رو توضیح میدم.( فقط توابع عمومی/Public )

 
خب این کتابخونه حدود ۵۱ تابع داره که یه سری هاش رو ما باید ازش استفاده کنیم و یه سری هاش رو نباید استفاده کنیم(منم یادم رفت دیگه توابع غیر ضروری رو private کنم) که الام میریم سراغ توضیح دادنشون به صروت تک تک(البته اونایی که مورد نیاز هستش و به کار میاد)
 
 

خب این تابع در اول پروژه باید فراخونی بشه و کارش تعیین پایه های ce و csn ماژول Nrf هستش.
 
 

خب اگه دیتاشیت فارسی ماژول nrf24l01 رو خونده باشید(در زیر قرار دادم) این تابع و این توضیحات من رو الان دقیقا متوجه میشید، این ماژول NRF24L01 حدود ۶ تا لوله دریافت داده داره و یه لوله ارسال داده، البته ماژول NRF با N تا ماژول دیگه میتونه ارتباط داشته باشه و این عدد ۶ که من میگم برا اینه که همزمان میتونه از ۶ تا ماژول دیگه دیتا دریافت کنه و بیاد دونه دونه لوله ها رو بخونه، بگذریم از این بحث،
PipeNumber : خب این پارامتر در تابع “تظیم آدرس لوله دریافت” ( setReceiverAddress ) قرار داره و میتونه اعداد ۰ تا ۵ رو بهش انتصاب بدید.
AddressReceiver و AddressWidth  : این پارامتر(AddressReceiver) نام ماژول دریافت کننده رو تعیین میکنید و یه نامی برای این لوله قرار میدید که میتونه ۳ تا ۵ بایت طول داشته باشه و این مقدار طول داده رو در پارامتر AddressWidth قرار میدید، مثلا اگه طول AddressReceiver برابر ۴ بایت باشه شما در قسمت پارامتر AddressWidth میاید و عدد ۴ رو قرار میدید.(من برای کاهش حجم برنامه این قسمت رو گزاشتم بر عهده کاربر)
AddressSender و AddressWidth : این دو تا پارامتر هم مثل ۲ پارامتر بالا هستش فقط این مورد برا تعیین آدرس ماژول فرستنده داده هستش.
توجه ۱ : این که میگم فرستنده گیرنده به این معنی نیستش که فقط یکی میتونه دیتا ارسال کنه و فقط یه ماژول میتونه دیتا دریافت کنه، اصلا به این معنی نیستش، چون ما از هر دو تابع در هر ماژول nrf استفاده میکنیم، یعنی یه نام برای لوله دریافت کننده اش تعیین میکنیم و یه نام برای لوله ارسال کننده داده اش تعیین میکنیم.
توجه ۲ : تنها ماژول هایی که نام AddressReceiver ماژول شما و همچنین کانال ماژول شما رو بدونن میتونن به ماژول شما دیتا ارسال کنن ولاغیر.
توجه ۳ : شما تنها به ماژول هایی میتونید دیتا ارسال کنید که نام AddressReceiver ماژولشون رو بدونید و همچنین کانال فرکانسیشون رو(همون توجه ۲ بود این فقط به یه صورت دیگه گفتمش laugh )
توجه ۴ : سعی کنید طول آدرس گیرنده و فرستندتون رو روی حداکثر یعنی ۵ بایت قرار بدید تا هک کردن ماژول مشکل بشه.
توجه ۵ : از تابع setReceiverAddress در برناممون دو بار استفاده میکنیم یکی لوله ۰ باید باشه و اون یکی فرق نداره، یکی رو برای لوله ۰ انتخاب میکنیم چون بسته تصدیق نامه توسط این لوله دریافت میشه، بسته تصدیق نامه چیزی هستش که به ما میگه که دیتایی که ارسال کردیم آیا توسط گیرنده دریافت شده یا نه، اگه ما این بسته تقدیق نامه رو دریافت کنیم یعنی ماژول گیرنده دیتا رو به درستی دریافت کرده؛ توجه داشته باشید که وقتی برای ماژول گیرنده دیتا ارسال میکنیم وقتی ماژول گیرنده دیتا رو دریافت کرد میاد یه بسته تصدیق نامه به صورت خودکار برا ماژول فرستنده ارسال میکنه و بهش میگه که داداش دمت گرم من دیتا رو دریافت کردم به درستی. laugh بسته صدیق نامه رو فک کنم میگفتن ACK (حالا باید تو دیتاشیتش نگاه کنید، آخرای دیتاشیت فارسی ماژول فوق رو که براتون گزاشتم)
 
 

خب لوله هایی که در تابع بالا استفاده کردید رو میاید اینجا و تنظیماتش رو تعیین میکنید(تنظیمات باید یکسان باشه – این طوری بهتره)
PipeNumber : شماره لوله(۵-۰)
EnablePipe : فعال کردن لوله(عدد ۱ رو باید قرار بدید)
payloadSize : طول حامل(دیتا)یی که این طوله باید دریافت کنه، که این طول حامل میتونه از ۱-۳۲ بایت باشه؛ اگه اعداد ۱-۳۲ قرار بدید ماژول فقط به اون مقدار میتونه دیتا در هر لحظه بخونه و در ضمن ماژول ارسال کننده هم باید به همین مقدار دیتا ارسال کنه، یعنی اگه این پارامتر رو روی ۱۰ بایت تنظیم کردید، ماژول فرستنده هم باید روی ۱۰ بایت تنظیم بشه، در این حالت دیتایی با طول ثابت ۱۰ بایت ارسال و دریافت میشه ولی اگه عدد ۰ روز قرار بدید، هر دیتایی با هر طولی میتونه ارسال و یا دریافت بشه.
enableACK : خب اینو حتما حتما فعال کنید(عدد ۱ قرار بدید) تا از ارسال شدن دیتا مطمئن بشید و اگه دیتا ارسال نشد ماژول میاد طبق یه سری قوانین که براش وضع میکنیم (توسط توابعی که در ادامه میگم) میادو  دیتا رو دوباره ارسال میکنه.
 
توجه : خب از اونجایی که میدونم خسته شدید(منم همین طور) یه ۳ تا صلوات برا سلامتی خودتون و خودم بفرستید. laugh خب بریم سراغ ادامه کارمون.
 

خب این تابع برای تنظیمات ماژول NRF24L01 هستش.
channel : تنظیم کانال فرکانسی ماژول(۰-۱۲۷ فک کنم)
DataRate : تنظیم نرخ انتقال داده، مقادیر ۲ میگ، ۱ میگ و ۲۵۰ کیلو رو داره که برا انتخاب هر کدوم باید مقادیر زیر رو قرار بدید.
توجه : مقدار ۲۵۰کیلو در NRF24L01 وجود ندارد و فقط در +nRF24L01 موجود هستش.
۲۵۰kbps_
۱Mbps_
۲Mbps_
توجه مهم : کانال فرکانسی و نرخ انتقال داده در هر دو ماژول فرستنده گیرنده باید یکسان باشد.
DelayReTransmin : خب این پارامتر زمان بین هر ارسال مجدد هستش، مثلا اگه دیتا رو فرستادی و دریافت نشد، این پارامتر تعیین میکنه که ماژول nRF باید چقدر صبر کنه و باز دیتا رو دوباره ارسال کنه.(اعداد ۱۵-۰ رو میتونید انتصاب بدید)
اگه ۰ قرار بدید حدود ۲۵۰μS صبر میکنه، اگه ۱ قرار بدید ۵۰۰μS صبر میکنه…. و اگه ۱۵ قرار بدید ۴۰۰۰μS صبر میکنه.
CountReTransmin : تعداد دفعال ارسال مجدد رو با این تعیین میکنیم(۱ تا ۱۵ بار)
 
 

خب این تابع برای ارسال دیتا هستش.
value : دیتایی که میخواید ارسال کنید.
PALevel : میزان قدرت ارسال دیتا، که میتونید اعداد ۰ تا ۳ رو طبق جدول زیر قرار بدید(هر چی عدد بزرگتر باشه قدرت و برد ارسال بیشتر میشه ولی جریان مصرفی هم بیشتر میشه و بلعکس)

DC current consumption RF output power (SPI RF-SETUP (RF_PWR
۱۱٫۳ mA ۰ dBm ۱۱
۹ mA -۶ dBm ۱۰
۷٫۵ mA -۱۲ dBm ۰۱
۷ mA -۱۸ dBm ۰۰
جدول بالا تحت شرایط زیر تعیین شده است(دمای۲۷ درجه و ولتاژ ۳ ولت) :
VDD = 3.0 V , VSS = 0 V , T A  = ۲۷ºC, Load impedance = 15Ω+j88Ω
 
NoACK : خب اگه میخواید بسته تصدیق نامه دریافت نکنید و این طوری سرعت ارسال و دریافت رو ببرید بالا میتویند این بیت رو فعال کنید ولی توجه داشته باشید که دیگه نمیتونید از صحت ارسال و دریافت داده اطمینان پیدا کنید چون دیگه گیرنده دیتا شما رو از دریافت دیتا خبردار نمیکنه(به نظرم همشه بزارید ۰ و غیرفعال بمونه.)
 

این تابع برای ارسال عدد صحیح هستش.
DataSend : دیتای ارسالی
base : نحوه فرمت بندی دیتا و ارسالش که مقادیر زیر رو میتونید قرار بدید :

اگه میخواین عددتون به صورت عادی و ۱۰ دهی ارسال بشه به جای base مقدار DEC رو قرار بدین.
اگه میخواین به صورت باینری ارسال بشه BIN قرار بدید، برای هگزادسیمال هم HEX و برای اکتادسیمال هم OCT قرار بدید.
دو پارامتر دیگه مثل تابع Send هستش.
 

ارسال عدد اعشاری
DataSend : عدد اعشاری ارسالی
floatDigits : تعداد ارقام اعشار که باید ارسال بشه.(مثلا عدد اعشاری شما ۳ رقم اعشار داره و شما میخواین فقط ۱رقم اعشار ارسال بشه)
بقیه پارامتر ها مثل تابع Send هستش.
 

خب به کمک این تابع میتونیم بفهمیم که دیتا ارسال شده یا نه.
بعد از ارسال داده میایم و از این تابع استفاده میکنیم و داخل یه while قرارش میدیم و تا زمانی که ۱ هستش یعنی دیتا ارسال نشده و اگه صفر بشه یعنی دیتا ارسال شد.
 

این تابع برای دریافت داده هستش.
data : دیتای دریافتی در این متغییر ذخیره میشود.
 

خب این ۳ تا تابع هم میتونه مفید باشه.
CountLostPackets : تعداد بسته های از دست رفته.(با تغییر کانال مقدار این تابع ریست(۰) میشه)
ResetCountLostPackets : ریست کردن شمارنده تعداد بسته های از دست رفته(اگه CountLostPackets مقدارش به ۱۵ برسه دیگه افزایش پیدا نمیکنه و متوقف میشه و در این صورت باید مقدارش رو ریست کنیم که همون طور که گفتم تنها با تغییر کانال این مقدار رست میبشه و اگه میخواین همین کانال باشید بایدبه جای ChannelChangeCount عدد ۰ رو قرار بدید و اگه میخواید یه مقداری کانل افزایش پیدا کنه مثلا از ۰ بره به ۳ باید به جای ChannelChangeCount عدد ۳ رو قرار بدید و اگه میخواید کانال کاهش پیدا کنه مثلا از ۵ به ۱ باید عدد ۴- رو قرار بدید.)
CountRetransmitPackets : تعداد ارسال مجددها رو برای هر ارسال نشون میده، با شروع ارسال جدیدی، این پارامتر مقدارش ریست(۰) میشه.
 

setChannel : تنظیم کانال – عددی بین ۰ تا ۱۲۶
getChannel : پیدا کردن شماره کانال
 

پروژه های آردوینو با ماژول nrf24l01

خب در این قسمت دو تا پروژه میزارم براتون یکی دیتا با طول ثابت ارسال میشه و تو یکی دیتا با طول متغییر(که این حالتش یه جورایی میشه گفت چت روم ساختیم laugh )

ارسال و دریافت دیتا با طول ۵ بایت(هر کدوم از کدها رو در یه ماژول قرار بدید)

 
 
 

برنامه شماره دو، ارسال و دریافت داده هر طولی(چت روم!!!)

 
 
 

فیلم پروژه و کتابخونه در عمل(توضیحات هم داخلش دادم)

 
توجه ۱ : پروژه های دیگه داخل کتابخونه پوشه Example هستش.
توجه ۲ : در پوشه کتابخونه، فایل DmfNRF.h، خط ۲۵، ماکرو یی با نام DEBUG تعریف شده که مقدارش ۱ هستش، در هر تابعی یه سری توضیحات هستش که در صورت فراخونی اون تابع، اون توضیحات در پنجره سریال نمایش داده میشه، اگه نمیخواین این اطلاعات نمایش داده بشن، میتونید مقدار این ماکرو رو ۰ کنید.
 
نحوه هک کردن ماژول

  1. دانستن کانال فرکانسیش
  2. دانستن آدرس فرستنده یا گیرنده ماژول
  3. دانستن نرخ انتقال داده ماژول

 
والا میخوام تغییرات بدم ولی هر روز یه قطعه و ماژول بهتر میاد آدم دلش نمیاد از این کارا(تغییرات و نوشتن کتابخونه) انجام بده/ف مثلا همین Nrf برا سال ۲۰۰۸ هستش و الا سال ۲۰۱۶ هستش یعنی ۸ سال پیش تقریبا، و الان فک کنید چه چیز های جدیدی اومده تو بازار، ولی ما داریم با تکنولوژی ۸ سال پیش کار میکنیم و جیزای حدید هنوز تو ایران نیومده(حالا شاید هم اجنبی ها نساختن و یا هنوز وارد ایران نشده و یا وارد شده و ما خبر ندارم، غیر از این ۳ حالت که دیگه نیستش laugh )
 
خب این مطلب هم تموم شد، اگه مفید بود براتون یه دعایی کنید ما رو و رهبرمون رو و رزمندگان اسلام رو(چقدر “رو” :-D).
حدیث تصویری زیر رو هم ببینید ( دم اونی که این عکس رو طراحی کرده گرم، خدایش هر موقع میبینم این عکس رو کلی میخندم، در ضمن حدیثش صحیح هستش و تو نهج البلاغه دیدم به همین صورت بود.)
احادیث تصویری
فعلا یا علی.

گروه پرسش و پاسخ الکترونیکی در سروش
مهدی دمیرچیلو گوگل میفرماید : إِنَّ اللّه مَعَ الساچِرین ( خداوند با سرچ کنندگان است )
ارسال دیدگاه
339

1) نظرات غیر فارسی به صورت خودکار حذف میشوند ( حداقل 5 حرف فارسی وارد کنید ).

2) به موارد درخواست پروژه/کد آماده و سوالاتی که بلد نباشم پاسخ داده نمیشه.

3) برای گزاشتن کدهاتون از این سایت استفاده کنید ( طبیعتا لینک کدتون رو باید برای من بفرستید! ) : debian

4) پسورد فایل های سایت : www.dmf313.ir

  1. Avatar

    مهمان

    SAT

    سلام تفاوت این کتابخانه ای که گذاشتین با کتابخانه RF24 چیه و کدوم بهتره؟؟؟

    • مهدی دمیرچیلو

      نویسنده این مطلب

      مهدی دمیرچیلو

      سلام – کتابخونه توی این مطلبو من نوشتم – اون یکی رو یه نفر دیگه – جفتش هم بر مبنای دیتاشیت آیسی هستش و نه چیز دیگه ای.
      کدومش بهتره؟ نمیدونم – من تا حد امکان سعی کردم کتابخونه رو کامل بنویسم – اون یکی کتابخونه رو نمیدونم –

  2. Avatar

    مهمان

    MORTEZA

    نه،سوالم اینه که من تو توابع که ماکرو dibug رو 0 میکنم و یا print رو کامنت می کنم ولی بازم توضیحات نمایش داده میشه.اشکال از کجایه؟

  3. Avatar

    مهمان

    MORTEZA

    خدا خیرتون بده.عالی.
    فقطیک سوال. این توضیحات که بعد از هر با ارسال فرستاده میشه کجا دقیقا نوشتینش تو کدوم تابع هست؟

    • مهدی دمیرچیلو

      نویسنده این مطلب

      مهدی دمیرچیلو

      از طریق serial نمایش داده میشه.

  4. Avatar

    مهمان

    محمد طاهری

    سلام اقا مهدی دست درد نکنه کتابخونه خوبی نوشتی ok . یک سوال دارم-
    اگر که کد حالت استاتیک رو پایپ لاین و کانال ثابت بگیریم و کدPTX رو ;ها همون باشن و برای کد های PRX بیایم مثلا 10 تا ماژول بزاریم و یک متن رو از فرستنده PTX به 10 تا گیرنده ارسال کنیم که متن حاوی یک پیغام باشد که همه ماژول ها دریافت کند و در هر گیرنده نسبت به پیام گرفته شده یک عمل حاص انجام شود در این حالت به نظرتون بهترین راه چیه؟

  5. Avatar

    مهمان

    موسوی

    همه چی عالی. فقط ای کاش برای تهیه آموزش که این قدر زحمت کشیدید در تصویر برداری از صفحه نمایش از نرم افزار Camtasia Studio استفاده می کردید.
    ممنونم

  6. Avatar

    مهمان

    ناشناس

    سلام
    من سعی کردم این پروژتون را با پروژه avr تلفیق کنم به این صورت که یک طرف ارسال کننده nrf داشته باشم(که با استفاده از arduino کنترل میشه ) و سر دیگه گیرنده avr داشته باشم که دیتا را روی lcd نمایش بده اما این دو ماژول با هم ارتباط برقرار نمیکنند
    لازم به ذکره برای arduino از کتابخانه شما و برای avr هم از کتابخانه ای که شما استفاده کرده بودید استفاده کردم.
    به نظرتون مشکل چی میتونه باشه؟

  7. Avatar

    مهمان

    sajad

    سلام کسی با ای سی ADF7020 کار کرده؟
    بردش رو زدم تو فرکانس 910 مگاهرتز ارسال دارم اما تو گیرنده چیزی دریافت نمی کنم

  8. Avatar

    مهمان

    حمید

    سلام
    وقتتون بخیر باشه
    ببخشید بنده یه سوال دارم میخاستم ببینم شما با IC یا مازول ADF7020 برای ارتباط بی سیم کار کردید؟؟؟
    بنده میخام با ARM این IC را راه اندازی کنم. میشه راهنمایی بفرمایید.

    • مهدی دمیرچیلو

      نویسنده این مطلب

      مهدی دمیرچیلو

      سلام – تا جایی که یادمه سریال بود – و ارتباطش 2 طرفه غیر همزمان بود – یعنی همزمان نمیتونی هم دیتا بفرستی و هم بخونی – باید یه تغییر 10 میلی ثانیه ای قرار بدی مثلا یا بیشتر کمتر که باید تست کنی و مقدارشو بدست بیاری

  9. Avatar

    مهمان

    بهزاد

    طبق معمول َ عالی و عالی و عکسی که گذاشتی هم عالی

  10. Avatar

    مهمان

    حسین

    سلام
    دستت درد نکنه داداش من این کتابخونه رو دانلود کردم و با یکم تغییرات تبدیلش کردم به اتمل استدیو. اگر وقت داشته باشم برای STM32 هم همین کارو میکنم. فقط اگر میشه یجایی از آموزش ذکر کنید که حتما برای تغذیه ماژول، یه خازن بزرگ، مثلا 1000uf بذارن تا ماژول هنگام ارسال هنگ نکنه و مثل من چند ماه بیخودی علاف نشن dash

  11. Avatar

    مهمان

    mahdiGameMaker

    سلام من اینو راه انداختم ،فقط تو اینو به عنوان تذکر یا هرچی اضافه کنید که باید فرکانس هر دو تا ماژول یکی باشه!

  12. Avatar

    مهمان

    mahdiGameMaker

    سلام و خسته نباشید
    مهندس اینو اضافه کنید که اگر کسی براش جواب نداد nrf ، اسم همه ی ارسال کننده و گیرنده رو یکی کنه تا جواب بده!(منظورم اون اسم فرستنده و گیرنده که اول کد تایین میکنیم)
    راه پیشنهادی: hi hi
    میتوننند هم از مبدل سریال یا السیدی استفاده کنند تا ببینند که ایا بین این دوتا اطلاعا ت رد و بدل میشه یا نه!

  13. Avatar

    مهمان

    arian

    سلام من از کد شما برای انتقال عدد استفاده کردم و 19200 عدد رو میفرستم سرعت رو 2مگابیت هست و بادریت روی 2,000,000 هست ئلی این انتقال 20 ثانیه طول میکشه دلیل چی میتونه باشه

  14. Avatar

    مهمان

    arian

    سلام من از کتابخونه ی nrf شما استفاده کردم و 19200 بایت رو با sendint پشت سر هم ارسال میکنم و با get_data اونور میگیرم. سرعت رو 2مگابیت هست و بادریت رو 2,000,000 ولی باز ارسال حدود 20 ثانیه طول میکشه !!!!!

  15. Avatar

    مهمان

    رضا

    سلام و عرض ادب؛ آیا کتابخانه این ماژول برای پروتئوس نوشته نشده است؟ (میخواستم تو پروتئوس شبیه سازی رو انجام بدم)

    • مهدی دمیرچیلو

      نویسنده این مطلب

      مهدی دمیرچیلو

      سلام-نمیشه.

  16. Avatar

    مهمان

    Mahdi

    سلام. خسته هم نباشی.
    میخواستم ی رادیو ۱۴ کانال بسازم با این nrf و ی کدی برای خود ترنسمیتر نوشتم و اضافه کردم به کد های تو ینی یجوری مخلوطش کردم. ولی فقط تا اخر تابع setup موفق بودم. موندم چجوری ۱ و ۰ منطقی کانال ها و ۰ تا ۲۵۵ جوی استیک ها رو بفرستم و از اونطرف چجوری به همون صورت خروجی بگیرمشون. تو رو خدا ی راهنمایی بکن. و دمت گرم و خدا خیرت بده عالی توضیح دادی کتابخونه رو.

  17. Avatar

    مهمان

    اکبر

    سلام، آیا با آردیونو می تونیم هم ماژول بلوتوث و هم nrf رو با هم داشته باشیم؟

    • مهدی دمیرچیلو

      نویسنده این مطلب

      مهدی دمیرچیلو

      سلام – نمیدونم چه مدل ماژول بلوتوی مد نظرتونه ولی برای مثال ماژول hc05 که سریال هستش و nrf که اکثرا spi هستن و مشکلی ندارن با هم – میتونی از هر دوش استفاده کنی.

  18. Avatar

    مهمان

    Mahdyy

    سلام چجوری میشه فاصله ی حدودی ‌رو در فاصله کم مثلا اگه nrf به یک متری یا دومتری nrf دیگه رسید متوجه بشیم؟
    راستی چجوری باید irq استفاده کنم؟ تو کتابخونه رو نگاه کردم چیزی متوجه نشدم که چجوری باید پایه ی وقفه رو به تایمر اردوینو متصل کنم.
    ممنون

  19. Avatar

    مهمان

    مهدی

    با سلام و با تشکر از مطالب بسیار زیبا و پر محتوای سایت.
    چطوری میشه فهمید که ماژول آماده بکار هست و متصل هست به اردوینو

    • مهدی دمیرچیلو

      نویسنده این مطلب

      مهدی دمیرچیلو

      سلام-باید بررسی کنی که تابعی برای این کار هستش که یه دیتا بفرسته به ماژول و اگه جواب گرفتن یعنی.. و اگه نگرفت یعنی…

  20. Avatar

    مهمان

    mahdy

    اقا سلام
    من به یک مسئله ای بر خوردم امیدوارم بتونم منظورمو بدرستی بگم و شماهم راهنماییم کنیم،پیشاپیش ممنونم بخاطر وقتی که میگذارید.
    پروژه ای که من میخوام استفاده از Nrf به این صورت هستش که اول میخوام با اردوینو A به اردوینو B یک کدی بفرستم اگر اون کد در اردوینو B درست بود بعدش یک کد دیگه به اردوینو A بفرستم از طریق اردوینو B حالا مشکلی که من دارم اینه که تا مرحله دوم رو انجام میده ولی مرحله آخر رو انجام نمیده.
    یعنی کد از A به B میره ,ولی از B به A نمیره.
    لطفا اگه میشه کمکم کنید خیلی درگیرش شدم.
    ممنون
    ببخشید اگه بد توضیح دادم. wink

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      متاسفانه از nrf به علت مشکلاتش دیگه استفاده نمیکنم و لذا خودتون باید مشکلو پیدا کنید و من کمکی نمیتونم بکنم.

      • Avatar

        مهمان

        mahdy

        سلام شما چه فرستنده و گیرنده ای رو پیشنهاد میکنید؟
        ممکنه چند تا از مشکلاتش که خیلی به چشم میاد رو بگید بلاخره شما تجربتون بیشتره باز.
        ممنون

        • مهدی دمیرچیلو

          نویسنده این مطلب

          مهدی دمیرچیلو

          سلام-فعلا هیچی
          چون هر چی که کار کردم هر کدوم یه مشکلی داشته.
          الان مثلا دارم با ADF7020 کار میکنم خوبیش اینه که پروتکولش سریاله – نیاز به کتابخونه خاصی نداره و راه اندازیش سادس – بدیش اینه که فرستندگی و گیرندگیش همزمان کار نمیکنه و اصل مشکل من باهاش فعلا اینه که باید حلش کنم.
          یه ماژول هستش بردش کمه
          یکی قیمتش زیاده
          یکی برد واقعیش کمه ( برد اسمی و ذکر شده تو دیتاشیت ماژول بدرد عمه سازنده ماژول میخوره )
          باید بگردی والا – خودم حقیقتا ماژول خوبی که از همه نظر خوب باشه رو سراغ ندارم فعلا

      • Avatar

        مهمان

        mahdy

        سلام ممنون از پاسختون.
        نیاز های من به این صورته که برد کم ، امنیت و ارتباطش دوطرفه باشه مثل nrf باشه کارمو راه میندازه.
        فقط من زیاد شنیدم که میگن nrf امنیتش پایینه.
        راه حلی هستش برای این مسئله؟
        یا بااین مشخصات ماژول بهتری سراغ دارید؟
        ی سوال دیگه هم داشتم از خدمتتون: با این کتابخانه ی شما میشه از پایه ی IRQ استفاده کرد؟من ی جا خوندم که از پایه ی IRQ استفاده کنم دیتا رو با اطمینان بیشتری میتونم ارسال و دریافت کنم
        ممنون از وقتی که گذاشتید ببخشید سوالاتم زیاد شد.

        • مهدی دمیرچیلو

          نویسنده این مطلب

          مهدی دمیرچیلو

          سلام
          امنیت رو چی تعریف میکنید؟

        • Avatar

          نویسنده سایت

          معین صابری

          سلام، من با این ماژول کار نکردم اما اگر میخواید حین ارسال و دریافت داده هاتون شنود نشه، باید داده ها هنگام ارسال رمزگذاری بشه،مثلا فرض کنین عبارت salam رو میخواین بفرستین، میتونین به صورت برعکس بفرستین یعنی به صصورت malas بفرستین و گیرنده خودش برعکسش کنه، اینجوری اگر داده ها شنود بشه یه چیزبی معنی میشه و کسی متوجه. نمیشه شما چی فرستادین
          برای اطلاعات بیشتر تو این زمینه الگوریتم های رمزنگاری رو یه سرچی بزنین

        • Avatar

          مهمان

          mahdy

          سلام فرمودید امنیت رو چی تعریف میکنم در جواب باید خدمتتون بگم که پروژه ی به این صورت هستش که ازnrf A یک کد رو میفرستم به nrf B وقتی کد برای nrf B شناسی شد یک کد دیگه میفرسته به nrf A و میگه من شناساییت کردم.
          و nrf A قراره یک درب رو باز کنه امنیتی هم هستش. حالا در این بین چون هر 2 ثانیه nrf A یک کد رو میفرسته تا ببینه nrf B نزدیکش هستش که کد رو دریافت کنه و درب رو باز کنه در این بین ممکنه بتونن به ادرس فرستنده و کانالش دسترسی پیدا کنن و درب رو باز کنن.
          پینشهاد شما چی هست برای قضیه برای جلوگیری از غیر قابل دسترس بودن این اطلاعات.
          این پروژه برام خیلی مهمه ممنون میشم جواب بدید.
          باتشکر

  21. Avatar

    مهمان

    میثم

    سلام اقا مهدی مرد
    عمو با این ماژول فرستنده گیرنده میشه ارتباط دو نفره داشت یا مثل واکی تاکی وقتی صدا میفرستی دیگه نمشه همزمان دریافت کرد ؟
    اگه پروژه ارسال و دریافت صدا هم داشتی دیگه حرف نداشتی?

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام-بستگی به صدا داره – MONO باشه یا STERIO – بیت ریتش چقدر باشه و … سرعت ماژول رو چند تنظیم شده باشه و … – که باید بشینی حساب کنی.
      تا جایی که یادمه – همزمان هم میفرستی و هم میگیری.
      شما ADC و PWM میکرو رو راه اندازی کنید – بعد ماژول فرستنده گیرنده خوب پیدا کنید و راه اندازیش کنید – بعد یه میکرو فون به پایه ADC میکرو وصل کنیدو مقدارشو بخونید و بفرستید و دریافت کنید و بعد با PWM دوباره به ولتاژ تبدیلش کنید.وسلام.

  22. Avatar

    مهمان

    حمید

    با عرض سلام و خدا قوت
    واقعا سایت و آموزشها عالیه
    آقا مهدی چطوری میشه این کتابخونه رو برای کدویژن و C تبدیل زد

  23. Avatar

    مهمان

    مهدی

    سلام تازه کارم مثلا اگه بخوای دیتا شیت یه ماژول رو خوب بخونی چطور واز کجا بایدشروع کنی چون دیتا شیت بعضی از ماژول ها رو که مسخوندم خیلی سخت بود نمی فهمیدم میشه بگی خودت چطور ترجمه میکنی واون کلماتی هم که نمیفهی چیکار میکنی

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام – انگلیسیت باید خوب باشه و درباره قطعه مورد نظر هم باید اطلاعاتی داشته باشی – مثلا تو ترانزیستور میری میبینی نوشته Hfe خب اگه درباره ترانزیستور مطالعه نکرده باشی شاید فهمیدن این اصطلاح یکم سخت باشه – والا روش خاصی نداره – اگه هم داشته باشه من بلد نیستم توضیح بدم حقیقتا – خودم هم دیتاشیت خونیم ضعیفه

  24. Avatar

    مهمان

    داود ده جوریان

    سلام :
    این ارورر چیه
    exit status 1
    Error compiling for board Arduino/Genuino Mega or Mega 2560.

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام.نمیدونم

  25. Avatar

    مهمان

    علیرضا

    سلام
    اگر امکان دارد یه برنامه مثال که در ان یک ماژول به طور خودکار پاسخ یک پیام را میدهد قرار دهید.
    من از برنامه شما استفاده کردم و همه چیز عالی است. ولی میخواهم یک ماژولم پس از دریافت کدی خاص عددی را به ماژول اولیه برگرداند، اکثرا پیغام data lose میدهد.
    ممنون از مطالب مفید سایتتون.

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      این کاری که گفتید رو من حوصلشو ندارم
      اما data lose – بررسی کنید ببینید مشکل از چیه و به ما هم بگید- good

  26. Avatar

    مهمان

    ENERGY001

    آقا مهدی دسسسسسسسسسسس خوش داری …
    واقعا مرسی …
    http://s9.picofile.com/file/8314259342/robowifi.rar.html
    اینم جایزت …
    یه نمونه کار ساده …
    یه رباته …

  27. Avatar

    مهمان

    جواد

    سلام
    از کتابخانه nrf24l01+ که زحمتشو کشیدید استفاده کردم در یک پروژه.
    الان میخوام شیلد اترنت رو هم وصل بکنم به آردوینو.
    میخواستم بپرسم که soft spi رو چطور باید اضافه بکنم به کتابخانه؟
    آیا اگر همه پین های دو تا شیلد رو به جز ce و csn به هم وصل بکنم امکان استفاده از دو شیلد رو دارم؟

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام-spi که مثل serial نیست که – چندین تا قطعه رو میشه بهش وصل کرد.

  28. Avatar

    مهمان

    دانیال

    DMF313.RXFifo(NULL)
    ببقشید که بازم مزاحم شدم
    میشه این تابع رو هم توضیح بدی؟؟؟

  29. Avatar

    مهمان

    دانیال

    سلام داداش مهدی.
    امیدوارم حالت خوب باشه.
    میخواستم بدونم منظور از پاکت های از دست رفته چیه (خود مفهوم پاکت) و اینکه چرا مقدارش بیشتر از ۱۵ نمیشه.
    و اینکه تو تابع ResetCountLostPackets منظور از کانالی که گفتین همون ۱۲۷ تا کانال فرکانسیه؟؟
    حالا مگه این کانالو تغییر بدیم مشکلی پیش نمیاد؟؟؟ اخه قبلش گفتید که باید این کانال هم واسه فرستنده و هم واسه گیرنده یکی باشه.
    و حالا اگه تغیرش ندیم و ۰ رو بذاریم که همون کانال بمونه اون تابع شمارنده پاکت های از دست رفته ریست میشه یا نه؟؟؟
    و اینکه تو اون پروژه ی اول اصلا دونستن پاکت های از دست رفته به چه کاری میاد؟؟
    ببقشید سرتو درد اوردم
    ممنون میشم جوابمو کامل بدی.

  30. Avatar

    مهمان

    فرزین

    سلام خسته نباشید من کتابخانه RF24 از سایت github.com زدم تو نرم افزار اردینیو. میخاستم یه راهنمایی کنی من برنامه تست Hello World که برای راه اندازی با همون کتابخانه که زدم با دو ماژول nrf2401بدون انتن خوب کار میکنه ولی تو قسمت فرستنده ماژول nrf2401+ انتن دار جای یکی از ایم ماژولnrf2401 بدون انتن میذارم برنامه کار نمیکنه بعد دوباره هیمن ماژول انتن دارتو قسمت گیرنده میذارم برنامه کار میکنه ایا برای nrf2401+ انتن دار باید کتابخانه جدا بزنم ؟ ممنون میشم راهنمایی کنید

  31. Avatar

    مهمان

    رضا

    خب کاش یه همچین کتاب خونه ای برای avr بود.من نیاز دارم ولی نیست dash

  32. Avatar

    مهمان

    علی

    سلام مهندس
    سمت فرستننده در قسمت serial monitor تنها این پیغام چاپ میشه
    PALevel = 3
    Dynamic Payload Size = 9
    PALevel = 3
    Dynamic Payload Size = 9
    PALevel = 3
    Dynamic Payload Size = 9
    Size = 9
    PALevel = 3
    Dynamic Payload Size = 9
    PALevel = 3
    لطفا راهنمایی کنید

  33. Avatar

    مهمان

    علی

    سلام
    من هرکاری میکنم کتابخانه DmfNRF اضافه نمیشه
    لطفا راهنمایی کنید

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      اون فایل آخری رو دانلود کن.

  34. Avatar

    مهمان

    ناشناس

    سلام .من کدهای شمارو روی اردینو اپلود کردم ولی متاسفانه موفق به ارسال داده نمیشم.شما احنمال میدین کجای کارم ناقصه؟ایا کار اضافه ای لازمه انجام بدم؟تنضیماتی چیزی؟

    • Avatar

      مهمان

      ناشناس

      سلام
      با اجازه بزرگ تر ها
      سیم بندی رو چک کنید ببینید که پایه misoدرست وصل شده.
      یه وقت بجای irqمتصل نشده باشه.
      اگر اتصال درست بود از یک آردوینو ئیگه استفاده کنید .احتمال خیلی زیاد جواب می گیرید

  35. Avatar

    مهمان

    مهدی

    سلام.
    این کتابخونه واسه کدویژن کار نمیکنه؟
    ممنون بابت زحمتاتون.

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام – نه باید تبدیل کنی اگه بلدی.

  36. Avatar

    مهمان

    محمد امین

    سلام مهندس.وقت بخیر. سایتت واقعا عالیه. فقط یک سوال .فرض کنیم من بخوام از ۲ مکان مختلف با سنسور ds18b20 دما رو اندازه بگیرم و برای یک گیرنده ارسال کنم(با ماژول nrf24l01+) میشه راهنماییم کنی درمورد کدهای برنامه نویسیش، خیلی کارم گیره. در پناه حق پاینده باشی مهندس.

  37. Avatar

    مهمان

    امید

    سلام
    منم همچین مشکلی دارم و برای یک پروژه دانشگاهی چند وقته درگیر این مشکل شدم. لطفا اگه امکانش هست راهنمایی کنید.
    با نهایت سپاس

  38. Avatar

    مهمان

    آرمان

    سلام مهندس
    من قصد دارم یک چت روم چند نفره بسازم، طبق آن چیزی که در نظرات گفتید برای اتصال آنتن سوم به بالا، هم اسم فرستنده ها رو توی گیرنده و فرستنده تنظیم کردم و هم پایپ ها رو دو به دو شماره گذاری کردم ولی فقط دوتا آنتن به هم وصل می شوند و آنتن سوم، نه از طریق پایپ هم نام با آنتن اول و نه از طریق پایپ های دیگه، به چت روم وصل نمیشود. لطفا راهنمایی بفرمایید.
    ممنون از سایت خوبتان
    با تشکر

    • Avatar

      مهمان

      احمد

      سلام
      تا اونجایی که من بررسی کردم مشکل از کتابخونه است.
      کتابخونه فقط پایپ یک را میشناسه و فقط دوتا آنتن از طریق پایپ یک به هم وصل میکنه.
      همون دوتا آنتن از طریق پایپ های دیگه قابل اتصال نیستن و فقط باید پایپ یک باشه.
      پایپ های دیگه قابل معرفی نیستن و از طریق پایپ یک هم فقط همون دوتا آنتن به هم وصل میشن
      مهندس دمرچیلو عزیز راهنمایی میکنید؟؟؟؟؟؟

  39. Avatar

    مهمان

    مصطفی

    سلام مهندس دمرچیلو
    من دنبال پروژه ۳ یا ۴ nrf با این ماژول هستم
    اگه کدهاش خدمتتون هست میشه کمکم کنید؟

  40. Avatar

    مهمان

    zaman1

    no
    من از ماژول USB to Serial PL2303 استفاده میکنم و همونطور که می دونید dtr نداره میتونه مشکل از اونجا باشه
    اگه میشه یخورده دربارش توضیح بدین وبگین راه حلش چیه

  41. Avatar

    مهمان

    مصطفی

    سلام
    من کدها رو اینجوری بهش اعمال کردم ولی از هیچ کدوم از سنسورها دیتا دریافت نمیکنه
    DFM313.SetsenderAddress(0,(char)”A”,5)\\A
    DFM313.SetReceverAddress(1,(char),”B”,5)//B
    DFM313.SetReceverAddress(2,(char),”C”,5)//C
    DFM313.Pipe(0,1,01)//pipe1
    DFM313.Pipe(1,1,0,1)//pipe2
    DFM313.Pipe(2,1,0,1)//pipe3
    DFM313.config(1,Crc8bit,_1Mbps,1,15)//configution
    لطفا راهنمایی بفرمایید. دوتا با هم کار نمیکنه. باید چکارش کنم آقای دمرچیلو؟

    • Avatar

      مهمان

      mahdy

      تعداد ادرس فرستنده و گیرنده ی شما روی 5 بایت هستش ولی اسم ادرس فرستنده و گیرنده ی شما یک باید هستش.

  42. Avatar

    مهمان

    محمد

    چشم. ممنون. دستتان درد نکند

  43. Avatar

    مهمان

    zaman1

    استاد من ار برد پرو مینی استفاده کردم com بهش وصل شده ولی وقتی کد ها رو اپلود میکنم ارور ۵۰۰ میده sad
    اگه میشه سریع پاسخ بدین
    ممنون

  44. Avatar

    مهمان

    مهدی

    استاد من ار برد پرو مینی استفاده کردم com بهش وصل شده ولی وقتی کد ها رو اپلود میکنم ارور ۵۰۰ میده sad

  45. Avatar

    مهمان

    مهدی

    استاد من ار برد مینی استفاده کردم com بهش وصل شده ولی وقتی کد ها رو اپلود میکنم ارور ۵۰۰ میده

  46. Avatar

    مهمان

    مصطفی

    سلام
    پروژه ارتباط دو nrf را برای انتقال داده جواب گرفتم. پروژه ارتباط ۳ الی ۴ یا بیشتر nrf را چطور باید انجام بدم.

  47. Avatar

    مهمان

    مصطفی

    سلام.
    ممنونم از شما. مشکلم تا حدود زیادی حل شده . آقا مهدی پرو زه ارتباط ۳-۴ آردینو که توی نظرات گفتین انجامش دادین را از کجا باید گیر بیارم.
    اگه انجامش دادین از کجا دانلودش کنم. و اگه انجام نشده چجوری باید تعدادی آردوینو را به یک آردوینو وصل کنم. با nbrf
    ممنونم از سایت عالی که داری

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      انجام ندادم – یادم هم نمیاد همچین حرفی زده باشم – احتمالا گفتم که میخوام انجام بدم و از این جور حرفا – به علت مشکلاتی که nRF داره به نظرم – باهاش کار نمیکنم دیگه.

      • Avatar

        مهمان

        مصطفی

        پس پیشنهاد شما چه ماژولی هست که جایگزین کنم با این؟
        که بتونم ۳-۴یا تعداد بیشتری آنتن را به هم وصل کنم؟

        • مهدی دمرچیلو

          نویسنده این مطلب

          مهدی دمرچیلو

          بررسی نکردم که چه ماژولی قابلیت شبکه داره.

  48. Avatar

    مهمان

    محمد

    با سلام و عرض خسته نباشید.
    یک اتفاق عجیب برای nrf من افتاده است. به این صورت که داده را می فرستد و من در سمت گیرنده داده را دریافت می کند. ولی در سمت فرستنده می نویسد که داده گم شده است و ان عدد تا ۱۵ می شمارد و دوباره صفر می شود.!!!!!!!!!!!!!!!!!!!!! wacko
    عجیبش این است که داده انتقال پیدا می کند. الان مشکل در کجا هست که می نویسد داده گم شده ولی داده را انتقال می دهد؟ فکر کنم این مشکل را حل کنم قسمت دینامیک هم راه بافتد. sorry
    راستی فرکانس کاری SPI بر روی کار کرد کد تاثیر می گذارد؟ یعنی حتما باید همین فرکانس را در نظر بگیریم.؟ من کد شما را انتقال داده ام به STM32F4.
    لطفا در صورت امکان نظرتان را بفرمایید با تشکر.

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام-برا مورد اول بررسی کنید – امکان بررسی کردن به علت سرگرم بودن به کارای دیگه laugh نیست.

      • Avatar

        مهمان

        مصطفی

        داداش چرا جواب ما رو نمیدی نوکرتم. سوالام به دستت نمیرسه؟
        کارم گیر افتاده تنها کد که به خوبی کار میکنه کدهای شماست. اگه این نکته را هم بهم بگی که چطور سه یا چارتا آردوینو را به هم اتصال بدم ممنونت میشم.

        • مهدی دمرچیلو

          نویسنده این مطلب

          مهدی دمرچیلو

          چی بگم آخه نوکرتم – گفتم که – من با این ماژول که مشکلاتی داره دیگه خیلی وقته کار نکردم و نمیکنم – هر چی هستش تو مطلب گفتم – اگه هم طبق مطلب رفتی و راه نیوفتاد باید کتابخونه رو بررسی کنی – ترجمه دیتاشیت رو هم که گزاشتم براتون. sorry

  49. Avatar

    مهمان

    مصطفی

    توی دستور cofig که برای پاپ ها نوشتید
    یه قسمت هست به اسم crc8bit که توضیحش توی سایت، از قلم افتاده
    این چه کاری انجام میده و آیا میشه تغییرش داد. آیا طول داده ارسالی رو این تعیین میکنه و مثلا میشه بیشترش کرد؟

1 2 3