DCC ਕੰਟਰੋਲਰ ਲਈ ARDUINO IDE ਸੈਟ ਅਪ 

ARDUINO IDE ਲੋਗੋ

DCC ਕੰਟਰੋਲਰ ਲਈ Arduino IDE ਸੈੱਟ-ਅੱਪ

ਕਦਮ 1. IDE ਵਾਤਾਵਰਣ ਸੈੱਟ-ਅੱਪ। ESP ਬੋਰਡ ਲੋਡ ਕਰੋ।

ਜਦੋਂ ਤੁਸੀਂ ਪਹਿਲੀ ਵਾਰ Arduino IDE ਨੂੰ ਇੰਸਟਾਲ ਕਰਦੇ ਹੋ, ਤਾਂ ਇਹ ਸਿਰਫ਼ ARM ਆਧਾਰਿਤ ਬੋਰਡਾਂ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। ਸਾਨੂੰ ESP ਆਧਾਰਿਤ ਬੋਰਡਾਂ ਲਈ ਸਮਰਥਨ ਜੋੜਨ ਦੀ ਲੋੜ ਹੈ। 'ਤੇ ਨੈਵੀਗੇਟ ਕਰੋ File… ਤਰਜੀਹਾਂ

IDE ਵਾਤਾਵਰਣ ਸੈੱਟ-ਅੱਪ। ESP ਬੋਰਡ ਲੋਡ ਕਰੋ
IDE ਵਾਤਾਵਰਣ ਸੈੱਟ-ਅੱਪ। ESP ਬੋਰਡ ਲੋਡ ਕਰੋ

ਇਸ ਲਾਈਨ ਨੂੰ ਹੇਠਾਂ ਵਧੀਕ ਬੋਰਡ ਮੈਨੇਜਰ ਵਿੱਚ ਟਾਈਪ ਕਰੋ URLਐੱਸ ਬਾਕਸ। ਨੋਟ ਕਰੋ ਕਿ ਇਸ ਵਿੱਚ ਅੰਡਰਸਕੋਰ ਹਨ, ਕੋਈ ਖਾਲੀ ਥਾਂ ਨਹੀਂ ਹੈ।  http://arduino.esp8266.com/stable/package_esp8266com_index.json,https://dl.espressif.com/dl/package_esp32_index.json
ਕੰਪਾਈਲੇਸ਼ਨ ਦੌਰਾਨ ਵਰਬੋਜ਼ ਦਿਖਾਓ ਕਹਿਣ ਵਾਲੇ ਬਾਕਸ ਨੂੰ ਵੀ ਚੈੱਕ ਕਰੋ। ਇਹ ਸਾਨੂੰ ਹੋਰ ਜਾਣਕਾਰੀ ਦਿੰਦਾ ਹੈ ਜੇਕਰ ਸੰਕਲਨ ਦੌਰਾਨ ਕੁਝ ਅਸਫਲ ਹੋ ਜਾਂਦਾ ਹੈ।

ਨੋਟ ਕਰੋ ਕਿ ਉੱਪਰਲੀ ਲਾਈਨ esp8266 ਡਿਵਾਈਸਾਂ ਅਤੇ ਨਵੇਂ esp32 ਦੋਵਾਂ ਲਈ ਸਮਰਥਨ ਜੋੜਦੀ ਹੈ। ਦੋ json ਸਤਰਾਂ ਨੂੰ ਇੱਕ ਕੌਮੇ ਨਾਲ ਵੱਖ ਕੀਤਾ ਗਿਆ ਹੈ।
ਹੁਣ ਬੋਰਡ ਚੁਣੋ ਸੰਸਕਰਣ 2.7.4 ਬੋਰਡ ਮੈਨੇਜਰ ਤੋਂ

DCC ਕੰਟਰੋਲਰ ਲਈ Arduino IDE ਸੈੱਟ-ਅੱਪ

ਵਰਜਨ 2.7.4 ਇੰਸਟਾਲ ਕਰੋ। ਇਹ ਕੰਮ ਕਰਦਾ ਹੈ. ਵਰਜਨ 3.0.0 ਅਤੇ ਇਸ ਤੋਂ ਉੱਚਾ ਇਸ ਪ੍ਰੋਜੈਕਟ ਲਈ ਕੰਮ ਨਹੀਂ ਕਰਦਾ ਹੈ। ਹੁਣ, ਟੂਲਸ ਮੀਨੂ ਵਿੱਚ ਵਾਪਸ, ਉਹ ਬੋਰਡ ਚੁਣੋ ਜਿਸਦੀ ਤੁਸੀਂ ਵਰਤੋਂ ਕਰੋਗੇ। ਇਸ ਪ੍ਰੋਜੈਕਟ ਲਈ ਇਹ ਜਾਂ ਤਾਂ ਇੱਕ nodeMCU 1.0 ਜਾਂ ਇੱਕ WeMos D1R1 ਹੋਵੇਗਾ

