និមិត្តសញ្ញា HOLTEK 1

HOLTEK - បន្ទាត់

មគ្គុទ្ទេសក៍អ្នកប្រើប្រាស់ HT32 GUI-Builder

ការកែប្រែ៖ V1.00 កាលបរិច្ឆេទ៖ ថ្ងៃទី 13 ខែមិថុនា ឆ្នាំ 2025

www.holtek.com

និមិត្តសញ្ញា HOLTEK 2


1. លើសview

HT32 GUI-Builder គឺជាអ្នកបង្កើតចំណុចប្រទាក់ក្រាហ្វិកដែលត្រូវបានរចនាឡើងសម្រាប់ microcontrollers 32-bit របស់ Holtek ដើម្បីជួយអ្នកអភិវឌ្ឍន៍ក្នុងការរចនា និងប្រើប្រាស់កម្មវិធីចំណុចប្រទាក់មនុស្ស-ម៉ាស៊ីនយ៉ាងរហ័ស។ ជាមួយនឹងប្រតិបត្តិការអូសទាញដោយវិចារណញាណ អ្នកប្រើប្រាស់អាចកំណត់រចនាសម្ព័ន្ធធាតុដែលមើលឃើញបានយ៉ាងងាយស្រួលដូចជា ប៊ូតុង ស្លាកអត្ថបទ រូបតំណាងជាដើម និងបញ្ចប់ការរចនា GUI ស្មុគស្មាញដោយមិនចាំបាច់សរសេរកូដចំណុចប្រទាក់ច្រើន។

កម្មវិធីនេះគាំទ្រស៊េរី microcontroller 32-bit របស់ Holtek និងរួមបញ្ចូលគ្នាយ៉ាងល្អឥតខ្ចោះជាមួយ LVGL (Light and Versatile Graphics Library) ដើម្បីផ្តល់នូវក្រាហ្វិកដ៏សំបូរបែប និងម៉ាស៊ីនបង្ហាញប្រកបដោយប្រសិទ្ធភាព។ HT32 GUI-Builder អាចបង្កើតគម្រោងដោយស្វ័យប្រវត្តិ files ដែលអនុលោមតាមក្របខ័ណ្ឌ LVGL ។ អ្នកប្រើប្រាស់អាចនាំចូលគម្រោងដែលបានបង្កើតទៅក្នុងបរិយាកាសអភិវឌ្ឍន៍ បន្ទាប់មកចងក្រង ទាញយក និងដំណើរការគម្រោង ដោយកាត់បន្ថយពេលវេលាអភិវឌ្ឍន៍យ៉ាងសំខាន់។

2. តម្រូវការប្រព័ន្ធ
  • microcontroller HT32៖ អង្គចងចាំ Flash 256K និងខ្ពស់ជាងនេះ / SRAM 32K និងខ្ពស់ជាងនេះ។
  • ប្រព័ន្ធប្រតិបត្តិការ៖ ប្រព័ន្ធប្រតិបត្តិការ Windows 64 ប៊ីត
  • បរិស្ថានអភិវឌ្ឍន៍៖ Keil Vision / HT32-IDE
3. ការគាំទ្រផ្នែករឹង

HT32 GUI-Builder គាំទ្រ Holtek MCUs ខាងក្រោម៖

  • HT32F52367: 256K Flash / 32K RAM
  • HT32F12365: 256K Flash / 64K RAM
  • HT32F12366: 256K Flash / 128K RAM
  • HT32F42386: 512K Flash / 196K RAM
  • HT32F49395: 1024K Flash / 224K RAM

អេក្រង់ LCD ដែលគាំទ្រ៖

  • ESK32-A2A31: 2.8 អ៊ីញ (320 × 240) TFT-LCD
  • ESK32-A4A31: 5 អ៊ីញ (800 × 480) TFT-LCD
  • ESK32-A4A32: 4.3 អ៊ីញ (480 × 272) TFT-LCD
4. ការណែនាំអំពីការដំឡើង
  • ដំឡើងនៅលើប្រព័ន្ធប្រតិបត្តិការ Microsoft WIN7/WIN8/WIN10/WIN11 ។
  • ប្រព័ន្ធត្រូវដំឡើង .NET Framework 3.5 ។ ប្រសិនបើវាមិនត្រូវបានដំឡើងទេ សូមទាញយក និងដំឡើងវាពីផ្លូវការរបស់ Microsoft webគេហទំព័រ៖ https://www.microsoft.com/zh-tw/download/details.aspx?id=21
  • ក្នុងអំឡុងពេលដំណើរការដំឡើង សូមធ្វើតាមការណែនាំ ហើយបន្តចុច "បន្ទាប់" ដើម្បីបញ្ចប់ការដំឡើង។
5. សង្ខេបមុខងារ

HT32 GUI-Builder រួមបញ្ចូលមុខងារសំខាន់ៗដូចខាងក្រោមៈ

  • ធាតុក្រាហ្វិកអូសនិងទម្លាក់៖ វាគាំទ្រជួរដ៏ធំទូលាយនៃធាតុក្រាហ្វិកអូសនិងទម្លាក់ ដែលធ្វើឱ្យវាងាយស្រួលសម្រាប់អ្នកប្រើប្រាស់ក្នុងការរចនាចំណុចប្រទាក់យ៉ាងឆាប់រហ័ស។
  • ការគាំទ្រពហុអេក្រង់៖ វាគាំទ្រដើម្បីប្តូររវាងអេក្រង់ច្រើន។
  • ការគ្រប់គ្រងរូបភាព និងពុម្ពអក្សរ៖ រូបភាពអាចត្រូវបានរក្សាទុកក្នុងអង្គចងចាំ Flash ខាងក្នុង ឬកាត SD ។
    ពុម្ពអក្សរអាចត្រូវបានប្ដូរតាមបំណងតាមរយៈកម្មវិធីបម្លែងពុម្ពអក្សរ។
  • ក្លែងធ្វើ view៖ អ្នកប្រើប្រាស់អាចជាមុនview បែបផែនរចនា UI ក្នុងពេលវេលាជាក់ស្តែងតាមរយៈម៉ាស៊ីនក្លែងធ្វើ។

HOLTEK HT32F52367 GUI Builder - 1a

  1. ម៉ឺនុយពាក្យបញ្ជា
  2. ធាតុក្រាហ្វិកទូទៅ
  3. គុណលក្ខណៈពិសេសរបស់ធាតុក្រាហ្វិក
  4. រចនាប័ទ្មធាតុក្រាហ្វិក
  5. ព្រឹត្តិការណ៍ធាតុក្រាហ្វិក
  6. ការបង្ហាញព័ត៌មាន និងតំបន់ធនធាន
  7. ធាតុក្រាហ្វិកដែលមាន
  8. ធាតុក្រាហ្វិកដែលបានប្រើ
  9. អេក្រង់
ការចាប់ផ្តើមរហ័ស

(1) បើក HT32 GUI-Builder ដើម្បីបញ្ចូលចំណុចប្រទាក់មេ។

(2) ចុច [ថ្មី] បន្ទាប់មកជ្រើសរើសផ្នែកក្រុមប្រឹក្សាអភិវឌ្ឍន៍ លេខ/អេក្រង់ និងប៉ារ៉ាម៉ែត្រផ្សេងទៀតនៅក្នុងបង្អួចការកំណត់លេចឡើងដើម្បីបង្កើតគម្រោង។

(3) ជ្រើសរើសធាតុក្រាហ្វិកដែលចង់បាន (ឧទាហរណ៍ ប៊ូតុង ស្លាក របារវឌ្ឍនភាព។ល។) ពីរបារឧបករណ៍ខាងឆ្វេង ហើយអូសពួកវាទៅផ្ទៃផ្ទាំងក្រណាត់។

(4) បន្ថែមធនធានរូបភាព/ពុម្ពអក្សរ។

(5) ជ្រើសរើសធាតុក្រាហ្វិកណាមួយនៅលើផ្ទាំងក្រណាត់ ហើយកែតម្រូវលក្ខណៈរបស់វា ដូចជាទីតាំង ទំហំ ពណ៌ លំនាំ ពុម្ពអក្សរ។ល។ នៅលើបន្ទះគុណលក្ខណៈនៅជ្រុងខាងស្តាំនៃចំណុចប្រទាក់កម្មវិធី។

(6) ចុច [លេង] ទៅ view ការរចនានៅក្នុងបង្អួចក្លែងធ្វើ និងធ្វើអន្តរកម្មជាមួយអេក្រង់ជាមួយក្តារចុច និងកណ្ដុរ។

