در قسمت قبلی آموزش CH32 در مورد هستههای RISC_V صحبت کردیم و یک آی سی از شرکت WCH معرفی کردیم، بریم تا با هم بیشتر این شرکت رو بشناسیم.
(WCH)NanjingQinhengMicroelectronics این شرکت یک شرکت چینی هست که در دهههای اخیر آیسیهای مختلفی روانه بازارهای بینالمللی کرده که به احتمال زیاد آیسیهای Cortex – M این شرکت رو دیدهاید، یا شاید آی سی USB- TO – TTL این شرکت به نام CH340 و یا خیلی از آیسیهای دیگر، محصولات این شرکت علاوه بر مقرونبهصرفه بودن از تواناییهای خوبی نیز برخوردار هست، میکرو های این شرکت نیز طبق ادعای خود شرکت توانایی اجرای صنعتی دارند و در محیطهایی که برای میکروکنترلر مناسب نیست نیز میتوانند عملکرد درستی داشته باشند.
معرفی برخی محصولات شرکت WCH
همانطور که بالاتر گفته شد این شرکت آیسیهای زیادی تولید میکند، ولی کار مال با میکروکنترلرهای این شرکت هست، بریم انواع مختلف این میکروکنترلرها رو ببینیم:
RISC-V MCUs: این دسته از میکروکنترلرها قیمتی ارزانتری نسبت به سریهای Cortex_M دارند دلیلش هم در آموزش قبلی گفته شد، این دسته نیز استاندارد کار در محیط صنعتی نیز دارند و داری دستهبندی Low Power تا High performance هستند که برخی سریهای پر کاربرد میکروکنترلرهای شرکت WCH در زیر آمده است.
سری V نشانگر سری 32-bit General Enhanced RISC-V MCU هستند این دسته مثل سریهای F درSTM32 میباشد که از سری V0XX , V1XX, V2XX , V3XX تشکیل شدهاند. مثل میکروکنترلر CH32V307VCT6 که ما در این آموزشها با آن کار میکنیم.
سری L نشانگر Low Power هستند، این دسته از مصرف برق کمتری برخوردار هستند و مسلماً قدرت پردازش و پریفرال های کمتری نسبت به سری V و سری X دارد. این سری نیز در دسته مصارف صنعتی قرار دارد. ولی باید بدانیم که شرکت WCH توانسته با حفظ مصرف کمتر قدرت پردازش خوبی نیز در این آیسیها قرار دهد.
سری X از محصولاتی است که برای صنعت بهینه شده و امکانات خوبی نیز دارد.
حرف های بالا بیشتر یک آشنایی کلی با دستهبندیهای میکروکنترلرهای RISC_V این شرکت هست و نمیتوان گفت حتماً همه این ویژگیها در همه آن دستهها هستند، پس قبل از انتخاب میکروکنترلرتون حتماً دیتاشیت و داکیومنتهای مربوط به آن را بخوانید تا بتوانید با چشمباز و خیالی آسوده میکروکنترلر مدار خود را انتخاب کنید و فقط به این اطلاعات که نمایی کلی به شما میدهند اعتنا نکنید.
- Cortex-M MCUs: میکروکنترلرهایی با معماری آرم را از شرکت WCH بهاحتمال زیاد دیدهاید و با آن کارکردهاید که در مدت گرانی میکروکنترلرها بهعنوان جایگزین میکروکنترلرهای آرم شرکت ST بهشدت توصیه میشد و مقالهای در سیسوگ دارد.
- RISC Assembly MCUs این دسته از میکروکنترلرها دسته بیسیک با معماری RISC هستند، دارای I/O محدود و قابلیتهای کمی هستند.
- Featured Application MCUs: این سری از آیسیها بیشتر برای کارهای خاص توسعه پیدا کردهاند، برای مثال همین سری که مبنای آموزش ما نیز هست، هم جز این دسته هست هم جز دسته اول و ویژگی خاصی که باعث شده در این دسته راه یابد قابلیتهای زیاد آن در ارتباطات هست.
- USB2.0 full-speed OTG interface
- USB2.0 high-speed host/device interface (built-in 480Mbps PHY)
- 3 USARTs, 5 UARTs
- 2 CAN interfaces (2.0B active)
- SDIO interface, FSMC interface, DVP
- 2 IIC interfaces, 3 SPI interfaces, 2 IIS interfaces
- Gigabit Ethernet controller ETH (built-in 10M PHY)
BLE MCUs: این سری آیسیها بیشتر برای مدارات بیسیم و IOT استفاده میشود، نکتهای که دارد این است که میتواند هر سری هستههای مختلفی داشته باشند. برای مثال CH32V208WBU6 دارای هسته RISC_V هست و سری CH32F208RBT6 از سری Cortex میباشد.
برای متوجهشدن فرقشون از روی اسم میتواند از حرف بعد از بیت آی سی متوجه شوید که هسته آن ارم هست یا RISC_V .
سریهای آرم این شرکت تا به اینجای کار همه دارای حرف F هستند و سری RISC_V دارای سه حرف L,V,X هستند که بالاتر به معنای هر کدام پرداختیم.
معرفی نرمافزار و ابزارهای موردنیاز
ما برای برنامهنویسی این سری میکروکنترلرهای RISC_V از نرمافزار MounRiver Studio بهاختصار MRS استفاده میکنیم، واضح است که نمیتوانیم از KEIL استفاده کنیم، زیرا KEIL برای میکروکنترلرهای مبتنی بر هسته آرم هست، ولی ما با هسته RISC_V کار میکنیم.
برای دانلود این IDE میتوانید به وبسایت خود شرکت MounRiver Studio به آدرس http://www.mounriver.com/download دانلود کنید.
این IDE توانایی پروگرام کردن چیپهای WCH را در درون خود دارد؛ اما اگر میخواهید از نرمافزار خارجی برای پروگرام کردن استفاده کنید میتوانید از نرمافزار WCH-LinkUtility استفاده کنید که میتواند از سایت شرکت WCH بخش دانلود کنید.
به آدرس https://www.wch.cn/downloads/WCH-LinkUtility_ZIP.html
بردی که برای آموزش استفاده میکنیم پروگرامر نصب شده روی برد دارد؛ اما شما میتوانید از WCH–Link استفاده کنید.
برای اتصال پروگرامر به میکرو باید پایه GND ->GND و SWCLK -> SWCLK و SWDIO -> SWDIO متصل بشود (همانند میکرو های شرکت ST)، میتوانید درصورتیکه مدار متصل به میکروجریان کمی بکشد، از خود پروگرامر تغذیه آی سی را تأمین کنید.
و همچنین برای اینکه به مشکلی بر نخوردید پایههای VDD , VREF+ , VREF- , VDDA را طبق شکل زیر متصل بکنید.
درصورتیکه همه اتصالات درست باشد میتوان میکرو رو پروگرام کرد، برای دیدن آموزش پروگرام کردن به قسمت بعد آموزش سری بزنید.