DCC ਕੰਟਰੋਲਰ ਲਈ Arduino IDE ਸੈੱਟ-ਅੱਪ

ਇੱਥੇ ਅਸੀਂ WeMos D1R1 ਨੂੰ ਚੁਣਦੇ ਹਾਂ। (ਇਸ ਨੂੰ ਨੈਨੋ ਤੋਂ ਬਦਲਣਾ)

ਕਦਮ 2. IDE ਵਾਤਾਵਰਣ ਸੈੱਟ-ਅੱਪ। ESP8266 ਸਕੈਚ ਡਾਟਾ ਅੱਪਲੋਡ ਐਡ-ਇਨ ਲੋਡ ਕਰੋ।

ਸਾਨੂੰ ਇਸ ਐਡ-ਇਨ ਨੂੰ ਲੋਡ ਕਰਨ ਦੀ ਲੋੜ ਹੈ ਤਾਂ ਜੋ ਅਸੀਂ HTML ਪੰਨਿਆਂ ਅਤੇ ਹੋਰਾਂ ਨੂੰ ਪ੍ਰਕਾਸ਼ਿਤ ਕਰ ਸਕੀਏ fileESP ਡਿਵਾਈਸ 'ਤੇ s. ਇਹ ਤੁਹਾਡੇ ਪ੍ਰੋਜੈਕਟ ਫੋਲਡਰ ਦੇ ਅੰਦਰ ਡੇਟਾ ਫੋਲਡਰ ਵਿੱਚ ਰਹਿੰਦੇ ਹਨ https://github.com/esp8266/arduino-esp8266fs-plugin/releases
'ਤੇ ਜਾਓ URL ਉੱਪਰ ਅਤੇ ESP8266FS-0.5.0.zip ਨੂੰ ਡਾਊਨਲੋਡ ਕਰੋ।
ਆਪਣੇ Arduino ਫੋਲਡਰ ਦੇ ਅੰਦਰ ਇੱਕ ਟੂਲ ਫੋਲਡਰ ਬਣਾਓ। ਜ਼ਿਪ ਦੀ ਸਮੱਗਰੀ ਨੂੰ ਅਨਜ਼ਿਪ ਕਰੋ file ਇਸ ਟੂਲ ਫੋਲਡਰ ਵਿੱਚ. ਤੁਹਾਨੂੰ ਇਸ ਦੇ ਨਾਲ ਖਤਮ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ;

DCC ਕੰਟਰੋਲਰ ਲਈ Arduino IDE ਸੈੱਟ-ਅੱਪ

ਅਤੇ ਟੂਲਸ ਦੇ ਹੇਠਾਂ ਇੱਕ ਨਵਾਂ ਮੀਨੂ ਵਿਕਲਪ ਦਿਖਾਈ ਦੇਵੇਗਾ ...

DCC ਕੰਟਰੋਲਰ ਲਈ Arduino IDE ਸੈੱਟ-ਅੱਪ

ਜੇਕਰ ਤੁਸੀਂ ਉਸ ਮੀਨੂ ਵਿਕਲਪ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋ, ਤਾਂ IDE ਡਾਟਾ ਫੋਲਡਰ ਦੀ ਸਮੱਗਰੀ ਨੂੰ ਬੋਰਡ 'ਤੇ ਅੱਪਲੋਡ ਕਰੇਗਾ। ਠੀਕ ਹੈ ਤਾਂ ਕਿ ਇਹ IDE ਵਾਤਾਵਰਨ ਆਮ ESP8266 ਵਰਤੋਂ ਲਈ ਸਥਾਪਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਹੁਣ ਸਾਨੂੰ ਇਸ ਖਾਸ ਪ੍ਰੋਜੈਕਟ ਲਈ Arduino/Libraries ਫੋਲਡਰ ਵਿੱਚ ਕੁਝ ਲਾਇਬ੍ਰੇਰੀਆਂ ਜੋੜਨ ਦੀ ਲੋੜ ਹੈ।

ਕਦਮ 3. ਲਾਇਬ੍ਰੇਰੀਆਂ ਨੂੰ ਡਾਊਨਲੋਡ ਕਰੋ ਅਤੇ ਹੱਥੀਂ ਇੰਸਟਾਲ ਕਰੋ।