(7) ចុច [Code] ដើម្បីបង្កើតកម្មវិធីពេញលេញ ប្រើវាជាមួយ Holtek Firmware Library ចងក្រងកម្មវិធីក្នុងបរិយាកាសអភិវឌ្ឍន៍ ហើយទាញយកវាទៅក្រុមប្រឹក្សាអភិវឌ្ឍន៍ដើម្បីសាកល្បង។

(8) ប្រសិនបើអេក្រង់ត្រូវបានផ្លាស់ប្តូរដោយផ្នែក វាគាំទ្រក្នុងការបង្កើតកូដ UI តែប៉ុណ្ណោះ ដើម្បីជៀសវាងការសរសេរជាន់លើកូដដែលអ្នកប្រើប្រាស់បានសរសេររួចហើយ។

7. ការណែនាំអំពីមុខងារលម្អិត
7.1 ម៉ឺនុយ
មុខងារ ការពិពណ៌នា
HOLTEK HT32F52367 GUI Builder - ២ [ថ្មី] បង្កើតការកំណត់រចនាសម្ព័ន្ធអេក្រង់ថ្មី។
HOLTEK HT32F52367 GUI Builder - ២ [ថ្មីៗ] បានបើកថ្មីៗនេះ files.
HOLTEK HT32F52367 GUI Builder - ២ [បើក] បើកគម្រោងកំណត់រចនាសម្ព័ន្ធអេក្រង់ (.hgb)។
ធនធាន files [គម្រោង].ទ្រព្យសកម្ម និង [គម្រោង]។ ពុម្ពអក្សរត្រូវតែនៅក្នុងថតដូចគ្នា។
HOLTEK HT32F52367 GUI Builder - ២
HOLTEK HT32F52367 GUI Builder - ២ [នាំចូល] HT32 GUI-Builder បានរួមបញ្ចូល samples នៃដំណើរការព្រឹត្តិការណ៍ដែលបានបញ្ចប់។ គម្រោងដែលបានបង្កើតតាមរយៈមុខងារនាំចូលអាចបង្កើតដំណើរការព្រឹត្តិការណ៍ files synchronously នៅពេលបង្កើតកូដ ដូច្នេះការបញ្ចប់ការអភិវឌ្ឍន៍មុខងារយ៉ាងរហ័ស។ HOLTEK HT32F52367 GUI Builder - ២
HOLTEK HT32F52367 GUI Builder - ២ [រក្សាទុក] រក្សាទុកគម្រោងកំណត់រចនាសម្ព័ន្ធអេក្រង់ (.hgb)។
រូបភាពនិងពុម្ពអក្សរ files នៅក្នុងតំបន់ធនធាននឹងត្រូវបានរក្សាទុកទៅក្នុង [គម្រោង]។ ទ្រព្យសកម្ម និង [គម្រោង]។ ថតពុម្ពអក្សរក្នុងពេលតែមួយ។
HOLTEK HT32F52367 GUI Builder - ២
HOLTEK HT32F52367 GUI Builder - ២ [+Scrn] បង្កើតអេក្រង់ថ្មី។ កម្មវិធីចម្បងនឹងផ្ទុកអេក្រង់ដំបូង ហើយអ្នកប្រើប្រាស់ត្រូវប្តូរទៅអេក្រង់ផ្សេងទៀតនៅក្នុងកូដដោយខ្លួនឯង។ HOLTEK HT32F52367 GUI Builder - ២
HOLTEK HT32F52367 GUI Builder - ២ [-Scrn] លុបអេក្រង់ដែលបានជ្រើសរើស។
HOLTEK HT32F52367 GUI Builder - ២ [ចម្លង] ចម្លងធាតុក្រាហ្វិកដែលបានជ្រើសរើស។
HOLTEK HT32F52367 GUI Builder - ២ [បិទភ្ជាប់] បិទភ្ជាប់ធាតុក្រាហ្វិកដែលបានចម្លង។
HOLTEK HT32F52367 GUI Builder - ២ [កាត់] កាត់ធាតុក្រាហ្វិកដែលបានជ្រើសរើស។
HOLTEK HT32F52367 GUI Builder - ២ [លុប] លុបធាតុក្រាហ្វិកដែលបានជ្រើសរើស។
HOLTEK HT32F52367 GUI Builder - ២ [ពុម្ពអក្សរ] កម្មវិធីបំលែងពុម្ពអក្សរ LVGL ។
សូមមើលជំពូក "កម្មវិធីបំលែងពុម្ពអក្សរ" ។
HOLTEK HT32F52367 GUI Builder - ២
HOLTEK HT32F52367 GUI Builder - ២ [កូដ] បង្កើតគម្រោង Keil ។ ថតដែលបានបង្កើតគួរតែត្រូវបានចម្លងទៅ {Holtek Standard Peripheral Firmware Library}\application\{any folder} បន្ទាប់មកប្រតិបត្តិ _CreateProject.bat នៅក្រោមថតនេះ។  HOLTEK HT32F52367 GUI Builder - ២
HOLTEK HT32F52367 GUI Builder - ២ [កូដ UI] បង្កើតកូដដែលទាក់ទងនឹងអេក្រង់ឡើងវិញ។ ពាក់ព័ន្ធ files រួមមាន:

lvgl_ui.c
lvgl_ui.h
lvgl_screen_n.c
lvgl_screen_n.h
និង files នៅក្រោមថតរូបភាព/ពុម្ពអក្សរ

កុំបន្ថែមកូដផ្ទាល់ខ្លួនរបស់អ្នកទៅទាំងនេះ files ដើម្បីជៀសវាងលេខកូដត្រូវបានសរសេរជាន់លើដោយ HT32 GUI-Builder ។

HOLTEK HT32F52367 GUI Builder - ២ [លេង]
ក្លែងធ្វើអេក្រង់ដែលបានជ្រើសរើសបច្ចុប្បន្ន។ បន្ទាប់​ពី​ចូល​ទៅ​ក្នុង​អេក្រង់​ក្លែង​ធ្វើ អ្នក​អាច​ប្រើ​កណ្ដុរ​ដើម្បី​កេះ​ព្រឹត្តិការណ៍​នៃ​ធាតុ​ក្រាហ្វិក ឬ​អ្នក​អាច​ប្រើ​ក្ដារចុច​ដើម្បី​បញ្ចូល​មាតិកា​ដោយ​ផ្ទាល់។
HOLTEK HT32F52367 GUI Builder - ២
  1. អេក្រង់កំណត់រចនាសម្ព័ន្ធ

HOLTEK HT32F52367 GUI Builder - ២

  1. អេក្រង់ក្លែងធ្វើ
