STM32

راه اندازی LCD گرافیکی T6963 با STM32

راه اندازی GLCD TOSHIBA T6963 با STM32

در این آموزش به راه اندازی LCD گرافیکی با درایور T6963 خواهیم پرداخت . برای راه اندازی LCD ها از درایور های مختلف استفاده می شود . استفاده از درایور درگیر شدن پردازنده برای راه اندازی LCD را کم می کند و در این حالت پردازنده تصاویر و متنها را در به صورت دستوراتی به درایور ارسال کرده و درایور با اسکن سطر و ستونی از پیکسل ها تصاویر و نوشته ها را نمایش می دهد .

کارخانه های سازنده LCD ها را با درایور به صورت یکپارچه می سازند ، این کار سبب کاهش فضای اشغال شده خواهد شد . LCD های گرافیکی با توجه به تراشه پردازنده خود معرفی میشن که به این پردازنده ها، راه انداز یا درایور گفته می شود . اگر پشت LCD خود را نگاه کنید مدار و آی سی های درایور را ملاحضه خواهید کرد .

LCD های گرافیکی در ابعاد مختلف ساخته می شود ، ابعاد بر مبنای تعداد پیکسل های بکار رفته در LCD مشخص می شود ، از نمونه های موجود در بازار ابعاد 128×64 , 128×128 , 240×128 از همه پرکاربردتر هستند . در این آموزش به راه اندازی LCD گرافیکی با درایور T6963 در ابعاد 240×128 پیکسل خواهیم پرداخت .

LCD های گرافیکی در دو مد متنی و گرافیکی تولید می شوند . مد متنی یا TEXT یعنی داخل lcd گرافیکی حافظه ای وجود دارد که تمامی فونتهای اسکی (ASCII) درون این حافظه قرار دارد و تنها با چند دستورالعمل می توانیم متن دلخواه خود را بر روی LCD گرافیکی نمایش دهیم .

مد گرافیکی فقط قابلیت نمایش تصاویر با روشن و خاموش کردن پیکسل ها را دارد ، البته می توان فونت کاراکترهای اسکی را توسط نرم افزارهای فونت ساز ایجاد کرد و درون حافظه میکروکنترلر ذخیره نمود و با خاموش و روشن کردن پیکسل ها بر اساس فونت ساخته شده ، متن دلخواه خود را بر روی LCD گرافیکی نمایش داد .

از LCD گرافیکی های موجود در بازار برخی دارای هر دو مد TEXT , GRAPHIC می باشند . LCD گرافیکی با درایور T6963 شرکت توشیبا که در ابعاد 240×128 ساخته شده است دارای هر دو مد متن و گرافیک می باشد . لازم به ذکر است برخلاف lcd گرافیکی t6963 در ابعاد 240×128 که داخل خودش تمام فونتهای ASCII رو داره ،lcd گرافیکی t6963 در ابعاد 128×64 فاقد فونت با مد متنی می باشد .

از مزایای lcd گرافیکی هایی که دارای هر دو مد متن و گرافیک می باشند ، می توان به سرعت بالاتر در رفرش و نمایش متن بر روی lcd گرافیکی و صرفه جویی در حافظه میکروکنترلر اشاره کرد .

از معایب استفاده از lcd گرافیکی دارای مد متن و گرافیک ، می توان به قیمت بالاتر و فونت در یک یا دو سایز کوچک اشاره کرد . البته می توان فونت در سایز و ابعاد مختلف در مد گرافیکی استفاده کنیم ولی فونت های ساخته شده توسط ما باید در حافظه میکروکنترلر ذخیره شوند .

تشریح پایه های LCD گرافیکی T6963