ਸਾਨੂੰ ਇਹਨਾਂ ਲਾਇਬ੍ਰੇਰੀਆਂ ਨੂੰ ਗਿਥਬ ਤੋਂ ਡਾਊਨਲੋਡ ਕਰਨ ਦੀ ਲੋੜ ਹੈ; https://github.com/me-no-dev/ESPAsyncTCP

DCC ਕੰਟਰੋਲਰ ਲਈ Arduino IDE ਸੈੱਟ-ਅੱਪ

ਕੋਡ 'ਤੇ ਕਲਿੱਕ ਕਰੋ, ਅਤੇ ਫਿਰ ਜ਼ਿਪ ਡਾਊਨਲੋਡ ਕਰੋ। ਇਹ ਤੁਹਾਡੇ ਡਾਊਨਲੋਡ ਫੋਲਡਰ ਵਿੱਚ ਜਾਵੇਗਾ। ਡਾਉਨਲੋਡਸ ਵਿੱਚ ਜਾਓ, ਜ਼ਿਪ ਲੱਭੋ, ਇਸਨੂੰ ਖੋਲ੍ਹੋ ਅਤੇ ਸਮੱਗਰੀ ਫੋਲਡਰ “ESPAsyncTCP” ਨੂੰ Arduino/ਲਾਈਬ੍ਰੇਰੀਆਂ ਵਿੱਚ ਖਿੱਚੋ।
ਜੇਕਰ ਫੋਲਡਰ ਦਾ ਨਾਮ “-master” ਨਾਲ ਖਤਮ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਅੰਤ ਤੋਂ “-master” ਨੂੰ ਹਟਾਉਣ ਲਈ ਇਸਦਾ ਨਾਮ ਬਦਲੋ।
ਭਾਵ ਡਾਊਨਲੋਡ ਤੋਂ

DCC ਕੰਟਰੋਲਰ ਲਈ Arduino IDE ਸੈੱਟ-ਅੱਪ

ESPAsyncTCP-master ਲਈ .zip ਖੋਲ੍ਹੋ, ਅਤੇ ESPAsyncTCP-ਮਾਸਟਰ ਫੋਲਡਰ ਨੂੰ ਇਸ ਦੇ ਅੰਦਰੋਂ Arduino/Libraries ਤੱਕ ਖਿੱਚੋ।

DCC ਕੰਟਰੋਲਰ ਲਈ Arduino IDE ਸੈੱਟ-ਅੱਪ

ਨੋਟ: Arduino/ਲਾਈਬ੍ਰੇਰੀਆਂ .zip ਸੰਸਕਰਣ ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕਰ ਸਕਦੀਆਂ, ਤੁਹਾਨੂੰ ਲੋੜੀਂਦੇ ਫੋਲਡਰ ਨੂੰ ਅਨਜ਼ਿਪ (ਡਰੈਗ) ਕਰਨ ਦੀ ਲੋੜ ਹੈ। ਸਾਨੂੰ ਵੀ ਚਾਹੀਦਾ ਹੈ https://github.com/fmalpartida/New-LiquidCrystal
ਜ਼ਿਪ ਨੂੰ ਡਾਉਨਲੋਡ ਕਰੋ ਫਿਰ ਇਸਦੀ ਸਮੱਗਰੀ ਨੂੰ Arduino/ਲਾਇਬ੍ਰੇਰੀਆਂ ਵਿੱਚ ਖਿੱਚੋ ਅਤੇ -master ਅੰਤ ਨੂੰ ਹਟਾਓ।

ਅਤੇ ਅੰਤ ਵਿੱਚ, ਸਾਨੂੰ ਹੇਠਾਂ ਦਿੱਤੇ ਲਿੰਕ ਤੋਂ ArduinoJson-5.13.5.zip ਦੀ ਲੋੜ ਹੈ https://www.arduinolibraries.info/libraries/arduino-json

ਡਾਉਨਲੋਡ ਕਰੋ ਅਤੇ ਫਿਰ ਜ਼ਿਪ ਸਮੱਗਰੀ ਨੂੰ Arduino/ਲਾਇਬ੍ਰੇਰੀਆਂ ਵਿੱਚ ਖਿੱਚੋ

ਕਦਮ 4. Arduino ਲਾਇਬ੍ਰੇਰੀ ਮੈਨੇਜਰ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਕੁਝ ਹੋਰ ਲਾਇਬ੍ਰੇਰੀਆਂ ਸਥਾਪਿਤ ਕਰੋ।