HOLTEK HT32F52367 GUI Builder - ២ [ការកំណត់] កំណត់ប៉ារ៉ាម៉ែត្រដែលទាក់ទងនឹងផ្នែករឹង។ សូមមើលជំពូក "ការកំណត់" សម្រាប់ព័ត៌មានលម្អិត។  HOLTEK HT32F52367 GUI Builder - ២
7.2 ចំណុចប្រទាក់កម្មវិធី
មុខងារ ការពិពណ៌នា
មូលដ្ឋាន/ឧបករណ៍បញ្ជា [ធាតុក្រាហ្វិក]
អូស និងទម្លាក់ធាតុក្រាហ្វិកដែលចង់បានទៅអេក្រង់ LCD ។
HOLTEK HT32F52367 GUI Builder - ២
ធាតុក្រាហ្វិកឪពុកម្តាយ/កូន [ក្រុម] និងការបញ្ជាទិញធាតុក្រាហ្វិក
ការដាក់ជាក្រុមត្រូវបានធ្វើដោយអូសធាតុក្រាហ្វិកកូនទៅធាតុក្រាហ្វិកមេនៅក្នុងតំបន់ [ធាតុក្រាហ្វិកដែលបានប្រើ] ។ នៅពេលដែលធាតុក្រាហ្វិកមេផ្លាស់ទី ធាតុក្រាហ្វិកកូននឹងផ្លាស់ទីជាមួយវា។ បន្ថែមពីលើ [ក្រុម] អ្នកក៏អាចផ្លាស់ប្តូរលំដាប់នៃវត្ថុដោយអូសពួកវាផងដែរ។
HOLTEK HT32F52367 GUI Builder - ២HOLTEK HT32F52367 GUI Builder - ២
[ទ្រព្យសកម្ម]/[ពុម្ពអក្សរ] តំបន់
ចុច [បន្ថែមរូបភាព Files] ដើម្បីបន្ថែមរូបភាពទៅតំបន់ [Assets] មុនពេលពួកវាអាចប្រើក្នុង widget។
ទម្រង់បំប្លែងលំនាំដើមសម្រាប់រូបភាពដែលបានបន្ថែមទៅផ្ទៃ [ទ្រព្យសកម្ម] គឺពណ៌ពិត 16 ប៊ីត។ អ្នកប្រើប្រាស់អាចចុចកណ្ដុរស្ដាំលើរូបភាពដើម្បីជ្រើសរើសទម្រង់ពណ៌ដែលបានធ្វើលិបិក្រម 1/2/4/8-bit ដើម្បីកាត់បន្ថយទំហំដែលត្រូវការសម្រាប់រូបភាព។ ទម្រង់ទាំងនេះអាចត្រូវបានជ្រើសរើសសម្រាប់តម្រូវការពណ៌ទាបដូចជារូបតំណាងជាដើម។
ពុម្ពអក្សរត្រូវបានបន្ថែមទៅផ្ទៃ [ពុម្ពអក្សរ] តាមរយៈកម្មវិធីបំប្លែងពុម្ពអក្សរ សូមមើលជំពូក "កម្មវិធីបំលែងពុម្ពអក្សរ" សម្រាប់ព័ត៌មានលម្អិតបន្ថែម។
HOLTEK HT32F52367 GUI Builder - ២HOLTEK HT32F52367 GUI Builder - ២
ធាតុក្រាហ្វិក [គុណលក្ខណៈទូទៅ]/[គុណលក្ខណៈពិសេស] តំបន់
តំបន់នេះរួមបញ្ចូលទីតាំង/ទំហំធាតុក្រាហ្វិក ទង់ និងរដ្ឋ។
សម្រាប់ការពិពណ៌នាបន្ថែមអំពី [ទង់] និង [រដ្ឋ] សូមយោងទៅមន្ត្រី LVGL webគេហទំព័រ។
លើសពីនេះ ធាតុក្រាហ្វិកផ្សេងគ្នាមានគុណលក្ខណៈផ្ទាល់ខ្លួន តួលេខត្រឹមត្រូវបង្ហាញពីគុណលក្ខណៈនៃស្លាក។ សូមយោងផងដែរទៅឯកសារ LVGL សម្រាប់គុណលក្ខណៈលម្អិតនៃធាតុក្រាហ្វិកនីមួយៗ។
HOLTEK HT32F52367 GUI Builder - ២
ធាតុក្រាហ្វិក [រចនាប័ទ្ម] តំបន់
រូបរាង និងពណ៌នៃធាតុក្រាហ្វិក។ល។ អាចត្រូវបានផ្លាស់ប្តូរដោយប្រើការកំណត់រចនាប័ទ្ម។ ប្រអប់ពណ៌លឿងបង្ហាញការកំណត់រចនាប័ទ្មទូទៅសម្រាប់ធាតុក្រាហ្វិកទាំងអស់ ខណៈដែលធាតុផ្សេងទៀតគឺខុសគ្នាសម្រាប់ធាតុក្រាហ្វិកនីមួយៗ។
ធាតុក្រាហ្វិកមានផ្នែកជាច្រើន។ សម្រាប់អតីតample ជា Switch មាន Main, Indicator និង Knob ដែលនីមួយៗអាចកំណត់ដោយឯករាជ្យ។
ធាតុក្រាហ្វិកក៏អាចត្រូវបានកំណត់រចនាសម្ព័ន្ធដើម្បីឱ្យមានរចនាប័ទ្មផ្សេងគ្នាសម្រាប់រដ្ឋផ្សេងគ្នា។ សម្រាប់អតីតampដូច្នេះ ស្ថានភាពបិទ ឬចុចអាចមានការកំណត់រចនាប័ទ្មខុសៗគ្នា។
HOLTEK HT32F52367 GUI Builder - ២
ធាតុក្រាហ្វិក [ព្រឹត្តិការណ៍]
ផ្ទៃ បន្ទាប់ពីព្រឹត្តិការណ៍ដែលចង់បានត្រូវបានជ្រើសរើស មានតែក្របខ័ណ្ឌដើម្បីទទួលព្រឹត្តិការណ៍ប៉ុណ្ណោះដែលត្រូវបានបង្កើតនៅក្នុង lvgl_event.c ។ អ្នក​ប្រើ​អាច​ធ្វើ​កិច្ចការ​ផ្សេង​គ្នា​បន្ទាប់​ពី​ធាតុ​ក្រាហ្វិក​ទទួល​បាន​ព្រឹត្តិការណ៍។
សម្រាប់ព័ត៌មានលម្អិត សូមមើល "Exampការពិពណ៌នា" ជំពូក។
HOLTEK HT32F52367 GUI Builder - ២
[អេក្រង់] ពង្រីក/ពង្រីកតំបន់
ផ្លាស់ទីទស្សន៍ទ្រនិចកណ្ដុរទៅផ្ទៃអេក្រង់ LCD សង្កត់គ្រាប់ចុចបញ្ជា (Ctrl) ហើយរំកិលឡើងលើកង់ប៊ូតុងកណ្ដុរកណ្តាលដើម្បីពង្រីកអេក្រង់ រំកិលចុះក្រោមដើម្បីពង្រីកផ្ទៃអេក្រង់។
HOLTEK HT32F52367 GUI Builder - ២
8. កម្មវិធីបម្លែងពុម្ពអក្សរ

LVGL ប្រើការអ៊ិនកូដ UTF-8 ដើម្បីបង្ហាញតួអក្សរយូនីកូដសម្រាប់គ្រប់ភាសា។ អ្នកប្រើប្រាស់អាចបង្កើតអារេ C ឬកូដគោលពីរពីពុម្ពអក្សរ TTF ឬ WOFF តាមរយៈកម្មវិធីបំលែងពុម្ពអក្សរ។ អ្នកអាចជ្រើសរើសជួរតួអក្សរយូនីកូដ និងបញ្ជាក់ BPP (ប៊ីតក្នុងមួយភីកសែល) ដើម្បីបង្កើតពុម្ពអក្សរថ្មីសម្រាប់គម្រោង GUI របស់អ្នក។

HOLTEK HT32F52367 GUI Builder - ២

រកមើលថតពុម្ពអក្សរ

ជ្រើសរើសថតដែលពុម្ពអក្សរ files កំណត់ទីតាំង។

ជ្រើសរើសធនធានពុម្ពអក្សរ

ជ្រើសរើសពុម្ពអក្សរដែលបានរាយក្នុងថតពុម្ពអក្សរពីម៉ឺនុយទម្លាក់ចុះ។

ទំហំ

កំណត់ទំហំពុម្ពអក្សរ។

ឈ្មោះ

ឈ្មោះដែលប្រើដើម្បីកំណត់ពុម្ពអក្សរនៅក្នុងកម្មវិធី។

BPP

កំណត់គែមមិនច្បាស់នៃអក្សរ។ ចំនួនប៊ីតកាន់តែតិច គែមអក្សរកាន់តែព្រិល។

ជួរ

ប្ដូរជួរអក្សរតាមបំណង ពោលគឺ ជួរ និង/ឬតួអក្សរដែលអ្នកចង់បញ្ចូល ឧទាហរណ៍ 0x20-0x7F។

និមិត្តសញ្ញា

បញ្ជីតួអក្សរដែលត្រូវបញ្ចូល។ សម្រាប់អតីតample, សួស្តី Holtek ABC0123ÁÉŐ។

បម្លែង

បន្ទាប់ពីពុម្ពអក្សរត្រូវបានបង្កើតដោយជោគជ័យ ព័ត៌មានពុម្ពអក្សរ file (.fnt), ក.c file និង .bin file នឹងត្រូវបានបង្កើតនៅក្រោមថត [ពុម្ពអក្សរ] ហើយពុម្ពអក្សរនឹងបង្ហាញនៅក្នុងតំបន់ [ពុម្ពអក្សរ] ក្នុងពេលតែមួយ។ ប្រសិនបើពុម្ពអក្សរដែលបានជ្រើសរើស file មិនមានពុម្ពអក្សរនៃនិមិត្តសញ្ញាបញ្ចូលទេ កំហុសនឹងត្រូវបានបង្ហាញ។

.fnt file កត់ត្រាព័ត៌មានពុម្ពអក្សរ។ អ្នកប្រើប្រាស់អាចបើកវាបាន file ដើម្បីកែសម្រួលប៉ារ៉ាម៉ែត្រដែលពាក់ព័ន្ធ ហើយបន្ទាប់មកបង្កើត .c file និង .bin file.

