میکروکنترلر STM32F103RCT6
123,000 تومان
- پکیج : LQFP-64
- حافظه فلش : 256 یا 512 کیلوبایت
- ولتاژ کاری : 2.0 الی 3.6 ولت
- بسامد پردازشی : 72 مگاهرتز
- معماری میکروکنترلر : Cortex®-M3

میکروکنترلر STM32F103RCT6 یا میکروکنترلرها مدارات مجتمع یکپارچه ای هستند که در ابعاد میکرو توانایی کنترل کردن را دارا می باشند به عبارتی میکروکنترلرها با استفاده از ورودی هایی که دریافت میکنند بعد از فرآیند پردازش اطلاعات توانایی ارسال خروجی مناسب با ورودی های دریافتی را طبق دستورالعمل هایی که داده شده است برعهده دارند.
بر این اساس میکروکنترلرها (MCU) با میکروپروسسورها (MPU) تفاوت زیادی دارند و از این تفاوت میشه دارا بودن واحدهایی مانند تایمر، شمارنده، واحد محاسبات، رجیسترها، حافظه های فلش و … اشاره کرد در صورتیکه میکروپروسسورها فقط یک واحد پردازشی به صورت مجتمع شده را دارا می باشند و توانایی کنترل و تصمیم به صورت تنها را قادر نیستند.
از گذشته تا به امروز معماری میکروکنترلرها بر اساس ساختار گذرگاه داده دسته بندی و شناخته شده اند، از 8 بیت، 16 بیت و 32 گرفته به بالاتر در حال توسعه و پیشرفت می باشند. دو معماری RISC و CISC از دیگر تفاوت های ساختاری بین میکروکنترلر و میکروپروسسسور می باشد که عموما در مدارات میکروکنترلری از معماری RISC و از مدارات کامپیوتری مانند سیستم های رومیزی یا لپ تاپ های قدرتمند از معماری CISC استفاده می شود.
میکروکنترلر STM32F103RCT6 یکی از میکروکنترلرهای محبوب از خانواده STM32 از شرکت STMicroelectronics است. این میکروکنترلر بر اساس هسته ARM Cortex-M3 ساخته شده و دارای ویژگیها و امکانات متنوعی است. این اطلاعات ممکن است به شما کمک کند:
- پردازنده مرکزی (CPU): STM32F103RCT6 از هسته Cortex-M3 با فرکانس ساعت کاری بالغ بر 72 مگاهرتز پشتیبانی میکند.
- حافظه فلش: این میکروکنترلر دارای حافظه فلش داخلی است که برای ذخیره برنامهها و کدها استفاده میشود. حجم حافظه فلش ممکن است متغیر باشد.
- حافظه RAM: دارای حافظه RAM برای ذخیره دادهها و متغیرهای اجرایی.
- پورتها و پینها: STM32F103RCT6 دارای ورودیها و خروجیهای دیجیتال با پینهای GPIO (ورودی/خروجی عمومی) است که برای اتصال به سختافزار خارجی و سنسورها استفاده میشود.
- پریفرالها: این میکروکنترلر دارای انواع پریفرالهای مختلف مانند تایمرها، رابطهای سیالاتی (UART، SPI، I2C)، PWM، ADC و بیشتر است.
- اتصالات و ارتباطات: STM32F103RCT6 قابلیت اتصال به ارتباطات مختلفی نظیر USB، CAN، و Ethernet را داراست.
- توان مصرفی: این میکروکنترلر دارای امکانات مدیریت توان برای کاهش مصرف انرژی در برنامههای پیچیده است.
- نرمافزار توسعه: برای توسعه نرمافزار برای STM32 میتوان از محیطهای مختلفی نظیر STM32CubeIDE، Keil MDK، یا محیطهای متن باز نظیر STM32CubeMX و GCC استفاده کرد.
- سیستم عامل و ارتباطات: میکروکنترلرهای STM32 قابلیت اجرای سیستمعاملهای واقعگرا مانند FreeRTOS را دارند و از پروتکلهای ارتباطی مختلف نیز پشتیبانی میکنند.
میکروکنترلر STM32F103RCT6 محصول کمپانی STmicroelectronics از نوع 32 بیتی با ساختار RISC و معماری ARM Cortex®-M3 می باشد، توانایی پردازش تا 72 مگاهرتز در کنار حافظه فلش 256 ~ 512 کیلوبایت یا 1 مگابایتی و ولتاژ کاری 3.3 ولت با پکیج LQFP-100 ارائه شده است. از مزیت های این میکروکنترلر می توان به استاندارهای ارتباطی با سیم USART | I2C | SPI در کنار CAN و USB اشاره کرد. کریستال داخلی 8 مگاهرتز و 40 کیلوهرتز به همراه کریستال ساعت 32 کیلوهرتزی با قابلیت اتصال کریستال خارجی 4 تا 32 مگاهرتز از دیگر ویژگی بخش اسیلاتور این میکروکنترلر می باشد. دارای بخش تغذیه آنالوگ جداگانه 3.3 ولتی می باشد. دارای 12 کانال DMA بوده. در قسمت مبدل آنالوگ به دیجیتال دارای 16 کانال 12 بیتی می باشد. در بخش تایمر از 11 کانال و یک کنترلر پیشرفته 16 بیتی برای 6 کانال PWM دارا می باشد. در نهایت یک بخش ورودی SWD جهت پروگرام کردن میکروکنترلر نیز تعبیه شده است.
اگر به دنبال میکروکنترلرهای مشابه یا جایگزین برای STM32F103RCT6 هستید، باید توجه داشته باشید که انتخاب میکروکنترلر وابسته به نیازهای خاص پروژه شما و مشخصات دقیق مورد نظر شماست. در اینجا چند میکروکنترلر محبوب دیگر از STMicroelectronics که ممکن است برای پروژههای شما مناسب باشند، معرفی میشوند:
- STM32F407xx: این سری از میکروکنترلرها نیز بر پایه ARM Cortex-M4 قرار دارند و دارای فرکانس ساعتی بالا و پریفرالهای متنوعی هستند. حافظه فلش بزرگتری نسبت به STM32F103 دارند.
- STM32L4xx: این سری از میکروکنترلرها بر پایه ARM Cortex-M4 میباشند و معمولاً برای پروژههایی که نیاز به مصرف انرژی کم دارند مناسب هستند. دارای حافظه فلش و RAM متنوعی هستند.
- STM32H7xx: این میکروکنترلرها نیز از هسته ARM Cortex-M7 استفاده میکنند و دارای عملکرد بسیار بالا و امکانات گستردهای هستند.
- NXP Kinetis: میکروکنترلرهای Kinetis از شرکت NXP نیز محبوبیت دارند و دارای انواع مدلها و ویژگیها هستند.
- Microchip PIC32: این سری از میکروکنترلرها از Microchip است و دارای پریفرالهای گسترده و انعطافپذیری هستند.
برای انتخاب بهترین میکروکنترلر برای پروژهتان، شما باید نیازها و مشخصات دقیق پروژه خود را در نظر بگیرید و میکروکنترلری که بهترین تطابق را با آنها دارد را انتخاب کنید. همچنین، در نظر بگیرید که نیاز به ابزارها و محیط توسعه مناسب برای برنامهنویسی میکروکنترلر خود دارید.
از جمله نرم افزارهایی که با میکروکنترلرهای 32 بیتی سازگار هستند میشه به STM32CubeMX نام برد که در این نرم افزار امکان تنظیم رجیسترهای میکروکنترلر به صورت گرافیکی در اختیار شما قرار میدهد و هم چنین برای کدنویسی سخت افزار تحت زبان C میتونید از نرم افزار Keil استفاده کنید که البته این نرم افزار به صورت رایگان نیست اما اگر طرفدار نرم افزارهای متن باز و رایگان هستید که خود شرکت ST زحمت ارائه این نرم افزار را کشیده میتوینم به STM32CubeIDE اشاره کنیم که هم امکان تنظیم رجیستری را به شما میده و برنامه نویسی به صورت یکپارچه در این نرم افزار تجربه کنید.
شاید براتون جالب باشه در گذشته مجموعه Atollic TrueStudio نرم افزاری بود که این شرکت طراحی کرده بود که بعد از خریدن این شرکت توسط کمپانی ST و اقدام آن با STM32CubeMX حاصل نرم افزار موردنظر شد حتی خود TrueStudio بر پایه Eclipse بود و علاوه بر این دو نرم افزاری که معرفی شد به صورت رایگان از نرم افزارهای اکلیپس و ترو استودیو هم میتونید استفاده کنید.
برای برنامهنویسی و پروگرمکردن میکروکنترلر STM32F103RCT6، شما میتوانید از محیطها و ابزارهای مختلفی استفاده کنید. در اینجا چند نرمافزار و پروگرمری معروف برای این میکروکنترلر ذکر شده است:
- STM32CubeIDE:
- این نرمافزار توسط STMicroelectronics ارائه میشود و یک محیط توسعه یکپارچه (IDE) برای برنامهنویسی میکروکنترلرهای STM32 ارائه میدهد. STM32CubeIDE از زبانهای برنامهنویسی C و C++ پشتیبانی میکند و امکانات گستردهای برای توسعه نرمافزار فراهم میکند.
- Keil MDK (Microcontroller Development Kit):
- Keil MDK یکی از محبوبترین IDE برای برنامهنویسی میکروکنترلرهای ARM میباشد. این محیط توسعه ابزارها و کامپایلرهای مخصوصی دارد و برای توسعه نرمافزار قدرتمندی است.
- ST-Link Utility:
- این نرمافزار از STMicroelectronics برای ارتباط با میکروکنترلرهای STM32 و بارگذاری برنامهها به میکروکنترلرها استفاده میشود. ST-Link Utility همچنین به شما امکان میدهد تا برنامهها و تنظیمات را روی میکروکنترلرها بریزید.
- STM32CubeMX:
- STM32CubeMX یک ابزار تنظیم و تنظیم میکروکنترلرهای STM32 است. این نرمافزار به شما کمک میکند تا پینها و پریفرالهای میکروکنترلر را تنظیم کنید و کدهای اولیه تولید کنید.
- OpenOCD (Open On-Chip Debugger):
- این یک پروگرمر متن باز است که از طریق پورت JTAG یا SWD به میکروکنترلر متصل میشود. معمولاً با IDEهای مختلفی مانند Eclipse و Visual Studio Code استفاده میشود.
- SEGGER J-Link:
- این یک سری پروگرمرهای حرفهای برای میکروکنترلرهای ARM است. SEGGER J-Link به شما امکان میدهد تا برنامهنویسی و دیباگ میکروکنترلرهای STM32 را انجام دهید.
نرمافزارها و پروگرمرهایی که انتخاب میکنید، بستگی به تجربه شما و نیازهای پروژه دارد. با توجه به سادگی یا پیچیدگی پروژه، محیط توسعه و پروگرمری مناسب را انتخاب کنید در هرصورت برای خرید و مشاهده مشخصات میتوانید از طریق فروشگاه امجد کالا اقدام نمایید.
اما گاهی پیش میاد که توسعه دهنده سخت افزاری تمایل به استفاده از میکروکنترلرهای 8 بیتی پیدا میکند در این صورت نرم افزاری که باید برای این سری از میکروکنترلرها یا همان STM8 ها استفاده کرد میتوان به STM32CubeIDE اشاره کرد با این تفاوت که شما قادر نیستید رجیسترهای این میکروکنترلر را به صورت رابط کاربری آسان توسط نرم افزار تنظیم کنید اما این قابلیت را دارید که از بخش کدنویسی نرم افزار استفاده کنید و با استفاده از کتابخانه های CMSIS یا SPL اصطلاحا به صورت رجیستری بیت های این رجیسترها را تنظیم و برای مقاصد خودتون تنظیم و استفاده کنید، ضمن اینکه شما برای پروگرام کردن این پروگرامرها میتوانید از نرم افزار ST Visual Programmer استفاده کنید این در حالیه که شرکت ST یک جایگزین توصیه شده هم برای این نرم افزار ارائه داده و نام این نرم افزار STM32Cube Programmer می باشد.
پروگرامر سازگار با میکروکنترلرهای شرکت ST در دونوع ST-Link USB و ST-Link V2 J-TAG هستند که هر دو نیز محصول همین شرکت می باشند و با استفاده از این دو پروگرامر میتونید میکروکنترلر را پروگرام کنید در پروگرامر نوع اول میکروکنترلر از طریق پایه های SWD به پروگرامر متصل و برنامه ریزی میشود اما در پروگرامر نوع دوم علاوه بر SWD یک J-TAG نیز در اختیار شما قرار میده و میتونید برنامه ای که نوشتید را دیباگ یا عیب یابی کنید و مرحله به مرحله از کدی که نوشتید یک تحلیل انجام بدید به این نکته توجه داشته باشید که هر پروگرامری با این میکروکنترلرها سازگاری نداره و این سیاست های این شرکت هستش که منجر به طراحی این دو پروگرامر برای توسعه دهندگان سخت افزاری این شرکت شده است.
از نرم افزارهایی که میتونید بدون به صورت مستقیم فایل هگز را با این پروگرامر ها به میکروکنترلر منتقل کنید میشه به نرم افزار ST-LINK utility اشاره کرد بعبارت دیگه شما نیازی به نرم افزارهای واسط مثل CubeIDE یا CubeMX ندارید ضمن اینکه این نرم افزار جایگزین نرم افزار STM32CubeProgrammer هم شده است.
توضیحات تکمیلی
پکیج | LQFP-64 |
---|---|
ولتاژ کاری | 2 الی 3.6 ولت |
مدهای کاری | Sleep ،Stop و Standby |
ظرفیت فلش | 256 یا 512 کیلوبایت |
معماری پردازنده | Cortex®-M3 |
فرکانس پردازشی | 72 مگاهرتز |
توسط میرعمادی
در مقایسه با میکروکنترلرهای مشابه و فیکی که توی بازار زیاده شده برخلافشون این ای سی کیفیت خیلی خوبی داشت و من ازش راضی بودم.