ਸਾਨੂੰ ਦੋ ਹੋਰ ਲਾਇਬ੍ਰੇਰੀਆਂ ਦੀ ਲੋੜ ਹੈ, ਅਤੇ ਇਹ ਅਰਡਿਨੋ ਲਾਇਬ੍ਰੇਰੀ ਮੈਨੇਜਰ ਤੋਂ ਆਉਂਦੀਆਂ ਹਨ ਜੋ ਬਿਲਟ-ਇਨ ਲਾਇਬ੍ਰੇਰੀਆਂ ਦੀ ਚੋਣ ਰੱਖਦਾ ਹੈ। ਟੂਲਸ 'ਤੇ ਜਾਓ... ਲਾਇਬ੍ਰੇਰੀਆਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰੋ...

DCC ਕੰਟਰੋਲਰ ਲਈ Arduino IDE ਸੈੱਟ-ਅੱਪ
DCC ਕੰਟਰੋਲਰ ਲਈ Arduino IDE ਸੈੱਟ-ਅੱਪ

Adafruit INA1.0.3 ਦੇ ਸੰਸਕਰਣ 219 ਦੀ ਵਰਤੋਂ ਕਰੋ। ਇਹ ਕੰਮ ਕਰਦਾ ਹੈ. 

ਅਤੇ ਇਹ ਵੀ

DCC ਕੰਟਰੋਲਰ ਲਈ Arduino IDE ਸੈੱਟ-ਅੱਪ

ਦਾ ਵਰਜਨ 2.1.0 ਵਰਤੋ Webਮਾਰਕਸ ਸੈਟਲਰ ਤੋਂ ਸਾਕਟ, ਇਹ ਟੈਸਟ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ ਕੰਮ ਕਰ ਰਿਹਾ ਹੈ. ਮੈਂ ਬਾਅਦ ਦੇ ਸੰਸਕਰਣਾਂ ਦੀ ਜਾਂਚ ਨਹੀਂ ਕੀਤੀ ਹੈ।
ਠੀਕ ਹੈ ਤਾਂ ਕਿ ਉਹ ਸਾਰੀਆਂ ਲਾਇਬ੍ਰੇਰੀਆਂ (ਉਰਫ਼ ਹਵਾਲੇ) ਹਨ ਜਿਨ੍ਹਾਂ ਦੀ IDE ਨੂੰ ਇਸ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਕੰਪਾਇਲ ਕਰਨ ਦੀ ਲੋੜ ਹੈ।

ਕਦਮ 5. GitHub ਤੋਂ ESP_DCC_Controller ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਡਾਊਨਲੋਡ ਕਰੋ ਅਤੇ IDE ਵਿੱਚ ਖੋਲ੍ਹੋ।

GitHub 'ਤੇ ਜਾਓ ਅਤੇ ਡਾਊਨਲੋਡ ਕਰੋ https://github.com/computski/ESP_DCC_controller

ਹਰੇ "ਕੋਡ" ਬਟਨ 'ਤੇ ਕਲਿੱਕ ਕਰੋ, ਅਤੇ ਜ਼ਿਪ ਨੂੰ ਡਾਊਨਲੋਡ ਕਰੋ। ਫਿਰ ਜ਼ਿਪ ਖੋਲ੍ਹੋ file ਅਤੇ ਇਸਦੀ ਸਮੱਗਰੀ ਨੂੰ Arduino ਫੋਲਡਰ ਵਿੱਚ ਭੇਜੋ। ਫੋਲਡਰ ਦੇ ਨਾਮ ਦੇ ਅੰਤ ਵਿੱਚ "-main" ਨੂੰ ਹਟਾਉਣ ਲਈ ਫੋਲਡਰ ਦਾ ਨਾਮ ਬਦਲੋ। ਤੁਹਾਨੂੰ ਆਪਣੇ Arduino ਫੋਲਡਰ ਵਿੱਚ ਇੱਕ ਫੋਲਡਰ ESP_ DCC_ ਕੰਟਰੋਲਰ ਨਾਲ ਖਤਮ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ। ਇਸ ਵਿੱਚ ਇੱਕ .INO ਸ਼ਾਮਲ ਹੋਵੇਗਾ file, ਵੱਖ-ਵੱਖ .H ਅਤੇ .CPP files ਅਤੇ ਇੱਕ ਡਾਟਾ ਫੋਲਡਰ.

DCC ਕੰਟਰੋਲਰ ਲਈ Arduino IDE ਸੈੱਟ-ਅੱਪ