HT32 GUI-Builder នឹងរួមបញ្ចូល .c file ដើម្បីកំណត់ពុម្ពអក្សរ ប្រសិនបើអ្នកចង់ប្រើ .bin fileសូមយោងទៅមន្ត្រី LVGL webគេហទំព័រ។

[ពុម្ពអក្សរ] តំបន់

អ្នក​ប្រើ​អាច​ចុច​កណ្ដុរ​ស្ដាំ​លើ​ពុម្ព​អក្សរ​ក្នុង​ផ្ទៃ [ពុម្ព​អក្សរ] ដើម្បី​លុប​ពុម្ព​អក្សរ។

HOLTEK HT32F52367 GUI Builder - ២

ចំណាំ៖ ពុម្ពអក្សរគឺផ្អែកលើគម្រោង និងពុម្ពអក្សរផ្ទាល់ខ្លួនដែលបានបង្កើត file ត្រូវបានរក្សាទុកនៅពេលរក្សាទុកគម្រោង។ ប្រសិនបើវាមិនត្រូវបានរក្សាទុកទេ វានឹងត្រូវបានសម្អាតនៅពេលដែលគម្រោងថ្មីត្រូវបានបើក។

បើក

បើកព័ត៌មានពុម្ពអក្សរ file (.fnt)

ការកំណត់ពុម្ពអក្សរ

ប្រសិនបើធាតុក្រាហ្វិកតម្រូវឱ្យកំណត់គុណលក្ខណៈពុម្ពអក្សរ ការកំណត់ [អត្ថបទ] នឹងបង្ហាញនៅក្នុងតំបន់ [រចនាប័ទ្មធាតុក្រាហ្វិក] ។ បន្ថែមពីលើពុម្ពអក្សរផ្ទាល់ខ្លួននៅក្នុងបញ្ជីទម្លាក់ចុះ ក៏មានពុម្ពអក្សរ monsterrat ដែលផ្តល់ដោយ LVGL ដើម្បីជ្រើសរើសផងដែរ។

HOLTEK HT32F52367 GUI Builder - ២

ចំណាំថា HT32 GUI-Builder បង្កើតកូដប្រភព file នៅក្នុង UTF-8 ជាមួយនឹង Byte Order Mark (BOM) ហើយ Keil នឹងមិនអើពើជម្រើស –locale និង –[no_] multibyte_chars ហើយបកស្រាយ file ដូចជា UTF-8 ឬ UTF-16 ។

ទោះយ៉ាងណាក៏ដោយប្រសិនបើ file ត្រូវ​បាន​កែប្រែ និង​រក្សាទុក​ក្នុង Keil Editor វា​នឹង​ត្រូវ​បាន​រក្សា​ទុក​ជា​របៀប​បំប្លែង​កូដ​ដែល​បាន​កំណត់​ក្នុង​ចំណុច​ប្រទាក់​ការ​កំណត់​ដូច​បង្ហាញ​ខាង​ក្រោម។ ទោះបីជារបៀបអ៊ិនកូដត្រូវបានកំណត់ទៅជា UTF8 ក៏ដោយ ក៏វាមិនអាចចងក្រង UTF-8 បានទេ ព្រោះមិនមាន BOM ។

HOLTEK HT32F52367 GUI Builder - ២

៦.៦.៥. ការកំណត់

HOLTEK HT32F52367 GUI Builder - ២

ទទឹង/កម្ពស់

កំណត់ប្រវែង និងទទឹងនៃអេក្រង់ដែលត្រូវនឹងផ្នែករឹង។

ជម្រៅ

កំណត់ជម្រៅពណ៌ដែលត្រូវតែផ្គូផ្គងផ្នែករឹង។

ការបង្វិល

កំណត់ទិសដៅ LCD ។

របៀបស្បែក

កំណត់រចនាប័ទ្មមូលដ្ឋាននៃ LVGL ទៅរបៀបងងឹត ឬរបៀបពន្លឺ។

LVGL

ជ្រើសរើសកំណែ LVGL ។ បច្ចុប្បន្នមានកំណែ 8.3.8 និងកំណែ 9.2.2 ដែលអាចប្រើបាន។

ក្តារ

ជ្រើសរើសផ្នែករឹងដែលគាំទ្របច្ចុប្បន្ន និងកម្មវិធីបញ្ជាបង្ហាញ។

SD FatFs

ប្រសិនបើជម្រើស [SD FatFs] ត្រូវបានបើក អ្នកអាចជ្រើសរើសថាតើត្រូវទៅយករូបភាពរបស់ធាតុក្រាហ្វិកពីកាត SD ដោយពិនិត្យមើលជម្រើស [FAT]។ ប្រសិនបើអ្នកជ្រើសរើសយករូបភាពពីកាត SD អ្នកត្រូវចម្លង .bin file ពីថត [រូបភាព] ទៅកាត SD មុនពេលប្រតិបត្តិកម្មវិធីបង្កប់។ អក្សរថាសសម្រាប់កាតអេសឌីគឺ S.

HOLTEK HT32F52367 GUI Builder - ២

ថតឯកសារ Img

ប្រសិនបើ [SD FatFs] ត្រូវបានបើក ហើយ [Img Folder] ត្រូវបានធីក នៅពេលដែលរូបភាពរបស់ធាតុក្រាហ្វិកត្រូវបានជ្រើសរើសដើម្បីទាញយកពីកាត SD នោះផ្លូវផ្លាស់ប្តូរទៅ S:/[Image Folder] ដូចជា S:/EX5/Image.bin

ប្រសិនបើជម្រើស [Img Folder] មិនត្រូវបានធីកទេ រូបភាព file គួរតែត្រូវបានដាក់នៅក្រោម S: root directory ។

ឧបករណ៍ផ្ទុកខាងក្រៅ

  • ESK32-A4A10(m4)+ESK32-A4A31(16-bit) core: HT32F42386
  • ESK32-A4A10(m4)+ESK32-A4A32(16-bit) core: HT32F42386

នៅពេលដែលផ្ទាំងសាកល្បងខាងលើត្រូវបានជ្រើសរើស អ្នកអាចជ្រើសរើស External SRAM បន្ទាប់មកកម្មវិធីដែលបានបង្កើតនឹងកំណត់រចនាសម្ព័ន្ធអេក្រង់ពេញអេក្រង់នៅក្នុង SRAM ខាងក្រៅ ដើម្បីបង្កើនល្បឿននៃការបង្ហាញ។

  • ESK32-A4A11(m4)+ESK32-A4A31(16-bit) core: HT32F49395
  • ESK32-A4A11(m4)+ESK32-A4A32(16-bit) core: HT32F49395

នៅពេលជ្រើសរើសផ្ទាំងសាកល្បងខាងលើ អ្នកប្រើប្រាស់អាចជ្រើសរើស External SRAM ក៏ដូចជា External Flash ផងដែរ។

ប្រសិនបើ External Flash ត្រូវបានជ្រើសរើស ទិន្នន័យរូបភាពដែលបានបង្កើតទាំងអស់នឹងត្រូវបានរក្សាទុកនៅក្នុង External Flash ។

បន្ថែមឧបករណ៍បញ្ចូល

បន្ទះផ្សេងគ្នាគាំទ្រឧបករណ៍បញ្ចូលផ្សេងគ្នា។

  • ESK32-2x001A(m0)+ESK32-A2A31(8-bit) core: HT32F52367
  • ESK32-2x001A(m3)+ESK32-A2A31(16-bit) core: HT32F12366
  • ESK32-2x001A(m4)+ESK32-A2A31(16-bit) core: HT32F42386

សម្រាប់អតីតample ជ្រើសរើសផ្ទាំងសាកល្បងខាងលើ ហើយប្រើ Wakeup/Key1/Key2 ដើម្បីអនុវត្តមុខងារក្តារចុច និងប៊ូតុង។

ក្តារចុច៖

ភ្ញាក់ = បញ្ចូលគន្លឹះ
Key1 = គ្រាប់ចុចពីមុន
Key2 = គ្រាប់ចុចបន្ទាប់

ប៊ូតុង៖

នៅក្នុង lv_port_indev.c fileកែប្រែ btn_points នៅក្រោម lv_port_indev_init ដើម្បីកំណត់ទីតាំងនៅលើអេក្រង់ដែលព្រឹត្តិការណ៍កើតឡើងនៅពេលចុចគ្រាប់ចុច។

