ដំឡើង ARDUINO IDE សម្រាប់ឧបករណ៍បញ្ជា DCC
ការដំឡើង Arduino IDE សម្រាប់ឧបករណ៍បញ្ជា DCC
ជំហាន 1. ការដំឡើងបរិស្ថាន IDE ។ ផ្ទុកបន្ទះ ESP ។
នៅពេលអ្នកដំឡើង Arduino IDE ដំបូង វាគាំទ្រតែបន្ទះដែលមានមូលដ្ឋានលើ ARM ប៉ុណ្ណោះ។ យើងត្រូវបន្ថែមការគាំទ្រសម្រាប់ក្រុមប្រឹក្សាដែលមានមូលដ្ឋានលើ ESP ។ រុករកទៅ File… ចំណូលចិត្ត
វាយបញ្ចូលបន្ទាត់នេះខាងក្រោមទៅក្នុងកម្មវិធីគ្រប់គ្រងក្រុមប្រឹក្សាបន្ថែម URLប្រអប់ S ។ ចំណាំថាមានសញ្ញាគូសនៅក្នុងវា គ្មានចន្លោះ។ http://arduino.esp8266.com/stable/package_esp8266com_index.json,https://dl.espressif.com/dl/package_esp32_index.json
ក៏ធីកប្រអប់ដែលនិយាយថា បង្ហាញ Verbose កំឡុងពេលចងក្រង។ វាផ្តល់ឱ្យយើងនូវព័ត៌មានបន្ថែមប្រសិនបើមានអ្វីមួយបរាជ័យក្នុងអំឡុងពេលចងក្រង។
ចំណាំថាបន្ទាត់ខាងលើបន្ថែមការគាំទ្រសម្រាប់ទាំងឧបករណ៍ esp8266 និង esp32 ថ្មីជាងនេះ។ ខ្សែអក្សរ json ទាំងពីរត្រូវបានបំបែកដោយសញ្ញាក្បៀស។
ឥឡូវជ្រើសរើសក្តារ កំណែ 2.7.4 ពីអ្នកគ្រប់គ្រងក្រុមប្រឹក្សា
ដំឡើងកំណែ 2.7.4 ។ នេះដំណើរការ។ កំណែ 3.0.0 និងខ្ពស់ជាងនេះមិនដំណើរការសម្រាប់គម្រោងនេះទេ។ ឥឡូវនេះ ត្រលប់មកវិញនៅក្នុងម៉ឺនុយឧបករណ៍ ជ្រើសរើសក្តារដែលអ្នកនឹងប្រើ។ សម្រាប់គម្រោងនេះ វានឹងជា nodeMCU 1.0 ឬ WeMos D1R1
នៅទីនេះយើងជ្រើសរើស WeMos D1R1 ។ (ផ្លាស់ប្តូរនេះពីណាណូ)
ជំហាន 2. ការដំឡើងបរិស្ថាន IDE ។ ផ្ទុក ESP8266 Sketch Data Upload add-in។
យើងត្រូវផ្ទុកកម្មវិធីបន្ថែមនេះ ដើម្បីអនុញ្ញាតឱ្យយើងបោះផ្សាយ (ដាក់) ទំព័រ HTML និងផ្សេងៗទៀត files នៅលើឧបករណ៍ ESP ។ ទាំងនេះរស់នៅក្នុងថតទិន្នន័យនៅខាងក្នុងថតគម្រោងរបស់អ្នក។ https://github.com/esp8266/arduino-esp8266fs-plugin/releases
ទៅកាន់ URL ខាងលើ ហើយទាញយក ESP8266FS-0.5.0.zip ។
បង្កើតថតឧបករណ៍នៅក្នុងថត Arduino របស់អ្នក។ ពន្លាមាតិកានៃ zip file ទៅថតឧបករណ៍នេះ។ អ្នកគួរតែបញ្ចប់ជាមួយនេះ;
ហើយជម្រើសម៉ឺនុយថ្មីនឹងបង្ហាញនៅក្រោម ឧបករណ៍...
ប្រសិនបើអ្នកហៅជម្រើសម៉ឺនុយនោះ IDE នឹងផ្ទុកមាតិកានៃថតទិន្នន័យទៅក្តារ។ យល់ព្រម នោះហើយជាបរិស្ថាន IDE ដែលបង្កើតឡើងសម្រាប់ការប្រើប្រាស់ទូទៅ ESP8266 ឥឡូវនេះយើងត្រូវបន្ថែមបណ្ណាល័យមួយចំនួនទៅថត Arduino/Libraries សម្រាប់គម្រោងជាក់លាក់នេះ។
ជំហាន 3. ទាញយកបណ្ណាល័យ និងដំឡើងដោយដៃ។
យើងត្រូវទាញយកបណ្ណាល័យទាំងនេះពី Github ។ https://github.com/me-no-dev/ESPAsyncTCP
ចុចលើលេខកូដ ហើយបន្ទាប់មកទាញយក zip ។ វានឹងទៅកាន់ថតឯកសារទាញយករបស់អ្នក។ ចូលទៅក្នុងការទាញយក ស្វែងរក zip បើកវា ហើយអូសថតមាតិកា "ESPAsyncTCP" ទៅ Arduino/libraries ។
ប្រសិនបើឈ្មោះថតបញ្ចប់ដោយ "-master" បន្ទាប់មកប្តូរឈ្មោះវាដើម្បីយក "-master" ចេញពីចុងបញ្ចប់។
ពោលគឺពីការទាញយក
បើក .zip សម្រាប់ ESPAsyncTCP-master ហើយអូស ESPAsyncTCP-master folder ពីខាងក្នុងវាទៅ Arduino/Libraries
ចំណាំ៖ Arduino/libraries មិនអាចប្រើកំណែ .zip បានទេ អ្នកត្រូវពន្លា (អូស) folder ដែលចង់បាន។ យើងក៏ត្រូវការដែរ។ https://github.com/fmalpartida/New-LiquidCrystal
ទាញយក zip បន្ទាប់មកអូសមាតិការបស់វាទៅ Arduino/libraries ហើយលុប -master ending។
ហើយចុងក្រោយយើងត្រូវការ ArduinoJson-5.13.5.zip ពីតំណខាងក្រោម https://www.arduinolibraries.info/libraries/arduino-json
ទាញយកហើយបន្ទាប់មកអូសមាតិកា zip ទៅ Arduino/libraries
ជំហានទី 4. ដំឡើងបណ្ណាល័យពីរបីបន្ថែមទៀតដោយប្រើកម្មវិធីគ្រប់គ្រងបណ្ណាល័យ Arduino ។
យើងត្រូវការបណ្ណាល័យពីរទៀត ហើយបណ្ណាល័យទាំងនេះបានមកពីកម្មវិធីគ្រប់គ្រងបណ្ណាល័យ Arduino ដែលមានជម្រើសបណ្ណាល័យដែលមានស្រាប់។ ចូលទៅកាន់ឧបករណ៍… គ្រប់គ្រងបណ្ណាល័យ…
ប្រើកំណែ 1.0.3 នៃ Adafruit INA219។ នេះដំណើរការ។
ហើយផងដែរ។
ប្រើកំណែ 2.1.0 នៃ Webរន្ធពី Markus Sattler នេះត្រូវបានសាកល្បង និងដំណើរការ។ ខ្ញុំមិនបានសាកល្បងកំណែក្រោយទេ។
យល់ព្រម នោះហើយជាបណ្ណាល័យទាំងអស់ (ឯកសារយោង) ដែល IDE ត្រូវការចងក្រងគម្រោងនេះ។
ជំហាន 5. ទាញយកគម្រោង ESP_DCC_Controller ពី GitHub ហើយបើកក្នុង IDE ។
ចូលទៅកាន់ GitHub ហើយទាញយក https://github.com/computski/ESP_DCC_controller
ចុចលើប៊ូតុង "លេខកូដ" ពណ៌បៃតង ហើយទាញយក zip ។ បន្ទាប់មកបើក zip file ហើយផ្លាស់ទីមាតិការបស់វាទៅថត Arduino ។ ប្តូរឈ្មោះថតដើម្បីលុប "-main" ដែលបញ្ចប់នៅលើឈ្មោះថត។ អ្នកគួរតែបញ្ចប់ជាមួយនឹងថត ESP_ DCC_ controller នៅក្នុងថត Arduino របស់អ្នក។ វានឹងមាន .INO file, ផ្សេងៗ .H និង .CPP files និងថតទិន្នន័យ។
ចុចពីរដងលើ .INO file ដើម្បីបើកគម្រោងក្នុង Arduino IDE ។
មុនពេលយើងវាយ Compile យើងត្រូវកំណត់រចនាសម្ព័ន្ធតាមតម្រូវការរបស់អ្នក…
ជំហានទី 6. កំណត់តម្រូវការរបស់អ្នកនៅក្នុងសកល។ h
គម្រោងនេះអាចគាំទ្រ nodeMCU ឬ WeMo's D1R1 ហើយវាក៏អាចគាំទ្រជម្រើសបន្ទះថាមពលផ្សេងៗគ្នា (motor Shield) ជាច្រើន បូករួមទាំងវាអាចគាំទ្រឧបករណ៍នៅលើឡានក្រុង I2C ដូចជាម៉ូនីទ័របច្ចុប្បន្ន អេក្រង់ LCD និងក្តារចុច។ ហើយចុងក្រោយ វាក៏អាចទ្រទ្រង់ការរត់កង់ (jogwheel) ផងដែរ។ ការស្ថាបនាជាមូលដ្ឋានបំផុតដែលអ្នកអាចធ្វើបានគឺខែលការពារម៉ូទ័រ D1R1 និង L298 របស់ WeMo ។
ចំណាំ វិធីងាយស្រួលបំផុតដើម្បីបិទជម្រើសគឺបន្ថែមអក្សរតូច n នៅពីមុខឈ្មោះរបស់វានៅក្នុង #define statement។
#កំណត់ nNODEMCU_OPTION3
#កំណត់ nBOARD_ESP12_SHIELD
#កំណត់ WEMOS_D1R1_AND_L298_SHIELD
សម្រាប់អតីតample ខាងលើ NODEMCU_OPTION3 ត្រូវបានបិទជាមួយ n ដូចគ្នាសម្រាប់ nBOARD_ESP12_SHIELD។ WEMOS_D1R1_AND_L298_SHIELD គឺជាជម្រើសសកម្ម ហើយវានឹងបណ្តាលឱ្យអ្នកចងក្រងប្រើការកំណត់រចនាសម្ព័ន្ធសម្រាប់វាដូចដែលបានរាយខាងក្រោមចុះក្រោម។
ដើម្បីដើរតាមការកំណត់នេះ៖
#elif កំណត់ (WEMOS_D1R1_AND_L298_SHIELD)
/* Wemos D1-R1 ជង់ជាមួយប្រឡោះ L298 សូមចំណាំថា D1-R2 គឺជាម៉ូដែលថ្មីជាងដែលមាន pinouts ខុសៗគ្នា*/
/* កាត់អ្នកលោតហ្វ្រាំងនៅលើខែល L298 ។ ទាំងនេះមិនត្រូវបានទាមទារទេ ហើយយើងមិនចង់ឱ្យពួកវាត្រូវបានជំរុញដោយម្ជុល I2C ព្រោះវានឹងធ្វើឱ្យខូចសញ្ញា DCC ។
បន្ទះមានកត្តាទម្រង់ Arduino ម្ជុលមានដូចខាងក្រោម
D0 GPIO3 RX
D1 GPIO1 TX
D2 GPIO16 ចង្វាក់បេះដូង និងប៊ូតុងរុញ (សកម្ម សួស្តី)
D3 GPIO5 DCC បើក (pwm)
D4 GPIO4 Jog1
សញ្ញា D5 GPIO14 DCC (dir)
សញ្ញា D6 GPIO12 DCC (dir)
D7 GPIO13 DCC បើក (pwm)
D8 GPIO0 SDA ជាមួយនឹងការទាញឡើង 12k
D9 GPIO2 SCL ជាមួយនឹងការទាញ 12k
D10 GPIO15 Jog2
ខាងលើគឺជាកំណត់ចំណាំសម្រាប់មនុស្ស អនុញ្ញាតឱ្យអ្នកដឹងថា ESP GPIOs នឹងអនុវត្តមុខងារមួយណា។ ចំណាំថា ការគូសផែនទី Arduino D1-D10 ទៅ GPIO គឺខុសគ្នាទៅនឹងការគូសវាស MCU D1-D10 ទៅ GPIO */
#កំណត់ USE_ANALOG_MEASUREMENT
#define ANALOG_SCALING 3.9 // នៅពេលប្រើ A និង B ស្របគ្នា (2.36 ដើម្បីផ្គូផ្គង multimeter RMS)
យើងនឹងប្រើ AD នៅលើ ESP ហើយមិនមែនជាឧបករណ៍ត្រួតពិនិត្យបច្ចុប្បន្ន I2C ខាងក្រៅដូចជា INA219 បិទទេ
នេះជាមួយ n USE_ ANALOG_ MEASUREMENT ប្រសិនបើអ្នកចង់ប្រើ INA219
#កំណត់ PIN_HEARTBEAT 16 // និងប៊ូតុងរុញ
#កំណត់ DCC_PINS \
uint32 dcc_info[4] = { PERIPHS_IO_MUX_MTDI_U, FUNC_GPIO12, 12 , 0 }; \
uint32 enable_info[4] = { PERIPHS_IO_MUX_MTDI_U, FUNC_GPIO5, 5 , 0 }; \
uint32 dcc_infoA[4] = { PERIPHS_IO_MUX_MTDI_U, FUNC_GPIO14, 14 , 0 }; \
uint32 enable_infoA[4] = { PERIPHS_IO_MUX_MTDI_U, FUNC_GPIO13,13 , 0 };
កំណត់ម្ជុលណាដែលនឹងជំរុញសញ្ញា DCC យើងមានឆានែលពីរដែលដំណើរការក្នុងដំណាក់កាល ដូច្នេះយើងអាចប្រើពួកវារួមគ្នា។ A-channel គឺ dcc_ info [] ហើយ B-channel គឺ dcc_ info A [] ។ ទាំងនេះត្រូវបានកំណត់ថាជាម៉ាក្រូ ហើយសញ្ញាសម្គាល់ខាងក្រោយគឺជាសញ្ញាសម្គាល់បន្តបន្ទាត់។
#define PIN_SCL 2 // 12k ទាញឡើង
#កំណត់ PIN_SDA 0 // 12k ទាញឡើង
#កំណត់ PIN_JOG1 ៤
#define PIN_JOG2 15 // 12k ទាញចុះ
កំណត់ម្ជុល (GPIOs) ដែលជំរុញ I2C SCL/SDA ហើយបន្ទាប់មកក៏ jogwheel បញ្ចូល 1 និង 2
#កំណត់ KEYPAD_ADDRESS 0x21 //pcf8574
ប្រើសម្រាប់បន្ទះចុចម៉ាទ្រីស 4 x 4 ជាជម្រើស ដែលត្រូវបានស្កេនដោយប្រើបន្ទះឈីប pcf8574
// addr, en,rw,rs,d4,d5,d6,d7, backlight, polarity ។ យើងកំពុងប្រើវាជាឧបករណ៍ 4 ប៊ីត // ការបង្ហាញ pinout របស់ខ្ញុំគឺ rs, rw, e, d0-d7 ។ មានតែ d <4-7> ប៉ុណ្ណោះដែលត្រូវបានប្រើប្រាស់។ <210> លេចឡើងដោយសារតែប៊ីត <012> ត្រូវបាន // គូសផែនទីជា EN, RW, RS ហើយយើងត្រូវតម្រៀបពួកវាឡើងវិញតាមលំដាប់ជាក់ស្តែងនៅលើផ្នែករឹង 3 ត្រូវបានគូសវាស // ទៅអំពូល Backlight ។ <4-7> បង្ហាញនៅក្នុងលំដាប់នោះនៅលើកាបូបស្ពាយ និងនៅលើការបង្ហាញ។
#កំណត់ BOOTUP_LCD LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, វិជ្ជមាន); // កាបូបស្ពាយ YwRobot
ប្រើដើម្បីកំណត់ និងកំណត់រចនាសម្ព័ន្ធកាបូបស្ពាយ I2C ដែលជំរុញអេក្រង់ LCD 1602 (ជាជម្រើស) នេះអាចកំណត់រចនាសម្ព័ន្ធបានទន់ ហើយមានកាបូបស្ពាយជាច្រើនដែលអាចប្រើបាន ដែលការកំណត់រចនាសម្ព័ន្ធម្ជុលខុសគ្នា។
#endif
ជំហានទី 7. ចងក្រង និងផ្ទុកឡើងលើក្តារ។
ឥឡូវនេះអ្នកបានកំណត់រចនាសម្ព័ន្ធក្ដារលាយដែលអ្នកចង់ប្រើ អ្នកអាចចងក្រងគម្រោងបាន។ ប្រសិនបើអ្នកមិនមានបំណងប្រើបន្ទះចុចម៉ាទ្រីស 4×4 និង LCD ទេ គ្មានបញ្ហាទេ សូមទុកនៅក្នុងនិយមន័យរបស់ពួកគេ ដូចដែលកម្មវិធីរំពឹងថានឹងកំណត់រចនាសម្ព័ន្ធពួកគេ។ ប្រព័ន្ធនឹងដំណើរការល្អនៅលើវ៉ាយហ្វាយដោយគ្មានពួកគេ។
នៅលើ IDE និមិត្តសញ្ញាធីក (ផ្ទៀងផ្ទាត់) គឺពិតជា "ចងក្រង" ។ ចុចវា ហើយអ្នកនឹងឃើញសារផ្សេងៗលេចឡើង (ផ្តល់ឱ្យអ្នកបើកការចងក្រង Verbose) នៅពេលដែលប្រព័ន្ធចងក្រងបណ្ណាល័យផ្សេងៗ ហើយភ្ជាប់វាជាមួយគ្នា។ ប្រសិនបើអ្វីៗដំណើរការបានល្អ ហើយវាគួរតែប្រសិនបើអ្នកធ្វើតាមជំហានទាំងអស់ខាងលើយ៉ាងពិតប្រាកដ នោះអ្នកគួរតែឃើញសារជោគជ័យលេចឡើង។ ឥឡូវនេះអ្នកត្រៀមខ្លួនរួចរាល់ហើយដើម្បីចុចប៊ូតុងព្រួញស្ដាំ (ផ្ទុកឡើង) ប៉ុន្តែមុនពេលអ្នកធ្វើដូច្នេះ សូមពិនិត្យមើលថាអ្នកបានជ្រើសរើសច្រក COM ត្រឹមត្រូវសម្រាប់ក្តារក្រោមម៉ឺនុយឧបករណ៍។
បន្ទាប់ពីការផ្ទុកឡើងដោយជោគជ័យ (ប្រើខ្សែ USB ដែលមានគុណភាពល្អ) អ្នកក៏ត្រូវហៅវាដែរ។ ផ្ទុកម៉ឺនុយទិន្នន័យគ្រោង ESP8266 ជម្រើសនៅក្រោមឧបករណ៍។ វានឹងដាក់មាតិកានៃថតទិន្នន័យនៅលើឧបករណ៍ (ទំព័រ HTML ទាំងអស់) ។
អ្នកបានធ្វើរួច។ បើកម៉ូនីទ័រសៀរៀល ចុចប៊ូតុងកំណត់ឡើងវិញ ហើយអ្នកគួរតែឃើញឧបករណ៍ចាប់ផ្ដើម ហើយស្កេនរកឧបករណ៍ I2C។ ឥឡូវនេះ អ្នកអាចភ្ជាប់វាតាមរយៈ Wifi ហើយវារួចរាល់ដើម្បីភ្ជាប់ទៅបន្ទះថាមពលរបស់វា (របាំងការពារ)។
ឯកសារ/ធនធាន
![]() |
ដំឡើង ARDUINO IDE សម្រាប់ឧបករណ៍បញ្ជា DCC [pdf] សេចក្តីណែនាំ ដំឡើង IDE សម្រាប់ឧបករណ៍បញ្ជា DCC, ដំឡើង IDE, ដំឡើងសម្រាប់ឧបករណ៍បញ្ជា DCC, ដំឡើងឧបករណ៍បញ្ជា DCC, ឧបករណ៍បញ្ជា DCC |