.INO 'ਤੇ ਡਬਲ ਕਲਿੱਕ ਕਰੋ file Arduino IDE ਵਿੱਚ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਖੋਲ੍ਹਣ ਲਈ।
ਇਸ ਤੋਂ ਪਹਿਲਾਂ ਕਿ ਅਸੀਂ ਕੰਪਾਇਲ ਨੂੰ ਹਿੱਟ ਕਰੀਏ, ਸਾਨੂੰ ਤੁਹਾਡੀਆਂ ਜ਼ਰੂਰਤਾਂ ਨੂੰ ਸੰਰਚਿਤ ਕਰਨ ਦੀ ਲੋੜ ਹੈ...

ਕਦਮ 6. ਗਲੋਬਲ ਵਿੱਚ ਆਪਣੀਆਂ ਲੋੜਾਂ ਸੈੱਟ ਕਰੋ। h

ਇਹ ਪ੍ਰੋਜੈਕਟ nodeMCU ਜਾਂ WeMo ਦੇ D1R1 ਦਾ ਸਮਰਥਨ ਕਰ ਸਕਦਾ ਹੈ ਅਤੇ ਇਹ ਕਈ ਵੱਖ-ਵੱਖ ਪਾਵਰ ਬੋਰਡ (ਮੋਟਰ ਸ਼ੀਲਡ) ਵਿਕਲਪਾਂ ਦਾ ਸਮਰਥਨ ਵੀ ਕਰ ਸਕਦਾ ਹੈ, ਨਾਲ ਹੀ ਇਹ ਮੌਜੂਦਾ ਮਾਨੀਟਰ, LCD ਡਿਸਪਲੇ ਅਤੇ ਕੀਪੈਡ ਵਰਗੇ I2C ਬੱਸ 'ਤੇ ਡਿਵਾਈਸਾਂ ਦਾ ਸਮਰਥਨ ਕਰ ਸਕਦਾ ਹੈ। ਅਤੇ ਅੰਤ ਵਿੱਚ ਇਹ ਇੱਕ ਜੌਗਵ੍ਹੀਲ (ਰੋਟਰੀ ਏਨਕੋਡਰ) ਦਾ ਵੀ ਸਮਰਥਨ ਕਰ ਸਕਦਾ ਹੈ। ਸਭ ਤੋਂ ਬੁਨਿਆਦੀ ਬਿਲਡ ਜੋ ਤੁਸੀਂ ਕਰ ਸਕਦੇ ਹੋ ਇੱਕ WeMo ਦੀ D1R1 ਅਤੇ L298 ਮੋਟਰ ਸ਼ੀਲਡ ਹੈ।
ਨੋਟ ਕਰੋ ਕਿ ਕਿਸੇ ਵਿਕਲਪ ਨੂੰ ਅਯੋਗ ਕਰਨ ਦਾ ਸਭ ਤੋਂ ਆਸਾਨ ਤਰੀਕਾ ਹੈ # ਪਰਿਭਾਸ਼ਿਤ ਸਟੇਟਮੈਂਟ ਵਿੱਚ ਇਸਦੇ ਨਾਮ ਦੇ ਅੱਗੇ ਇੱਕ ਛੋਟਾ n ਜੋੜਨਾ।
#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 ਵੱਖ-ਵੱਖ ਪਿਨਆਉਟਸ ਵਾਲਾ ਇੱਕ ਨਵਾਂ ਮਾਡਲ ਹੈ*/
/*L298 ਸ਼ੀਲਡ 'ਤੇ ਬ੍ਰੇਕ ਜੰਪਰ ਕੱਟੋ। ਇਹਨਾਂ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ ਅਤੇ ਅਸੀਂ ਨਹੀਂ ਚਾਹੁੰਦੇ ਕਿ ਇਹਨਾਂ ਨੂੰ I2C ਪਿੰਨ ਦੁਆਰਾ ਚਲਾਇਆ ਜਾਵੇ ਕਿਉਂਕਿ ਇਹ DCC ਸਿਗਨਲ ਨੂੰ ਖਰਾਬ ਕਰ ਦੇਵੇਗਾ।

ਬੋਰਡ ਵਿੱਚ ਇੱਕ Arduino ਫਾਰਮ ਫੈਕਟਰ ਹੈ, ਪਿੰਨ ਹੇਠ ਲਿਖੇ ਅਨੁਸਾਰ ਹਨ
D0 GPIO3 RX
D1 GPIO1 TX
D2 GPIO16 ਦਿਲ ਦੀ ਧੜਕਣ ਅਤੇ ਜੌਗਵੀਲ ਪੁਸ਼ਬਟਨ (ਐਕਟਿਵ ਹਾਈ)
D3 GPIO5 DCC ਯੋਗ (pwm)
D4 GPIO4 ਜੋਗ1
D5 GPIO14 DCC ਸਿਗਨਲ (dir)
D6 GPIO12 DCC ਸਿਗਨਲ (dir)
D7 GPIO13 DCC ਯੋਗ (pwm)
D8 GPIO0 SDA, 12k ਪੁੱਲਅੱਪ ਦੇ ਨਾਲ
D9 GPIO2 SCL, 12k ਪੁੱਲਅੱਪ ਦੇ ਨਾਲ
D10 GPIO15 ਜੋਗ2
ਉਪਰੋਕਤ ਮਨੁੱਖਾਂ ਲਈ ਨੋਟਸ ਹਨ, ਤੁਹਾਨੂੰ ਇਹ ਦੱਸਣ ਦਿੰਦਾ ਹੈ ਕਿ ਕਿਹੜੇ ESP GPIO ਕਿਹੜੇ ਫੰਕਸ਼ਨ ਕਰਨਗੇ। ਨੋਟ ਕਰੋ ਕਿ ਦ Arduino D1-D10 ਤੋਂ GPIO ਮੈਪਿੰਗ ਨੋਡ MCU D1-D10 ਤੋਂ GPIO ਮੈਪਿੰਗ ਤੋਂ ਵੱਖਰੀਆਂ ਹਨ */