ចំណាំ៖ ប្រសិនបើបន្ទះ ESK32-2x001A(m0)+ESK32-A2A31(8-bit) ត្រូវបានជ្រើសរើស នោះទទឹងទិន្នន័យ EBI 8-bit នឹងត្រូវបានប្រើដោយសារតែ hardware ។ សូមមើល Q4 នៃជំពូក FAQ សម្រាប់ព័ត៌មានលម្អិត។

  • ESK32-A4A10(m4)+ESK32-A4A31(16-bit) core: HT32F42386
  • ESK32-A4A10(m4)+ESK32-A4A32(16-bit) core: HT32F42386
  • ESK32-A4A11(m4)+ESK32-A4A31(16-bit) core: HT32F49395
  • ESK32-A4A11(m4)+ESK32-A4A32(16-bit) core: HT32F49395

នៅពេលជ្រើសរើសផ្ទាំងសាកល្បងខាងលើ សូមប្រើ Button0~2 ដើម្បីអនុវត្តមុខងារ Keypad និង Button ហើយប្រើ GT911 ដើម្បីអនុវត្តមុខងារ Touchpad និង Mouse។

ក្តារចុច៖

Button0 = បញ្ចូលគ្រាប់ចុច
Button1 = គ្រាប់ចុចពីមុន
Button2 = គ្រាប់ចុចបន្ទាប់

  • ESK32-31401(m4)+ESK32-A4A31(16-bit) core: HT32F49395
  • ESK32-31401(m4)+ESK32-A4A32(16-bit) core: HT32F49395

នៅពេលជ្រើសរើសផ្ទាំងអេក្រង់ខាងលើ មុខងារ Touchpad និង Mouse ត្រូវបានអនុវត្តជាមួយ GT911។

សម្រាប់ឧបករណ៍បញ្ចូលដែលមិនត្រូវបានគាំទ្រដោយផ្នែករឹង មានតែក្របខ័ណ្ឌប៉ុណ្ណោះដែលត្រូវបានបង្កើត។ សម្រាប់ការណែនាំលម្អិត សូមមើល "Exampការពិពណ៌នា" ជំពូក។

ទម្រង់ពណ៌ដែលបានបង្កើត

HT32 GUI-Builder គាំទ្រទម្រង់ពណ៌រូបភាពចំនួនប្រាំ៖ ពណ៌ពិត លិបិក្រម 8 ប៊ីត លិបិក្រម 4 ប៊ីត លិបិក្រម 2 ប៊ីត និងលិបិក្រម 1 ប៊ីត។ អ្នកប្រើប្រាស់អាចជ្រើសរើសទម្រង់ពណ៌ណាមួយ ដើម្បីអនុវត្តលើអេក្រង់។ ទោះយ៉ាងណាក៏ដោយ នៅពេលបង្កើតកូដ អ្នកប្រើប្រាស់អាចជ្រើសរើស៖

(1) បញ្ចេញតែទម្រង់ពណ៌ដែលបានប្រើ

HOLTEK HT32F52367 GUI Builder - ២

(2) បញ្ចេញទម្រង់ពណ៌ដែលបានជ្រើសរើស

HOLTEK HT32F52367 GUI Builder - ២

វាធ្វើឱ្យវាកាន់តែងាយស្រួលក្នុងការកែតម្រូវពណ៌នៃអេក្រង់កំឡុងពេលបង្កើតកម្មវិធីបង្កប់។

០១. File រចនាសម្ព័ន្ធ

ប្រសិនបើអ្នកចង់បន្ថែមកម្មវិធីបញ្ជាការបង្ហាញផ្ទាល់ខ្លួនរបស់អ្នក ឬឧបករណ៍បញ្ចូល អ្នកត្រូវយល់ពីគម្រោងជាមុនសិន file រចនាសម្ព័ន្ធដែលបង្កើតឡើងដោយ HT32 GUI-Builder ។

HOLTEK HT32F52367 GUI Builder - ២

  • main.c: កម្មវិធីចម្បង file
  • lvgl_ui.c/lvgl_screen.c៖ អេក្រង់ទាក់ទងនឹងធាតុក្រាហ្វិក file
  • lvgl_event.c៖ ដំណើរការព្រឹត្តិការណ៍
  • [board]៖ កម្មវិធីបញ្ជាដែលទាក់ទងនឹងផ្នែករឹង
  • [FatFs]៖ File ប្រព័ន្ធ files
  • [រូបភាព]៖ រូបភាព files
  • [ពុម្ពអក្សរ]៖ ពុម្ពអក្សរ files
  • [lvgl-master]៖ បណ្ណាល័យ LVGL
  • កម្មវិធីបញ្ជាដែលអាចប្ដូរតាមបំណង៖
    ♦ gpio.h៖ ការបង្ហាញ/ប៉ះ និងការកំណត់ម្ជុលសោ
    ♦ ht32_board_config.h៖ និយមន័យចំណុចប្រទាក់កាតអេសឌី
    ♦ lcd_driver.h៖ បង្ហាញនិយមន័យមុខងាររបស់កម្មវិធីបញ្ជា រួមទាំងប្រវែង/ទទឹង និងគុណភាពបង្ហាញ។ នេះ។ file រួមបញ្ចូលផងដែរនូវ .c files នៃកូដប្រភពកម្មវិធីបញ្ជាបង្ហាញ និងកូដប្រភពមុខងារប៉ះ។
    ♦ i2c1_gt911.c៖ កូដប្រភពមុខងារប៉ះ ដែលត្រូវបានរួមបញ្ចូលក្នុង lcd_driver.h file.
    ♦ icd_drvier_ssd1963៖ បង្ហាញកូដប្រភពកម្មវិធីបញ្ជា ដែលត្រូវបានដាក់បញ្ចូលក្នុង lcd_driver.h file.
    ♦ lv_port_indev.c៖ កម្មវិធីបញ្ជាបញ្ចូល
    ♦ lv_port_disp.c៖ បង្ហាញកម្មវិធីបញ្ជា
    ♦ sdio_sd.c: កម្មវិធីបញ្ជាចំណុចប្រទាក់កាតអេសឌី

អ្នក​ប្រើ​ដែល​ចង់​កំណត់​ចំណុច​ប្រទាក់​ផ្នែក​រឹង​របស់​ខ្លួន​ត្រូវ​កែប្រែ​ចំណុច​ខាង​លើ files និងបំពេញមុខងារដែលពាក់ព័ន្ធនៅក្នុង .c file.

LVGL ប្រើការអ៊ិនកូដ UTF-8 ដើម្បីបង្ហាញតួអក្សរយូនីកូដសម្រាប់គ្រប់ភាសា ដូច្នេះ HT32 GUI Builder បង្កើតកូដប្រភព file នៅក្នុងការអ៊ិនកូដ UTF-8 ជាមួយនឹង Byte Order Mark (BOM)។

នៅពេលបង្កើតកូដ UI ឡើងវិញ មានដូចខាងក្រោម files ត្រូវបានបង្កើតឡើងវិញផងដែរ៖

lvgl_ui.c
lvgl_ui.h
lvgl_screen_n.c
lvgl_screen_n.h
និង files នៅក្រោមថតរូបភាព/ពុម្ពអក្សរ

កុំបន្ថែមកូដផ្ទាល់ខ្លួនរបស់អ្នកទៅទាំងនេះ files ដើម្បីជៀសវាងលេខកូដត្រូវបានសរសេរជាន់លើដោយ HT32 GUI-Builder ។

11. អតីតampការពិពណ៌នា

ជំពូកនេះយក 2x001a-1.hgb (ក្តារចុច) ជាអតីតample សម្រាប់ការពិពណ៌នា។

HOLTEK HT32F52367 GUI Builder - ២

  1. label_0
  2. label_1
  3. button_1 & label_3
  4. button_0 & label_2
  5. switch_0
  6. រូបភាព_0

(1) label_0៖ កំណត់គុណលក្ខណៈស្លាកទៅជា Scroll Circular ដើម្បីធ្វើឱ្យតួអក្សរដំណើរការ។

HOLTEK HT32F52367 GUI Builder - ២

(2) បង្កើតពុម្ពអក្សរ files.

ប្រសិនបើមានអក្សរចិននៅក្នុងស្លាក អ្នកត្រូវកំណត់ពុម្ពអក្សរចិន។ ប្រើឧបករណ៍បំប្លែងពុម្ពអក្សរដើម្បីបង្កើតពុម្ពអក្សរសម្រាប់អក្សរចិនទាំងប្រាំនៃ “盛群半導體”។ ដូចដែលបានបង្ហាញក្នុងរូប ពុម្ពអក្សរ NotoSansTC_Regular_14 នឹងត្រូវបានបង្កើត។

