11 لایک
-
6
Post By Tiranoid
-
5
Post By Tiranoid
-
راهنمای کار با بردهای stm8
با سلام
میکروکنترلرهای خانواده STM8، میکروکنترلرهای 8 بیتی شرکت STM هستن که با قیمت خیلی پایین نسبت به امکاناتی که ارایه میدن، به سرعت جای خودشونو باز میکنن. توجه کنید که این خونواده، اصلا ارتباطی به ARM و میکروکنترلرهای 32 بیتی ندارن. اما بخاطر شباهت ساختار میکروکنترلرهای شرکت STM و اینکه این شرکت، میکروکنترلرهای معروف دیگه ای برپایه ARM با نام STM32 تولید میکنه، یه سری شباهت ها بین این دو خانواده هست. بدیهیه که هیچ شباهتی به میکروکنترلرهای برپایه ARM دیگه از شرکتهای دیگه وجود نداره.
از مهمترین مزایای این میکروکنترلرها نسبت به معادل AVR شون در حدود قیمت یکسان اینا هستن :
1) فرکانس کاری CPU تا 24 مگاهرتز در مقابل 16/20 مگاهرتز AVR(سرعت دسترسی به رم همون 16 مگاهرتزه. پس در حالت 24 مگاهرتز، دسترسی به حافظه در دو کلاک انجام میشه که باعث میشه دستورات دسترسی به حافظه کندتر باشن. اما تو فرکانس 16 مگاهرتز، دقیقا معادل AVR شون هستن)
2) تایمر های بیشتر و کامل تر ( معمولا سه تا تایمر که دوتاشون 16 بیت هستن، نسبت به معادل AVR شون که فقط یه 16 بیت داره و دو تا 8 بیت)
3) امکان استفاده از وقفه خارجی روی همه پین ها بدون محدودیت های pin change interrupt موجود در AVR و همچنین امکان مهم وقفه ی تو در تو که AVR بصورت پیش فرض نداره اصن
4) EEPROM با عمر 3 برابر
5) استفاده از ماگزیمم فرکانس کاری بدون نیاز به کریستال خارجی، با امکانات زیاد تقسیم کردن فرکانس و بدست آوردن فرکانس های مختلف از روی یه کلاک، و مهمتر از همه امکان تغییر کلاک هنگام کار و توسط برنامه.
6) قیمت تا حدود نصف
به هر حال این میکروکنترلرها برای جاهایی که هزینه مهمه، یا امکانات بیشتری از یه میکروکنترلر 8 بیت نیازه ، قابلیت ها و قیمتشون به سختی کار باهاشون میچربه
برای استفاده از بردهای stm8 موجود در فروشگاه، باید به این روش کار کنید : توجه کنید که این روشیه که خود stm پیشنهاد داده و البته روش های دیگه هم هست
1) ابتدا IDE و پروگرام STM برای میکروکنترلرهای 8 بیتشو با نام ST Visual Develop و ST Visual Programmer دانلود کنید از سایت ST (توجه کنید که جدیدا تو فایل زیپ هر دوشو میذارن یکیشو دانلود کنید اون یکی هم توشه)
2) کامپایلر C شرکت کاسمیک رو از سایت Cosmic برای stm8 دانلود کنید. جدیدا این نسخه برای شرکت اس تی ام رایگان شده
3) یه پروگرامر st-link چه این ارزونا چه اون مدلایی که دیباگر هم هستن تهیه کنید
بعد از نصب همه، میتونید مستقیما از کامپایلر کاسمیک استفاده کنید، یا اینکه از ویژوال دولوپ که در گام اول نصب کردید استفاده کنید. توجه کنید که ویژوال دولوپ فقط یه محیط ظاهریه و خودش کامپایلر نیست برای همین بود که به کاسمیک نیاز داشتیم. برای استفاده از محیط ویژوال دولوپ، برنامه رو باز کنید و از توی منوی تولز و بعد آپشنز، تب تولچین رو انتخاب کنید. بعد از اون از تو لیست cosmic fot stm رو انتخاب کنید و آدرس نصبشو به برنامه بدید. تمامه
برنامه ویژوال پروگرامر، یه برنامه ی کنترله که اجازه میده فایلهای پروگرام که توسط کامپایلرها ساخته شدن (مث کاسمیک، کاسمیک با ویژوال دولوپ، IAR ، رایسوننس و ...) رو روی چیپ پروگرام کنید، آپشن بایت ها رو تغییر بدید، حافظه رو بخونید یا بنویسید و ...
برای پروگرام کردن کافیه فایل با پسوند s19 که بعد از کامپایل تو پوشه برنامه درست میشه توسط برنامه های بالا رو تو این ویژوال پروگرامر لود کنید و بعد روی چیپ "دانلودش" کنید.
نکته ی دیگه این برنامه اینه که میتونه برای میکروکنترلرهای 32 بیتی آرم جدید و قدیم شرکت STM هم استفاده بشه و منحصر به 8 بیتی ها نیست.
برای برنامه نویسی توجه کنید که :
STM8 خیلی از کدهای از پیش آماده شده مث LCD ، delay و ... رو نداره. حتا تعاریف رجیسترهای ورودی خروجیشم برای کامپایلرهای مختلف فرق میکنه. (خود شرکت STM یه فایل هدر داده که اونو استفاده کنید و تو کامپایلرهای مختلف کار میکنه)
اگر حرفه ای تر هستید خودتون شرو کنید با استفاده از دیتاشیت و reference manual برای رجیسترها پوینتر بسازید و استفاده کنید. با این حال کدهای مختلف غیررسمی تو گیت و اینا هست که میتونید استفاده کنید.
بجای کاسمیک، میتونید از کامپایلرهای Raisonance و IAR هم استفاده کنید که بدبختی کرک و اینا رو دارید. البته IAR برای STM8 رو سایت پی سی دانلود قرار داده با کرک. به هر حال از نسخه رایگانشم میتونید استفاده کنید. هم حلاله هم دردسر کرک نداره. نسخه رایگان محدودیت حجم 8 کیلوبایت داره و برای میکروهایی با حجم بالاتر از 8 کیلوبایت نمیشه برنامه نوشت
امیدوارم این پست کمکی کرده باشه. بدیهیه که کامل نیست. دوستان نکته ای بودن اشاره کنن آپدیت میشه.
ویرایش توسط Tiranoid : 06-29-2017 در ساعت 06:53 PM
-
یه سری کد ساده که برای راه اندازی نوشتم (دیلی، اینتراپت، نمایشگر) برای اس تی ام 8 توی گیت هاب.
بزودی کدای دیگه هم که بنویسم قرار میدم.
https://github.com/Tiranoid/STM8-Standard-libs
کدهای زیر تو نوبت هستن که بنویسم برای STM
کد NRF24L01
کد UART
کد SPI
کد I2C
-
سلام
کدام یک از این stm32 های ارزان قیمت دارای مبدل دیجیتال به آنالوگ (dac) است.
سپاسگزارم
مجوز های ارسال و ویرایش
- شما نمیتوانید موضوع جدیدی ارسال کنید
- شما امکان ارسال پاسخ را ندارید
- شما نمیتوانید فایل پیوست کنید.
- شما نمیتوانید پست های خود را ویرایش کنید
-
مشاهده قوانین انجمن
SEO by vBSEO