در این آموزش قصد داریم نمایشگر TFT LCD 3.5 Inch در ابعاد 320×480 پیکسلی را با درایور ILI9488 و رابط SPI توسط STM32 , ESP32 راه اندازی کنیم .
راه اندازی ili9488 با stm32
در این پروژه ما ابتدا توسط نرم افزار STM32CubeMX میکروکنترلر stm32f103c8t6 را پیکربندی می کنیم . ابتدا یکی از پورت های SPI را جهت اتصال به lcd ili9488 به شکل زیر پیکربندی می کنیم .
سه پایه دیگر از میکروکنترلر را به دلخواه به صورت GPIO_Output پیکربندی می کنیم و نام این سه پایه را LCD_RST , LCD_DC , LCD_CS تعریف می کنیم . حالا به ترتیب زیر پایه هایی که پیکربندی کردیم را به پایه های lcd ili9488 وصل می کنیم .
SPI1_MOSI --> SDI(MOSI) SPI1_SCK --> SCK LCD_CS --> CS LCD_DC --> DC/RS LCD_RST --> RESET
قدم بعدی معرفی پورت SPI به کتابحانه ili9488 می باشد . برای اینکار فایل ILI9488_SPI.h را باز کنید و دو خط کد زیر را تغییر دهید . چون ما spi1 را فعال کردیم بنابراین hspi1 را قرار می دهیم ، اگر شما spi دیگری را فعال کرده اید شماره spi را وارد کنید .
extern SPI_HandleTypeDef hspi1; #define HSPI_INSTANCE &hspi1
راه اندازی تاچ یا صفحه لمسی ili9488 با stm32
اگر بر روی نمایشگر شما صفحه لمسی قرار دارد و همچنین پشت هدربورد چیپ درایور تاچ اسکرین مانند تصویر بالا ، با شماره XPT2046 قرار دارد . می توانید به شکل زیر میکروکنترلر stm32 را برای اتصال به پورت spi تاچ اسکرین پیکربندی کنید .
ما از یک کتابخانه مستقل برای راه اندازی چیپ XPT2046 با stm32 استفاده می کنیم . فقط کافی است این کتابخانه را به کتابخانه ILI9488_SPI.h اضافه کنیم و تنظیمات لازم را به شکل زیر انجام دهیم .
پنج پایه از میکروکنترلر را به دلخواه انتخاب کنید و نامهای T_CLK , T_CS , T_DIN , T_DO , T_IRQ را برای این پایه ها قرار دهید . پایه های T_DO , T_IRQ به صورت GPIO_Input , سه پایه دیگر به صورت GPIO_Output پیکربندی شوند . حالا به ترتیب پایه هایی که پیکربندی کردیم را دقیقا به پایه هایی با همان نام ها به lcd ili9488 وصل می کنیم .
بعد از وصل کردن پایه های میکروکنترلر stm32 به lcd ili9488 ، تغذیه مدار را وصل کنید و مثالی که همراه کتابخانه هست را داخل میکرو کنترلر stm32 پروگرام کنید .اگر تمامی مراحل را درست انجام داده باشید ، بر روی tft lcd ili9488 همانند تصویرهای زیر نمایش داده می شود . اگر موفق به راه اندازی ili9488 با stm32 نشدید ، از طریق واتساپ به ما پیام دهید تا در راه اندازی tft lcd ili9488 با stm32 شما را راهنمایی کنیم .
فیلم زیر نحوه نمایش فونت فارسی و انگلیسی بر روی lcd ili9488 با stm32 در چهارجهت نمایشگر به همراه راه اندازی تاچ اسکرین یا صفحه لمسی با درایور xpt2046 با stm32 می باشد .
کتابخانه ای که برای راه اندازی ili9488 با stm32 تهیه شده است دارای قابلیت های زیر می باشد :
- قابلیت نمایش حروف فارسی و انگلیسی
- قابلیت نمایش تصویر bitmap
- قابلیت تغییر سایز و اسکیل فونت تنها با یک دستور
- قابلیت نوشتن متن در 4 جهت tft lcd ili9488
- کتابخانه و مثال برای کامپایلرهای STM32CUBEIDE و KEIL
- پیکربندی کامل توسط نرم افزار STM32CUBEMX
- نوشته شده توسط توابع HAL و پیاده سازی شده بر روی میکروکنترلر stm32f103c8t6(bluepill)
- قابلیت اضافه کردن کتابخانه ILI9488_SPI براحتی بر روی سری های مختلف میکروکنترلرهای stm32
- بهمراه کتابخانه راه اندازی چیپ تاچ اسکرین XPT2046 و فیلم آموزشی نحوه کالیبره کردن صفحه لمسی
راه اندازی ili9488 با ESP32
برای علاقمندان به آردوینو کتابخانه راه اندازی نمایشگر tft ili9488 با قابلیت پشتیبانی از فونت فارسی را آماده کرده ایم . این کتابخانه فقط سازگار با ESP32 در محیط آردوینو می باشد . این کتابخانه قابلیت نمایش تصویر با فرمت jpg را نیز دارد . ابزار تبدیل عکس به فایل هگز نیز همراه پروژه قرار داده شده است .
همراه این پروژه 25 دقیقه فیلم آموزشی از نحوه پیکربندی پایه های tft ili9488 و نحوه استفاده از توابع فونت فارسی در برنامه و نحوه تبدیل تصاویر به فایل هگز و نمایش آن بر روی نمایش و همچنین نحوه راه اندازی صفحه لمسی یا touch screen نمایشگر ili9488 قرار داده شده است .
تصویر زیر خروجی برنامه ای است که در تصویر بالا می باشد .
در فیلم زیر می توانید نمایش فونت فارسی و سرعت رفرش و نمایش تصویر بر روی tft ili9488 را مشاهده نمایید.
همچنین بخوانید : راه اندازی lcd st7735 با stm32