HOLTEK HT32F52367 GUI Builder - ២

(3) ក្នុង Text\Text Font ក្រោមរចនាប័ទ្ម កំណត់ពុម្ពអក្សរស្លាកទៅជា NotoSansTC_Regular_14។

HOLTEK HT32F52367 GUI Builder - ២

(4) label_1៖ កំណត់គុណលក្ខណៈស្លាកទៅជា Scroll Circular ដើម្បីធ្វើឱ្យតួអក្សរដំណើរការ។

HOLTEK HT32F52367 GUI Builder - ២

កំណត់រចនាប័ទ្មអត្ថបទនៅក្រោមរចនាប័ទ្មទៅជាក្រហម/កណ្តាល/គូសបន្ទាត់ពីក្រោម/montserrat 28.

HOLTEK HT32F52367 GUI Builder - ២

(5) image_0៖ មានវិធីពីរយ៉ាងក្នុងការបន្ថែមរូបភាពទៅអេក្រង់។ មួយគឺអូសរូបភាពដោយផ្ទាល់ពីតំបន់ [ទ្រព្យសកម្ម] ទៅកាន់អេក្រង់។ មួយទៀតគឺត្រូវបន្ថែមធាតុក្រាហ្វិករូបភាពជាដំបូងដោយប្រតិបត្តិការអូស និងទម្លាក់ ហើយបន្ទាប់មកជ្រើសរើសរូបភាពដែលត្រូវបានបន្ថែមទៅគម្រោងនៅក្នុងតំបន់លក្ខណៈពិសេស [រូបភាព] ធាតុក្រាហ្វិក។ ប្រសិនបើគម្រោងបានបើកជម្រើស SD FatFs អ្នកក៏អាចជ្រើសរើសថាតើត្រូវទៅយករូបភាពពី file ប្រព័ន្ធ។ ប្រសិនបើជម្រើស FAT ត្រូវបានធីក .bin file នៅក្នុងថត [រូបភាព] ចាំបាច់ត្រូវចម្លងទៅកាត SD មុនពេលកម្មវិធីបង្កប់ត្រូវបានប្រតិបត្តិ។

HOLTEK HT32F52367 GUI Builder - ២

HOLTEK HT32F52367 GUI Builder - ២

(6) កំណត់ label_2 ជាកូនរបស់ button_0 និង label_3 ជាកូនរបស់ button_1 ដោយប្រតិបត្តិការអូសនិងទម្លាក់។

(7) ជ្រើសរើស button_0 ហើយពិនិត្យជម្រើស CLICKED នៅក្រោម EVENT ដូចគ្នាទៅនឹង button_1។

HOLTEK HT32F52367 GUI Builder - ២

(8) ជ្រើសរើស Dark Mode ហើយពិនិត្យ KeyPad នៅក្នុង [Settings]។

HOLTEK HT32F52367 GUI Builder - ២

(9) ចុច [Save] ដើម្បីរក្សាទុកគម្រោង បន្ទាប់មកចុច [Code] ដើម្បីបង្កើតកូដ។

(10) ចម្លងថតដែលបានបង្កើតទៅ {Holtek Standard Peripheral Firmware Library}\application\{any folder} ហើយប្រតិបត្តិ _CreateProject.bat ដើម្បីបង្កើតគម្រោង Keil uVision IDE ។

(11) lv_port_indev.c គឺជាក្របខ័ណ្ឌ file នៃ​ឧបករណ៍​បញ្ចូល​និង​អាច​ត្រូវ​បាន​កែប្រែ​ដោយ​យោង​តាម​ការ​កំណត់​រចនាសម្ព័ន្ធ​ផ្នែក​រឹង​។

នៅក្នុងនេះ អតីតampដូច្នេះ HT32 GUI-Builder ប្រើ Key1/Key2/Wakeup នៅលើបន្ទះសាកល្បង ESK32-2x001A ដើម្បីបង្កើតកូដខាងក្រោមដោយស្វ័យប្រវត្តិសម្រាប់ KeyPad៖

HOLTEK HT32F52367 GUI Builder - ២

HOLTEK HT32F52367 GUI Builder - ២

Key1 គឺជាគ្រាប់ចុចពីមុន ហើយការចុច Key1 នឹងផ្លាស់ទីត្រឡប់មកវិញដើម្បីជ្រើសរើសធាតុក្រាហ្វិកផ្សេង។

Key2 គឺជាគ្រាប់ចុចបន្ទាប់ ហើយការចុច Key2 នឹងបន្តដើម្បីជ្រើសរើសធាតុក្រាហ្វិកផ្សេង។

Wakeup គឺ​ជា​គ្រាប់ចុច Enter ហើយ​ការ​ចុច Wakeup នឹង​កេះ​ព្រឹត្តិការណ៍ Click។

(12) lvgl_event.c គឺជាក្របខ័ណ្ឌ file សម្រាប់ធាតុក្រាហ្វិកដែលទទួលព្រឹត្តិការណ៍ អ្នកប្រើប្រាស់អាចបន្ថែមកូដក្នុងប្រអប់ក្រហមដូចបង្ហាញខាងក្រោម ប្រសិនបើ button_0 ត្រូវបានចុច នោះ Switch នឹងត្រូវបានប្តូរទៅ On ប្រសិនបើ button_1 ត្រូវបានចុច នោះ Switch នឹងត្រូវបានប្តូរទៅ Off វិញ។

HOLTEK HT32F52367 GUI Builder - ២

ចំណាំ៖ 2x001a-1 Example ៖ សម្រាប់ដំណើរការព្រឹត្តិការណ៍ យោងទៅ lvgl_event.c ក្នុងថតឯកសារ។
2x001a-2 ឧample: សម្រាប់ការបង្វិលទ្រនិចនាឡិកា យោងទៅ main.c ក្នុងថតឯកសារ។
a4a10 ឧample ៖ សម្រាប់ការកំណត់ពណ៌អត្ថបទ និងលំហ សូមយោងទៅ lvgl_event.c ក្នុងថតឯកសារ។

12. សំណួរគេសួរញឹកញាប់

សំណួរទី 1: តើធ្វើដូចម្តេចដើម្បីកែលម្អបញ្ហាពន្យាពេលក្នុងការធ្វើឱ្យអេក្រង់ឡើងវិញ?

(1) លៃតម្រូវទំហំសតិបណ្ដោះអាសន្នបង្ហាញ

  • ទំហំផ្ទុកអេក្រង់កាន់តែធំ ការធ្វើឱ្យស្រស់តែមួយមានប្រសិទ្ធភាពជាងមុន ប៉ុន្តែវាកាន់កាប់ទំហំ RAM កាន់តែច្រើន។
  • កំណត់ទំហំផ្ទុកនៅក្នុង lv_port_disp_init(lv_port_disp.c)៖
    ឋិតិវន្ត lv_disp_draw_buf_t draw_buf_dsc_1;
    ឋិតិវន្ត lv_color_t buf_1[DISP_HOR_RES * 10];
    lv_disp_draw_buf_init(&draw_buf_dsc_1, buf_1, NULL, DISP_HOR_RES * 10);
    disp_drv.flush_cb = disp_flush;
    disp_drv.draw_buf = &draw_buf_dsc_1;
  • កំណត់ទំហំផ្ទុកទៅយ៉ាងហោចណាស់ចំនួនប៊ីតសម្រាប់អេក្រង់ឆៅ (ទទឹង* 1)។
  • ប្រសិនបើ RAM គ្រប់គ្រាន់ សូមកំណត់ទៅ 1/4 ឬច្រើនជាងនេះនៃទំហំអេក្រង់។

(2) កាត់បន្ថយអត្រាធ្វើឱ្យស្រស់

  • កាត់បន្ថយអត្រាធ្វើឱ្យស្រស់នៃ LVGL ដើម្បីកាត់បន្ថយការគូរឡើងវិញដែលមិនចាំបាច់។
  • កែប្រែ LV_DISP_DEF_REFR_PERIOD(V8) ឬ LV_DEF_REFR_PERIOD(V9) ក្នុង lv_conf.h file.

(3) កាត់បន្ថយស្រទាប់វត្ថុ

  • ស្រទាប់ធាតុក្រាហ្វិកកាន់តែច្រើននៅក្នុង LVGL ដំណើរការបង្ហាញកាន់តែស្មុគស្មាញ។
  • បង្រួមធាតុក្រាហ្វិកដែលបានដាក់។