#USE_ANALOG_MEASUREMENT ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ
# ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ ANALOG_SCALING 3.9 // ਜਦੋਂ ਸਮਾਨਾਂਤਰ ਵਿੱਚ A ਅਤੇ B ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋ (ਮਲਟੀਮੀਟਰ RMS ਨਾਲ ਮੇਲ ਕਰਨ ਲਈ 2.36)
ਅਸੀਂ ESP 'ਤੇ AD ਦੀ ਵਰਤੋਂ ਕਰਾਂਗੇ ਨਾ ਕਿ ਕਿਸੇ ਬਾਹਰੀ I2C ਮੌਜੂਦਾ ਨਿਗਰਾਨੀ ਯੰਤਰ ਜਿਵੇਂ ਕਿ INA219 ਅਸਮਰੱਥ।
ਜੇਕਰ ਤੁਸੀਂ INA219 ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ ਤਾਂ ਇਹ n USE_ ANALOG_ MEASUREMENT ਨਾਲ

#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-ਚੈਨਲ dcc_ info [] ਹੈ ਅਤੇ B-ਚੈਨਲ dcc_ info A [] ਹੈ। ਇਹਨਾਂ ਨੂੰ ਮੈਕਰੋ ਵਜੋਂ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ ਬੈਕਸਲੈਸ਼ ਇੱਕ ਲਾਈਨ-ਨਿਰੰਤਰਤਾ ਮਾਰਕਰ ਹੈ।

#PIN_SCL 2 //12k ਪੁੱਲਅੱਪ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ
#PIN_SDA 0 //12k ਪੁੱਲਅੱਪ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ
#PIN_JOG1 ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ 4
#PIN_JOG2 15 //12k ਪੁੱਲਡਾਉਨ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ

ਪਿੰਨਾਂ (GPIOs) ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ ਜੋ I2C SCL/SDA ਨੂੰ ਚਲਾਉਂਦੇ ਹਨ ਅਤੇ ਫਿਰ ਜੌਗਵੀਲ ਇਨਪੁਟਸ 1 ਅਤੇ 2 ਵੀ

# KEYPAD_ADDRESS 0x21 //pcf8574 ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ

ਵਿਕਲਪਿਕ 4 x 4 ਮੈਟ੍ਰਿਕਸ ਕੀਪੈਡ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਜੋ ਕਿ ਇੱਕ pcf8574 ਚਿੱਪ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸਕੈਨ ਕੀਤਾ ਜਾਂਦਾ ਹੈ

//addr, en,rw,rs,d4,d5,d6,d7,ਬੈਕਲਾਈਟ, ਪੋਲਰਿਟੀ। ਅਸੀਂ ਇਸਨੂੰ 4 ਬਿੱਟ ਡਿਵਾਈਸ ਦੇ ਤੌਰ 'ਤੇ ਵਰਤ ਰਹੇ ਹਾਂ //ਮੇਰੀ ਡਿਸਪਲੇ ਪਿਨਆਊਟ rs,rw,e,d0-d7 ਹੈ। ਸਿਰਫ਼ d<4-7> ਵਰਤੇ ਜਾਂਦੇ ਹਨ। <210> ਦਿਸਦਾ ਹੈ ਕਿਉਂਕਿ ਬਿੱਟ <012> ਨੂੰ //EN,RW,RS ਦੇ ਰੂਪ ਵਿੱਚ ਮੈਪ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਸਾਨੂੰ ਹਾਰਡਵੇਅਰ 'ਤੇ ਅਸਲ ਕ੍ਰਮ ਅਨੁਸਾਰ ਉਹਨਾਂ ਨੂੰ ਮੁੜ ਕ੍ਰਮਬੱਧ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ, 3 ਨੂੰ ਬੈਕਲਾਈਟ ਨਾਲ ਮੈਪ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। <4-7> ਬੈਕਪੈਕ ਅਤੇ ਡਿਸਪਲੇ 'ਤੇ ਉਸੇ ਕ੍ਰਮ ਵਿੱਚ ਦਿਖਾਈ ਦਿੰਦੇ ਹਨ।

