STM32F103C8T6 ਨਿਊਨਤਮ ਸਿਸਟਮ ਵਿਕਾਸ ਬੋਰਡ
ਉਤਪਾਦ ਜਾਣਕਾਰੀ
STM32F103C8T6 ARM STM32 ਨਿਊਨਤਮ ਸਿਸਟਮ ਵਿਕਾਸ ਬੋਰਡ ਮੋਡੀਊਲ ਇੱਕ ਵਿਕਾਸ ਬੋਰਡ ਹੈ ਜੋ STM32F103C8T6 ਮਾਈਕ੍ਰੋਕੰਟਰੋਲਰ 'ਤੇ ਆਧਾਰਿਤ ਹੈ। ਇਹ Arduino IDE ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪ੍ਰੋਗਰਾਮ ਕੀਤੇ ਜਾਣ ਲਈ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ ਇਹ ਵੱਖ-ਵੱਖ Arduino ਕਲੋਨਾਂ, ਭਿੰਨਤਾਵਾਂ, ਅਤੇ ESP32 ਅਤੇ ESP8266 ਵਰਗੇ ਤੀਜੀ-ਧਿਰ ਦੇ ਬੋਰਡਾਂ ਦੇ ਅਨੁਕੂਲ ਹੈ।
ਬੋਰਡ, ਜਿਸ ਨੂੰ ਬਲੂ ਪਿਲ ਬੋਰਡ ਵੀ ਕਿਹਾ ਜਾਂਦਾ ਹੈ, ਇੱਕ ਅਰਡਿਊਨੋ ਯੂਐਨਓ ਨਾਲੋਂ ਲਗਭਗ 4.5 ਗੁਣਾ ਜ਼ਿਆਦਾ ਬਾਰੰਬਾਰਤਾ 'ਤੇ ਕੰਮ ਕਰਦਾ ਹੈ। ਇਹ ਵੱਖ-ਵੱਖ ਪ੍ਰੋਜੈਕਟਾਂ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ ਪੈਰੀਫਿਰਲ ਜਿਵੇਂ ਕਿ TFT ਡਿਸਪਲੇਅ ਨਾਲ ਜੁੜਿਆ ਜਾ ਸਕਦਾ ਹੈ।
ਇਸ ਬੋਰਡ ਨਾਲ ਪ੍ਰੋਜੈਕਟ ਬਣਾਉਣ ਲਈ ਲੋੜੀਂਦੇ ਭਾਗਾਂ ਵਿੱਚ STM32 ਬੋਰਡ, FTDI ਪ੍ਰੋਗਰਾਮਰ, ਕਲਰ TFT ਡਿਸਪਲੇ, ਪੁਸ਼ ਬਟਨ, ਸਮਾਲ ਬ੍ਰੈੱਡਬੋਰਡ, ਵਾਇਰ, ਪਾਵਰ ਬੈਂਕ (ਸਟੈਂਡ-ਅਲੋਨ ਮੋਡ ਲਈ ਵਿਕਲਪਿਕ), ਅਤੇ USB ਤੋਂ ਸੀਰੀਅਲ ਕਨਵਰਟਰ ਸ਼ਾਮਲ ਹਨ।
ਯੋਜਨਾਬੱਧ
STM32F1 ਬੋਰਡ ਨੂੰ 1.8 ST7735-ਅਧਾਰਿਤ ਰੰਗਦਾਰ TFT ਡਿਸਪਲੇਅ ਅਤੇ ਇੱਕ ਪੁਸ਼ ਬਟਨ ਨਾਲ ਕਨੈਕਟ ਕਰਨ ਲਈ, ਪ੍ਰਦਾਨ ਕੀਤੀ ਗਈ ਸਕੀਮ ਵਿੱਚ ਵਰਣਿਤ ਪਿੰਨ-ਟੂ-ਪਿੰਨ ਕਨੈਕਸ਼ਨਾਂ ਦੀ ਪਾਲਣਾ ਕਰੋ।
STM32 ਲਈ Arduino IDE ਸੈਟ ਅਪ ਕਰਨਾ
- Arduino IDE ਖੋਲ੍ਹੋ.
- ਟੂਲਸ -> ਬੋਰਡ -> ਬੋਰਡ ਮੈਨੇਜਰ 'ਤੇ ਜਾਓ।
- ਖੋਜ ਪੱਟੀ ਦੇ ਨਾਲ ਡਾਇਲਾਗ ਬਾਕਸ ਵਿੱਚ, “STM32F1” ਦੀ ਖੋਜ ਕਰੋ ਅਤੇ ਸੰਬੰਧਿਤ ਪੈਕੇਜ ਨੂੰ ਸਥਾਪਿਤ ਕਰੋ।
- ਇੰਸਟਾਲੇਸ਼ਨ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਪੂਰਾ ਕਰਨ ਲਈ ਉਡੀਕ ਕਰੋ.
- ਇੰਸਟਾਲੇਸ਼ਨ ਤੋਂ ਬਾਅਦ, STM32 ਬੋਰਡ ਹੁਣ Arduino IDE ਬੋਰਡ ਸੂਚੀ ਦੇ ਅਧੀਨ ਚੋਣ ਲਈ ਉਪਲਬਧ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।
Arduino IDE ਨਾਲ STM32 ਬੋਰਡਾਂ ਦੀ ਪ੍ਰੋਗ੍ਰਾਮਿੰਗ
ਆਪਣੀ ਸ਼ੁਰੂਆਤ ਤੋਂ ਲੈ ਕੇ, Arduino IDE ਨੇ Arduino ਕਲੋਨ ਅਤੇ ਵੱਖ-ਵੱਖ ਨਿਰਮਾਤਾਵਾਂ ਦੇ ਭਿੰਨਤਾਵਾਂ ਤੋਂ ਲੈ ਕੇ ESP32 ਅਤੇ ESp8266 ਵਰਗੇ ਤੀਜੀ-ਧਿਰ ਦੇ ਬੋਰਡਾਂ ਤੱਕ, ਹਰ ਕਿਸਮ ਦੇ ਪਲੇਟਫਾਰਮਾਂ ਦਾ ਸਮਰਥਨ ਕਰਨ ਦੀ ਇੱਛਾ ਦਾ ਪ੍ਰਦਰਸ਼ਨ ਕੀਤਾ ਹੈ। ਜਿਵੇਂ ਕਿ ਜ਼ਿਆਦਾ ਲੋਕ IDE ਤੋਂ ਜਾਣੂ ਹੁੰਦੇ ਹਨ, ਉਹ ਹੋਰ ਬੋਰਡਾਂ ਦਾ ਸਮਰਥਨ ਕਰਨ ਲੱਗੇ ਹਨ ਜੋ ATMEL ਚਿਪਸ 'ਤੇ ਆਧਾਰਿਤ ਨਹੀਂ ਹਨ ਅਤੇ ਅੱਜ ਦੇ ਟਿਊਟੋਰਿਅਲ ਲਈ ਅਸੀਂ ਅਜਿਹੇ ਬੋਰਡਾਂ ਵਿੱਚੋਂ ਇੱਕ ਨੂੰ ਦੇਖਾਂਗੇ। ਅਸੀਂ ਜਾਂਚ ਕਰਾਂਗੇ ਕਿ STM32-ਅਧਾਰਿਤ, STM32F103C8T6 ਵਿਕਾਸ ਬੋਰਡ ਨੂੰ Arduino IDE ਨਾਲ ਕਿਵੇਂ ਪ੍ਰੋਗਰਾਮ ਕਰਨਾ ਹੈ।
ਇਸ ਟਿਊਟੋਰਿਅਲ ਲਈ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ STM32 ਬੋਰਡ STM32F103C8T6 ਚਿੱਪ-ਅਧਾਰਿਤ STM32F1 ਵਿਕਾਸ ਬੋਰਡ ਤੋਂ ਇਲਾਵਾ ਹੋਰ ਕੋਈ ਨਹੀਂ ਹੈ, ਜਿਸ ਨੂੰ ਆਮ ਤੌਰ 'ਤੇ ਇਸਦੇ PCB ਦੇ ਨੀਲੇ ਰੰਗ ਦੇ ਅਨੁਸਾਰ "ਬਲੂ ਪਿਲ" ਕਿਹਾ ਜਾਂਦਾ ਹੈ। ਬਲੂ ਪਿਲ ਸ਼ਕਤੀਸ਼ਾਲੀ 32-ਬਿੱਟ STM32F103C8T6 ARM ਪ੍ਰੋਸੈਸਰ ਦੁਆਰਾ ਸੰਚਾਲਿਤ ਹੈ, ਜੋ ਕਿ 72MHz 'ਤੇ ਹੈ। ਬੋਰਡ 3.3v ਤਰਕ ਪੱਧਰਾਂ 'ਤੇ ਕੰਮ ਕਰਦਾ ਹੈ ਪਰ ਇਸਦੇ GPIO ਪਿੰਨਾਂ ਨੂੰ 5v ਸਹਿਣਸ਼ੀਲ ਹੋਣ ਲਈ ਟੈਸਟ ਕੀਤਾ ਗਿਆ ਹੈ। ਹਾਲਾਂਕਿ ਇਹ ESP32 ਅਤੇ Arduino ਰੂਪਾਂ ਵਾਂਗ ਵਾਈਫਾਈ ਜਾਂ ਬਲੂਟੁੱਥ ਨਾਲ ਨਹੀਂ ਆਉਂਦਾ ਹੈ, ਇਹ 20KB RAM ਅਤੇ 64KB ਫਲੈਸ਼ ਮੈਮੋਰੀ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਦਾ ਹੈ ਜੋ ਇਸਨੂੰ ਵੱਡੇ ਪ੍ਰੋਜੈਕਟਾਂ ਲਈ ਢੁਕਵਾਂ ਬਣਾਉਂਦਾ ਹੈ। ਇਸ ਵਿੱਚ 37 GPIO ਪਿੰਨ ਵੀ ਹਨ, ਜਿਨ੍ਹਾਂ ਵਿੱਚੋਂ 10 ਨੂੰ ਐਨਾਲਾਗ ਸੈਂਸਰਾਂ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ ਕਿਉਂਕਿ ਉਹਨਾਂ ਵਿੱਚ ADC ਸਮਰਥਿਤ ਹੈ, ਹੋਰਾਂ ਦੇ ਨਾਲ ਜੋ SPI, I2C, CAN, UART, ਅਤੇ DMA ਲਈ ਸਮਰਥਿਤ ਹਨ। ਇੱਕ ਬੋਰਡ ਲਈ ਜਿਸਦੀ ਕੀਮਤ ਲਗਭਗ $3 ਹੈ, ਤੁਸੀਂ ਮੇਰੇ ਨਾਲ ਸਹਿਮਤ ਹੋਵੋਗੇ ਕਿ ਇਹ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਚਸ਼ਮੇ ਹਨ। ਇੱਕ Arduino Uno ਦੀ ਤੁਲਨਾ ਵਿੱਚ ਇਹਨਾਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦਾ ਸੰਖੇਪ ਰੂਪ ਹੇਠਾਂ ਚਿੱਤਰ ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ।
ਉਪਰੋਕਤ ਸਪੈਸੀਫਿਕੇਸ਼ਨਾਂ ਦੇ ਆਧਾਰ 'ਤੇ, ਬਲੂ ਪਿਲ ਦੇ ਕੰਮ ਕਰਨ ਦੀ ਬਾਰੰਬਾਰਤਾ ਅੱਜ ਦੇ ਟਿਊਟੋਰਿਅਲ ਲਈ, ਇੱਕ ਸਾਬਕਾ ਦੇ ਤੌਰ 'ਤੇ, ਇੱਕ Arduino UNO ਨਾਲੋਂ ਲਗਭਗ 4.5 ਗੁਣਾ ਵੱਧ ਹੈ।ampSTM32F1 ਬੋਰਡ ਨੂੰ ਕਿਵੇਂ ਵਰਤਣਾ ਹੈ, ਅਸੀਂ ਇਸਨੂੰ 1.44″ TFT ਡਿਸਪਲੇਅ ਨਾਲ ਜੋੜਾਂਗੇ ਅਤੇ ਇਸਨੂੰ "Pi" ਸਥਿਰਾਂਕ ਦੀ ਗਣਨਾ ਕਰਨ ਲਈ ਪ੍ਰੋਗਰਾਮ ਕਰਾਂਗੇ। ਅਸੀਂ ਨੋਟ ਕਰਾਂਗੇ ਕਿ ਬੋਰਡ ਨੂੰ ਮੁੱਲ ਪ੍ਰਾਪਤ ਕਰਨ ਵਿੱਚ ਕਿੰਨਾ ਸਮਾਂ ਲੱਗਾ ਅਤੇ ਇਸਦੀ ਤੁਲਨਾ ਉਸੇ ਕੰਮ ਨੂੰ ਕਰਨ ਲਈ ਇੱਕ ਅਰਡਿਨੋ ਯੂਨੋ ਨੂੰ ਲੱਗਣ ਵਾਲੇ ਸਮੇਂ ਨਾਲ ਕਰੋ।
ਲੋੜੀਂਦੇ ਹਿੱਸੇ
ਇਸ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਬਣਾਉਣ ਲਈ ਹੇਠਾਂ ਦਿੱਤੇ ਭਾਗਾਂ ਦੀ ਲੋੜ ਹੈ;
- STM32 ਬੋਰਡ
- FTDI ਪ੍ਰੋਗਰਾਮਰ
- ਰੰਗ TFT
- ਪੁਸ਼ ਬਟਨ
- ਛੋਟਾ Breadboard
- ਤਾਰਾਂ
- ਪਾਵਰ ਬੈਂਕ
- USB ਤੋਂ ਸੀਰੀਅਲ ਕਨਵਰਟਰ
ਆਮ ਵਾਂਗ, ਇਸ ਟਿਊਟੋਰਿਅਲ ਲਈ ਵਰਤੇ ਗਏ ਸਾਰੇ ਭਾਗ ਨੱਥੀ ਲਿੰਕਾਂ ਤੋਂ ਖਰੀਦੇ ਜਾ ਸਕਦੇ ਹਨ। ਪਾਵਰ ਬੈਂਕ ਦੀ ਤਾਂ ਹੀ ਲੋੜ ਹੈ ਜੇਕਰ ਤੁਸੀਂ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਸਟੈਂਡ-ਅਲੋਨ ਮੋਡ ਵਿੱਚ ਤੈਨਾਤ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ।
ਯੋਜਨਾਬੱਧ
- ਜਿਵੇਂ ਕਿ ਪਹਿਲਾਂ ਦੱਸਿਆ ਗਿਆ ਹੈ, ਅਸੀਂ ਇੱਕ ਪੁਸ਼ ਬਟਨ ਦੇ ਨਾਲ STM32F1 ਬੋਰਡ ਨੂੰ 1.8″ ST7735 ਅਧਾਰਤ ਰੰਗਦਾਰ TFT ਡਿਸਪਲੇਅ ਨਾਲ ਜੋੜਾਂਗੇ।
- ਪੁਸ਼ ਬਟਨ ਦੀ ਵਰਤੋਂ ਬੋਰਡ ਨੂੰ ਗਣਨਾ ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਨਿਰਦੇਸ਼ ਦੇਣ ਲਈ ਕੀਤੀ ਜਾਵੇਗੀ।
- ਭਾਗਾਂ ਨੂੰ ਕਨੈਕਟ ਕਰੋ ਜਿਵੇਂ ਕਿ ਹੇਠਾਂ ਯੋਜਨਾਬੱਧ ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ।
ਕਨੈਕਸ਼ਨਾਂ ਨੂੰ ਦੁਹਰਾਉਣ ਲਈ ਆਸਾਨ ਬਣਾਉਣ ਲਈ, STM32 ਅਤੇ ਡਿਸਪਲੇ ਦੇ ਵਿਚਕਾਰ ਪਿੰਨ-ਟੂ-ਪਿੰਨ ਕਨੈਕਸ਼ਨਾਂ ਦਾ ਵਰਣਨ ਹੇਠਾਂ ਦਿੱਤਾ ਗਿਆ ਹੈ।
STM32 - ST7735
ਇਹ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਇੱਕ ਵਾਰ ਫਿਰ ਕਨੈਕਸ਼ਨਾਂ 'ਤੇ ਜਾਓ ਜਿਵੇਂ ਕਿ ਇਹ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜਿਵੇਂ ਕਿ ਇਹ ਥੋੜਾ ਜਿਹਾ ਗੁੰਝਲਦਾਰ ਹੁੰਦਾ ਹੈ। ਇਸ ਦੇ ਨਾਲ, ਅਸੀਂ Arduino IDE ਨਾਲ ਪ੍ਰੋਗਰਾਮ ਕੀਤੇ ਜਾਣ ਲਈ STM32 ਬੋਰਡ ਨੂੰ ਸਥਾਪਤ ਕਰਨ ਲਈ ਅੱਗੇ ਵਧੇ।
STM32 ਲਈ Arduino IDE ਸੈਟ ਅਪ ਕਰਨਾ
- ਜਿਵੇਂ ਕਿ ਆਰਡਿਊਨੋ ਦੁਆਰਾ ਨਹੀਂ ਬਣਾਏ ਗਏ ਜ਼ਿਆਦਾਤਰ ਬੋਰਡਾਂ ਦੇ ਨਾਲ, ਬੋਰਡ ਨੂੰ ਆਰਡਿਨੋ IDE ਨਾਲ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਇਸ ਤੋਂ ਪਹਿਲਾਂ ਕਿ ਕੁਝ ਸੈੱਟਅੱਪ ਕਰਨ ਦੀ ਲੋੜ ਹੈ।
- ਇਸ ਵਿੱਚ ਬੋਰਡ ਲਗਾਉਣਾ ਸ਼ਾਮਲ ਹੈ file ਜਾਂ ਤਾਂ Arduino ਬੋਰਡ ਮੈਨੇਜਰ ਰਾਹੀਂ ਜਾਂ ਇੰਟਰਨੈੱਟ ਤੋਂ ਡਾਊਨਲੋਡ ਕਰਕੇ ਅਤੇ ਕਾਪੀ ਕਰਕੇ files ਹਾਰਡਵੇਅਰ ਫੋਲਡਰ ਵਿੱਚ.
- ਬੋਰਡ ਮੈਨੇਜਰ ਰੂਟ ਘੱਟ ਔਖਾ ਹੈ ਅਤੇ ਕਿਉਂਕਿ STM32F1 ਸੂਚੀਬੱਧ ਬੋਰਡਾਂ ਵਿੱਚੋਂ ਇੱਕ ਹੈ, ਅਸੀਂ ਉਸ ਰੂਟ 'ਤੇ ਜਾਵਾਂਗੇ। Arduino ਤਰਜੀਹ ਸੂਚੀਆਂ ਵਿੱਚ STM32 ਬੋਰਡ ਲਈ ਲਿੰਕ ਜੋੜ ਕੇ ਸ਼ੁਰੂ ਕਰੋ।
- 'ਤੇ ਜਾਓ File -> ਤਰਜੀਹਾਂ, ਫਿਰ ਇਸਨੂੰ ਦਾਖਲ ਕਰੋ URL ( http://dan.drown.org/stm32duino/package_STM32duino_index.json ) ਹੇਠਾਂ ਦਰਸਾਏ ਗਏ ਬਾਕਸ ਵਿੱਚ ਅਤੇ ਠੀਕ 'ਤੇ ਕਲਿੱਕ ਕਰੋ।
- Now go to Tools -> Board -> Board Manager, it will open a dialogue box with a search bar. ਲਈ ਖੋਜ STM32F1 and install the corresponding package.
- ਇੰਸਟਾਲੇਸ਼ਨ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਕੁਝ ਸਕਿੰਟ ਲੱਗਣਗੇ. ਉਸ ਤੋਂ ਬਾਅਦ, ਬੋਰਡ ਹੁਣ Arduino IDE ਬੋਰਡ ਸੂਚੀ ਦੇ ਤਹਿਤ ਚੋਣ ਲਈ ਉਪਲਬਧ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।
ਕੋਡ
- ਕੋਡ ਉਸੇ ਤਰ੍ਹਾਂ ਲਿਖਿਆ ਜਾਵੇਗਾ ਜਿਸ ਤਰ੍ਹਾਂ ਅਸੀਂ ਆਰਡਿਊਨੋ ਪ੍ਰੋਜੈਕਟ ਲਈ ਕੋਈ ਹੋਰ ਸਕੈਚ ਲਿਖਦੇ ਹਾਂ, ਸਿਰਫ ਫਰਕ ਇਸ ਤਰ੍ਹਾਂ ਹੈ ਕਿ ਪਿੰਨ ਦਾ ਹਵਾਲਾ ਦਿੱਤਾ ਗਿਆ ਹੈ।
- ਇਸ ਪ੍ਰੋਜੈਕਟ ਲਈ ਕੋਡ ਨੂੰ ਆਸਾਨੀ ਨਾਲ ਵਿਕਸਤ ਕਰਨ ਦੇ ਯੋਗ ਹੋਣ ਲਈ, ਅਸੀਂ ਦੋ ਲਾਇਬ੍ਰੇਰੀਆਂ ਦੀ ਵਰਤੋਂ ਕਰਾਂਗੇ ਜੋ ਕਿ STM32 ਦੇ ਅਨੁਕੂਲ ਬਣਾਉਣ ਲਈ ਮਿਆਰੀ Arduino ਲਾਇਬ੍ਰੇਰੀਆਂ ਦੇ ਦੋਵੇਂ ਸੋਧਾਂ ਹਨ।
- ਅਸੀਂ Adafruit GFX ਅਤੇ Adafruit ST7735 ਲਾਇਬ੍ਰੇਰੀਆਂ ਦੇ ਸੋਧੇ ਹੋਏ ਸੰਸਕਰਣ ਦੀ ਵਰਤੋਂ ਕਰਾਂਗੇ।
- ਦੋਵੇਂ ਲਾਇਬ੍ਰੇਰੀਆਂ ਉਹਨਾਂ ਨਾਲ ਜੁੜੇ ਲਿੰਕਾਂ ਰਾਹੀਂ ਡਾਊਨਲੋਡ ਕੀਤੀਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ। ਆਮ ਵਾਂਗ, ਮੈਂ ਕੋਡ ਦਾ ਇੱਕ ਛੋਟਾ ਬ੍ਰੇਕਡਾਊਨ ਕਰਾਂਗਾ।
- ਅਸੀਂ ਉਹਨਾਂ ਦੋ ਲਾਇਬ੍ਰੇਰੀਆਂ ਨੂੰ ਆਯਾਤ ਕਰਕੇ ਕੋਡ ਸ਼ੁਰੂ ਕਰਦੇ ਹਾਂ ਜੋ ਅਸੀਂ ਵਰਤਾਂਗੇ।
- ਅੱਗੇ, ਅਸੀਂ STM32 ਦੇ ਪਿੰਨ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੇ ਹਾਂ ਜਿਸ ਨਾਲ LCD ਦੇ CS, RST, ਅਤੇ DC ਪਿੰਨ ਜੁੜੇ ਹੋਏ ਹਨ।
- ਅੱਗੇ, ਅਸੀਂ ਕੁਝ ਰੰਗ ਪਰਿਭਾਸ਼ਾਵਾਂ ਬਣਾਉਂਦੇ ਹਾਂ ਤਾਂ ਜੋ ਬਾਅਦ ਵਿੱਚ ਉਹਨਾਂ ਦੇ ਹੈਕਸ ਮੁੱਲਾਂ ਦੀ ਬਜਾਏ ਕੋਡ ਵਿੱਚ ਉਹਨਾਂ ਦੇ ਨਾਮਾਂ ਦੁਆਰਾ ਰੰਗਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਆਸਾਨ ਬਣਾਇਆ ਜਾ ਸਕੇ।
- ਅੱਗੇ, ਅਸੀਂ ਪ੍ਰਗਤੀ ਪੱਟੀ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਰਿਫਰੈਸ਼ ਅਵਧੀ ਦੇ ਨਾਲ ਬੋਰਡ ਨੂੰ ਦੁਹਰਾਉਣ ਦੀ ਗਿਣਤੀ ਨਿਰਧਾਰਤ ਕਰਦੇ ਹਾਂ।
- ਇਸ ਦੇ ਨਾਲ, ਅਸੀਂ ST7735 ਲਾਇਬ੍ਰੇਰੀ ਦਾ ਇੱਕ ਆਬਜੈਕਟ ਬਣਾਉਂਦੇ ਹਾਂ ਜੋ ਪੂਰੇ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਡਿਸਪਲੇ ਦਾ ਹਵਾਲਾ ਦੇਣ ਲਈ ਵਰਤਿਆ ਜਾਵੇਗਾ।
- ਅਸੀਂ STM32 ਦੇ ਪਿੰਨ ਨੂੰ ਵੀ ਦਰਸਾਉਂਦੇ ਹਾਂ ਜਿਸ ਨਾਲ ਪੁਸ਼ਬਟਨ ਜੁੜਿਆ ਹੋਇਆ ਹੈ ਅਤੇ ਇਸਦੀ ਸਥਿਤੀ ਨੂੰ ਰੱਖਣ ਲਈ ਇੱਕ ਵੇਰੀਏਬਲ ਬਣਾਉਂਦਾ ਹੈ।
- ਇਸ ਦੇ ਨਾਲ, ਅਸੀਂ void setup() ਫੰਕਸ਼ਨ ਤੇ ਚਲੇ ਜਾਂਦੇ ਹਾਂ।
- ਅਸੀਂ ਪਿੰਨ ਦੇ pinMode() ਨੂੰ ਸੈੱਟ ਕਰਕੇ ਸ਼ੁਰੂ ਕਰਦੇ ਹਾਂ ਜਿਸ ਨਾਲ ਪੁਸ਼ਬਟਨ ਕਨੈਕਟ ਹੁੰਦਾ ਹੈ, ਪਿੰਨ ਉੱਤੇ ਇੱਕ ਅੰਦਰੂਨੀ ਪੁੱਲ-ਅੱਪ ਰੋਧਕ ਨੂੰ ਸਰਗਰਮ ਕਰਦੇ ਹੋਏ ਕਿਉਂਕਿ ਪੁਸ਼ਬਟਨ ਦਬਾਉਣ 'ਤੇ ਜ਼ਮੀਨ ਨਾਲ ਜੁੜਦਾ ਹੈ।
- ਅੱਗੇ, ਅਸੀਂ ਸੀਰੀਅਲ ਕਮਿਊਨੀਕੇਸ਼ਨ ਅਤੇ ਸਕ੍ਰੀਨ ਨੂੰ ਸ਼ੁਰੂ ਕਰਦੇ ਹਾਂ, ਡਿਸਪਲੇ ਦੇ ਬੈਕਗ੍ਰਾਊਂਡ ਨੂੰ ਕਾਲਾ ਕਰ ਦਿੰਦੇ ਹਾਂ ਅਤੇ ਇੰਟਰਫੇਸ ਨੂੰ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਨ ਲਈ ਪ੍ਰਿੰਟ () ਫੰਕਸ਼ਨ ਨੂੰ ਕਾਲ ਕਰਦੇ ਹਾਂ।
- ਅੱਗੇ void loop() ਫੰਕਸ਼ਨ ਹੈ। ਵਾਇਡ ਲੂਪ ਫੰਕਸ਼ਨ ਕਾਫ਼ੀ ਸਰਲ ਅਤੇ ਛੋਟਾ ਹੈ, ਲਾਇਬ੍ਰੇਰੀਆਂ/ਫੰਕਸ਼ਨਾਂ ਦੀ ਵਰਤੋਂ ਲਈ ਧੰਨਵਾਦ।
- ਅਸੀਂ ਪੁਸ਼ ਬਟਨ ਦੀ ਸਥਿਤੀ ਨੂੰ ਪੜ੍ਹ ਕੇ ਸ਼ੁਰੂ ਕਰਦੇ ਹਾਂ। ਜੇਕਰ ਬਟਨ ਦਬਾਇਆ ਗਿਆ ਹੈ, ਤਾਂ ਅਸੀਂ removePressKeyText() ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸਕਰੀਨ 'ਤੇ ਮੌਜੂਦਾ ਸੁਨੇਹੇ ਨੂੰ ਹਟਾ ਦਿੰਦੇ ਹਾਂ ਅਤੇ drawBar() ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਬਦਲਦੀ ਪ੍ਰਗਤੀ ਪੱਟੀ ਨੂੰ ਖਿੱਚਦੇ ਹਾਂ।
- ਅਸੀਂ ਫਿਰ Pi ਦੇ ਮੁੱਲ ਨੂੰ ਪ੍ਰਾਪਤ ਕਰਨ ਅਤੇ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਨ ਲਈ ਸ਼ੁਰੂਆਤੀ ਗਣਨਾ ਫੰਕਸ਼ਨ ਨੂੰ ਕਾਲ ਕਰਦੇ ਹਾਂ ਅਤੇ ਇਸਦੀ ਗਣਨਾ ਕਰਨ ਵਿੱਚ ਲੱਗੇ ਸਮੇਂ ਦੇ ਨਾਲ।
- ਜੇਕਰ ਪੁਸ਼ਬਟਨ ਨੂੰ ਦਬਾਇਆ ਨਹੀਂ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਡਿਵਾਈਸ ਸਕ੍ਰੀਨ ਦੇ ਨਾਲ ਨਿਸ਼ਕਿਰਿਆ ਮੋਡ ਵਿੱਚ ਰਹਿੰਦੀ ਹੈ ਅਤੇ ਇਸ ਨਾਲ ਇੰਟਰੈਕਟ ਕਰਨ ਲਈ ਇੱਕ ਕੁੰਜੀ ਨੂੰ ਦਬਾਉਣ ਦੀ ਮੰਗ ਕਰਦੀ ਹੈ।
- ਅੰਤ ਵਿੱਚ, "ਲੂਪਸ" ਨੂੰ ਸਕੈਚ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਥੋੜਾ ਸਮਾਂ ਦੇਣ ਲਈ ਲੂਪ ਦੇ ਅੰਤ ਵਿੱਚ ਇੱਕ ਦੇਰੀ ਪਾਈ ਜਾਂਦੀ ਹੈ।
- ਕੋਡ ਦਾ ਬਾਕੀ ਬਚਿਆ ਹਿੱਸਾ ਉਹ ਫੰਕਸ਼ਨ ਹੈ ਜਿਨ੍ਹਾਂ ਨੂੰ ਬਾਰ ਡਰਾਇੰਗ ਤੋਂ ਲੈ ਕੇ Pi ਦੀ ਗਣਨਾ ਕਰਨ ਤੱਕ ਦੇ ਕੰਮਾਂ ਨੂੰ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਕਿਹਾ ਜਾਂਦਾ ਹੈ।
- ਇਹਨਾਂ ਵਿੱਚੋਂ ਜ਼ਿਆਦਾਤਰ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਕਈ ਹੋਰ ਟਿਊਟੋਰਿਅਲਾਂ ਵਿੱਚ ਕਵਰ ਕੀਤਾ ਗਿਆ ਹੈ ਜਿਸ ਵਿੱਚ ST7735 ਡਿਸਪਲੇ ਦੀ ਵਰਤੋਂ ਸ਼ਾਮਲ ਹੈ।
- ਪ੍ਰੋਜੈਕਟ ਲਈ ਪੂਰਾ ਕੋਡ ਹੇਠਾਂ ਉਪਲਬਧ ਹੈ ਅਤੇ ਡਾਉਨਲੋਡ ਸੈਕਸ਼ਨ ਦੇ ਅਧੀਨ ਨੱਥੀ ਹੈ।
STM32 'ਤੇ ਕੋਡ ਅੱਪਲੋਡ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ
- STM32f1 'ਤੇ ਸਕੈਚ ਅੱਪਲੋਡ ਕਰਨਾ ਮਿਆਰੀ Arduino-ਅਨੁਕੂਲ ਬੋਰਡਾਂ ਦੇ ਮੁਕਾਬਲੇ ਥੋੜਾ ਜਿਹਾ ਗੁੰਝਲਦਾਰ ਹੈ। ਬੋਰਡ 'ਤੇ ਕੋਡ ਅੱਪਲੋਡ ਕਰਨ ਲਈ, ਸਾਨੂੰ ਇੱਕ FTDI-ਅਧਾਰਿਤ, USB-ਤੋਂ ਸੀਰੀਅਲ ਕਨਵਰਟਰ ਦੀ ਲੋੜ ਹੈ।
- ਯੂਐਸਬੀ ਨੂੰ ਸੀਰੀਅਲ ਕਨਵਰਟਰ ਨਾਲ STM32 ਨਾਲ ਕਨੈਕਟ ਕਰੋ ਜਿਵੇਂ ਕਿ ਹੇਠਾਂ ਦਿੱਤੀ ਗਈ ਸਕੀਮ ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ।
ਇੱਥੇ ਕੁਨੈਕਸ਼ਨ ਦਾ ਇੱਕ ਪਿੰਨ-ਟੂ-ਪਿੰਨ ਨਕਸ਼ਾ ਹੈ
FTDI - STM32
- ਅਜਿਹਾ ਕਰਨ ਦੇ ਨਾਲ, ਅਸੀਂ ਬੋਰਡ ਨੂੰ ਪ੍ਰੋਗਰਾਮਿੰਗ ਮੋਡ ਵਿੱਚ ਰੱਖਣ ਲਈ ਬੋਰਡ ਦੇ ਸਟੇਟ ਜੰਪਰ ਦੀ ਸਥਿਤੀ ਨੂੰ ਇੱਕ ਸਥਿਤੀ ਵਿੱਚ ਬਦਲਦੇ ਹਾਂ (ਜਿਵੇਂ ਕਿ ਹੇਠਾਂ gif ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ)।
- ਇਸ ਤੋਂ ਬਾਅਦ ਇੱਕ ਵਾਰ ਬੋਰਡ 'ਤੇ ਰੀਸੈਟ ਬਟਨ ਨੂੰ ਦਬਾਓ ਅਤੇ ਅਸੀਂ ਕੋਡ ਅੱਪਲੋਡ ਕਰਨ ਲਈ ਤਿਆਰ ਹਾਂ।
- ਕੰਪਿਊਟਰ 'ਤੇ, ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਤੁਸੀਂ "ਜਨਰਿਕ STM32F103C ਬੋਰਡ" ਦੀ ਚੋਣ ਕੀਤੀ ਹੈ ਅਤੇ ਅਪਲੋਡ ਵਿਧੀ ਲਈ ਸੀਰੀਅਲ ਚੁਣੋ ਜਿਸ ਤੋਂ ਬਾਅਦ ਤੁਸੀਂ ਅੱਪਲੋਡ ਬਟਨ ਨੂੰ ਦਬਾ ਸਕਦੇ ਹੋ।
- ਇੱਕ ਵਾਰ ਅੱਪਲੋਡ ਪੂਰਾ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਸਟੇਟ ਜੰਪਰ ਨੂੰ ਸਥਿਤੀ ਵਿੱਚ ਬਦਲੋ "ਓ" ਇਹ ਬੋਰਡ ਨੂੰ "ਰਨ" ਮੋਡ ਵਿੱਚ ਪਾ ਦੇਵੇਗਾ ਅਤੇ ਇਸਨੂੰ ਹੁਣ ਅੱਪਲੋਡ ਕੀਤੇ ਕੋਡ ਦੇ ਆਧਾਰ 'ਤੇ ਚੱਲਣਾ ਸ਼ੁਰੂ ਕਰ ਦੇਣਾ ਚਾਹੀਦਾ ਹੈ।
- ਇਸ ਮੌਕੇ 'ਤੇ, ਤੁਸੀਂ FTDI ਨੂੰ ਡਿਸਕਨੈਕਟ ਕਰ ਸਕਦੇ ਹੋ ਅਤੇ ਬੋਰਡ ਨੂੰ ਇਸਦੇ USB ਉੱਤੇ ਪਾਵਰ ਕਰ ਸਕਦੇ ਹੋ। ਜੇਕਰ ਕੋਡ ਪਾਵਰ ਦੇਣ ਤੋਂ ਬਾਅਦ ਨਹੀਂ ਚੱਲਦਾ ਹੈ, ਤਾਂ ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਤੁਸੀਂ ਜੰਪਰ ਨੂੰ ਸਹੀ ਢੰਗ ਨਾਲ ਬਹਾਲ ਕੀਤਾ ਹੈ ਅਤੇ ਬੋਰਡ ਨੂੰ ਪਾਵਰ ਰੀਸਾਈਕਲ ਕਰੋ।
ਡੈਮੋ
- ਕੋਡ ਪੂਰਾ ਹੋਣ ਦੇ ਨਾਲ, ਆਪਣੇ ਸੈੱਟਅੱਪ 'ਤੇ ਕੋਡ ਨੂੰ ਅੱਪਲੋਡ ਕਰਨ ਲਈ ਉੱਪਰ ਦੱਸੇ ਅੱਪਲੋਡ ਪ੍ਰਕਿਰਿਆ ਦਾ ਪਾਲਣ ਕਰੋ।
- ਤੁਹਾਨੂੰ ਹੇਠਾਂ ਦਿੱਤੀ ਤਸਵੀਰ ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਡਿਸਪਲੇਅ ਦਿਖਾਈ ਦੇਣਾ ਚਾਹੀਦਾ ਹੈ।
- ਗਣਨਾ ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਪੁਸ਼ ਬਟਨ ਨੂੰ ਦਬਾਓ। ਤੁਹਾਨੂੰ ਅੰਤ ਤੱਕ ਹੌਲੀ-ਹੌਲੀ ਤਰੱਕੀ ਪੱਟੀ ਸਲਾਈਡ ਦੇਖਣੀ ਚਾਹੀਦੀ ਹੈ।
- ਪ੍ਰਕਿਰਿਆ ਦੇ ਅੰਤ ਵਿੱਚ, Pi ਦਾ ਮੁੱਲ ਉਸ ਸਮੇਂ ਦੇ ਨਾਲ ਪ੍ਰਦਰਸ਼ਿਤ ਹੁੰਦਾ ਹੈ ਜੋ ਗਣਨਾ ਵਿੱਚ ਲਿਆ ਗਿਆ ਸੀ।
- ਇਹੀ ਕੋਡ ਇੱਕ Arduino Uno 'ਤੇ ਲਾਗੂ ਕੀਤਾ ਗਿਆ ਹੈ। ਨਤੀਜਾ ਹੇਠਾਂ ਦਿੱਤੀ ਤਸਵੀਰ ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ।
- ਇਹਨਾਂ ਦੋਨਾਂ ਮੁੱਲਾਂ ਦੀ ਤੁਲਨਾ ਕਰਦੇ ਹੋਏ, ਅਸੀਂ ਦੇਖਦੇ ਹਾਂ ਕਿ "ਬਲੂ ਪਿਲ" ਅਰਡਿਊਨੋ ਯੂਨੋ ਨਾਲੋਂ 7 ਗੁਣਾ ਤੇਜ਼ ਹੈ।
- ਇਹ ਉਹਨਾਂ ਪ੍ਰੋਜੈਕਟਾਂ ਲਈ ਆਦਰਸ਼ ਬਣਾਉਂਦਾ ਹੈ ਜਿਸ ਵਿੱਚ ਭਾਰੀ ਪ੍ਰੋਸੈਸਿੰਗ ਅਤੇ ਸਮੇਂ ਦੀਆਂ ਕਮੀਆਂ ਸ਼ਾਮਲ ਹੁੰਦੀਆਂ ਹਨ।
- ਬਲੂ ਪਿਲ ਦਾ ਛੋਟਾ ਆਕਾਰ ਵੀ ਅਡਵਾਂਸ ਦਾ ਕੰਮ ਕਰਦਾ ਹੈtage ਇੱਥੇ ਕਿਉਂਕਿ ਇਹ Arduino ਨੈਨੋ ਨਾਲੋਂ ਥੋੜਾ ਜਿਹਾ ਵੱਡਾ ਹੈ ਅਤੇ ਇਸਦੀ ਵਰਤੋਂ ਉਹਨਾਂ ਥਾਵਾਂ 'ਤੇ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ ਜਿੱਥੇ ਨੈਨੋ ਕਾਫ਼ੀ ਤੇਜ਼ ਨਹੀਂ ਹੋਵੇਗੀ।
ਦਸਤਾਵੇਜ਼ / ਸਰੋਤ
![]() |
STM32 STM32F103C8T6 ਨਿਊਨਤਮ ਸਿਸਟਮ ਵਿਕਾਸ ਬੋਰਡ [pdf] ਯੂਜ਼ਰ ਮੈਨੂਅਲ STM32F103C8T6 ਘੱਟੋ ਘੱਟ ਸਿਸਟਮ ਵਿਕਾਸ ਬੋਰਡ, STM32F103C8T6, ਘੱਟੋ ਘੱਟ ਸਿਸਟਮ ਵਿਕਾਸ ਬੋਰਡ, ਸਿਸਟਮ ਵਿਕਾਸ ਬੋਰਡ, ਵਿਕਾਸ ਬੋਰਡ, ਬੋਰਡ |