(4) ប្រើតម្លាភាព និងរចនាប័ទ្មឱ្យបានត្រឹមត្រូវ

  • កាត់បន្ថយតម្លាភាពដែលមិនចាំបាច់៖
    lv_obj_set_style_bg_opa(obj, LV_OPA_COVER, 0);
  • កាត់បន្ថយការប្រើប្រាស់ផ្ទៃខាងក្រោយពណ៌ជម្រាល និងរចនាប័ទ្មស្មុគស្មាញ (ឧទាហរណ៍ ស្រមោល និងកាំ)។

(5) កុំប្រើចលនា

គំនូរជីវចលអាចបង្កឱ្យមានការគូរឡើងវិញញឹកញាប់ ដែលប៉ះពាល់ដល់ដំណើរការ។

LVGL រាប់ធាតុក្រាហ្វិក និងផ្នែកដែលចាំបាច់ត្រូវគូរឡើងវិញនៅពេលធ្វើឱ្យស្រស់នីមួយៗ។ ការគូរស្មុគ្រស្មាញជាមួយនឹងតំបន់មិនត្រឹមត្រូវជាច្រើននឹងបណ្តាលឱ្យមានចន្លោះពេលដំណើរការយូរជាងនេះ។ ត្រូវប្រាកដថាមានតែតំបន់ដែលបានធ្វើបច្ចុប្បន្នភាពប៉ុណ្ណោះដែលត្រូវបានគូរឡើងវិញ មិនមែនអេក្រង់ទាំងមូលទេ។ ប្រសិនបើគំនូរជីវចលច្រើនធ្វើបច្ចុប្បន្នភាពតំបន់ដូចគ្នាក្នុងពេលតែមួយ វានឹងបង្កើនចំនួននៃការគូរឡើងវិញដែលមិនចាំបាច់ ដូច្នេះអ្នកត្រូវបង្កើនប្រសិទ្ធភាពតក្កវិជ្ជាចលនាដោយដៃ។

សំណួរទី 2: តើធ្វើដូចម្តេចដើម្បីដោះស្រាយជាមួយនឹងរូបភាពទំហំធំ?

រូបភាពអាចមកពី៖

អថេរក្នុងកម្មវិធី៖ ជាធម្មតាវាជាអារេ C ដែលមានទិន្នន័យភីកសែលដាក់ក្នុង Flash ខាងក្នុង។

រក្សាទុកខាងក្រៅ files: ដូចជារូបភាព fileរក្សាទុកក្នុងកាតអេសឌី។ គម្រោងត្រូវតែគាំទ្រ file ប្រព័ន្ធ។

រូបភាព 320 × 240 ដែលមានជម្រៅពណ៌ 16 ប៊ីត ត្រូវការ 320 × 240 × 3 បៃ ឬរហូតដល់ 225K ។ ការរក្សាទុករូបភាពធំបែបនេះនៅក្នុង Flash ខាងក្នុងគឺមិនអាចអនុវត្តបាន។

ប្រសិនបើអ្នកពិនិត្យមើល [SD FatFs] នៅក្នុង [ការកំណត់] ដើម្បីបើកដំណើរការ file ប្រព័ន្ធនៃកាតអេសឌី ធាតុក្រាហ្វិកដែលត្រូវការរូបភាពអាចជ្រើសរើសដើម្បីទាញយករូបភាពពីកាតអេសឌី។ មុនពេលប្រតិបត្តិកម្មវិធីបង្កប់ សូមចម្លង .bin file ពីថត [រូបភាព] ទៅកាត SD ។

ទោះយ៉ាងណាក៏ដោយដោយសាររូបភាពគឺមកពី files ល្បឿននៃការធ្វើឱ្យស្រស់ប្រព័ន្ធត្រូវបានកំណត់ដោយល្បឿនអានកាតអេសឌី។ សម្រាប់អតីតampនៅពេលប្រើ HT32F12366 @ 96MHz ដើម្បីអានរូបភាព 320 × 240 ល្បឿនគឺប្រហែល 4fps ដែលមិនស័ក្តិសមសម្រាប់ការធ្វើឱ្យស្រស់លឿន និងទំហំធំ។

សំណួរទី 3: តើត្រូវបង្កើនទំហំអង្គចងចាំដើម្បីបន្ថែមធាតុក្រាហ្វិកបន្ថែមលើអេក្រង់យ៉ាងដូចម្តេច?

កូដដែលបង្កើតដោយ HT32 GUI-Builder កំណត់ប៉ារ៉ាម៉ែត្រខាងក្រោមនៅក្នុង lv_conf.h៖

#កំណត់ LV_MEM_CUSTOM 1 (V8)
#កំណត់ LV_USE_STDLIB_MALLOC LV_STDLIB_CLIB (V9)

នេះមានន័យថាត្រូវប្រើមុខងារស្តង់ដារ C ដើម្បីគ្រប់គ្រងអង្គចងចាំ៖ malloc/free/realloc ដែលចាំបាច់ត្រូវកំណត់ទំហំ [Heap]។

HOLTEK HT32F52367 GUI Builder - ២

ចំនួនធាតុក្រាហ្វិកដែលអាចបន្ថែមបានប្រែប្រួលអាស្រ័យលើប្រភេទធាតុក្រាហ្វិក។ អ្នកប្រើប្រាស់អាចបង្កើន ឬបន្ថយទំហំ [Heap] តាមតម្រូវការកម្មវិធីរបស់ពួកគេ។

សំណួរទី 4: លេខកូដដែលបានបង្កើតមិនដំណើរការត្រឹមត្រូវទេ?

A. ប្រសិនបើជម្រើស [FAT] ត្រូវបានជ្រើសរើសក្នុងការកំណត់រូបភាព សូមប្រាកដថារូបភាពនោះ។ files ត្រូវបានរក្សាទុកក្នុងកាត SD ហើយផ្លូវគឺត្រឹមត្រូវ។
ខ. ពិនិត្យមើលថាតើធាតុក្រាហ្វិកច្រើនពេកត្រូវបានបន្ថែម ដែលបណ្តាលឱ្យមានកន្លែងទំនេរមិនគ្រប់គ្រាន់នៅក្នុង [Heap]។
សូមយោងទៅលើ Q3 ដើម្បីបង្កើនទំហំ [Heap]។
គ. ប្រសិនបើធាតុក្រាហ្វិកត្រូវបានកំណត់ដោយស្រមោល ឬកាំ វានឹងត្រូវការទំហំ [Heap] ធំជាងសម្រាប់ការគណនា សូមយោងទៅ Q3 ដើម្បីបង្កើនទំហំ [Heap] ផងដែរ។

សំណួរទី 5: ហេតុអ្វីបានជាទទឹងទិន្នន័យ EBI នៃ HT32F52367 8 ប៊ីត?

នៅពេលដែលក្រុមប្រឹក្សាភិបាល ESK32-2x001A ត្រូវបានផ្គូផ្គងជាមួយ HT32F52367, Key1 ត្រូវបានចែករំលែកជាមួយ EBI's AD9 ។ ដើម្បីការពារអេក្រង់មិនដំណើរការនៅពេលដែលឧបករណ៍បញ្ចូលប៊ូតុង ឬក្តារចុចត្រូវបានបើក ទទឹងទិន្នន័យ 8 ប៊ីត EBI ត្រូវបានប្រើតាមលំនាំដើម។

SW1 នៅខាងក្រោយម៉ូឌុលអេក្រង់ ESK32-A2A31 ត្រូវកំណត់ទៅ 1000 ដើម្បីគាំទ្រ EBI 8-bit។

HOLTEK HT32F52367 GUI Builder - ២      HOLTEK HT32F52367 GUI Builder - ២

របៀប 16 ប៊ីត របៀប 8 ប៊ីត

ប្រសិនបើឧបករណ៍បញ្ចូលប៊ូតុង ឬក្តារចុចមិនត្រូវបានបើកទេ អ្នកប្រើប្រាស់អាចកែប្រែ lv_drvier.h ដើម្បីផ្លាស់ប្តូរទទឹងទិន្នន័យ EBI ទៅជា 16 ប៊ីត ដើម្បីបង្កើនល្បឿនធ្វើឱ្យស្រស់។

#ifndef TFT_BIT_MODE
#កំណត់ TFT_BIT_MODE (TFT_16_BIT_MODE)
#endif