# BOOTUP_LCD LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, ਸਕਾਰਾਤਮਕ) ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ; //YwRobot ਬੈਕਪੈਕ

I2C ਬੈਕਪੈਕ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਅਤੇ ਕੌਂਫਿਗਰ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਜੋ 1602 LCD ਡਿਸਪਲੇ (ਵਿਕਲਪਿਕ) ਨੂੰ ਚਲਾਉਂਦਾ ਹੈ, ਇਹ ਸਾਫਟ ਕੌਂਫਿਗਰੇਬਲ ਹੈ ਅਤੇ ਇੱਥੇ ਕਈ ਬੈਕਪੈਕ ਉਪਲਬਧ ਹਨ ਜਿਨ੍ਹਾਂ ਦੀਆਂ ਪਿੰਨ ਸੰਰਚਨਾਵਾਂ ਵੱਖ-ਵੱਖ ਹੁੰਦੀਆਂ ਹਨ।
#endif

ਕਦਮ 7. ਕੰਪਾਇਲ ਕਰੋ ਅਤੇ ਬੋਰਡ 'ਤੇ ਅੱਪਲੋਡ ਕਰੋ।

ਹੁਣ ਤੁਸੀਂ ਬੋਰਡ ਕੰਬੋ ਨੂੰ ਕੌਂਫਿਗਰ ਕਰ ਲਿਆ ਹੈ ਜਿਸਦੀ ਤੁਸੀਂ ਵਰਤੋਂ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ, ਤੁਸੀਂ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਕੰਪਾਇਲ ਕਰ ਸਕਦੇ ਹੋ। ਜੇਕਰ ਤੁਸੀਂ 4×4 ਮੈਟ੍ਰਿਕਸ ਕੀਪੈਡ, ਅਤੇ LCD ਦੀ ਵਰਤੋਂ ਕਰਨ ਦਾ ਇਰਾਦਾ ਨਹੀਂ ਰੱਖਦੇ, ਤਾਂ ਕੋਈ ਸਮੱਸਿਆ ਨਹੀਂ, ਉਹਨਾਂ ਦੀਆਂ ਪਰਿਭਾਸ਼ਾਵਾਂ ਵਿੱਚ ਛੱਡੋ ਕਿਉਂਕਿ ਸਾਫਟਵੇਅਰ ਉਹਨਾਂ ਨੂੰ ਸੰਰਚਿਤ ਕਰਨ ਦੀ ਉਮੀਦ ਕਰਦਾ ਹੈ। ਸਿਸਟਮ ਉਹਨਾਂ ਦੇ ਬਿਨਾਂ ਵਾਈਫਾਈ 'ਤੇ ਵਧੀਆ ਕੰਮ ਕਰੇਗਾ।
IDE 'ਤੇ, ਟਿਕ ਚਿੰਨ੍ਹ (verify) ਅਸਲ ਵਿੱਚ "ਕੰਪਾਈਲ" ਹੈ। ਇਸ 'ਤੇ ਕਲਿੱਕ ਕਰੋ ਅਤੇ ਤੁਸੀਂ ਵੱਖ-ਵੱਖ ਸੁਨੇਹੇ ਦਿਖਾਈ ਦੇਣਗੇ (ਬਸ਼ਰਤੇ ਤੁਸੀਂ ਵਰਬੋਜ਼ ਕੰਪਾਈਲੇਸ਼ਨ ਨੂੰ ਸਮਰੱਥ ਕੀਤਾ ਹੋਵੇ) ਕਿਉਂਕਿ ਸਿਸਟਮ ਵੱਖ-ਵੱਖ ਲਾਇਬ੍ਰੇਰੀਆਂ ਨੂੰ ਕੰਪਾਇਲ ਕਰਦਾ ਹੈ ਅਤੇ ਇਸ ਨੂੰ ਸਭ ਨੂੰ ਜੋੜਦਾ ਹੈ। ਜੇਕਰ ਸਭ ਕੁਝ ਠੀਕ ਤਰ੍ਹਾਂ ਕੰਮ ਕਰਦਾ ਹੈ, ਅਤੇ ਜੇਕਰ ਤੁਸੀਂ ਉਪਰੋਕਤ ਸਾਰੇ ਕਦਮਾਂ ਦੀ ਬਿਲਕੁਲ ਪਾਲਣਾ ਕਰਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ ਇੱਕ ਸਫਲਤਾ ਸੁਨੇਹਾ ਦਿਖਾਈ ਦੇਣਾ ਚਾਹੀਦਾ ਹੈ। ਤੁਸੀਂ ਹੁਣ ਸੱਜਾ-ਤੀਰ (ਅੱਪਲੋਡ) ਬਟਨ ਨੂੰ ਦਬਾਉਣ ਲਈ ਤਿਆਰ ਹੋ, ਪਰ ਅਜਿਹਾ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ, ਜਾਂਚ ਕਰੋ ਕਿ ਤੁਸੀਂ ਟੂਲਸ ਮੀਨੂ ਦੇ ਹੇਠਾਂ ਬੋਰਡ ਲਈ ਸਹੀ COM ਪੋਰਟ ਚੁਣਿਆ ਹੈ।
ਇੱਕ ਸਫਲ ਅਪਲੋਡ ਤੋਂ ਬਾਅਦ (ਇੱਕ ਚੰਗੀ ਕੁਆਲਿਟੀ ਦੀ USB ਕੇਬਲ ਦੀ ਵਰਤੋਂ ਕਰੋ) ਤੁਹਾਨੂੰ ਇਹ ਵੀ ਬੁਲਾਉਣ ਦੀ ਲੋੜ ਹੈ ESP8266 ਸਕੈਚ ਡਾਟਾ ਮੀਨੂ ਲੋਡ ਕਰੋ ਟੂਲਸ ਦੇ ਅਧੀਨ ਵਿਕਲਪ. ਇਹ ਡੇਟਾ ਫੋਲਡਰ ਦੀਆਂ ਸਮੱਗਰੀਆਂ ਨੂੰ ਡਿਵਾਈਸ ਉੱਤੇ ਪਾ ਦੇਵੇਗਾ (ਸਾਰੇ HTML ਪੰਨੇ)।
ਤੁਸੀਂ ਹੋ ਗਏ ਹੋ। ਸੀਰੀਅਲ ਮਾਨੀਟਰ ਖੋਲ੍ਹੋ, ਰੀਸੈਟ ਬਟਨ 'ਤੇ ਕਲਿੱਕ ਕਰੋ ਅਤੇ ਤੁਹਾਨੂੰ ਡਿਵਾਈਸ ਬੂਟ ਅਤੇ I2C ਡਿਵਾਈਸਾਂ ਲਈ ਸਕੈਨ ਦੇਖਣਾ ਚਾਹੀਦਾ ਹੈ। ਤੁਸੀਂ ਹੁਣ ਇਸਨੂੰ Wifi ਰਾਹੀਂ ਕਨੈਕਟ ਕਰ ਸਕਦੇ ਹੋ, ਅਤੇ ਇਹ ਇਸਦੇ ਪਾਵਰ ਬੋਰਡ (ਮੋਟਰ ਸ਼ੀਲਡ) ਤੱਕ ਵਾਇਰ ਕਰਨ ਲਈ ਤਿਆਰ ਹੈ।

ਦਸਤਾਵੇਜ਼ / ਸਰੋਤ

DCC ਕੰਟਰੋਲਰ ਲਈ ARDUINO IDE ਸੈਟ ਅਪ [pdf] ਹਦਾਇਤਾਂ
DCC ਕੰਟਰੋਲਰ ਲਈ IDE ਸੈਟ ਅਪ, IDE ਸੈਟ ਅਪ, DCC ਕੰਟਰੋਲਰ ਲਈ ਸੈਟ ਅਪ, DCC ਕੰਟਰੋਲਰ IDE ਸੈਟ ਅਪ, DCC ਕੰਟਰੋਲਰ

ਹਵਾਲੇ

ਇੱਕ ਟਿੱਪਣੀ ਛੱਡੋ

ਤੁਹਾਡਾ ਈਮੇਲ ਪਤਾ ਪ੍ਰਕਾਸ਼ਿਤ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ। ਲੋੜੀਂਦੇ ਖੇਤਰਾਂ ਨੂੰ ਚਿੰਨ੍ਹਿਤ ਕੀਤਾ ਗਿਆ ਹੈ *