راه اندازی آی سی فلش w25qxx‌ با Mc60

سلام
میخواستم که از آی سی w25q16 روی برد ارزیابی Mc60 استفاده کنم ولی توی ارتباط Spi‌مشکل دارم.
موقع گرفتن ID آی سی مقدار درستی رو برمیگردونه ، موقع write کردن هم Data به درستی نوشته میشه , اما موقع خوندن از اون مقدار 0xFF رو فقط دریافت میکنم.( تابع Ql_SPI_WritRead زمانی این مقدار رو برمیگردونه که طول بافر write بیشتر از Read باشه )
مشکل از چیه؟

1 پسندیده

سلام دوست عزیز اتفاقا من هم یه برنامه نوشتم درست کار نمیکنه بنظرت مشکلش از کجاست؟!!!

اینجور سوال ها خیلی کلیه و نمیشه جواب درستی براشون پیدا کرد برای همین اکثر کسانی که این مدل سوال هارو میبینن بهش جوابی نمیدن.

حداقل کدهایی که نوشتی رو میزاشتی
دیتایی که فرستادی و پاسخی که گرفتی رو بصورت log میزاشتی
از صحت مدارت مطمئن هستی؟ عکس بردت “ارزیابی MC60” رو میزاشتی و لینکش رو میدادی
خودت ارتباط spi رو سخت افزاری بهش وصل کردی یا خود برد از قبل گذاشته بود؟
و و و و …

سلام
اول از همه به نکاتی که مهندس @mahdiRahi اشاره فرمودند دقت کنید

شما میتونید از example پیش فرضی که داخل sdk ماژول هست استفاده کنید
کد تست شده و مشکلی نداره
به این نکته هم باید دقت کنید که قبل از نوشتن دیتا باید بلاک های حافظه رو پاک کنید تا بتونید روش بنویسید و گرنه جواب همین 0xFF میشه

1 پسندیده

سلام
منم این مشکل رو داشتم، به خاطر بلاک بودن حافظه بود
تابع آنبلاک رو اجرا کنید میتونید به درستی بنویسید و بخونید
flash_wr_enable

این تابع داخل مثال ها هست:
ql_winbond_flash_block_unlock

2 پسندیده

من از این کتابخونه که برای STM بود استفاده کردم و به بجای توابع Hal توابع کویکتل رو جایگزین کردم.

از برد ارزیابی mc60 که توی فروشگاه سیسوگه (برد آبی رنگ ) دارم استفاده میکنم که روی خودش یه آی سی فلش W25qxx داره و به پایه های spi خود mc60 متصله

همونطور که گفتم از example خود کوییکتل میتونید استفاده کنید و مناسب همین آیسی هست
تست کنید و نتیجه رو هم اینجا اطلاع بدید

3 پسندیده

تست شد و اوکی بود :slight_smile:
ممنون از راهنماییتون

3 پسندیده