សំណួរទី 6: របៀបបន្ថែមកម្មវិធីបញ្ជាបង្ហាញឬឧបករណ៍បញ្ចូល?

យក ESK32-A4A31 5.0-inch (800×480) LCD capacitive touch panel គាំទ្រដោយ HT32 GUI-Builder ជាអតីតampដូច្នេះ IC កម្មវិធីបញ្ជាបង្ហាញគឺ SSD1963 ហើយ IC កម្មវិធីបញ្ជាប៉ះគឺ GT911 ។

  • gpio.h៖ ការបង្ហាញ/ប៉ះ និងនិយមន័យម្ជុលគន្លឹះ។
  • lcd_driver.h៖ បង្ហាញនិយមន័យមុខងារកម្មវិធីបញ្ជា រួមទាំងប្រវែង/ទទឹង និងគុណភាពបង្ហាញ។ នេះ។ file រួមបញ្ចូលផងដែរនូវ .c files នៃកូដប្រភពកម្មវិធីបញ្ជាបង្ហាញ និងកូដប្រភពមុខងារប៉ះ។

HOLTEK HT32F52367 GUI Builder - ២

HOLTEK HT32F52367 GUI Builder - ២

  • icd_drvier_ssd1963៖ បង្ហាញកូដប្រភពកម្មវិធីបញ្ជា ដែលត្រូវបានរួមបញ្ចូលក្នុង lcd_driver.h file.
  • i2c1_gt911.c៖ កូដប្រភពមុខងារប៉ះ ដែលជាកម្មសិទ្ធិរបស់ឧបករណ៍បញ្ចូល ហើយត្រូវបានបញ្ចូលក្នុង lcd_driver.h file.
  • lv_port_indev.c៖

#ifdef_TOuchPAD_
ឋិតិវន្តជាមោឃៈ touchpad_init (ចាត់ទុកជាមោឃៈ);
static void touchpad_read(lv_indev_t * indev, lv_indev_data_t * data);
static bool touchpad_is_pressed(ទុកជាមោឃៈ);
ទុកជាមោឃៈ ឋិតិវន្ត touchpad_get_xy(int32_t * x, int32_t * y);
#endif

#ifdef_MOUSE_
ឋិតិវន្តជាមោឃៈ mouse_init(void);
ឋិតិវន្ត Mouse_read (lv_indev_t * indev, lv_indev_data_t * ទិន្នន័យ);
static bool mouse_is_pressed(ទុកជាមោឃៈ);
មោឃៈឋិតិវន្ត mouse_get_xy(int32_t * x, int32_t * y);
#endif

Touchpad និង Mouse គឺជាឧបករណ៍បញ្ចូលស្រដៀងគ្នា។

touchpad_init/mouse_init ហៅ Touch_Init ដើម្បីចាប់ផ្តើម I2C/pins និង GT911។

touchpad_is_pressed/mouse_is_pressed calls is_pressed ដើម្បីកំណត់ថាតើ touch pad ត្រូវបានចុចឬអត់។

touchpad_get_xy/mouse_get_xy ហៅ get_xy ដើម្បីទទួលបានទីតាំងដែលបន្ទះប៉ះត្រូវបានចុច។

ការហៅទូរសព្ទ touchpad_read/mouse_read ត្រូវបានចុច និង get_xy ដើម្បីទទួលបានស្ថានភាព និងទីតាំងក្នុងពេលដំណាលគ្នា។

រក្សាសិទ្ធិ © 2025 ដោយ HOLTEK SEMICONDUCTOR INC. រក្សាសិទ្ធិគ្រប់យ៉ាង។

ព័ត៌មានដែលបានផ្តល់នៅក្នុងឯកសារនេះត្រូវបានផលិតឡើងដោយមានការយកចិត្តទុកដាក់ និងការយកចិត្តទុកដាក់ដ៏សមហេតុផលមុនពេលបោះពុម្ពផ្សាយ ទោះបីជាយ៉ាងណាក៏ដោយ HOLTEK មិនធានាថាព័ត៌មាននោះត្រឹមត្រូវទាំងស្រុងនោះទេ។ ព័ត៌មានដែលមាននៅក្នុងការបោះពុម្ពនេះត្រូវបានផ្តល់ជូនសម្រាប់តែឯកសារយោងប៉ុណ្ណោះ ហើយអាចត្រូវបានជំនួសដោយការអាប់ដេត។ HOLTEK បដិសេធរាល់ការធានាដែលបានបង្ហាញ បង្កប់ន័យ ឬតាមច្បាប់ រួមទាំងប៉ុន្តែមិនកំណត់ចំពោះភាពស័ក្តិសមសម្រាប់ការធ្វើពាណិជ្ជកម្ម គុណភាពដែលពេញចិត្ត លក្ខណៈបច្ចេកទេស មុខងារ សម្បទាសម្រាប់គោលបំណងជាក់លាក់ និងមិនរំលោភសិទ្ធិរបស់ភាគីទីបីណាមួយឡើយ។ HOLTEK បដិសេធការទទួលខុសត្រូវទាំងអស់ដែលកើតចេញពីព័ត៌មាន និងកម្មវិធីរបស់វា។ លើសពីនេះ HOLTEK មិនណែនាំអោយប្រើប្រាស់ផលិតផលរបស់ HOLTEK ដែលមានហានិភ័យនៃគ្រោះថ្នាក់ផ្ទាល់ខ្លួនដោយសារដំណើរការខុសប្រក្រតី ឬហេតុផលផ្សេងទៀត។ HOLTEK សូមប្រកាសថា វាមិនអនុញ្ញាតឱ្យប្រើប្រាស់ផលិតផលទាំងនេះនៅក្នុងសមាសធាតុសំខាន់ៗដែលជួយសង្រ្គោះជីវិត ទ្រទ្រង់ជីវិត ឬសុវត្ថិភាពឡើយ។ រាល់ការប្រើប្រាស់ផលិតផលរបស់ HOLTEK ក្នុងកម្មវិធីសង្គ្រោះអាយុជីវិត/និរន្តរភាព ឬសុវត្ថិភាពគឺស្ថិតក្នុងហានិភ័យរបស់អ្នកទិញទាំងស្រុង ហើយអ្នកទិញយល់ព្រមការពារ ទូទាត់ និងរក្សាទុក HOLTEK ដោយមិនបង្កគ្រោះថ្នាក់ពីការខូចខាត ការទាមទារ ការប្តឹងផ្តល់ ឬការចំណាយដែលបណ្តាលមកពីការប្រើប្រាស់បែបនេះ។ ព័ត៌មានដែលបានផ្តល់នៅក្នុងឯកសារនេះ រួមទាំងប៉ុន្តែមិនកំណត់ចំពោះខ្លឹមសារ ទិន្នន័យ ឧamples, material, graphs, and trademarks, គឺជាកម្មសិទ្ធិបញ្ញារបស់ HOLTEK (និងអ្នកផ្តល់អាជ្ញាប័ណ្ណរបស់វា, ដែលជាកន្លែងដែលអាចអនុវត្តបាន) និងត្រូវបានការពារដោយច្បាប់រក្សាសិទ្ធិនិងច្បាប់កម្មសិទ្ធិបញ្ញាផ្សេងទៀត។ គ្មានអាជ្ញាប័ណ្ណ បង្ហាញ ឬបង្កប់ន័យចំពោះសិទ្ធិកម្មសិទ្ធិបញ្ញាណាមួយត្រូវបានផ្តល់ដោយ HOLTEK នៅទីនេះ។ HOLTEK រក្សាសិទ្ធិក្នុងការត្រួតពិនិត្យឡើងវិញនូវព័ត៌មានដែលបានពិពណ៌នានៅក្នុងឯកសារនៅពេលណាក៏បានដោយមិនចាំបាច់ជូនដំណឹងជាមុន។ សម្រាប់ព័ត៌មានចុងក្រោយ សូមទាក់ទងមកយើងខ្ញុំ។


Rev. 1.00 ថ្ងៃទី 13 ខែមិថុនា ឆ្នាំ 2025

ឯកសារ/ធនធាន

HOLTEK HT32F52367 អ្នកបង្កើត GUI [pdf] ការណែនាំអ្នកប្រើប្រាស់
HT32F52367 GUI Builder, HT32F52367, GUI Builder, Builder

ឯកសារយោង

ទុកមតិយោបល់

អាសយដ្ឋានអ៊ីមែលរបស់អ្នកនឹងមិនត្រូវបានផ្សព្វផ្សាយទេ។ វាលដែលត្រូវការត្រូវបានសម្គាល់ *