سطحي و كار راه انداز
دقيق و حرفه اي
بله ، همیشه به همین شکله .. یک رشته در واقع آرایه ای از کارکتر هاست .. شما میتونی به راحتی یه تابع بنویسی که این رشته رو با یه حلقه ارسال کنه .. ارسال رشته (متن) در ارتباط uart - i2c -spi - usb - ... به همین شکله .حالا اگه بخواییم به جای عدد 170 یه متنو از طریق SPI بفرستیم مثلا R0D4 باید هر کارکتر به صورت جداگانه فرستاده بشه ؟
خیر ، به این شکل نیست . سخت افزار SPI فقط به پایه های خاص خودش وصله و نمیشه اونو به هر پایه دلخواه نسبت داد . پس ما فقط برای راه اندازی SPI فقط باید همین پین ها رو مطابق همین موارد بالا ( البته اینو کامل شما ننوشتید ) کانفیگ کنیم .من پایه های آی سی رو به صورت دلخواه به چندتا از پایه های میکرو وصل کردم فقط شماره pin رو در دستور زیر برای MISO , MOSI , CS , CSK عوض کنم درسته ؟
فکر نمی کنم ، بخصوص برای آرمST همین تیم ایران میکرو استارت زد و نتایج کار رو تو همین فروم ببینید .. اگه هر سوالی دارید مطرح کنید ، حتما سوالتون بی پاسخ نمیمونه ...آیا آموزشی مثلا به صورت pdf وجود داره که این مواردو به طور کامل توضیح بده
سلام دوستان
اين يه مثال در مورد نحوه راه اندازي وقفه و كار با اون هستش.
_____________________________________
_____________________________________
با سلام
من یه IC دارم که روی برد stm32 با پین هدر سوار کردم و میخوام از طریق spi باهاش ارتباط برقرار کنم
پایه های spi این IC رو مطابق MMC وصل کردم یعنی
CS - PA4
SCK = PA5
Miso = PA6
Mosi=PA7
این IC با تغذیه 5 ولت کار میکنه که با تغییرات در برد 5 ولت رو هم از طرف دیگه برد برای IC کشیدم
حالا میخوام یه رشته براش بفرستم و اطلاعات دریافتی از اونو بخونم مثلا روی LCD 16*2 یا 4.3 اینچ
میشه از همین نمونه برنامه ای که برای spi این برد نوشتید استفاده کرد؟
ممنون میشم راهنمایی بفرمایید
_____________________________________
_____________________________________
با سلام خدمت دوستان
من امشب از اول این تاپیک تا اخر را آمدم حدودا 6 ساعت طول کشید .
واقعا خسته نباشید و دستتون درد نکنه .
یه سوالی این اواخر برام پیش امد چرا از FreeRTOS استفاده میکنید RTX مشکلی داره ؟
با تشکر .
سلام
من هم از اول تا آخر این تاپیک رو خوندم البته توی 2 مرحله واقعا کمر شکنه !!!
دست آقا سعید و آقا صادق عزیز درد نکنه که واقعا صبورانه توضیح دادند
نمیدونم چرا دیگه ادامه نمیدید من بردم راه بیافته سوالات زیادی دارم ها !!!
من الان میخوام flash loader میکرو رو پروگرام کنم این خطا رو میده
در ضمن من به جای دیپ سویچ از پین هدر استفاده کردم لطفا بگید چطور boot0 رو فعال یا غیر فعال کنم شاید اشتباه انجام میدم
راستی وقتی تغذیه رو از طریق پورت jtag یعنی 3.3V وصل میکنم چراغ تغذیه روشن میشه ولی با usb روشن نمیشه! (با پروگرمر j-link تست کردم میکرو پروگرم شد)
ویرایش توسط saeidhp : 27-07-2012 در ساعت 08:14
سلام مهندس
ممنون ، انجام وظیفه هست ..
این پیغام میگه که بوت لودر سریال لود نشده . برای لود شدنش 2 کار باید کرد . اول طبق عکس زیر باید برای لود system memory که در واقع همون بوت لودر هست پایه BOOT0 یک بشه و در همین حالت یک ریست کنید ..
حالا که بوت لودر فراخوانی شده حالا باید میکرو رو به حالت قبل ببریم .. برای این کار فقط همین BOOT0 رو دوباره 0 میکنیم تا از حافظه پیش فرض User Flash Memory بتونه بخونه .... در ارتباط سخت افزاری هم خط RX وTX و GND کفایت میکنه ....
منظورت اینه که برد با usb تنها کار نمیکنه ! یه جامپر برای انتخاب تغذیه ورودی ( آداپتور یا usb ) باید باشه ...راستی وقتی تغذیه رو از طریق پورت jtag یعنی 3.3V وصل میکنم چراغ تغذیه روشن میشه ولی با usb روشن نمیشه! (با پروگرمر j-link تست کردم میکرو پروگرم شد)
راستی وقتی تغذیه رو از طریق پورت jtag یعنی 3.3V وصل میکنم چراغ تغذیه روشن میشه ولی با usb روشن نمیشه! (با پروگرمر j-link تست کردم میکرو پروگرم شد)آقا سعید دقیقا درسته روی بورد یه جامپر هست که تغذیه USB رو فعال میکنهمنظورت اینه که برد با usb تنها کار نمیکنه ! یه جامپر برای انتخاب تغذیه ورودی ( آداپتور یا usb ) باید باشه ...
*** اللّهم عجّل لولیک الفرج ***
ممنون مهندس این مشکل حل شدمنظورت اینه که برد با usb تنها کار نمیکنه ! یه جامپر برای انتخاب تغذیه ورودی ( آداپتور یا usb ) باید باشه ...
من به 2 تا پورت کام مادگی فقط همین 3 تا سیم رو وصل کردم طبق pcb که یه پورت رو به برد و پورت دیگه رو به مادربرد کامپیوتر وصل کردمدر ارتباط سخت افزاری هم خط RX وTX و GND کفایت میکنه ....
لطفا در مورد اتصال پین هدرهایی که به جای دیپ سویچ گذاشتم راهنمایی کنید
وقتی که برد رو هم کاملا از پورت کام جدا میکنم بازم همون پیغام میاد یعنی اصلا شناسایی نمیشه
ویرایش توسط saeidhp : 27-07-2012 در ساعت 15:29
مهندس saeidhp دیپ سوئیچ میزاشتی راحت تر نبودی ؟!!!
الان ارتباط بین پین هدر پائین و بالا رو چطوری برقرار میکنی؟
*** اللّهم عجّل لولیک الفرج ***
بله ولی خونه نداشتم و رفت و برگشتم برای خرید حدود 3 ساعت طول میکشه برای همین موقتا اینو گذاشتم
باید پین بالا و پایین سمت راستو به هم وصل کنم دیگه ؟
یه سوال دیگه
وقتی کلید ریست رو میزنید led تغذیه خاموش و روشن میشه یا نه ؟
led تغذیه ثابت روشنه و با زدن کلید ریست تغیری نمیکنه...
ممکنه کلید ریست شما وقتی زده میشه بین مثبت تغذیه و زمین اتصال ایجاد میکنه که باعث خاموش شدن LED تغذیه میشه
*** اللّهم عجّل لولیک الفرج ***
مهندس حواست باشه .. کلید ریست به میکرو وصله واصلا ربطی به مدار تغذیه نداره ... چک کن ببین اتصال نداشته باشه...
شما اول باید از صحت اتصال بین برد و کامپیوتر اطمینان حاصل کنی ... مثلا پورت رو در بیار و همون سیم آبی و سفید رو با یه تکه فلز اتصال کوتاه کن . این تست LoopBack هست که هر چی میفرستی باید برگشت بخوره ... اگه این کار کرد .. حالا یه سوال شما وقتی چیزی از کامپیوتر میفرستی دو تا ledی زیر max چشمک میزنه .. اگه زد یعنی اینم درسته ... چک کن نتیجشو بگو ...من به 2 تا پورت کام مادگی فقط همین 3 تا سیم رو وصل کردم طبق pcb که یه پورت رو به برد و پورت دیگه رو به مادربرد کامپیوتر وصل کردم
لطفا در مورد اتصال پین هدرهایی که به جای دیپ سویچ گذاشتم راهنمایی کنید
وقتی که برد رو هم کاملا از پورت کام جدا میکنم بازم همون پیغام میاد یعنی اصلا شناسایی نمیشه
نه کلیدو میزنم چراغ هیچ تغییری نمیکنه من اشتباه فکر کردممهندس حواست باشه .. کلید ریست به میکرو وصله واصلا ربطی به مدار تغذیه نداره ... چک کن ببین اتصال نداشته باشه...
مهندس شرمنده یکم بیشتر توضیح میدید چطور تست کنم بعد از اینکه tx , rx رو اتصال کوتاه کردم چیکار کنم؟مثلا پورت رو در بیار و همون سیم آبی و سفید رو با یه تکه فلز اتصال کوتاه کن . این تست loopback هست که هر چی میفرستی باید برگشت بخوره
چطور با کامپیوتر بفرستم
الان led زیر max کلا خاموشه
ویرایش توسط saeidhp : 27-07-2012 در ساعت 22:33
فکر کنم در حالت عادی باید هر دو led زیر max روشن باشه .. آی سی max رو درست زدی ؟ یه چک بگن ...
منظورم این بود که ببینی اصلا ارتباط سریال تا قبل از برد برقراره یا نه ... همون مادگی سریال که به بر وصل کردی رو در بیار ... سیم rx , tx رو اتصال کوتاه کن .. حالا از کامپیوتر مثلا با هایپر ترمینال اگه بنویسی همون کارکتر ها برگشت میخورند . مثلا مینویسی A به صورت AA مینویسه .. همون تکرار میشه چون کارکتر از TX میره و از RX دوباره میاد داخل ...
مهندس این مراحلی که میگمو چک کنید ردیف میشه
1- از نحوه درست اتصال TX و RX مطمعن باشید
2- سالم بودن MAX232
3- جامپری که برای بوت صفر ساختید رو به 3.3 ولت وصل کنید
4- مدار رو ریست کنید
5- برنامه فلش لودر رو باز کنید گزینه NEXT رو بزنید باید در این مرحله حافظه فلش میکروتونو نشون بده
6- تو مرحله اخر بعد از بروز کردن فایل باینریتون گزینه erise necessary page رو انتخاب کنید بعدشم گزینه next رو بزنید
فکر کنم نحوه اتصال TX و RX مشکل داره مهندس منم همین مشکل رو داشتم
من فکر میکنم max3232 مشکل پیدا کرده اونو عوض کردم دوباره اگه مشکلی پیش اومد میپرسم
حالا برای پروگرم کردن از طریق swd باید از طریق کدوم پایه ها عمل کنم ؟