Pico e-Paper 2.9 B EPD Module សម្រាប់ Raspberry Pi Pico
ព័ត៌មានអំពីផលិតផល
លក្ខណៈបច្ចេកទេស
- ឈ្មោះផលិតផល៖ Pico e-Paper 2.9 (B)
- បរិយាកាសប្រើប្រាស់៖ ក្នុងផ្ទះត្រូវបានណែនាំ
- បរិស្ថាននៃការប្រើប្រាស់អេក្រង់ E-Ink៖
- សំណើមដែលទាក់ទងដែលបានណែនាំ៖ 35% ~ 65% RH
- រយៈពេលផ្ទុកអតិបរមា៖ 6 ខែក្រោម 55% RH
- ពេលវេលាដឹកជញ្ជូន៖ ១០ ថ្ងៃ។
- ការបញ្ជាក់ចំណុចប្រទាក់ខ្សែអេក្រង់៖ ជម្រេ 0.5mm, 24Pin
ការណែនាំអំពីការប្រើប្រាស់ផលិតផល
បង្ហោះសាកល្បងលើកដំបូង
- ចុចប៊ូតុង BOOTSET នៅលើបន្ទះ Pico ឱ្យជាប់។
- ភ្ជាប់ Pico ទៅរន្ធ USB របស់កុំព្យូទ័រតាមរយៈ Micro
ខ្សែយូអេសប៊ី។ - លែងប៊ូតុងនៅពេលដែលកុំព្យូទ័រទទួលស្គាល់ឧបករណ៍ចល័ត
ដ្រាយវ៍រឹង (RPI-RP2) ។ - ទាញយកការបង្ហាញ និងបើកផ្លូវ arduinoPWMD1-LED នៅក្រោម
D1LED.ino. - ចុច ឧបករណ៍ -> ច្រក ហើយចងចាំ COM ដែលមានស្រាប់ (ខុសគ្នា
កុំព្យូទ័របង្ហាញ COM ផ្សេងគ្នា ចងចាំ COM ដែលមានស្រាប់នៅលើរបស់អ្នក។
កុំព្យូទ័រ) ។ - ភ្ជាប់បន្ទះកម្មវិធីបញ្ជាទៅកុំព្យូទ័រដោយប្រើខ្សែ USB ។
- ចុច Tools -> Ports ហើយជ្រើសរើស uf2 Board ជាដំបូង
ការតភ្ជាប់។ - បន្ទាប់ពីការផ្ទុកឡើងត្រូវបានបញ្ចប់ ការតភ្ជាប់ម្ដងទៀតនឹងមានលទ្ធផល
ច្រក COM បន្ថែម។ - ចុច Tool -> Dev Board -> Raspberry Pi Pico/RP2040 ->
Raspberry Pi Pico ។ - បន្ទាប់ពីការកំណត់ សូមចុចព្រួញស្ដាំដើម្បីផ្ទុកឡើង។
- ប្រសិនបើអ្នកជួបប្រទះបញ្ហា សូមដំឡើងឡើងវិញ ឬជំនួស Arduino IDE
កំណែ។ - ដើម្បីលុប Arduino IDE សូមលុបវាឱ្យស្អាត។
- លុបមាតិកាទាំងអស់នៃថតដោយដៃ
C:Users[name]AppDataLocalArduino15 (អ្នកត្រូវបង្ហាញលាក់
files ដើម្បីមើលវា) ។ - ដំឡើង Arduino IDE ឡើងវិញ។
ការបង្ហាញប្រភពបើកចំហ
- MicroPython Demo (GitHub)
- កម្មវិធីបង្កប់ MicroPython/Blink Demo (C)
- ការបង្ហាញជាផ្លូវការ Raspberry Pi C/C++
- ការបង្ហាញជាផ្លូវការ Raspberry Pi MicroPython
- ការបង្ហាញ C/C++ ផ្លូវការរបស់ Arduino
សំណួរគេសួរញឹកញាប់
សំណួរ៖ តើអ្វីជាបរិយាកាសនៃការប្រើប្រាស់ទឹកថ្នាំអេឡិចត្រូនិច
អេក្រង់?
ចម្លើយ៖ សំណើមដែលទាក់ទងដែលបានណែនាំសម្រាប់អេក្រង់ e-ink
គឺ 35% ~ 65% RH ។ សម្រាប់ការផ្ទុកវាគួរតែទាបជាង 55% RH និង
រយៈពេលផ្ទុកអតិបរមាគឺ 6 ខែ។ ក្នុងអំឡុងពេលដឹកជញ្ជូនវាគួរតែ
មិនលើសពី 10 ថ្ងៃ។
សំណួរ៖ តើអ្វីជាការប្រុងប្រយ័ត្នសម្រាប់អេក្រង់ e-ink?
ធ្វើឱ្យស្រស់?
ចម្លើយ៖ អេក្រង់ទឹកថ្នាំអេឡិចត្រូនិចត្រូវបានណែនាំសម្រាប់ប្រើប្រាស់ក្នុងផ្ទះ។ ប្រសិនបើប្រើ
នៅខាងក្រៅ វាគួរតែត្រូវបានការពារពីពន្លឺព្រះអាទិត្យដោយផ្ទាល់ និងកាំរស្មីយូវី។
នៅពេលរចនាផលិតផលជាមួយអេក្រង់ e-ink ត្រូវប្រាកដថា
តម្រូវការសីតុណ្ហភាព និងសំណើមនៃអេក្រង់ត្រូវបានបំពេញ។
សំណួរ៖ ហេតុអ្វីមិនអាចបង្ហាញអក្សរចិននៅលើ
អេក្រង់ e-ink?
ចម្លើយ៖ បណ្ណាល័យតួអក្សរចិននៅក្នុងទម្លាប់របស់យើងប្រើ
វិធីសាស្ត្រអ៊ិនកូដ GB2312 ។ ដើម្បីបង្ហាញអក្សរចិន
ផ្លាស់ប្តូរ xxx_test.c របស់អ្នក។ file ទៅទម្រង់ការអ៊ិនកូដ GB2312 ចងក្រង
ហើយទាញយកវា។
សំណួរ៖ បន្ទាប់ពីប្រើអស់មួយរយៈពេល អេក្រង់នឹងធ្វើឱ្យស្រស់
(ការធ្វើឱ្យស្រស់ពេញលេញ) មានបញ្ហាបន្ទាប់បន្សំធ្ងន់ធ្ងរដែលមិនអាចមាន
ជួសជុល?
ចម្លើយ៖ បន្ទាប់ពីប្រតិបត្តិការធ្វើឱ្យស្រស់នីមួយៗ វាត្រូវបានណែនាំឱ្យកំណត់
អេក្រង់ទៅជារបៀបគេង ឬបិទឧបករណ៍ដោយផ្ទាល់ទៅ
រារាំងអេក្រង់មិនឱ្យស្ថិតនៅក្នុងវ៉ុលខ្ពស់។tage រដ្ឋសម្រាប់រយៈពេលយូរ
ពេលវេលាដែលអាចបណ្តាលឱ្យអស់កម្លាំង។
សំណួរ៖ ហេតុអ្វី e-Paper បង្ហាញស៊ុមខ្មៅ?
ចម្លើយ៖ ពណ៌បង្ហាញស៊ុមអាចត្រូវបានកំណត់តាមរយៈស៊ុម
ការចុះឈ្មោះ Waveform Control ឬការកំណត់ចន្លោះពេល VCOM និងទិន្នន័យ
ចុះឈ្មោះ។
សំណួរ៖ តើអ្វីជាលក្ខណៈជាក់លាក់នៃខ្សែអេក្រង់
ចំណុចប្រទាក់?
ចម្លើយ៖ ចំណុចប្រទាក់ខ្សែអេក្រង់មានកម្រិត 0.5mm និង 24
ម្ជុល។
Pico e-Paper 2.9 (B)
ជាងview
Pico e-Paper 2.9 (B)
ម៉ូឌុល 2.9inch EPD (Electronic Paper Display) សម្រាប់ Raspberry Pi Pico, 296 × 128 pixels, Black/White/Red, SPI Interface។
ការបញ្ជាក់
ទំហំ៖ 2.9inch វិមាត្រគ្រោង(បន្ទះឆៅ)៖ 79.0mm × 36.7mm × 1.05mm វិមាត្រគ្រោង(ផ្ទាំងបញ្ជា): 82.0mm × 38.0mm ទំហំបង្ហាញ: 66.89mm × 29.05mm វ៉ុលប្រតិបត្តិការtage: 3.3V/5V Interface: SPI Dot pitch: 0.138×0.138 Resolution: 296×128 Display color: Black, White, Red Greyscale: 2 full refresh time: 15s Refresh power: 26.4mW (typ.) Standby current: <0.01 uA (ស្ទើរតែគ្មាន) ចំណាំ៖
ម៉ូឌុល EPD 2.9 អ៊ីញសម្រាប់ Raspberry Pi Pico,
296 × 128, ខ្មៅ/ស/ក្រហម, SPI
1. ពេលវេលាធ្វើឱ្យស្រស់៖ ពេលវេលាធ្វើឱ្យស្រស់គឺជាលទ្ធផលពិសោធន៍ ពេលវេលាធ្វើឱ្យស្រស់ពិតប្រាកដនឹងមានកំហុស ហើយឥទ្ធិពលជាក់ស្តែងនឹងឈ្នះ។ វានឹងមានឥទ្ធិពលភ្លឹបភ្លែតៗក្នុងអំឡុងពេលដំណើរការធ្វើឱ្យស្រស់ជាសាកលនេះជាបាតុភូតធម្មតា។
2. ការប្រើប្រាស់ថាមពល៖ ទិន្នន័យការប្រើប្រាស់ថាមពលគឺជាលទ្ធផលពិសោធន៍។ ការប្រើប្រាស់ថាមពលពិតប្រាកដនឹងមានកំហុសជាក់លាក់មួយដោយសារតែអត្ថិភាពនៃផ្ទាំងបញ្ជា និងស្ថានភាពប្រើប្រាស់ជាក់ស្តែង។ ឥទ្ធិពលជាក់ស្តែងនឹងឈ្នះ។
ពេលវេលាទំនាក់ទំនង SPI
ដោយសារអេក្រង់ទឹកថ្នាំគ្រាន់តែត្រូវបង្ហាញ ខ្សែទិន្នន័យ (MISO) ដែលផ្ញើពីម៉ាស៊ីន និងទទួលដោយម៉ាស៊ីនត្រូវបានលាក់នៅទីនេះ។
CS: Slave chip ជ្រើសរើស នៅពេលដែល CS ទាប បន្ទះឈីបត្រូវបានបើក។ DC៖ data/command control pin សរសេរពាក្យបញ្ជានៅពេល DC=0; សរសេរទិន្នន័យនៅពេល DC = 1 ។ SCLK: នាឡិកាទំនាក់ទំនង SPI ។ SDIN៖ មេទំនាក់ទំនង SPI ផ្ញើ អ្នកបម្រើទទួល។ ពេលវេលា៖ CPHL=0, CPOL=0 (SPI0)
ចំណាំ សម្រាប់ព័ត៌មានជាក់លាក់អំពី SPI អ្នកអាចស្វែងរកព័ត៌មានតាមអ៊ីនធឺណិត។ ពិធីសារការងារ
ផលិតផលនេះគឺជាឧបករណ៍ E-paper ដែលទទួលយកបច្ចេកវិទ្យាបង្ហាញរូបភាពនៃ Microencapsulated Electrophoretic Display, MED ។ វិធីសាស្រ្តដំបូងគឺបង្កើតជារង្វង់តូចៗ ដែលសារធាតុពណ៌ដែលត្រូវបានចោទប្រកាន់ត្រូវបានព្យួរនៅក្នុងប្រេងថ្លា ហើយនឹងផ្លាស់ទីអាស្រ័យលើបន្ទុកអេឡិចត្រូនិច។ អេក្រង់ E-paper បង្ហាញលំនាំដោយឆ្លុះបញ្ចាំងពីពន្លឺជុំវិញ ដូច្នេះវាមិនមានតម្រូវការពន្លឺផ្ទៃខាងក្រោយទេ។ (ចំណាំថា e-Paper មិនអាចគាំទ្រការធ្វើបច្ចុប្បន្នភាពដោយផ្ទាល់នៅក្រោមពន្លឺថ្ងៃទេ)។ របៀបកំណត់ភីកសែល ក្នុងរូបភាព monochrome យើងកំណត់ភីកសែល 0 គឺខ្មៅ និង 1 ជាពណ៌ស។
ស៖ ប៊ីត ១
BlackBit 0
ចំនុចនៅក្នុងរូបត្រូវបានគេហៅថាភីកសែល។ ដូចដែលយើងដឹងហើយថា 1 និង 0 ត្រូវបានប្រើដើម្បីកំណត់ពណ៌ ដូច្នេះយើងអាចប្រើមួយប៊ីតដើម្បីកំណត់ពណ៌នៃភីកសែលមួយ និង 1 បៃ = 8 ភីកសែល សម្រាប់ឧ។ample, ប្រសិនបើយើងកំណត់ 8 ភីកសែលដំបូងទៅជាខ្មៅ និង 8 ភីកសែលចុងក្រោយទៅជាពណ៌ស យើងបង្ហាញវាដោយលេខកូដ ពួកវានឹងមាន 16 ប៊ីតដូចខាងក្រោម៖
សម្រាប់កុំព្យូទ័រ ទិន្នន័យត្រូវបានរក្សាទុកជាទម្រង់ MSB៖
ដូច្នេះយើងអាចប្រើពីរបៃសម្រាប់ 16 ភីកសែល។ សម្រាប់ 2.13inch e-paper B ពណ៌បង្ហាញគឺក្រហម ខ្មៅ និងស។ យើងត្រូវបំបែករូបជា២រូប មួយជារូបសខ្មៅ និងមួយរូបជារូបក្រហមនិងស។ នៅពេលបញ្ជូន ដោយសារតែការចុះឈ្មោះមួយគ្រប់គ្រងភីកសែលខ្មៅ ឬស មួយគ្រប់គ្រងអេក្រង់ក្រហម ឬស។ ផ្នែកស និងខ្មៅនៃ 2 ប្រើ 2.13 បៃដើម្បីគ្រប់គ្រង 1 ភីកសែល ហើយផ្នែកក្រហម និងសប្រើ 8 បៃដើម្បីគ្រប់គ្រង 1 ភីកសែល។ សម្រាប់អតីតampឧបមាថាមាន 8 ភីកសែល ដែល 4 ទីមួយមានពណ៌ក្រហម ហើយផ្នែកខាងក្រោយ 4 មានពណ៌ខ្មៅ៖ ពួកគេត្រូវការកាត់ជារូបភាពសខ្មៅ និងរូបភាពក្រហម និងស។ រូបភាពទាំងពីរមាន 8 ភីកសែល ប៉ុន្តែ 4 ភីកសែលដំបូងនៃរូបភាពស និងស 4 ភីកសែលចុងក្រោយមានពណ៌ខ្មៅ ហើយ XNUMX ភីកសែលដំបូងនៃរូបភាពក្រហម និងស មួយភីកសែលមានពណ៌ក្រហម ហើយបួនភីកសែលចុងក្រោយមានពណ៌ស។ .
ប្រសិនបើអ្នកកំណត់ថាទិន្នន័យរបស់ភីកសែលពណ៌សគឺ 1 ហើយពណ៌ខ្មៅគឺ 0 នោះយើងអាចទទួលបាន៖
ដូច្នេះយើងអាចប្រើ 1 បៃដើម្បីគ្រប់គ្រងរាល់ប្រាំបីភីកសែល។
ការប្រុងប្រយ័ត្នជាមុន
1. សម្រាប់អេក្រង់ដែលគាំទ្រការអាប់ដេតដោយផ្នែក សូមចំណាំថា អ្នកមិនអាចធ្វើឱ្យអេក្រង់ឡើងវិញជាមួយនឹងរបៀបផ្នែកគ្រប់ពេលនោះទេ។ បន្ទាប់ពីការអាប់ដេតមួយផ្នែកជាច្រើន អ្នកត្រូវធ្វើការធ្វើឱ្យអេក្រង់ឡើងវិញពេញលេញម្ដង។ បើមិនដូច្នេះទេ ឥទ្ធិពលបង្ហាញអេក្រង់នឹងខុសប្រក្រតី ដែលមិនអាចជួសជុលបាន!
2. ដោយសារតែបាច់ផ្សេងគ្នា ពួកវាខ្លះមានភាពមិនប្រក្រតី។ ទុក e-Paper ខាងស្ដាំឡើងលើនឹងកាត់បន្ថយវា។ ហើយប្រសិនបើ e-Paper មិនត្រូវបានធ្វើឱ្យស្រស់ក្នុងរយៈពេលយូរទេ វានឹងក្លាយទៅជាពណ៌ក្រហម/លឿងកាន់តែច្រើន។ សូមប្រើកូដសាកល្បងដើម្បីផ្ទុកក្រដាសអេឡិចត្រូនិកឡើងវិញច្រើនដងក្នុងករណីនេះ។
3. ចំណាំថាអេក្រង់មិនអាចបើកដំណើរការបានយូរទេ។ នៅពេលដែលអេក្រង់មិនត្រូវបានធ្វើឱ្យស្រស់ទេ សូមកំណត់អេក្រង់ទៅជារបៀបគេង ឬបិទ e-Paper ។ បើមិនដូច្នោះទេ អេក្រង់នឹងនៅតែស្ថិតក្នុងកម្រិតសំឡេងខ្ពស់។tage state រយៈពេលយូរ ដែលនឹងធ្វើអោយ e-Paper ខូច ហើយមិនអាចជួសជុលបាន!
4. នៅពេលប្រើ e-Paper វាត្រូវបានណែនាំថា ចន្លោះពេលធ្វើឱ្យស្រស់មានយ៉ាងហោចណាស់ 180s ហើយធ្វើឱ្យស្រស់យ៉ាងហោចណាស់ម្តងរៀងរាល់ 24 ម៉ោងម្តង។ ប្រសិនបើ e-Paper មិនត្រូវបានប្រើប្រាស់រយៈពេលយូរទេ អេក្រង់ទឹកថ្នាំគួរតែត្រូវបានជក់ និងរក្សាទុក។ (សូមមើលតារាងទិន្នន័យសម្រាប់តម្រូវការបរិស្ថានផ្ទុកជាក់លាក់)
5. បន្ទាប់ពីអេក្រង់ចូលទៅក្នុងរបៀបគេង ទិន្នន័យរូបភាពដែលបានផ្ញើនឹងមិនត្រូវបានអើពើ ហើយវាអាចត្រូវបានធ្វើឱ្យស្រស់ជាធម្មតាបន្ទាប់ពីចាប់ផ្តើមម្តងទៀត។
6. គ្រប់គ្រង 0x3C ឬ 0x50 (យោងទៅតារាងទិន្នន័យសម្រាប់ព័ត៌មានលម្អិត) ចុះឈ្មោះដើម្បីកែតម្រូវពណ៌ស៊ុម។ នៅក្នុងទម្លាប់ អ្នកអាចកែតម្រូវការចុះឈ្មោះ Border Waveform Control ឬការកំណត់ VCOM និង DATA INTERVAL ដើម្បីកំណត់ព្រំដែន។
7. ប្រសិនបើអ្នករកឃើញថាទិន្នន័យរូបភាពដែលបានបង្កើតត្រូវបានបង្ហាញមិនត្រឹមត្រូវនៅលើអេក្រង់ វាត្រូវបានណែនាំឱ្យពិនិត្យមើលថាតើការកំណត់ទំហំរូបភាពត្រឹមត្រូវឬអត់ ផ្លាស់ប្តូរការកំណត់ទទឹង និងកម្ពស់នៃរូបភាព ហើយព្យាយាមម្តងទៀត។
8. វ៉ុលការងារtage នៃ e-Paper គឺ 3.3V ។ ប្រសិនបើអ្នកទិញបន្ទះឆៅហើយអ្នកត្រូវបន្ថែមសៀគ្វីបម្លែងកម្រិតសម្រាប់ភាពឆបគ្នាជាមួយវ៉ុល 5Vtagអ៊ី កំណែថ្មីនៃក្រុមប្រឹក្សាភិបាល (V2.1 និងកំណែបន្តបន្ទាប់) បានបន្ថែមសៀគ្វីដំណើរការកម្រិត ដែលអាចគាំទ្រទាំងបរិយាកាសការងារ 3.3V និង 5V។ កំណែចាស់អាចគាំទ្រតែបរិយាកាសការងារ 3.3V ប៉ុណ្ណោះ។ អ្នកអាចបញ្ជាក់កំណែមុនពេលប្រើវា។ (បន្ទះដែលមានបន្ទះឈីប 20-pin នៅលើ PCB ជាទូទៅគឺជាកំណែថ្មី)
9. ខ្សែ FPC នៃអេក្រង់មានភាពផុយស្រួយ យកចិត្តទុកដាក់លើការពត់ខ្សែតាមទិសផ្ដេកនៃអេក្រង់ នៅពេលប្រើវា ហើយកុំពត់ខ្សែតាមទិសបញ្ឈរនៃអេក្រង់។
10. អេក្រង់របស់ e-Paper មានភាពផុយស្រួយ សូមព្យាយាមជៀសវាងការទម្លាក់ រលាក់ និងសង្កត់ខ្លាំង។
11. យើងសូមណែនាំអោយអតិថិជនប្រើប្រាស់ sampកម្មវិធី le ដែលផ្តល់ដោយពួកយើងដើម្បីសាកល្បងជាមួយក្រុមប្រឹក្សាអភិវឌ្ឍន៍ដែលត្រូវគ្នាបន្ទាប់ពីពួកគេទទួលបានអេក្រង់។
RPi Pico
ការតភ្ជាប់ផ្នែករឹង
សូមថែរក្សាទិសដៅនៅពេលភ្ជាប់ Pico ។ រូបសញ្ញានៃច្រក USB ត្រូវបានបោះពុម្ពដើម្បីចង្អុលបង្ហាញថត អ្នកក៏អាចពិនិត្យមើលម្ជុលផងដែរ។ ប្រសិនបើអ្នកចង់ភ្ជាប់ក្តារដោយខ្សែ 8-pin អ្នកអាចយោងលើតារាងខាងក្រោម៖
e-Paper Pico
ការពិពណ៌នា
VCC VSYS
ការបញ្ចូលថាមពល
GND GND
ដី
DIN GP11 MOSI pin នៃចំណុចប្រទាក់ SPI ទិន្នន័យបញ្ជូនពី Master ទៅ Slave ។
CLK GP10
ម្ជុល SCK នៃចំណុចប្រទាក់ SPI ការបញ្ចូលនាឡិកា
CS GP9
បន្ទះឈីបជ្រើសរើសម្ជុលនៃចំណុចប្រទាក់ SPI, សកម្មទាប
DC GP8
ម្ជុលគ្រប់គ្រងទិន្នន័យ/ពាក្យបញ្ជា (ខ្ពស់៖ ទិន្នន័យ ទាប៖ ពាក្យបញ្ជា)
RST GP12
កំណត់ម្ជុលឡើងវិញ សកម្មទាប
រវល់ GP13
ម្ជុលទិន្នផលរវល់
KEY0 GP2
សោអ្នកប្រើ 0
KEY1 GP3
សោអ្នកប្រើ 1
រត់រត់
កំណត់ឡើងវិញ
អ្នកគ្រាន់តែអាចភ្ជាប់ក្តារទៅនឹង Pico ដូចជា Pico-ePaper-7.5។
រៀបចំបរិស្ថាន
អ្នកអាចយោងទៅការណែនាំសម្រាប់ Raspberry Pi៖ https://www.raspberrypi.org/documentation/pico/getting-started/ ទាញយកកូដសាកល្បង
បើកស្ថានីយរបស់ Pi ហើយដំណើរការពាក្យបញ្ជាខាងក្រោម៖
ស៊ីឌី ~ sudo wget https://files.waveshare.com/upload/2/27/Pico_ePaper_Code.zip ពន្លា Pico_ePaper_Code.zip -d Pico_ePaper_Code cd ~/Pico_ePaper_Code
អ្នកក៏អាចក្លូនកូដពី Github ផងដែរ។
cd ~ git clone https://github.com/waveshare/Pico_ePaper_Code.git cd ~/Pico_ePaper_Code
អំពីអតីតamples
ការណែនាំគឺផ្អែកលើ Raspberry Pi ។ កូដ C
អតីតample ផ្ដល់ឱ្យគឺត្រូវគ្នាជាមួយប្រភេទជាច្រើន អ្នកត្រូវកែប្រែ main.c file, មិនបញ្ចេញមតិនិយមន័យនេះបើយោងតាមប្រភេទពិតនៃការបង្ហាញដែលអ្នកទទួលបាន។ សម្រាប់អតីតample ប្រសិនបើអ្នកមាន Pico-ePaper-2.13 សូមកែប្រែ main.c file, uncomment line 18 (ឬប្រហែលជាវាជាបន្ទាត់ 19)។
កំណត់គម្រោង៖
ស៊ីឌី ~/Pico_ePaper_Code/ គ
បង្កើតថតឯកសារ ហើយបន្ថែម SDK ។ ../../pico-sdk គឺជាផ្លូវលំនាំដើមរបស់ SDK ប្រសិនបើអ្នករក្សាទុក SDK ទៅថតផ្សេងទៀត សូមប្តូរវាទៅផ្លូវពិត។
mkdir build cd build export PICO_SDK_PATH=../../pico-sdk
ដំណើរការពាក្យបញ្ជា cmake ដើម្បីបង្កើត Makefile file.
ស៊ីម៉ាក់..
ដំណើរការពាក្យបញ្ជាបង្កើតដើម្បីចងក្រងកូដ។
ធ្វើ -j9
បន្ទាប់ពីចងក្រង epd.uf2 file ត្រូវបានបង្កើត។ បន្ទាប់មកចុចប៊ូតុង BOOTSEL ឱ្យជាប់នៅលើបន្ទះ Pico ភ្ជាប់ Pico ទៅ Raspberry Pi ដោយប្រើខ្សែ Micro USB ហើយលែងប៊ូតុង។ នៅចំណុចនេះ ឧបករណ៍នឹងសម្គាល់ថាសចល័ត (RPI-RP2) ។ ចម្លង epd.uf2 file ទើបតែបង្កើតទៅថាសចល័តដែលបានទទួលស្គាល់ថ្មី (RPI-RP2) Pico នឹងចាប់ផ្តើមកម្មវិធីដែលកំពុងដំណើរការឡើងវិញដោយស្វ័យប្រវត្តិ។ Python ជាដំបូងចុចប៊ូតុង BOOTSEL ឱ្យជាប់នៅលើបន្ទះ Pico ប្រើខ្សែ Micro USB ដើម្បីភ្ជាប់ Pico ទៅ Raspberry Pi បន្ទាប់មកលែងប៊ូតុង។ នៅចំណុចនេះ ឧបករណ៍នឹងសម្គាល់ថាសចល័ត (RPI-RP2) ។ ចម្លង rp2-pico-20210418-v1.15.uf2 file នៅក្នុងថត python ទៅថាសចល័ត (RPI-RP2) ទើបតែកំណត់អត្តសញ្ញាណ។ ធ្វើបច្ចុប្បន្នភាព Thonny IDE ។
sudo apt ធ្វើឱ្យប្រសើរឡើង thonny
បើក Thonny IDE (ចុចលើរូបសញ្ញា Raspberry -> Programming -> Thonny Python IDE) ហើយជ្រើសរើសអ្នកបកប្រែ៖
ជ្រើសរើស ឧបករណ៍ -> ជម្រើស... -> អ្នកបកប្រែ។ ជ្រើសរើស MicroPython (Raspberry Pi Pico និង ttyACM0 port)។ បើក Pico_ePaper-xxx.py file នៅក្នុង Thonny IDE បន្ទាប់មកដំណើរការស្គ្រីបបច្ចុប្បន្ន (ចុចលើត្រីកោណពណ៌បៃតង)។
ការវិភាគកូដ C
ចំណុចប្រទាក់ផ្នែករឹងខាងក្រោម យើងខ្ចប់ស្រទាប់ផ្នែករឹង ដើម្បីងាយស្រួលបញ្ជូនទៅកាន់វេទិកាផ្នែករឹងផ្សេងៗគ្នា។ DEV_Config.c.h) នៅក្នុងថតឯកសារ៖ Pico_ePaper_CodeclibConfig ។
ប្រភេទទិន្នន័យ៖
#define UBYTE uint8_t #define UWORD uint16_t #define UDOUBLE uint32_t
ម៉ូឌុលចាប់ផ្តើម និងចេញ៖
ចាត់ទុកជាមោឃៈ DEV_Module_Init (ចាត់ទុកជាមោឃៈ); ទុកជាមោឃៈ DEV_Module_Exit (ចាត់ទុកជាមោឃៈ); ចំណាំ 1. មុខងារខាងលើត្រូវបានប្រើដើម្បីចាប់ផ្តើមការបង្ហាញ ឬចំណុចទាញចេញ។
GPIO សរសេរ/អាន៖
ទុកជាមោឃៈ DEV_Digital_Write(UWORD Pin, UBYTE តម្លៃ); UBYTE DEV_Digital_Read(UWORD Pin);
SPI បញ្ជូនទិន្នន័យ៖
ទុកជាមោឃៈ DEV_SPI_WriteByte (តម្លៃ UBYTE);
កម្មវិធីបញ្ជា EPD លេខកូដកម្មវិធីបញ្ជារបស់ EPD ត្រូវបានរក្សាទុកក្នុងថតឯកសារ៖ Pico_ePaper_CodeclibePaper បើកបឋមកថា .h fileអ្នកអាចពិនិត្យមើលមុខងារទាំងអស់ដែលបានកំណត់។
ចាប់ផ្តើមបង្កើត e-Paper មុខងារនេះតែងតែត្រូវបានប្រើប្រាស់នៅពេលចាប់ផ្តើម និងបន្ទាប់ពីភ្ញាក់ពីដំណេកអេក្រង់។
//2.13inch e-Paper, 2.13inch e-Paper V2, 2.13inch e-Paper (D), 2.9inch e-Paper, 2.9inch e-Paper (D) ទុកជាមោឃៈ EPD_xxx_Init(UBYTE Mode); // របៀប = 0 ធ្វើឱ្យទាន់សម័យពេញលេញ របៀប = 1 ការធ្វើបច្ចុប្បន្នភាពដោយផ្នែក e // ប្រភេទផ្សេងទៀតចាត់ទុកជាមោឃៈ EPD_xxx_Init(void);
xxx គួរតែត្រូវបានផ្លាស់ប្តូរដោយប្រភេទនៃ e-Paper, ឧទាហរណ៍ample ប្រសិនបើអ្នកប្រើ 2.13inch e-Paper (D) ដើម្បីធ្វើបច្ចុប្បន្នភាពពេញលេញ វាគួរតែ EPD_2IN13D_Init(0) និង EPD_2IN13D_Init(1) សម្រាប់ការអាប់ដេតដោយផ្នែក។
ជម្រះ៖ មុខងារនេះត្រូវបានប្រើដើម្បីសម្អាតការបង្ហាញទៅជាពណ៌ស។
ទុកជាមោឃៈ EPD_xxx_Clear (ចាត់ទុកជាមោឃៈ);
xxx គួរតែត្រូវបានផ្លាស់ប្តូរដោយប្រភេទនៃ e-Paper, ឧទាហរណ៍ample ប្រសិនបើអ្នកប្រើ ePaper 2.9inch (D) វាគួរតែ EPD_2IN9D_Clear();
ផ្ញើទិន្នន័យរូបភាព (ស៊ុមមួយ) ទៅ EPD ហើយបង្ហាញ
// កំណែ Bicolor ចាត់ទុកជាមោឃៈ EPD_xxx_Display(UBYTE * រូបភាព); // កំណែ Tricolor ចាត់ទុកជាមោឃៈ EPD_xxx_Display(const UBYTE *blackimage, const UBYTE *ryimage);
មានប្រភេទជាច្រើនដែលខុសពីអ្នកដទៃ
// ការធ្វើបច្ចុប្បន្នភាពដោយផ្នែកសម្រាប់ 2.13inch e-paper (D), 2.9inch e-paper (D) ទុកជាមោឃៈ EPD_2IN13D_DisplayPart(UBYTE * រូបភាព); ទុកជាមោឃៈ EPD_2IN9D_DisplayPart(UBYTE *រូបភាព);
// សម្រាប់ 2.13inch e-paper V2 ដំបូងអ្នកត្រូវប្រើEPD_xxx_DisplayPartBaseImage ដើម្បីបង្ហាញផ្ទៃខាងក្រោយឋិតិវន្ត ហើយបន្ទាប់មកធ្វើបច្ចុប្បន្នភាពដោយផ្នែកដោយមុខងារ EPD_xxx_Dis playPart() ទុកជាមោឃៈ EPD_2IN13_V2_DisplayPart(UBYTE *Image); ទុកជាមោឃៈ EPD_2IN13_V2_DisplayPartBaseImage(UBYTE *រូបភាព);
បញ្ចូលរបៀបគេង
ទុកជាមោឃៈ EPD_xxx_Sleep (ចាត់ទុកជាមោឃៈ);
ចំណាំ អ្នកគួរតែកំណត់ Hardware ឡើងវិញ ឬប្រើមុខងារ initialize ដើម្បីដាស់ ePaper ពី sleep mode xxx ជាប្រភេទ e-Paper ឧ។ample ប្រសិនបើអ្នកប្រើ 2.13inch e-Paper D វាគួរតែជា EPD_2IN13D_Sleep()។ ចំណុចប្រទាក់កម្មវិធីកម្មវិធី យើងផ្តល់មុខងារ GUI ជាមូលដ្ឋានសម្រាប់ការធ្វើតេស្ត ដូចជាចំណុចទាញ បន្ទាត់ ខ្សែអក្សរជាដើម។ មុខងារ GUI អាចត្រូវបានរកឃើញនៅក្នុងថត៖ RaspberryPi_JetsonNanoclibGUIGUI_Paint.c.h.
ពុម្ពអក្សរដែលប្រើអាចត្រូវបានរកឃើញនៅក្នុងថត៖ RaspberryPi_JetsonNanoclibFonts។
បង្កើតរូបភាពថ្មី អ្នកអាចកំណត់ឈ្មោះរូបភាព ទទឹង កម្ពស់ មុំបង្វិល និងពណ៌។
void Paint_NewImage(UBYTE *image, UWORD Width, UWORD Height, UWORD Rotate, UWOR D Color) ប៉ារ៉ាម៉ែត្រ៖
រូបភាព៖ ឈ្មោះនៃបណ្តុំរូបភាព នេះគឺជាទ្រនិចមួយ; ទទឹង: ទទឹងនៃរូបភាព; កម្ពស់: កម្ពស់នៃរូបភាព; បង្វិល៖ បង្វិលមុំនៃរូបភាព; ពណ៌៖ ពណ៌ដំបូងនៃរូបភាព;
ជ្រើសរើសបណ្តុំរូបភាព៖ អ្នកអាចបង្កើតបណ្តុំរូបភាពច្រើនក្នុងពេលតែមួយ ហើយជ្រើសរើសរូបភាពជាក់លាក់ ហើយគូរដោយមុខងារនេះ។
មោឃៈ Paint_SelectImage(UBYTE *image) ប៉ារ៉ាម៉ែត្រ៖
រូបភាព៖ ឈ្មោះនៃបណ្តុំរូបភាព នេះគឺជាទ្រនិចមួយ;
បង្វិលរូបភាព៖ អ្នកត្រូវកំណត់មុំបង្វិលនៃរូបភាព មុខងារនេះគួរតែត្រូវបានប្រើបន្ទាប់ពី Paint_SelectImage()។ មុំអាចជា 0, 90, 180, ឬ 270 ។
មោឃៈ Paint_SetRotate(UWORD Rotate) ប៉ារ៉ាម៉ែត្រ៖
បង្វិល៖ បង្វិលមុំនៃរូបភាព ប៉ារ៉ាម៉ែត្រអាចជា ROTATE_0, R OTATE_90, ROTATE_180, ROTATE_270។
ចំណាំបន្ទាប់ពីបង្វិលកន្លែងនៃភីកសែលដំបូងគឺខុសគ្នាយើងយក 1.54 អ៊ីញ
e-paper ជាអតីតampលេ
កញ្ចក់រូបភាព៖ មុខងារនេះត្រូវបានប្រើដើម្បីកំណត់កញ្ចក់រូបភាព។
មោឃៈ Paint_SetMirroring(កញ្ចក់ UBYTE) ប៉ារ៉ាម៉ែត្រ៖
កញ្ចក់៖ ប្រភេទកញ្ចក់ ប្រសិនបើរូបភាព ប៉ារ៉ាម៉ែត្រអាចជា MIRROR_NONE, MIR ROR_HORIZONTAL, MIRROR_VERTICAL, MIRROR_ORIGIN។
កំណត់ទីតាំង និងពណ៌របស់ភីកសែល៖ នេះគឺជាមុខងារមូលដ្ឋានរបស់ GUI វាត្រូវបានប្រើដើម្បីកំណត់ទីតាំង និងពណ៌របស់ភីកសែលនៅក្នុងសតិបណ្ដោះអាសន្ន។
មោឃៈ Paint_SetPixel(UWORD Xpoint, UWORD Ypoint, UWORD Color) ប៉ារ៉ាម៉ែត្រ៖
Xpoint៖ តម្លៃអ័ក្ស X នៃចំណុចក្នុងរូបភាព buffer Ypoint៖ តម្លៃអ័ក្ស Y នៃចំនុចក្នុងរូបភាព buffer ពណ៌៖ ពណ៌នៃចំនុច
ការបង្ហាញច្បាស់៖ ដើម្បីកំណត់ពណ៌នៃរូបភាព មុខងារនេះតែងតែត្រូវបានប្រើដើម្បីសម្អាតអេក្រង់។
void Paint_Clear(UWORD Color) ប៉ារ៉ាម៉ែត្រ៖
ពណ៌៖ ពណ៌នៃរូបភាព
ពណ៌នៃបង្អួច៖ មុខងារនេះត្រូវបានប្រើដើម្បីកំណត់ពណ៌នៃបង្អួច វាតែងតែត្រូវបានប្រើប្រាស់សម្រាប់ការអាប់ដេតផ្នែកខ្លះ ដូចជាការបង្ហាញនាឡិកាជាដើម។
void Paint_ClearWindows(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend, UWO RD Color) ប៉ារ៉ាម៉ែត្រ៖
Xpoint៖ តម្លៃអ័ក្ស X នៃចំណុចចាប់ផ្តើមនៅក្នុងសតិបណ្ដោះអាសន្នរូបភាព Ypoint៖ តម្លៃអ័ក្ស Y នៃចំណុចចាប់ផ្តើមនៅក្នុងសតិបណ្ដោះអាសន្នរូបភាព Xend៖ តម្លៃអ័ក្ស X នៃចំណុចបញ្ចប់នៅក្នុងសតិបណ្ដោះអាសន្នរូបភាព Yend៖ នេះ Y- តម្លៃអ័ក្សនៃចំណុចបញ្ចប់នៅក្នុងរូបភាព buffer ពណ៌៖ ពណ៌នៃបង្អួច
ចំណុចគូរ៖ គូរចំណុចមួយនៅទីតាំង X ចំណុច Y នៃរូបភាព
សតិបណ្ដោះអាសន្ន អ្នកអាចកំណត់រចនាសម្ព័ន្ធពណ៌ ទំហំ និងរចនាប័ទ្ម។
មោឃៈ Paint_DrawPoint(UWORD Xpoint, UWORD Ypoint, UWORD Color, DOT_PIXEL Dot_Pix
el, DOT_STYLE Dot_Style)
ប៉ារ៉ាម៉ែត្រ៖
Xpoint: តម្លៃអ័ក្ស X នៃចំណុច។
ចំណុច Y៖ តម្លៃអ័ក្ស Y នៃចំណុច។
ពណ៌៖ ពណ៌នៃចំណុច
Dot_Pixel៖ ទំហំចំណុច 8 ទំហំមាន។
typedef enum {
DOT_PIXEL_1X1 = 1, // 1 x 1
DOT_PIXEL_2X2 ,
// 2 X 2
DOT_PIXEL_3X3 ,
// 3 X 3
DOT_PIXEL_4X4 ,
// 4 X 4
DOT_PIXEL_5X5 ,
// 5 X 5
DOT_PIXEL_6X6 ,
// 6 X 6
DOT_PIXEL_7X7 ,
// 7 X 7
DOT_PIXEL_8X8 ,
// 8 X 8
} DOT_PIXEL;
Dot_Style៖ រចនាប័ទ្មនៃចំណុច កំណត់របៀបពង្រីកនៃចំណុច។
typedef enum {
DOT_FILL_AROUND = 1,
DOT_FILL_RIGHTUP,
} DOT_STYLE;
គូរបន្ទាត់៖ គូរបន្ទាត់ពី (Xstart, Ystart) ទៅ (Xend, Yend) ក្នុងសតិបណ្ដោះអាសន្នរូបភាព អ្នកអាចកំណត់រចនាសម្ព័ន្ធពណ៌ ទទឹង និងរចនាប័ទ្ម។
void Paint_DrawLine(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend, UWORD C
olor, LINE_STYLE Line_Style, LINE_STYLE Line_Style)
ប៉ារ៉ាម៉ែត្រ៖
Xstart: Xstart នៃបន្ទាត់
Ystart: Ystart of the line
Xend: ចុងបន្ទាត់
Yed: Yend នៃបន្ទាត់
ពណ៌៖ ពណ៌នៃបន្ទាត់
Line_width៖ ទទឹងនៃបន្ទាត់ មាន ៨ ទំហំ។
typedef enum {
DOT_PIXEL_1X1 = 1, // 1 x 1
DOT_PIXEL_2X2 ,
// 2 X 2
DOT_PIXEL_3X3 ,
// 3 X 3
DOT_PIXEL_4X4 ,
// 4 X 4
DOT_PIXEL_5X5 ,
// 5 X 5
DOT_PIXEL_6X6 ,
// 6 X 6
DOT_PIXEL_7X7 ,
// 7 X 7
DOT_PIXEL_8X8 ,
// 8 X 8
} DOT_PIXEL;
Line_Style៖ រចនាប័ទ្មនៃបន្ទាត់ រឹង ឬចំនុច។
typedef enum {
LINE_STYLE_SOLID = 0,
LINE_STYLE_DOTTED,
} LINE_STYLE;
គូរចតុកោណកែង៖ គូរចតុកោណកែងពី (Xstart, Ystart) ទៅ (Xend, Yend) អ្នកអាចកំណត់រចនាសម្ព័ន្ធពណ៌ ទទឹង និងរចនាប័ទ្ម។
void Paint_DrawRectangle(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend, UW
ពណ៌ ORD, DOT_PIXEL Line_width, DRAW_FILL Draw_Fill)
ប៉ារ៉ាម៉ែត្រ៖
Xstart: Xstart នៃចតុកោណកែង។
Ystart: Ystart នៃចតុកោណ។
Xend : Xend នៃចតុកោណកែង។
Yend: Yend នៃចតុកោណ។
ពណ៌៖ ពណ៌នៃចតុកោណកែង
Line_width៖ ទទឹងនៃគែម។ 8 ទំហំអាចរកបាន។
typedef enum {
DOT_PIXEL_1X1 = 1, // 1 x 1
DOT_PIXEL_2X2 ,
// 2 X 2
DOT_PIXEL_3X3 ,
// 3 X 3
DOT_PIXEL_4X4 ,
// 4 X 4
DOT_PIXEL_5X5 ,
// 5 X 5
DOT_PIXEL_6X6 ,
// 6 X 6
DOT_PIXEL_7X7 ,
// 7 X 7
DOT_PIXEL_8X8 ,
// 8 X 8
} DOT_PIXEL;
Draw_Fill៖ រចនាប័ទ្មចតុកោណទទេ ឬបំពេញ។
typedef enum {
DRAW_FILL_EMPTY = 0,
DRAW_FILL_FULL,
} DRAW_FILL;
គូររង្វង់៖ គូររង្វង់មួយនៅក្នុងបណ្តុំរូបភាព ប្រើ (X_Center Y_Center) ជាកណ្តាល និងកាំជាកាំ។ អ្នកអាចកំណត់រចនាសម្ព័ន្ធពណ៌ ទទឹងនៃបន្ទាត់ និងរចនាប័ទ្មនៃរង្វង់។
មោឃៈ Paint_DrawCircle(UWORD X_Center, UWORD Y_Center, UWORD Radius, UWORD Colo
r, DOT_PIXEL Line_width, DRAW_FILL Draw_Fill)
ប៉ារ៉ាម៉ែត្រ៖
X_Center៖ អ័ក្ស X នៃមជ្ឈមណ្ឌល
Y_Center៖ អ័ក្ស Y នៃមជ្ឈមណ្ឌល
កាំ៖ កាំនៃរង្វង់
ពណ៌៖ ពណ៌នៃរង្វង់
Line_width៖ ទទឹងនៃធ្នូ ទំហំ 8 មាន។
typedef enum {
DOT_PIXEL_1X1 = 1, // 1 x 1
DOT_PIXEL_2X2 ,
// 2 X 2
DOT_PIXEL_3X3 ,
// 3 X 3
DOT_PIXEL_4X4 ,
// 4 X 4
DOT_PIXEL_5X5 ,
// 5 X 5
DOT_PIXEL_6X6 ,
// 6 X 6
DOT_PIXEL_7X7 ,
// 7 X 7
DOT_PIXEL_8X8 ,
// 8 X 8
} DOT_PIXEL;
Draw_Fill៖ រចនាប័ទ្មរង្វង់៖ ទទេ ឬបំពេញ។
typedef enum {
DRAW_FILL_EMPTY = 0,
DRAW_FILL_FULL,
} DRAW_FILL;
បង្ហាញតួអក្សរ Ascii៖ បង្ហាញតួអក្សរនៅក្នុងទីតាំង (Xstart, Ystart) អ្នកអាចធ្វើបាន
កំណត់រចនាសម្ព័ន្ធពុម្ពអក្សរ ផ្ទៃខាងមុខ និងផ្ទៃខាងក្រោយ។
void Paint_DrawChar(UWORD Xstart, UWORD Ystart, const char Ascii_Char, sFONT* F ont, UWORD Color_Foreground, UWORD Color_Background) ប៉ារ៉ាម៉ែត្រ៖
Xstart: Xstart of the character Ystart: Ystart of the character Ascii_Char: Ascii char ពុម្ពអក្សរ៖ ពុម្ពអក្សរប្រាំគឺអាចប្រើបាន
font8: 5*8 font12: 7*12 font16: 11*16 font20: 14*20 font24: 17*24 Color_Foreground: ពណ៌ផ្ទៃខាងមុខ Color_Background: ពណ៌ផ្ទៃខាងក្រោយ
គូរខ្សែអក្សរ៖ គូរខ្សែអក្សរនៅ (Xstart Ystart) អ្នកអាចកំណត់រចនាសម្ព័ន្ធ
ពុម្ពអក្សរ ផ្ទៃខាងមុខ និងផ្ទៃខាងក្រោយ
void Paint_DrawString_EN(UWORD Xstart, UWORD Ystart, const char * pString, sFON T* Font, UWORD Color_Foreground, UWORD Color_Background) ប៉ារ៉ាម៉ែត្រ៖
Xstart: Xstart of the string Ystart: Ystart of the string pString: String Font: ពុម្ពអក្សរប្រាំគឺអាចប្រើបាន:
font8: 5*8 font12: 7*12 font16: 11*16 font20: 14*20 font24: 17*24 Color_Foreground: ពណ៌ផ្ទៃខាងមុខ Color_Background: ពណ៌ផ្ទៃខាងក្រោយ
គូរខ្សែអក្សរចិន៖ គូរខ្សែអក្សរចិននៅ (Xstart Ystart) នៃរូបភាព
សតិបណ្ដោះអាសន្ន។ អ្នកអាចកំណត់រចនាសម្ព័ន្ធពុម្ពអក្សរ (GB2312) ផ្ទៃខាងមុខ និងផ្ទៃខាងក្រោយ។
ទុកជាមោឃៈ Paint_DrawString_CN(UWORD Xstart, UWORD Ystart, const char * pString, cFON T* font, UWORD Color_Foreground, UWORD Color_Background) ប៉ារ៉ាម៉ែត្រ៖
Xstart: Xstart of string Ystart: Ystart of string pString: string fonts: GB2312 fonts, two fonts are available
font12CN: ascii 11*21Chinese 16*21 font24CN: ascii 24*41Chinese 32*41 Color_Foreground: ពណ៌ផ្ទៃខាងមុខ Color_Background: ពណ៌ផ្ទៃខាងក្រោយ
លេខគូរ៖ គូរលេខនៅ (Xstart Ystart) នៃបណ្តុំរូបភាព។ អ្នកអាច
ជ្រើសរើសពុម្ពអក្សរ ផ្ទៃខាងមុខ និងផ្ទៃខាងក្រោយ។
void Paint_DrawNum(UWORD Xpoint, UWORD Ypoint, int32_t Number, sFONT* Font, UW ORD Color_Foreground, UWORD Color_Background) ប៉ារ៉ាម៉ែត្រ៖
Xstart: Xstart of numbers Ystart: Ystart of numbers Number: លេខបានបង្ហាញ។ វាគាំទ្រប្រភេទ int ហើយ 2147483647 គឺជាពុម្ពអក្សរដែលគាំទ្រអតិបរមា៖ ពុម្ពអក្សរ Ascii ពុម្ពអក្សរចំនួនប្រាំអាចប្រើបាន៖
font8: 5*8 font12: 7*12 font16: 11*16 font20: 14*20 font24: 17*24 Color_Foreground: foreground Color_Background: background
ពេលវេលាបង្ហាញ៖ ពេលវេលាបង្ហាញនៅ (Xstart Ystart) នៃសតិបណ្ដោះអាសន្នរូបភាព អ្នកអាចធ្វើបាន
កំណត់រចនាសម្ព័ន្ធពុម្ពអក្សរ ផ្ទៃខាងមុខ និងផ្ទៃខាងក្រោយ។
មុខងារនេះត្រូវបានប្រើសម្រាប់ការអាប់ដេតដោយផ្នែក។ ចំណាំថា e-Paper ខ្លះមិនមានទេ។
គាំទ្រការអាប់ដេតដោយផ្នែក ហើយអ្នកមិនអាចប្រើការអាប់ដេតដោយផ្នែកគ្រប់ពេលនោះទេ។
នឹងមានបញ្ហាខ្មោច និងបំផ្លាញការបង្ហាញ។
ទុកជាមោឃៈ Paint_DrawTime(UWORD Xstart, UWORD Ystart, PAINT_TIME *pTime, sFONT* Font, UWORD Color_Background, UWORD Color_Foreground) ប៉ារ៉ាម៉ែត្រ៖
Xstart: Xstart of time Ystart: Ystart of time pTime: រចនាសម្ព័ននៃពេលវេលា ពុម្ពអក្សរ៖ ពុម្ពអក្សរ Ascii មានពុម្ពអក្សរចំនួនប្រាំ
font8: 5*8 font12: 7*12 font16: 11*16 font20: 14*20 font24: 17*24 Color_Foreground: foreground Color_Background: background
ធនធាន
Document Schematic 2.9inch e-Paper (B) Specification
កូដសាកល្បង
តំណ Github កូដសាកល្បង
កម្មវិធីអភិវឌ្ឍន៍
Thonny Python IDE (Windows V3.3.3) Zimo221.7z Image2Lcd.7z
Pico Quick Start Download Firmware
MicroPython Firmware Download C_Blink Firmware Download Video Tutorial
[ពង្រីក] [ពង្រីក]Pico Tutorial I - ការណែនាំជាមូលដ្ឋាន
ការបង្រៀន Pico II - GPIO
Pico Tutorial III - PWM
ការបង្រៀន Pico IV - ADC
Pico Tutorial V - UART
Pico Tutorial VI - បន្ត...
ស៊េរី MicroPython
MicroPython machine.Pin Function MicroPython machine.PWM Function MicroPython machine.ADC Function MicroPython machine.UART Function MicroPython machine.I2C Function MicroPython machine.SPI Function MicroPython rp2.StateMachine
ស៊េរី C/C++
ការបង្រៀន C/C++ Windows 1 – ការកំណត់បរិស្ថាន C/C++ Windows Tutorial 1 – បង្កើតគម្រោងថ្មី
Arduino IDE Series ដំឡើង Arduino IDE 1. ទាញយកកញ្ចប់ដំឡើង Arduino IDE ពី Arduino webគេហទំព័រ។
2. គ្រាន់តែចុចលើ "JUST DOWNLOAD" ។
3. ចុចដើម្បីដំឡើងបន្ទាប់ពីទាញយក។
4. ចំណាំ៖ អ្នកនឹងត្រូវបានដាស់តឿនឱ្យដំឡើង Driver កំឡុងពេលដំណើរការដំឡើង យើងអាចចុច Install។
ដំឡើង Arduino-Pico Core លើ Arduino IDE 1. បើក Arduino IDE ចុចគ្រាប់ចុច File នៅជ្រុងខាងឆ្វេងហើយជ្រើសរើស "ចំណូលចិត្ត" ។
2. បន្ថែមតំណខាងក្រោមនៅក្នុងកម្មវិធីគ្រប់គ្រងក្រុមប្រឹក្សាអភិវឌ្ឍន៍បន្ថែម URLបន្ទាប់មកចុចយល់ព្រម។ https://github.com/earlephilhower/arduino-pico/releases/download/globa l/package_rp2040_index.json
ចំណាំ៖ ប្រសិនបើអ្នកមានក្តារ ESP8266 រួចហើយ URLអ្នកអាចបំបែក URLs ជាមួយសញ្ញាក្បៀសដូចនេះ៖
https://dl.espressif.com/dl/package_esp32_index.json,https://github.co m/earlephilhower/arduino-pico/releases/download/global/package_rp2040_ index.json 3. Click on Tools -> Dev Board -> Dev Board Manager -> ស្វែងរក pico, it shows installed since my computer has already installed it.
បង្ហោះសាកល្បងលើកដំបូង
1. ចុចឱ្យជាប់នឹងប៊ូតុង BOOTSET នៅលើបន្ទះ Pico ភ្ជាប់ Pico ទៅនឹងរន្ធ USB របស់កុំព្យូទ័រតាមរយៈខ្សែ Micro USB ហើយលែងប៊ូតុងនៅពេលដែលកុំព្យូទ័រស្គាល់ថាសរឹងចល័ត (RPI-RP2) ។
2. ទាញយកការបង្ហាញ បើកផ្លូវ arduinoPWMD1-LED នៅក្រោម D1LED.ino ។
3. ចុច Tools -> Port ចងចាំ COM ដែលមានស្រាប់ មិនចាំបាច់ចុច COM នេះទេ (កុំព្យូទ័រផ្សេងគ្នាបង្ហាញ COM ផ្សេងគ្នា ចងចាំ COM ដែលមានស្រាប់នៅលើកុំព្យូទ័ររបស់អ្នក)។
4. ភ្ជាប់ Driver board ទៅកុំព្យូទ័រដោយប្រើខ្សែ USB បន្ទាប់មកចុច Tools -> Ports ជ្រើសរើស uf2 Board សម្រាប់ការតភ្ជាប់ដំបូង ហើយបន្ទាប់ពីការអាប់ឡូតបានបញ្ចប់ ការតភ្ជាប់ម្តងទៀតនឹងនាំអោយមានច្រក COM បន្ថែម។
5. ចុច Tool -> Dev Board -> Raspberry Pi Pico/RP2040 -> Raspberry Pi Pico ។
6. បន្ទាប់ពីការកំណត់ សូមចុចព្រួញស្ដាំដើម្បីផ្ទុកឡើង។
ប្រសិនបើអ្នកជួបប្រទះបញ្ហាក្នុងអំឡុងពេលនោះ អ្នកត្រូវដំឡើងឡើងវិញ ឬជំនួសកំណែ Arduino IDE លុប Arduino IDE ចាំបាច់ត្រូវលុបចេញឱ្យស្អាត បន្ទាប់ពីលុបកម្មវិធីអ្នកត្រូវលុបមាតិកាទាំងអស់នៃថត C: Users [name] AppDataLocalArduino15 (អ្នកត្រូវបង្ហាញការលាក់ files ដើម្បីមើលវា) ហើយបន្ទាប់មកដំឡើងឡើងវិញ។ ការបង្រៀនស៊េរី Pico-W (ត្រូវបន្ត...)
ការបង្ហាញប្រភពបើកចំហ
MicroPython Demo (GitHub) MicroPython Firmware/Blink Demo (C) Official Raspberry Pi C/C++ Demo Official Raspberry Pi MicroPython Demo Arduino Official C/C++ Demo
សំណួរគេសួរញឹកញាប់
សំណួរ៖ តើអ្វីជាបរិយាកាសនៃការប្រើប្រាស់អេក្រង់អេឡិចត្រូនិច? ចម្លើយ៖
លក្ខខណ្ឌប្រតិបត្តិការ ជួរសីតុណ្ហភាព: 0 ~ 50 ° C; ជួរសំណើម៖
35% ~ 65% RH ។
លក្ខខណ្ឌផ្ទុក ជួរសីតុណ្ហភាព: ក្រោម 30°C; ជួរសំណើម៖
ក្រោម 55% RH; រយៈពេលផ្ទុកអតិបរមា៖ ៦ ខែ។
លក្ខខណ្ឌដឹកជញ្ជូន ជួរសីតុណ្ហភាព: -25 ~ 70 ° C; អតិបរមា
ពេលវេលាដឹកជញ្ជូន៖ ១០ ថ្ងៃ។
បន្ទាប់ពីស្រាយកញ្ចប់ ជួរសីតុណ្ហភាព: 20°C ± 5°C; ជួរសំណើម៖
50±5%RH; រយៈពេលផ្ទុកអតិបរមា៖ ប្រមូលផ្តុំក្នុងរយៈពេល 72 ម៉ោង។
សំណួរ៖ ការប្រុងប្រយ័ត្នសម្រាប់ការធ្វើឱ្យអេក្រង់អេឡិចត្រូនិចឡើងវិញ? ចម្លើយ៖
របៀបធ្វើឱ្យស្រស់ឡើងវិញពេញលេញ៖ អេក្រង់ទឹកថ្នាំអេឡិចត្រូនិចនឹងភ្លឹបភ្លែតៗជាច្រើនដងក្នុងអំឡុងពេលដំណើរការធ្វើឱ្យស្រស់ (ចំនួននៃការ flickers អាស្រ័យលើពេលវេលាធ្វើឱ្យស្រស់) ហើយការ flicker គឺដើម្បីលុបរូបភាពបន្ទាប់បន្សំ ដើម្បីសម្រេចបាននូវប្រសិទ្ធិភាពនៃការបង្ហាញល្អបំផុត។ ការធ្វើឱ្យស្រស់ដោយផ្នែក៖ អេក្រង់ទឹកថ្នាំអេឡិចត្រូនិចមិនមានឥទ្ធិពលភ្លឹបភ្លែតៗទេ អំឡុងពេលដំណើរការធ្វើឱ្យស្រស់។ អ្នកប្រើប្រាស់ដែលប្រើមុខងារជក់ដោយផ្នែកចំណាំថា បន្ទាប់ពីធ្វើឱ្យស្រស់ច្រើនដង ប្រតិបត្តិការជក់ពេញលេញគួរតែត្រូវបានអនុវត្ត ដើម្បីលុបរូបភាពដែលនៅសេសសល់ចេញ បើមិនដូច្នោះទេ បញ្ហារូបភាពដែលនៅសេសសល់នឹងកាន់តែធ្ងន់ធ្ងរ ឬសូម្បីតែធ្វើឱ្យអេក្រង់ខូច (បច្ចុប្បន្នមានពណ៌ខ្មៅ និង អេក្រង់ e-ink ពណ៌ស គាំទ្រការជក់ដោយផ្នែក សូមមើលការពិពណ៌នាទំព័រផលិតផល)។
អត្រាធ្វើឱ្យស្រស់ ក្នុងអំឡុងពេលប្រើប្រាស់ វាត្រូវបានណែនាំអោយអតិថិជនកំណត់ចន្លោះពេលនៃការធ្វើឱ្យស្រស់នៃអេក្រង់ e-ink យ៉ាងហោចណាស់ 180 វិនាទី (លើកលែងតែផលិតផលដែលគាំទ្រមុខងារជក់ក្នុងតំបន់) កំឡុងពេលដំណើរការរង់ចាំ (នោះគឺបន្ទាប់ពីប្រតិបត្តិការធ្វើឱ្យស្រស់)។ វាត្រូវបានណែនាំថា អតិថិជនកំណត់អេក្រង់ទឹកថ្នាំអេឡិចត្រូនិចទៅជារបៀបគេង ឬបិទដំណើរការ (ផ្នែកផ្គត់ផ្គង់ថាមពលនៃអេក្រង់ទឹកថ្នាំអាចត្រូវបានផ្តាច់ជាមួយនឹងកុងតាក់អាណាឡូក) ដើម្បីកាត់បន្ថយការប្រើប្រាស់ថាមពល និងពន្យារអាយុជីវិតរបស់ទឹកថ្នាំអេឡិចត្រូនិច។ អេក្រង់។ (ប្រសិនបើអេក្រង់ e-ink មួយចំនួនត្រូវបានបើកក្នុងរយៈពេលយូរ អេក្រង់នឹងខូចហួសពីការជួសជុល។ 24 ម៉ោង (ប្រសិនបើអេក្រង់នៅតែអេក្រង់ដដែលក្នុងរយៈពេលយូរ អេក្រង់ឆេះនឹងពិបាកក្នុងការជួសជុល)។
សេណារីយ៉ូនៃការប្រើប្រាស់ អេក្រង់ទឹកថ្នាំអេឡិចត្រូនិចត្រូវបានណែនាំសម្រាប់ការប្រើប្រាស់ក្នុងផ្ទះ។ ប្រសិនបើអ្នកប្រើវានៅខាងក្រៅ អ្នកត្រូវជៀសវាងពន្លឺព្រះអាទិត្យដោយផ្ទាល់នៅលើអេក្រង់ e-ink និងចាត់វិធានការការពារកាំរស្មី UV ក្នុងពេលតែមួយ។ នៅពេលរចនាផលិតផលអេក្រង់ eink អតិថិជនគួរតែយកចិត្តទុកដាក់ក្នុងការកំណត់ថាតើបរិយាកាសប្រើប្រាស់ត្រូវនឹងលក្ខខណ្ឌសីតុណ្ហភាព និងសំណើមនៃអេក្រង់ e-ink ដែរឬទេ។
សំណួរ៖ ភាសាចិនមិនអាចបង្ហាញនៅលើអេក្រង់ e-ink បានទេ? ចម្លើយ៖ បណ្ណាល័យតួអក្សរចិននៃទម្លាប់របស់យើងប្រើវិធីសាស្ត្រអ៊ិនកូដ GB2312 សូមផ្លាស់ប្តូរ xxx_test.c របស់អ្នក file ទៅជាទម្រង់ការអ៊ិនកូដ GB2312 ចងក្រង និងទាញយកវា ហើយបន្ទាប់មកវាអាចត្រូវបានបង្ហាញជាធម្មតា។
សំណួរ៖ បន្ទាប់ពីប្រើអស់មួយរយៈពេល អេក្រង់ Refresh (ពេញអេក្រង់) មានបញ្ហាក្រោយធ្ងន់ធ្ងរដែលមិនអាចជួសជុលបានទេ? ចំលើយ៖ បើកថាមពលនៅលើក្តារអភិវឌ្ឍន៍ក្នុងរយៈពេលយូរ បន្ទាប់ពីប្រតិបត្តិការធ្វើឱ្យស្រស់នីមួយៗ វាត្រូវបានណែនាំឱ្យកំណត់អេក្រង់ទៅជារបៀបគេង ឬបិទដំណើរការដោយផ្ទាល់ បើមិនដូច្នេះទេ អេក្រង់អាចនឹងឆេះនៅពេលអេក្រង់មានវ៉ុលខ្ពស់tage រដ្ឋសម្រាប់រយៈពេលដ៏យូរមួយ។
សំណួរ៖ e-Paper បង្ហាញស៊ុមខ្មៅ? ចម្លើយ៖ ពណ៌បង្ហាញស៊ុមអាចត្រូវបានកំណត់តាមរយៈការចុះឈ្មោះ Border Waveform Control ឬចុះឈ្មោះ VCOM និង DATA INTERVAL SETTING ។
សំណួរ៖ តើអ្វីជាលក្ខណៈជាក់លាក់នៃចំណុចប្រទាក់ខ្សែអេក្រង់? ចម្លើយ៖ ជម្រេ 0.5mm, 24Pin ។
ក្នុងករណីនេះ អតិថិជនត្រូវកាត់បន្ថយទីតាំងនៃជក់មូល ហើយសម្អាតអេក្រង់បន្ទាប់ពីជក់ 5 ជុំ (បង្កើនវ៉ុល។tage នៃ VCOM អាចធ្វើអោយពណ៌ប្រសើរឡើង ប៉ុន្តែវានឹងបង្កើនរូបភាពបន្ទាប់)។
សំណួរ៖ បន្ទាប់ពីអេក្រង់ទឹកថ្នាំចូលទៅក្នុងរបៀបគេងជ្រៅ តើវាអាចត្រូវបានធ្វើឱ្យស្រស់ម្តងទៀតបានទេ? ចម្លើយ៖ បាទ ប៉ុន្តែអ្នកត្រូវចាប់ផ្តើមឡើងវិញនូវក្រដាសអេឡិចត្រូនិចជាមួយកម្មវិធី។
សំណួរ៖ នៅពេលដែល EPD ទំហំ 2.9 អ៊ីងស្ថិតក្នុងរបៀបគេងជ្រៅ ពេលដែលវាភ្ញាក់ឡើងជាលើកដំបូង ការធ្វើឱ្យអេក្រង់ឡើងវិញនឹងមិនស្អាត។ តើខ្ញុំអាចដោះស្រាយវាដោយរបៀបណា? ចម្លើយ៖ ដំណើរការនៃការដាស់អេក្រង់ e-ink ឡើងវិញគឺពិតជាដំណើរការនៃការបើកថាមពលឡើងវិញ ដូច្នេះនៅពេលដែល EPD ភ្ញាក់ឡើង អេក្រង់ត្រូវតែសម្អាតជាមុនសិន ដើម្បីជៀសវាងបាតុភូតក្រោយក្នុងកម្រិតដ៏អស្ចារ្យបំផុត។
សំណួរ៖ តើផលិតផលអេក្រង់ទទេត្រូវបានដឹកជញ្ជូនជាមួយថ្នាំកូតផ្ទៃដែរឬទេ? ចម្លើយ៖ ជាមួយខ្សែភាពយន្ត។
សំណួរ៖ តើ e-Paper មានឧបករណ៍ចាប់សញ្ញាសីតុណ្ហភាពដែលភ្ជាប់មកជាមួយទេ? ចម្លើយ៖ បាទ អ្នកក៏អាចប្រើឧបករណ៍ចាប់សញ្ញាសីតុណ្ហភាព LM75 ខាងក្រៅ IIC pin ផងដែរ។
សំណួរ៖ ពេលសាកល្បងកម្មវិធី តើកម្មវិធីជាប់គាំងលើក្រដាស e-Paper ជាប់រវល់ឬ? ចម្លើយ៖ វាអាចបណ្តាលមកពីកម្មវិធីបញ្ជា spi មិនបានជោគជ័យ 1. ពិនិត្យមើលថាតើខ្សែភ្លើងត្រឹមត្រូវ 2. ពិនិត្យមើលថាតើ spi ត្រូវបានបើក និងថាតើប៉ារ៉ាម៉ែត្រត្រូវបានកំណត់ត្រឹមត្រូវដែរឬទេ (អត្រា spi baud របៀប spi និងប៉ារ៉ាម៉ែត្រផ្សេងទៀត)។
សំណួរ៖ តើអ្វីជាអត្រាធ្វើឱ្យស្រស់/អាយុកាលនៃអេក្រង់ e-ink នេះ? ចម្លើយ៖ តាមឧត្ដមគតិ ជាមួយនឹងការប្រើប្រាស់ធម្មតា វាអាចត្រូវបានធ្វើឱ្យស្រស់ 1,000,000 ដង (1 លានដង) ។
គាំទ្រ
ជំនួយបច្ចេកទេស
ប្រសិនបើអ្នកត្រូវការជំនួយផ្នែកបច្ចេកទេស ឬមានមតិកែលម្អ/ឡើងវិញviewសូមចុចប៊ូតុង បញ្ជូនឥឡូវនេះ ដើម្បីដាក់សំបុត្រ ក្រុមការងារគាំទ្ររបស់យើងនឹងពិនិត្យ និងឆ្លើយតបទៅអ្នកក្នុងរយៈពេល 1 ទៅ 2 ថ្ងៃធ្វើការ។ សូមអធ្យាស្រ័យ ព្រោះយើងខិតខំប្រឹងប្រែងដើម្បីជួយអ្នកក្នុងការដោះស្រាយបញ្ហា។ ម៉ោងធ្វើការ៖ 9 ព្រឹក ដល់ 6 ព្រឹក GMT+8 (ថ្ងៃច័ន្ទ ដល់ សុក្រ)
ដាក់ស្នើឥឡូវនេះ
ឯកសារ/ធនធាន
![]() |
WAVESHARE Pico e-Paper 2.9 B EPD Module សម្រាប់ Raspberry Pi Pico [pdf] ការណែនាំអ្នកប្រើប្រាស់ Pico e-Paper 2.9 B EPD Module សម្រាប់ Raspberry Pi Pico, Pico e-Paper 2.9 B, EPD Module for Raspberry Pi Pico, Module for Raspberry Pi Pico, សម្រាប់ Raspberry Pi Pico, Raspberry Pi Pico, Pi Pico, Pico |