راهنمای استفاده از کتابخانه lcd nokia1661 - قسمت10
لینک پست معرفی مشخصات کتابخانه
موضوع این قسمت: راه اندازی کتابخانه برای stm32 Cortex M0
با سلام .
در قسمت قبل راه اندازی کتابخانه را برای میکروهای stm32 CortexM3 توضیح دادم .
در این قسمت تنظیمات لازم برای میکروهای Stm32 CortexM0 توضیح خواهم داد.
فایل کیوب مربوط به تنظیمات پروژه همراه مثالی که برای شما ارسال میشود وجود دارد .
ولی برای رفع هرگونه ابهام توضیحات زیر رو میدم .
اولین قسمت فایل کیوب که باید تنظیم بشه مربوط به تب pinout هست .
در این تب تنظیمات مربوط به واحد SPI دیده میشه .

من برای spi از واحد2 استفاده کردم . تننظیماتش رو توی کادر قرمز میبینید .
دوتا پایه هم برای cs و reset احتیاج هست که اونها را باید خروجی قرار بدید .
و در تصویر زیر مشخص هست .

جزئیات تنظیم spi در سربرگ conf را در تصویر زیر مشخص کردم .

شما با تنظیم prescaler ( بالای مستطیل قرمز ) میتونید baud rate که در مستطیل قرمز مشخص هست را تنظیم کنید که در اینجا روی 12 مگاهرتز تنظیم شده است . این در واقع همون فرکانس کلاک spi میکرو هست .
برای تنظیم gpio هم طبق تصویر زیر اقدام کنید.

نکته ای که باید بهش توجه کنید اون ستونهایی هست که با مستطیل قرمز بزرگ نمایش داده شده .
اگر روی هر سطر کلیک کنید های لایت میشه و گسترده ی اون در پایین نمایش داده میشه . که میتونیدبرای pin مورد نظر اسم هم بگذارید که در کادر قرمز کوچک میبینید .
تا اینجا تنظیمات مربوط به پریفرال ها انجام شده است . یک تعداد تنظیمات دیگه داره که میشه گفت سلیقه ای هستن ولی میتونن مفید باشن .
برای این تنظیمات لازم هست که برید توی منوی project و setting رو انتخاب کنید . پنجره ای به شکل زیر باز میشه .

نکته مهم این تصویر کادر قرمز هست . علت انتخاب این گزینه ها پوشه بندی مربوط به پروژه هست . که خیلی واضح و سهل و راحت و قابل فهم از کار در میاد. البته نرم افزار من true studio هست. نمیدونم برای نرم افزارهای دیگه چطوره !! همانطور که گفتم این موضوع سلیقه ای هست .
تنظیمات در برگه code generator را من طبق تصویر زیر انجام میدم .

که بازم سلیقه ای هست . ولی این تنظیمات که توی کادر قرمز اومده ، برای من سهولت بیشتری ایجاد میکنه .
مورد سوم برگه advanced stting هست .که در تصویر زیر میبینید.

همانطور که در کادر قرمز میبینید ، کتابخانه مورد استفاده برای SPI 2 را LL انتخاب کردم .
علتش رو به صورت هشدار زیر توضیح میدم :
هشدار :
در نسخه cube MX 4.26.0 که مورد استفاده من هست . واحد spi2 با کتابخانه HAL درست کار نمیکنه !!! ولی با کتابخانه LL مشکلی نداره . صحت این مطلب را در مورد نسخه 5 دقیقا نمیدنم ( روی سیستم من با مشکل مواجه هست و خوب کار نمیکنه ) ولی در هر صورت این موضوع را مد نظر داشته باشید .
بعد از اعمال این تنظیمات و تولید کد پروژه ، کدهای ضروری مربوط به فایل main در تصاویر زیر نمایش داده شده است .
ابتدا در فایل main.c اینکلود ها را اضافه کنید و بهتر است در همان جایی که کیوب در نظر گرفته کدها را بنویسید . طبق تصویر زیر

و در خود تابع main() دستورات درون کادر قرمز نوشته شود . دقت کنی که مکان آنها بعد از اجرای توابع مربوط به پیکر بندی gpio و spi باشد. این مطلب را در تصویر زیر و درون کادر قرمز میبینید .

حال نوبت به معرفی یک تابع ، به عنوان تابع تاخیر میرسد .
بهتر است اینکار در فایل main.h انجام شود .
یک مثال برای این هدف در کادر قرمز تصویر زیر نمایش داده شده است .

راه اندازی در کمپایلر کیل uvision5
تمام موارد بالا برای کمپایلر کیل نیز صادق است با این تفاوت که 2 مورد اضاف وجود دارد یکی تعریف 2 متغیر عمومی که در تصویر زیر مشاهده میکنید . ( کادر قرمز)

توجه : این دو متغیر برای نسخه های قدیمی احتیاج است و برای نسخه هایی که بعد از تاریخ 1399/3/6
تهیه نموده اید ، لازم نیست .
و یک تنظیمات در کمپایلر کیل احتایج هست که در 2 تصویر زیر میبینید .
تصویر زیر مربوط به تنظیم نسخه کمپایلر هست .

و تصویر زیر مربوط به استاندارد زبان C مورد استفاده است .

در اینجا توضیحات مربوط به راه اندازی کتابخانه برای stm32f0xx به پایان رسید .
امیدوارم استفاده برده باشید و مورد توجه تان قرار گرفته باشد .
قسمت بعدی آخرین قسمت از مطالب مربوط به راه اندازی کتابخانه است و در مورد فرمت رنگ و نمایش تصویر در ال سی دی توضیح خواهم داد.
با سپاس از توجه تان.
مالکیت معنوی : لطفا کپی نکنید ، لینک بدید .