پایه اول یا FG مخفف Frame Ground هست که به بدنه فلزی LCD گرافیکی وصل می شود و برای محیط های نویزی باید به بدنه دستگاه و زمین وصل بشه.
پایه 4 یا پایه Vo که ورودی کنتراست LCD گرافیکی می باشد و  با یک پتانسیومتر 10کیلو اهم از پایه Vout که پایه شماره 19 هست تامین می شود.
پایه 9 پایه RST  است و مخفف RESET می باشد .
پایه 18 یا پایه FS است و مخفف FONT SELECT می باشد . در صورتی که پایه FS به زمین یا 0 منطقی متصل شود ، اندازه یا سایز فونت کاراکترها در مد متن ، LCD گرافیکی برابر 8×8 و اگر پایه FS به Vcc یا 1 منطقی متصل شود ، اندازه یا سایز فونت کاراکترها در مد متن ، LCD گرافیکی برابر 8×6 خواهد شد .

راه اندازی lcd گرافیکی t6963
راه اندازی lcd گرافیکی t6963

راه اندازی LCD گرافیکی توشیبا با درایور T6963 توسط STM32

در این مثال ما از هدر بورد Bluepill که میکروکنترلر بکاررفته در این بورد Stm32f103c8t6 می باشد استفاده شده است .

برای اتصال lcd گرافیکی با درایور t6963 به میکروکنترلر stm32 ، توسط نرم افزار stm32cubemx میکروکنترلر مورد نظر خود را انتخاب نمایید و پایه های دیتا و فرمان lcd گرافیکی t6963 را بدلخواه بر روی پایه های میکروکنترلر تعریف کنید .

نام پین ها حتما باید هم نام پین های تعریف شده در تصویر زیر باشد . در این حالت نیاز به هیچگونه تغییر در فایل کتابخانه نمی باشد  .

پیکربندی t6963 با stm32cubemx
پیکربندی t6963 با stm32cubemx

توابع کتابخانه lcd گرافیکی t6963

void T6963_Initalize(void);
void T6963_Backlight(unsigned char x);
void T6963_ClearCG(void);
void T6963_ClearText(void);
void T6963_ClearGraphic(void);
void T6963_CLS(void);
void T6963_TextGoTo(unsigned char x, unsigned char y);
void T6963_GraphicGoTo(unsigned char x, unsigned char y);
void T6963_PutChar(char chr);
void T6963_PutString(char *str);
void T6963_PutStringf(const char *str);
void T6963_DefineCharacter(unsigned char charCode, unsigned char *defChar);
void T6963_SetPixel(unsigned char x, unsigned char y, T6963_Color color);
void T6963_Line(int X1, int Y1,int X2,int Y2, T6963_Color color);
void T6963_FillRect(int X1, int Y1,int X2,int Y2, T6963_Color color);
void T6963_InvertRect(int X1, int Y1,int X2,int Y2);
void T6963_DrawBitmap(const unsigned char *bitmap, unsigned char x, unsigned char y, TShow_Mode mode);

قابلیت کتابخانه lcd گرافیکی t6963 برای stm32

کتابخانه و مثال برای نرم افزارهای STM32CUBEIDE و KEIL
قابلیت نمایش متن و تصویر
دارای فونت فارسی در ابعاد 8*8 و 11*9 , 16*12
پیکربندی پایه های lcd گرافیکی با درایور t6963 توسط STM32CubeMX
سورس کد راه اندازی glcd t6963 در مدهای متنی و گرافیکی توسط توابع HAL
قابلیت نوشتن حروف فارسی با Encoding UTF8 در محیط STM32CubeIDE ، KEIL و نمایش مستقیم بر روی lcd گرافیکی t6963

راه اندازی LCD گرافیکی T6963 با STM32
راه اندازی LCD گرافیکی T6963 با STM32

مطلب پیشنهادی >> راه اندازی LCD گرافیکی با درایور KS108 توسط STM32

نویسنده : حسین غیاثوند
خرید و دانلود در لحظه :

Admin

در حال حاضر در زمینه طراحی PCB و برنامه نویسی فعالیت می کنم . علاقه مند به یادگیری و اشتراک گذاری آموخته های خود هستم .

نوشته های مشابه

guest
0 دیدگاه
بازخورد داخلی
مشاهده همه نظرات