1.9 ਇੰਚ LCD ਮਿਨੀ ਡਿਸਪਲੇ ਮੋਡੀਊਲ
"
ਨਿਰਧਾਰਨ:
- ਡਿਸਪਲੇ ਦਾ ਆਕਾਰ: 1.9 ਇੰਚ
- ਇੰਟਰਫੇਸ: GH1.25 8PIN
- ਸੰਚਾਰ ਪ੍ਰੋਟੋਕੋਲ: SPI
- ਇਸ ਨਾਲ ਅਨੁਕੂਲ: ਰਾਸਬੇਰੀ ਪਾਈ
ਉਤਪਾਦ ਵਰਤੋਂ ਨਿਰਦੇਸ਼:
ਹਾਰਡਵੇਅਰ ਕਨੈਕਸ਼ਨ:
ਕਿਰਪਾ ਕਰਕੇ ਪ੍ਰਦਾਨ ਕੀਤੇ ਗਏ ਦੀ ਵਰਤੋਂ ਕਰਕੇ LCD ਨੂੰ ਆਪਣੇ ਰਸਬੇਰੀ ਪਾਈ ਨਾਲ ਕਨੈਕਟ ਕਰੋ
8PIN ਕੇਬਲ। ਹੇਠਾਂ ਪਿੰਨ ਕੌਂਫਿਗਰੇਸ਼ਨ ਟੇਬਲ ਦੀ ਪਾਲਣਾ ਕਰੋ:
| LCD | ਵੀ.ਸੀ.ਸੀ | ਜੀ.ਐਨ.ਡੀ | ਡੀਆਈਐਨ | ਸੀ.ਐਲ.ਕੇ | ||
|---|---|---|---|---|---|---|
| ਰਸਬੇਰੀ ਪੀ | ਬੀ ਸੀ ਐਮ 2835 | 3.3 ਵੀ | ਜੀ.ਐਨ.ਡੀ | ਮੋਸੀ | ਐਸ.ਸੀ.ਐਲ.ਕੇ. | ਸੀ.ਈ.0 |
SPI ਇੰਟਰਫੇਸ ਨੂੰ ਸਮਰੱਥ ਬਣਾਓ:
ਤੁਹਾਡੇ ਰਾਸਬੇਰੀ ਪਾਈ 'ਤੇ SPI ਇੰਟਰਫੇਸ ਨੂੰ ਸਮਰੱਥ ਕਰਨ ਲਈ:
- ਟਰਮੀਨਲ ਖੋਲ੍ਹੋ ਅਤੇ ਕਮਾਂਡ ਦਿਓ: sudo raspi-config
- ਯੋਗ ਕਰਨ ਲਈ ਇੰਟਰਫੇਸਿੰਗ ਵਿਕਲਪ -> SPI -> ਹਾਂ ਚੁਣੋ
ਐਸ.ਪੀ.ਆਈ - ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਆਪਣੇ ਰਸਬੇਰੀ ਪਾਈ ਨੂੰ ਰੀਬੂਟ ਕਰੋ: sudo reboot
C ਡੈਮੋ:
C ਡੈਮੋ ਚਲਾਉਣ ਲਈ:
- ਵਿੱਚ ਪ੍ਰਦਾਨ ਕੀਤੀਆਂ ਕਮਾਂਡਾਂ ਨੂੰ ਚਲਾ ਕੇ BCM2835 ਲਾਇਬ੍ਰੇਰੀ ਨੂੰ ਸਥਾਪਿਤ ਕਰੋ
ਅਖੀਰੀ ਸਟੇਸ਼ਨ - ਕਮਾਂਡਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ wiringPi ਲਾਇਬ੍ਰੇਰੀ (ਵਿਕਲਪਿਕ) ਸਥਾਪਿਤ ਕਰੋ
ਪ੍ਰਦਾਨ ਕੀਤਾ - ਡੈਮੋ ਡਾਊਨਲੋਡ ਕਰੋ files, ਕੰਪਾਇਲ ਕਰੋ ਅਤੇ ਦਿੱਤੇ ਗਏ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਚਲਾਓ
ਨਿਰਦੇਸ਼
ਪਾਈਥਨ ਡੈਮੋ:
ਪਾਈਥਨ ਡੈਮੋ ਨੂੰ ਚਲਾਉਣ ਲਈ:
- Python2 ਜਾਂ Python3 ਲਈ ਜ਼ਰੂਰੀ ਪਾਈਥਨ ਲਾਇਬ੍ਰੇਰੀਆਂ ਨੂੰ ਇੰਸਟੌਲ ਕਰੋ
ਤੁਹਾਡੀ ਲੋੜ ਅਨੁਸਾਰ - ਡੈਮੋ ਡਾਊਨਲੋਡ ਕਰੋ fileਪ੍ਰਦਾਨ ਕੀਤੇ ਗਏ ਦੀ ਪਾਲਣਾ ਕਰਦਾ ਹੈ
ਨਿਰਦੇਸ਼
ਅਕਸਰ ਪੁੱਛੇ ਜਾਂਦੇ ਸਵਾਲ (FAQ):
ਸਵਾਲ: ਮੈਂ ਕਿਵੇਂ ਜਾਂਚ ਕਰਾਂਗਾ ਕਿ SPI ਇੰਟਰਫੇਸ ਯੋਗ ਹੈ ਜਾਂ ਨਹੀਂ?
ਜਵਾਬ: ਤੁਸੀਂ 'dtparam=spi=on' ਦੀ ਪੁਸ਼ਟੀ ਕਰਕੇ ਜਾਂਚ ਕਰ ਸਕਦੇ ਹੋ ਕਿ ਕੀ SPI ਯੋਗ ਹੈ।
/boot/config.txt ਵਿੱਚ ਅਤੇ ls /dev/spi* ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇਹ ਵੇਖਣ ਲਈ ਕਿ ਕੀ SPI ਹੈ
ਕਬਜ਼ਾ.
ਸਵਾਲ: ਜੇਕਰ SPI 'ਤੇ ਕਬਜ਼ਾ ਹੈ ਤਾਂ ਮੈਨੂੰ ਕੀ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ?
A: ਜੇਕਰ SPI 'ਤੇ ਕਬਜ਼ਾ ਹੈ, ਤਾਂ ਇਸਨੂੰ ਅਸਥਾਈ ਤੌਰ 'ਤੇ ਬੰਦ ਕਰਨ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ
SPI ਨੂੰ ਖਾਲੀ ਕਰਨ ਲਈ ਹੋਰ ਡਰਾਈਵਰ ਕਵਰੇਜ। ਤੁਸੀਂ ls /dev/spi* ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ
ਕਬਜ਼ੇ ਵਾਲੇ SPI ਉਦਾਹਰਨਾਂ ਦੀ ਜਾਂਚ ਕਰੋ।
ਸਵਾਲ: ਮੈਂ ਸਾਰੇ ਸਕ੍ਰੀਨ ਆਕਾਰਾਂ ਲਈ ਟੈਸਟ ਡੈਮੋ ਕਿਵੇਂ ਚਲਾ ਸਕਦਾ ਹਾਂ?
A: ਤੁਸੀਂ ਅਨੁਸਾਰੀ ਇਨਪੁਟ ਕਰਕੇ ਟੈਸਟ ਡੈਮੋ ਨੂੰ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ
ਟਰਮੀਨਲ ਵਿੱਚ ਸਕਰੀਨ ਦਾ ਆਕਾਰ। ਸਾਬਕਾ ਲਈample, sudo ./main 1.9 for the
1.9-ਇੰਚ ਸਕ੍ਰੀਨ।
"`
1.9 ਇੰਚ LCD ਮੋਡੀਊਲ
ਵੱਧview
1.9 ਇੰਚ LCD ਮੋਡੀਊਲ
ਨਿਰਧਾਰਨ
ਸੰਚਾਲਨ ਵਾਲੀਅਮtage: 3.3V / 5V (ਕਿਰਪਾ ਕਰਕੇ ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਪਾਵਰ ਸਪਲਾਈ ਵੋਲਯੂtage ਤਰਕ ਵਾਲੀਅਮ ਨਾਲ ਇਕਸਾਰ ਹੈtage, ਨਹੀਂ ਤਾਂ ਇਹ ਆਮ ਤੌਰ 'ਤੇ ਕੰਮ ਨਹੀਂ ਕਰੇਗਾ।) ਸੰਚਾਰ ਇੰਟਰਫੇਸ: SPI ਡਿਸਪਲੇ ਪੈਨਲ: IPS ਡ੍ਰਾਈਵਰ: ST7789V2 ਰੈਜ਼ੋਲਿਊਸ਼ਨ: 170 (H) RGB × 320 (V) ਡਿਸਪਲੇ ਮਾਪ: 22.70 × 42.72mm ਪਿਕਸਲ ਪਿੱਚ: 0.1335 ਐੱਮ.ਐੱਮ. 0.1335 × 27.3 ਮਿਲੀਮੀਟਰ
1.9 ਇੰਚ 170 × 320, SPI
LCD ਅਤੇ ਕੰਟਰੋਲਰ
1.9-ਇੰਚ LCD ਮੋਡੀਊਲ ਦਾ ਬਿਲਟ-ਇਨ ਡਰਾਈਵਰ ST7789V2 ਹੈ, ਜੋ ਕਿ 240 x RGB x 320 ਵਾਲਾ LCD ਕੰਟਰੋਲਰ ਹੈ, ਅਤੇ LCD ਦਾ ਰੈਜ਼ੋਲਿਊਸ਼ਨ 170 (H) RGB × 320 (V) ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ, LCD ਦੀ ਅੰਦਰੂਨੀ RAM ਪੂਰੀ ਤਰ੍ਹਾਂ ਨਹੀਂ ਵਰਤੀ ਜਾਂਦੀ ਹੈ ਕਿਉਂਕਿ ਇਸਨੂੰ ਪੋਰਟਰੇਟ ਅਤੇ ਹਰੀਜੱਟਲ ਸਕ੍ਰੀਨ ਦੇ ਤੌਰ 'ਤੇ ਸ਼ੁਰੂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਇਹ LCD 12 ਬਿੱਟ, 16 ਬਿੱਟ, ਅਤੇ 18 ਬਿੱਟ, ਯਾਨੀ RGB444, RGB565, ਅਤੇ RGB666 ਦੇ ਇਨਪੁਟ RGB ਫਾਰਮੈਟ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। ਇੱਥੇ ਵਰਤਿਆ ਗਿਆ ਡੈਮੋ RGB565 ਹੈ, ਜੋ ਕਿ RGB ਫਾਰਮੈਟ ਹੈ ਜੋ ਅਸੀਂ ਆਮ ਤੌਰ 'ਤੇ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਜਿਵੇਂ ਕਿ LCD 4-ਤਾਰ SPI ਨੂੰ ਅਪਣਾਉਂਦੀ ਹੈ, ਇਹ ਨਾ ਸਿਰਫ਼ ਸੰਚਾਰ ਵਿੱਚ ਤੇਜ਼ ਹੈ, ਸਗੋਂ ਹੋਰ GPIO ਸਿਰਲੇਖਾਂ ਨੂੰ ਵੀ ਬਚਾਉਂਦਾ ਹੈ।
ਸੰਚਾਰ ਪ੍ਰੋਟੋਕੋਲ
ਨੋਟ: ਪਰੰਪਰਾਗਤ SPI ਪ੍ਰੋਟੋਕੋਲ ਦੇ ਨਾਲ ਅੰਤਰ ਇਹ ਹੈ ਕਿ ਸਲੇਵ ਡਿਵਾਈਸ ਤੋਂ ਹੋਸਟ ਡਿਵਾਈਸ ਤੱਕ ਡੇਟਾ ਪਿੰਨ ਲੁਕਿਆ ਹੋਇਆ ਹੈ ਕਿਉਂਕਿ ਇਸਨੂੰ ਸਿਰਫ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਨ ਦੀ ਲੋੜ ਹੈ। ਕਿਰਪਾ ਕਰਕੇ ਡੇਟਾਸ਼ੀਟ ਪੰਨਾ 66 ਵੇਖੋ। RESX ਰੀਸੈਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜਦੋਂ ਮੋਡੀਊਲ ਚਾਲੂ ਹੁੰਦਾ ਹੈ ਤਾਂ ਘੱਟ ਖਿੱਚਿਆ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਆਮ ਤੌਰ 'ਤੇ 1 'ਤੇ ਸੈੱਟ ਹੁੰਦਾ ਹੈ। CSX ਸਲੇਵ ਡਿਵਾਈਸ ਚਿੱਪ ਚੋਣ ਹੈ, ਘੱਟ ਕਿਰਿਆਸ਼ੀਲ ਹੈ। D/CX ਚਿੱਪ ਦਾ ਡਾਟਾ/ਕਮਾਂਡ ਕੰਟਰੋਲ ਪਿੰਨ ਹੈ। DC=0 ਹੋਣ 'ਤੇ ਕਮਾਂਡ ਲਿਖੋ, ਜਦੋਂ DC=1 ਹੋਵੇ ਤਾਂ ਡਾਟਾ ਲਿਖੋ। SDA ਪ੍ਰਸਾਰਿਤ ਡੇਟਾ ਹੈ, ਯਾਨੀ RGB ਡੇਟਾ। SCL SPI ਸੰਚਾਰ ਘੜੀ ਹੈ। SPI ਸੰਚਾਰ ਲਈ, ਡੇਟਾ ਨੂੰ ਕ੍ਰਮ ਵਿੱਚ ਪ੍ਰਸਾਰਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਯਾਨੀ CPHA (ਕਲੌਕ ਫੇਜ਼) ਅਤੇ CPOL (ਕਲੌਕ ਪੋਲਰਿਟੀ) ਦਾ ਸੁਮੇਲ। CPHA ਇਹ ਨਿਯੰਤਰਿਤ ਕਰਦਾ ਹੈ ਕਿ ਡੇਟਾ SCLK ਦੇ 1 ਜਾਂ ਦੂਜੇ ਕਿਨਾਰੇ 'ਤੇ ਇਕੱਠਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਾਂ ਨਹੀਂ। ਜਦੋਂ CPHA = 2, ਡਾਟਾ SCLK ਦੇ ਪਹਿਲੇ ਕਿਨਾਰੇ 'ਤੇ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। CPOL SCLK ਦੇ ਨਿਸ਼ਕਿਰਿਆ ਰਾਜ ਪੱਧਰ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਦਾ ਹੈ। ਜਦੋਂ CPOL = 0, ਇਹ ਘੱਟ ਪੱਧਰ 'ਤੇ ਹੁੰਦਾ ਹੈ। ਉਪਰੋਕਤ ਚਿੱਤਰ ਤੋਂ, ਤੁਸੀਂ ਦੇਖ ਸਕਦੇ ਹੋ ਕਿ ਇਹ SCLK ਦੇ ਪਹਿਲੇ ਕਿਨਾਰੇ 'ਤੇ ਡਾਟਾ ਟ੍ਰਾਂਸਫਰ ਕਰਨਾ ਸ਼ੁਰੂ ਕਰਦਾ ਹੈ। 1-ਬਿੱਟ ਡੇਟਾ ਨੂੰ ਇੱਕ ਘੜੀ ਦੇ ਚੱਕਰ ਵਿੱਚ ਟ੍ਰਾਂਸਫਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਅਤੇ SPI0 ਨਾਲ, ਡਾਟਾ ਉੱਚ ਤੋਂ ਨੀਵੇਂ ਬਿੱਟਾਂ ਵਿੱਚ ਸੰਚਾਰਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।
ਰਸਬੇਰੀ ਪੀ
ਹਾਰਡਵੇਅਰ ਕਨੈਕਸ਼ਨ
ਕਿਰਪਾ ਕਰਕੇ ਹੇਠਾਂ ਦਿੱਤੀ ਸਾਰਣੀ ਅਨੁਸਾਰ 8PIN ਕੇਬਲ ਨਾਲ LCD ਨੂੰ ਆਪਣੇ Raspberry Pi ਨਾਲ ਕਨੈਕਟ ਕਰੋ।
Raspberry Pi ਨਾਲ ਕਨੈਕਟ ਕਰੋ
LCD
VCC GND DIN CLK
CS DS RST BL
BCM2835 3.3V GND MOSI SCLK CE0 25 27 18
ਰਸਬੇਰੀ ਪੀ
ਬੋਰਡ 3.3V GND
19 23 24 22 13 12
1.9 ਇੰਚ ਦਾ LCD GH1.25 8PIN ਇੰਟਰਫੇਸ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ, ਜਿਸ ਨੂੰ ਉਪਰੋਕਤ ਸਾਰਣੀ ਦੇ ਅਨੁਸਾਰ ਰਾਸਬੇਰੀ ਪਾਈ ਨਾਲ ਕਨੈਕਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ: (ਕਿਰਪਾ ਕਰਕੇ ਪਿੰਨ ਪਰਿਭਾਸ਼ਾ ਸਾਰਣੀ ਦੇ ਅਨੁਸਾਰ ਕਨੈਕਟ ਕਰੋ। ਤਸਵੀਰ ਵਿੱਚ ਵਾਇਰਿੰਗ ਦਾ ਰੰਗ ਸਿਰਫ਼ ਸੰਦਰਭ ਲਈ ਹੈ, ਅਤੇ ਅਸਲ ਰੰਗ ਪ੍ਰਬਲ ਹੋਵੇਗਾ।)
SPI ਇੰਟਰਫੇਸ ਨੂੰ ਸਮਰੱਥ ਬਣਾਓ
ਟਰਮੀਨਲ ਖੋਲ੍ਹੋ, ਅਤੇ ਸੰਰਚਨਾ ਪੰਨੇ ਵਿੱਚ ਦਾਖਲ ਹੋਣ ਲਈ ਹੇਠ ਦਿੱਤੀ ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਕਰੋ:
sudo raspi-config SPI ਇੰਟਰਫੇਸ ਨੂੰ ਸਮਰੱਥ ਕਰਨ ਲਈ ਇੰਟਰਫੇਸਿੰਗ ਵਿਕਲਪ -> SPI -> ਹਾਂ ਚੁਣੋ
Raspberry Pi ਰੀਬੂਟ ਕਰੋ
sudo ਰੀਬੂਟ
/boot/config.txt ਚੈੱਕ ਕਰੋ, ਅਤੇ ਤੁਸੀਂ ਦੇਖ ਸਕਦੇ ਹੋ ਕਿ 'dtparam=spi=on' ਲਿਖਿਆ ਹੋਇਆ ਹੈ।
ਇਹ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਕਿ SPI 'ਤੇ ਕਬਜ਼ਾ ਨਹੀਂ ਹੈ, ਇਸ ਨੂੰ ਅਸਥਾਈ ਤੌਰ 'ਤੇ ਦੂਜੇ ਡਰਾਈਵਰ ਕਵਰੇਜ ਨੂੰ ਬੰਦ ਕਰਨ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਤੁਸੀਂ ਇਹ ਜਾਂਚ ਕਰਨ ਲਈ "ls /dev/spi*" ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ ਕਿ ਕੀ SPI ਦਾ ਕਬਜ਼ਾ ਹੈ। ਜੇਕਰ ਟਰਮੀਨਲ "/dev/spidev0.0″ ਅਤੇ " /dev/spidev0.1″ ਆਉਟਪੁੱਟ ਕਰਦਾ ਹੈ, ਤਾਂ ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ SPI ਆਮ ਸਥਿਤੀ ਵਿੱਚ ਹੈ।
C ਡੈਮੋ
BCM2835 ਇੰਸਟਾਲ ਕਰੋ
# Raspberry Pi ਟਰਮੀਨਲ ਖੋਲ੍ਹੋ ਅਤੇ ਹੇਠ ਦਿੱਤੀ ਕਮਾਂਡ ਚਲਾਓ wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.71.tar.gz tar zxvf bcm2835-1.71.tar.gz cd bcm2835-1.71/ sudo. ਕੌਂਫਿਗਰ ਕਰੋ && sudo make && sudo make check && sudo make install # ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ, ਕਿਰਪਾ ਕਰਕੇ ਅਧਿਕਾਰੀ ਨੂੰ ਵੇਖੋ webਸਾਈਟ: http://www.a irspayce.com/mikem/bcm2835/
wiringPi ਇੰਸਟਾਲ ਕਰੋ (ਵਿਕਲਪਿਕ)
# Raspberry Pi ਟਰਮੀਨਲ ਖੋਲ੍ਹੋ ਅਤੇ ਹੇਠ ਲਿਖੀਆਂ ਕਮਾਂਡਾਂ ਚਲਾਓ: sudo apt-get install wiringpi # ਮਈ 2019 ਤੋਂ ਬਾਅਦ Raspberry Pi ਸਿਸਟਮਾਂ ਲਈ (ਪਹਿਲਾਂ ਵਾਲੇ ਨੂੰ ਲਾਗੂ ਕਰਨ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ), ਇੱਕ ਅੱਪਗਰੇਡ ਦੀ ਲੋੜ ਹੋ ਸਕਦੀ ਹੈ: wget https://project -downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb gpio -v # ਚਲਾਓ gpio -v ਅਤੇ ਵਰਜਨ 2.52 ਦਿਖਾਈ ਦੇਵੇਗਾ। ਜੇਕਰ ਇਹ ਦਿਖਾਈ ਨਹੀਂ ਦਿੰਦਾ, ਤਾਂ ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਇੰਸਟਾਲੇਸ਼ਨ ਵਿੱਚ ਇੱਕ ਗਲਤੀ ਹੈ।
#The Bullseye ਬ੍ਰਾਂਚਿੰਗ ਸਿਸਟਮ ਹੇਠ ਲਿਖੀਆਂ ਕਮਾਂਡਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ: git clone https://github.com/WiringPi/WiringPi cd WiringPi ./build gpio -v # gpio -v ਚਲਾਓ ਅਤੇ ਸੰਸਕਰਣ 2.60 ਦਿਖਾਈ ਦੇਵੇਗਾ। ਜੇਕਰ ਇਹ ਦਿਖਾਈ ਨਹੀਂ ਦਿੰਦਾ, ਤਾਂ ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਇੰਸਟਾਲੇਸ਼ਨ ਵਿੱਚ ਇੱਕ ਗਲਤੀ ਹੈ।
ਡੈਮੋ ਡਾਊਨਲੋਡ
sudo apt-get install unzip -y sudo wget https://www.waveshare.com/w/upload/8/8d/LCD_Module_RPI_code.zip sudo unzip ./LCD_Module_RPI_code.zip cd LCD_Module_RPI_code/RaspberryPi/
ਦੁਬਾਰਾ ਕੰਪਾਇਲ ਕਰੋ ਅਤੇ ਇਸ ਵਿੱਚ ਕੁਝ ਸਕਿੰਟ ਲੱਗ ਸਕਦੇ ਹਨ।
cd c sudo make clean sudo make -j 8
ਸਾਰੀਆਂ ਸਕ੍ਰੀਨਾਂ ਲਈ ਟੈਸਟ ਡੈਮੋ ਨੂੰ ਸੰਬੰਧਿਤ ਆਕਾਰ ਨੂੰ ਇਨਪੁਟ ਕਰਕੇ ਸਿੱਧਾ ਬੁਲਾਇਆ ਜਾ ਸਕਦਾ ਹੈ:
sudo ./ਮੁੱਖ 1.9
ਪਾਈਥਨ ਡੈਮੋ
ਲਾਇਬ੍ਰੇਰੀਆਂ ਸਥਾਪਿਤ ਕਰੋ
#python2 sudo apt-get update sudo apt-get install python-pip sudo apt-get install python-pil sudo apt-get install python-numpy sudo pip ਇੰਸਟਾਲ ਕਰੋ -ਪਾਈਥਨ3-ਪਾਈਪ ਨੂੰ ਸਥਾਪਿਤ ਕਰੋ sudo apt-get install python3-pil sudo apt-get install python3-numpy sudo pip3 install RPi.GPIO sudo pip3 install spidev
ਡੈਮੋ ਡਾਊਨਲੋਡ
sudo apt-get install unzip -y sudo wget https://www.waveshare.com/w/upload/8/8d/LCD_Module_RPI_code.zip sudo unzip ./LCD_Module_RPI_code.zip cd LCD_Module_RPI_code/RaspberryPi/
ਪਾਈਥਨ ਡੈਮੋ ਡਾਇਰੈਕਟਰੀ ਦਰਜ ਕਰੋ ਅਤੇ "ls -l" ਚਲਾਓ
cd python/examples ls -l
ਤੁਸੀਂ LCDs ਲਈ ਸਾਰੇ ਟੈਸਟ ਡੈਮੋ ਦੇਖ ਸਕਦੇ ਹੋ, ਅਤੇ ਉਹਨਾਂ ਨੂੰ ਆਕਾਰ ਦੇ ਅਨੁਸਾਰ ਸ਼੍ਰੇਣੀਬੱਧ ਕੀਤਾ ਗਿਆ ਹੈ।
0inch96_LCD_test.py 1inch14_LCD_test.py 1inch28_LCD_test.py 1inch3_LCD_test.py 1inch47_LCD_test.py 1inch54_LCD_test.py 1inch8_LCD_test.py 1inch9_LCD_test.py 2inch_LCD_test.py 2inch4_LCD_test.py
0.96inch LCD ਟੈਸਟ ਡੈਮੋ 1.14inch LCD ਟੈਸਟ ਡੈਮੋ 1.28inch LCD ਟੈਸਟ ਡੈਮੋ 1.3inch LCD ਟੈਸਟ ਡੈਮੋ 1.47inch LCD ਟੈਸਟ ਡੈਮੋ 1.54inchLCD ਟੈਸਟ ਡੈਮੋ 1.8inch LCD ਟੈਸਟ ਡੈਮੋ 1.9inch LCD ਟੈਸਟ ਡੈਮੋ LCD ਟੈਸਟ ਡੈਮੋ 2inch LCD ਟੈਸਟ ਡੈਮੋ 2.4inch LCD ਟੈਸਟ ਡੈਮੋ
ਅਨੁਸਾਰੀ ਡੈਮੋ ਚਲਾਓ ਅਤੇ ਇਹ python2/3 ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ.
# python2 sudo python 1inch9_LCD_test.py # python3 sudo python3 1inch9_LCD_test.py
FBCP ਪੋਰਟਿੰਗ
ਫਰੇਮਬਫਰ ਇੱਕ ਵੀਡੀਓ ਡਿਸਪਲੇ ਡਿਵਾਈਸ ਨੂੰ ਮੈਮੋਰੀ ਬਫਰ ਤੋਂ ਚਲਾਉਣ ਲਈ ਇੱਕ ਵੀਡੀਓ ਆਉਟਪੁੱਟ ਡਿਵਾਈਸ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ ਜਿਸ ਵਿੱਚ ਪੂਰਾ ਫਰੇਮ ਡੇਟਾ ਹੁੰਦਾ ਹੈ। ਸਧਾਰਨ ਰੂਪ ਵਿੱਚ, ਡਿਸਪਲੇ ਸਮੱਗਰੀ ਨੂੰ ਸਟੋਰ ਕਰਨ ਲਈ ਇੱਕ ਮੈਮੋਰੀ ਖੇਤਰ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਅਤੇ ਡਿਸਪਲੇ ਸਮੱਗਰੀ ਨੂੰ ਮੈਮੋਰੀ ਵਿੱਚ ਡਾਟਾ ਬਦਲ ਕੇ ਬਦਲਿਆ ਜਾ ਸਕਦਾ ਹੈ। github 'ਤੇ ਇੱਕ ਓਪਨ ਸੋਰਸ ਪ੍ਰੋਜੈਕਟ ਹੈ: fbcp-ili9341. ਹੋਰ fbcp ਪ੍ਰੋਜੈਕਟਾਂ ਦੀ ਤੁਲਨਾ ਵਿੱਚ, ਇਹ ਪ੍ਰੋਜੈਕਟ 60fps ਤੱਕ ਦੀ ਗਤੀ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਅੰਸ਼ਕ ਤਾਜ਼ਗੀ ਅਤੇ DMA ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ।
ਡਰਾਈਵਰ ਡਾਊਨਲੋਡ ਕਰੋ
sudo apt-get install cmake -y cd ~ wget https://www.waveshare.com/w/upload/1/18/Waveshare_fbcp.zip unzip Waveshare_fbcp.zip cd Waveshare_fbcp/ sudo chmod +x ./shell/*
ਢੰਗ 1: ਇੱਕ ਸਕ੍ਰਿਪਟ ਦੀ ਵਰਤੋਂ ਕਰੋ (ਸਿਫ਼ਾਰਸ਼ੀ)
ਇੱਥੇ ਅਸੀਂ ਕਈ ਸਕ੍ਰਿਪਟਾਂ ਲਿਖੀਆਂ ਹਨ ਜੋ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਉਹਨਾਂ ਦੀ ਆਪਣੀ ਸਕ੍ਰੀਨ ਦੇ ਅਨੁਸਾਰ ਤੇਜ਼ੀ ਨਾਲ fbcp ਦੀ ਵਰਤੋਂ ਕਰਨ ਅਤੇ ਸੰਬੰਧਿਤ ਕਮਾਂਡਾਂ ਨੂੰ ਚਲਾਉਣ ਦੀ ਆਗਿਆ ਦਿੰਦੀਆਂ ਹਨ ਜੇਕਰ ਤੁਸੀਂ ਇੱਕ ਸਕ੍ਰਿਪਟ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋ ਅਤੇ ਇਸਨੂੰ ਸੋਧਣ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ, ਤਾਂ ਤੁਸੀਂ ਹੇਠਾਂ ਦਿੱਤੀ ਦੂਜੀ ਵਿਧੀ ਨੂੰ ਅਣਡਿੱਠ ਕਰ ਸਕਦੇ ਹੋ। ਨੋਟ: ਸਕ੍ਰਿਪਟ ਸੰਬੰਧਿਤ /boot/config.txt ਅਤੇ /etc/rc.local ਨੂੰ ਬਦਲ ਦੇਵੇਗੀ ਅਤੇ ਰੀਸਟਾਰਟ ਕਰੇਗੀ, ਜੇਕਰ ਉਪਭੋਗਤਾ ਨੂੰ ਲੋੜ ਹੈ, ਤਾਂ ਕਿਰਪਾ ਕਰਕੇ ਸੰਬੰਧਿਤ ਦਾ ਬੈਕਅੱਪ ਲਓ। files ਪੇਸ਼ਗੀ ਵਿੱਚ.
#0.96inch LCD ਮੋਡੀਊਲ sudo ./shell/waveshare-0inch96 #1.14inch LCD ਮੋਡੀਊਲ sudo ./shell/waveshare-1inch14 #1.3inch LCD ਮੋਡੀਊਲ sudo ./shell/waveshare-1inch3 #1.44inch -1inch44 #1.54inch LCD ਮੋਡੀਊਲ sudo ./shell/waveshare-1inch54 #1.8inch LCD ਮੋਡੀਊਲ sudo ./shell/waveshare-1inch8 #2inch LCD ਮੋਡੀਊਲ sudo ./shell/waveshare-2inch #2.4inch/waveshare-2inch #4inch LCD ਮੋਡੀਊਲ sudo. waveshare-XNUMXinchXNUMX
ਢੰਗ 2: ਦਸਤੀ ਸੰਰਚਨਾ
ਵਾਤਾਵਰਣ ਸੰਰਚਨਾ
Raspberry Pi ਦੇ vc4-kms-v3d ਕਾਰਨ fbcp ਫੇਲ ਹੋ ਜਾਵੇਗਾ, ਇਸਲਈ ਸਾਨੂੰ fbcp ਵਿੱਚ ਸਥਾਪਤ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ vc4-kms-v3d ਨੂੰ ਬੰਦ ਕਰਨ ਦੀ ਲੋੜ ਹੈ।
sudo nano /boot/config.txt
ਬੱਸ ਹੇਠਾਂ ਦਿੱਤੀ ਤਸਵੀਰ ਨਾਲ ਸੰਬੰਧਿਤ ਬਿਆਨ ਨੂੰ ਬਲੌਕ ਕਰੋ:
ਰੀਬੂਟ ਕਰੋ:
sudo ਰੀਬੂਟ
ਕੰਪਾਇਲ ਅਤੇ ਚਲਾਓ
mkdir ਬਿਲਡ cd cmake [options] .. sudo make -j sudo ./fbcp
cmake [options] ਦੇ ਉੱਪਰ, ਤੁਹਾਡੇ ਦੁਆਰਾ ਵਰਤੇ ਗਏ LCD ਮੋਡੀਊਲ ਦੇ ਅਨੁਸਾਰ ਇਸਨੂੰ ਆਪਣੇ ਆਪ ਬਦਲੋ।
#0.96inch LCD ਮੋਡੀਊਲ sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_0INCH96_LCD=ON -DBACKLIG HT_CONTROL=ON -DSTATISTICS=0 .. #1.14 ਇੰਚ LCD ਮੋਡੀਊਲ sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWACKLIG 1_LCD=ON -DBACKLIG HT_CONTROL=ON -DSTATISTICS=14 .. #0ਇੰਚ LCD ਮੋਡੀਊਲ sudo cmake -DSPI_BUS_CLOCK_DIVISOR=1.3 -DWAVESHARE_20INCH1_LCD=ON -DBACKLIGH T_CONTROL=ON -DSTATISTICS=3 .. #0inch LCD ਮੋਡੀਊਲ sudo cmake -DSPI_BUS_CLOCK_DIVISOR=1.54_DWACKLIGHT 20_LCD=ON -DBACKLIG HT_CONTROL=ON -DSTATISTICS =1 .. #54ਇੰਚ ਐਲਸੀਡੀ ਮੋਡੀਊਲ sudo cmake -DSPI_BUS_CLOCK_DIVISOR=0 -DWAVESHARE_1.8INCH20_LCD=ON -DBACKLIGH T_CONTROL=ON -DSTATISTICS=1 .. #8inch LCD ਮੋਡੀਊਲ sudo cmake -DSPI_BUS_CLOCK_DIVISOR=0_DWACK_VIDS_2 CD=ON -DBACKLIGHT _CONTROL=ON - DSTATISTICS=20 .. #2inch LCD ਮੋਡੀਊਲ sudo cmake -DSPI_BUS_CLOCK_DIVISOR=0 -DWAVESHARE_2.4INCH20_LCD=ON -DBACKLIGH T_CONTROL=ON -DSTATISTICS=2 ..
ਸਵੈਚਲਿਤ ਤੌਰ 'ਤੇ ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਸੈੱਟਅੱਪ ਕਰੋ
sudo cp ~/Waveshare_fbcp/buil d/fbcp /usr/local/bin/fbcp sudo nano /etc/rc.local
ਐਗਜ਼ਿਟ 0 ਤੋਂ ਪਹਿਲਾਂ fbcp& ਜੋੜੋ। ਨੋਟ ਕਰੋ ਕਿ ਤੁਹਾਨੂੰ ਬੈਕਗ੍ਰਾਉਂਡ ਵਿੱਚ ਚਲਾਉਣ ਲਈ "&" ਜੋੜਨਾ ਚਾਹੀਦਾ ਹੈ, ਨਹੀਂ ਤਾਂ ਸਿਸਟਮ ਚਾਲੂ ਨਹੀਂ ਹੋ ਸਕਦਾ ਹੈ।
ਡਿਸਪਲੇ ਰੈਜ਼ੋਲਿਊਸ਼ਨ ਸੈੱਟ ਕਰੋ
ਯੂਜ਼ਰ ਇੰਟਰਫੇਸ ਡਿਸਪਲੇਅ ਆਕਾਰ /boot/config.txt ਵਿੱਚ ਸੈੱਟ ਕਰੋ file.
sudo nano /boot/config.txt
ਫਿਰ config.txt ਦੇ ਅੰਤ ਵਿੱਚ ਹੇਠ ਲਿਖੀਆਂ ਲਾਈਨਾਂ ਜੋੜੋ।
hdmi_force_hotplug=1 hdmi_cvt=[options] hdmi_group=2 hdmi_mode=1 hdmi_mode=87 display_rotate=0
ਉਪਰੋਕਤ hdmi_cvt=[options] ਨੂੰ LCD ਮੋਡੀਊਲ ਦੇ ਅਨੁਸਾਰ ਬਦਲੋ ਜੋ ਤੁਸੀਂ ਵਰਤ ਰਹੇ ਹੋ।
#2.4ਇੰਚ ਐਲਸੀਡੀ ਮੋਡੀਊਲ ਅਤੇ 2ਇੰਚ ਐਲਸੀਡੀ ਮੋਡੀਊਲ hdmi_cvt=640 480 60 1 0 0 0
#1.8 ਇੰਚ LCD ਮੋਡੀਊਲ hdmi_cvt=400 300 60 1 0 0 0
#1.3 ਇੰਚ ਐਲਸੀਡੀ ਮੋਡੀਊਲ ਅਤੇ 1.54 ਇੰਚ ਐਲਸੀਡੀ ਮੋਡੀਊਲ hdmi_cvt=300 300 60 1 0 0 0
#1.14 ਇੰਚ LCD ਮੋਡੀਊਲ hdmi_cvt=300 170 60 1 0 0 0
#0.96 ਇੰਚ LCD ਮੋਡੀਊਲ hdmi_cvt=300 150 60 1 0 0 0
ਅਤੇ ਫਿਰ ਸਿਸਟਮ ਨੂੰ ਰੀਬੂਟ ਕਰੋ:
sudo ਰੀਬੂਟ
ਸਿਸਟਮ ਨੂੰ ਰੀਬੂਟ ਕਰਨ ਤੋਂ ਬਾਅਦ, Raspberry Pi OS ਯੂਜ਼ਰ ਇੰਟਰਫੇਸ ਡਿਸਪਲੇ ਕੀਤਾ ਜਾਵੇਗਾ।
ਐਸਟੀਐਮ 32
ਹਾਰਡਵੇਅਰ ਕਨੈਕਸ਼ਨ
ਸਾਡੇ ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤਾ ਗਿਆ ਡੈਮੋ STM32F103RBT6 'ਤੇ ਅਧਾਰਤ ਹੈ, ਅਤੇ ਇਹ STM32F103RBT6 ਪਿੰਨਾਂ ਨਾਲ ਸੰਬੰਧਿਤ ਹੈ। ਜੇਕਰ ਤੁਹਾਨੂੰ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਪੋਰਟ ਕਰਨ ਦੀ ਲੋੜ ਹੈ, ਤਾਂ ਤੁਸੀਂ ਇਸਨੂੰ ਅਸਲ ਪਿੰਨ ਦੇ ਅਨੁਸਾਰ ਕਨੈਕਟ ਕਰ ਸਕਦੇ ਹੋ।
STM32F103ZET ਪਿੰਨ ਕਨੈਕਸ਼ਨ ਪੱਤਰ-ਵਿਹਾਰ
LCD VCC GND DIN CLK
CS DC RST BL
STM32 3.3V GND PA7 PA5 PB6 PA8 PA9 PC7
ਸਾਡੀ ਕੰਪਨੀ ਦੁਆਰਾ ਇੱਕ ਸਾਬਕਾ ਵਜੋਂ ਵਿਕਸਤ ਕੀਤੇ XNUCLEO-F103RB ਨੂੰ ਲਓampਲੇ, ਕੁਨੈਕਸ਼ਨ ਹੇਠ ਲਿਖੇ ਅਨੁਸਾਰ ਹੈ:
ਡੈਮੋ ਚਲਾਓ
ਡੈਮੋ ਡਾਊਨਲੋਡ ਕਰੋ ਅਤੇ STM32 ਲੱਭੋ file ਡਾਇਰੈਕਟਰੀ, STM32STM32F103RBT6MDK-ARM ਦੀ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ LCD_demo.uvprojx ਖੋਲ੍ਹੋ, ਫਿਰ ਤੁਸੀਂ ਡੈਮੋ ਦੇਖ ਸਕਦੇ ਹੋ।
main.c ਖੋਲ੍ਹੋ ਅਤੇ ਤੁਸੀਂ ਸਾਰੇ ਟੈਸਟ ਡੈਮੋ ਦੇਖ ਸਕਦੇ ਹੋ। ਜਿਵੇਂ ਕਿ ਅਸੀਂ 1.9-ਇੰਚ LCD ਮੋਡੀਊਲ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਾਂ, ਸਾਨੂੰ “LCD_1in9_test();” ਦੇ ਸਾਹਮਣੇ ਟਿੱਪਣੀ ਨੂੰ ਹਟਾਉਣ ਦੀ ਲੋੜ ਹੈ ਅਤੇ ਦੁਬਾਰਾ ਕੰਪਾਇਲ ਅਤੇ ਡਾਊਨਲੋਡ ਕਰੋ।
ਡੈਮੋ ਵਰਣਨ
ਅੰਡਰਲਾਈੰਗ ਹਾਰਡਵੇਅਰ ਇੰਟਰਫੇਸ
ਡਾਟਾ ਕਿਸਮ
# ਪਰਿਭਾਸ਼ਿਤ UBYTE # ਪਰਿਭਾਸ਼ਿਤ UWORD # UDOUBLE ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ
uint8_t uint16_t uint32_t
ਮੋਡੀਊਲ ਦੀ ਸ਼ੁਰੂਆਤ ਅਤੇ ਨਿਕਾਸ ਦੀ ਪ੍ਰਕਿਰਿਆ
void DEV_Module_Init(void); void DEV_Module_Exit(void); ਨੋਟ: 1. ਇੱਥੇ LCD scre en ਦੀ ਵਰਤੋਂ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਅਤੇ ਬਾਅਦ ਵਿੱਚ ਕੁਝ GPIO ਦੀ ਪ੍ਰੋਸੈਸਿੰਗ ਹੈ; 2. DEV_Module_Exit ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਨ ਤੋਂ ਬਾਅਦ, LCD ਡਿਸਪਲੇਅ ਬੰਦ ਹੋ ਜਾਵੇਗਾ;
GPIO ਲਿਖੋ ਅਤੇ ਪੜ੍ਹੋ
void DEV_Digital_Write(UWORD ਪਿੰਨ, UBYTE ਮੁੱਲ); UBYTE DEV_Digital_Read(UWORD ਪਿਨ);
SPI ਡਾਟਾ ਲਿਖਦਾ ਹੈ
void DEV_SPI_WRITE(UBYTE _dat);
ਉਪਰਲੀ ਐਪਲੀਕੇਸ਼ਨ
LCDs ਲਈ, ਇਹ ਉਪਰਲੀ ਐਪਲੀਕੇਸ਼ਨ ਹੈ ਜੋ ਤਸਵੀਰਾਂ ਖਿੱਚਦੀ ਹੈ, ਚਾਈਨਜ਼/ਅੰਗਰੇਜ਼ੀ ਅੱਖਰ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਦੀ ਹੈ, ਤਸਵੀਰਾਂ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਦੀ ਹੈ, ਆਦਿ। ਬਹੁਤ ਸਾਰੇ ਦੋਸਤਾਂ ਨੇ ਕੁਝ ਗ੍ਰਾਫਿਕਸ ਪ੍ਰੋਸੈਸਿੰਗ ਬਾਰੇ ਪੁੱਛਿਆ ਹੈ। ਅਸੀਂ ਇੱਥੇ ਕੁਝ ਬੁਨਿਆਦੀ ਫੰਕਸ਼ਨ ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਾਂ। ਤੁਸੀਂ ਹੇਠਾਂ ਦਿੱਤੀ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ GUI ਲੱਭ ਸਕਦੇ ਹੋ: STM32STM32F103RBUserGUI_DEVGUI_Paint.c(.h) ਨੋਟ: STM32 ਅਤੇ Arduino ਦੀਆਂ RAM ਸੀਮਾਵਾਂ ਦੇ ਕਾਰਨ GUI ਸਿੱਧੇ LCD RAM ਵਿੱਚ ਲਿਖਿਆ ਗਿਆ ਹੈ।
ਹੇਠ ਦਿੱਤੀ ਡਾਇਰੈਕਟਰੀ GUI ਨਿਰਭਰਤਾ ਲਈ ਫੌਂਟ ਹੈ: STM32STM32F103RBUserFonts
ਨਵੀਂ ਚਿੱਤਰ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ: ਚਿੱਤਰ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਵਿੱਚ ਸ਼ਾਮਲ ਹਨ: ਚਿੱਤਰ ਕੈਸ਼ ਦਾ ਨਾਮ, ਚੌੜਾਈ, ਉਚਾਈ, ਘੁੰਮਣ ਵਾਲਾ ਕੋਣ ਅਤੇ ਰੰਗ।
void Paint_NewImage(UWORD ਚੌੜਾਈ, UWORD ਉਚਾਈ, UWORD ਰੋਟੇਟ, UWORD ਰੰਗ); ਪੈਰਾਮੀਟਰ:
ਚੌੜਾਈ: ਚਿੱਤਰ ਕੈਸ਼ ਦੀ ਚੌੜਾਈ ਉਚਾਈ: ਚਿੱਤਰ ਕੈਸ਼ ਦੀ ਉਚਾਈ ਘੁੰਮਾਓ: ਚਿੱਤਰ ਕੈਸ਼ ਦਾ ਘੁੰਮਣ ਵਾਲਾ ਕੋਣ ਰੰਗ: ਚਿੱਤਰ ਕੈਸ਼ ਦਾ ਰੰਗ
ਸਕ੍ਰੀਨ ਕਲੀਅਰਿੰਗ ਫੰਕਸ਼ਨ ਸੈੱਟ ਕਰੋ, ਆਮ ਤੌਰ 'ਤੇ LCD ਦੇ ਸਪਸ਼ਟ ਫੰਕਸ਼ਨ ਨੂੰ ਕਾਲ ਕਰੋ;
void Paint_SetClearFuntion(void (*Clear)(UWORD)); ਪੈਰਾਮੀਟਰ:
ਕਲੀਅਰ: ਸਕਰੀਨ ਕਲੀਅਰਿੰਗ ਫੰਕਸ਼ਨ ਲਈ ਇੱਕ ਪੁਆਇੰਟਰ, ਜੋ ਸਕ੍ਰੀਨ ਨੂੰ ਇੱਕ ਖਾਸ ਰੰਗ ਵਿੱਚ ਤੇਜ਼ੀ ਨਾਲ ਸਾਫ਼ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ;
ਡਰਾਇੰਗ ਪਿਕਸਲ ਦਾ ਫੰਕਸ਼ਨ ਸੈੱਟ ਕਰੋ, ਆਮ ਤੌਰ 'ਤੇ LCD ਦੇ DrawPaint ਫੰਕਸ਼ਨ ਨੂੰ ਕਾਲ ਕਰੋ;
void Paint_SetDisplayFuntion(void (*Display)(UWORD,UWORD,UWORD)); ਪੈਰਾਮੀਟਰ:
ਡਿਸਪਲੇਅ: ਡਰਾਇੰਗ ਪਿਕਸਲ ਦੇ ਫੰਕਸ਼ਨ ਲਈ ਪੁਆਇੰਟਰ, ਜੋ ਕਿ LCD ਅੰਦਰੂਨੀ ਰੈਮ ਦੇ ਨਿਰਧਾਰਤ ਸਥਾਨ 'ਤੇ ਡਾਟਾ ਲਿਖਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ;
ਚਿੱਤਰ ਕੈਸ਼ ਚੁਣੋ: ਚਿੱਤਰ ਕੈਸ਼ ਚੁਣੋ, ਚੋਣ ਦਾ ਉਦੇਸ਼ ਇਹ ਹੈ ਕਿ ਤੁਸੀਂ ਕਈ ਚਿੱਤਰ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬਣਾ ਸਕਦੇ ਹੋ, ਚਿੱਤਰ ਕੈਚ ਮਲਟੀਪਲ ਮੌਜੂਦ ਹੋ ਸਕਦੇ ਹਨ, ਅਤੇ ਤੁਸੀਂ ਹਰੇਕ ਚਿੱਤਰ ਨੂੰ ਚੁਣ ਸਕਦੇ ਹੋ ਜੋ ਤੁਸੀਂ ਬਣਾਇਆ ਹੈ।
void Paint_SelectImage(UBYTE *ਚਿੱਤਰ) ਪੈਰਾਮੀਟਰ:
ਚਿੱਤਰ: ਚਿੱਤਰ ਕੈਸ਼ ਦਾ ਨਾਮ, ਜੋ ਅਸਲ ਵਿੱਚ ਚਿੱਤਰ ਕੈਸ਼ ਦੇ f ਪਹਿਲੇ ਪਤੇ ਦਾ ਸੰਕੇਤਕ ਹੈ;
ਚਿੱਤਰ ਰੋਟੇਸ਼ਨ: ਚੁਣੇ ਹੋਏ ਚਿੱਤਰ ਦੇ ਘੁੰਮਣ ਵਾਲੇ ਕੋਣ ਨੂੰ ਸੈੱਟ ਕਰੋ, ਅਤੇ ਇਸਨੂੰ "Paint_SelectImage()" ਤੋਂ ਬਾਅਦ ਵਰਤਣ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਅਤੇ ਤੁਸੀਂ 0, 90, 180, 270 ਨੂੰ ਘੁੰਮਾਉਣ ਦੀ ਚੋਣ ਕਰ ਸਕਦੇ ਹੋ।
void Paint_SetRotate(UWORD ਰੋਟੇਟ) ਪੈਰਾਮੀਟਰ:
ਰੋਟੇਟ: ਚਿੱਤਰ ਚੋਣ ਕੋਣ, ਤੁਸੀਂ ਕ੍ਰਮਵਾਰ 0, 90, 180, ਅਤੇ 270 ਡਿਗਰੀ ਦੇ ਅਨੁਸਾਰੀ ROTATE_0, ROTATE_90, ROTAT E_180, ਅਤੇ ROTATE_270 ਚੁਣ ਸਕਦੇ ਹੋ
ਨੋਟ: ਵੱਖ-ਵੱਖ ਚੋਣ ਕੋਣਾਂ ਦੇ ਅਧੀਨ, ਕੋਆਰਡੀਨੇਟ ਵੱਖ-ਵੱਖ ਸ਼ੁਰੂਆਤੀ ਪਿਕਸਲਾਂ ਨਾਲ ਮੇਲ ਖਾਂਦੇ ਹਨ। ਇੱਥੇ ਅਸੀਂ 1.14 ਨੂੰ ਸਾਬਕਾ ਵਜੋਂ ਲੈਂਦੇ ਹਾਂample, ਅਤੇ ਚਾਰ ਤਸਵੀਰਾਂ 0°, 90°, 180°, ਅਤੇ 270° ਕ੍ਰਮ ਵਿੱਚ ਹਨ। ਸਿਰਫ ਹਵਾਲੇ ਲਈ:
ਚਿੱਤਰ ਮਿਰਰ ਫਲਿੱਪ: ਚੁਣੇ ਹੋਏ ਚਿੱਤਰ ਦੇ ਸ਼ੀਸ਼ੇ ਦੀ ਫਲਿੱਪ ਸੈੱਟ ਕਰੋ, ਤੁਸੀਂ ਕੋਈ ਵੀ ਸ਼ੀਸ਼ਾ, ਹਰੀਜੱਟਲ ਮਿਰਰ, ਵਰਟੀਕਲ ਮਿਰਰ, ਜਾਂ ਚਿੱਤਰ ਕੇਂਦਰ ਸ਼ੀਸ਼ਾ ਨਹੀਂ ਚੁਣ ਸਕਦੇ ਹੋ।
void Paint_SetMirroring(UBYTE ਮਿਰਰ) ਪੈਰਾਮੀਟਰ:
ਮਿਰਰ: MIRROR_NONEMIRROR_HORIZONTALMIRROR_VERTICALMIRROR_ORI GIN ਕ੍ਰਮਵਾਰ ਕਿਸੇ ਵੀ ਮਿਰਰਿੰਗ, ਹਰੀਜੱਟਲ ਮਿਰਰਿੰਗ, ve rtical ਮਿਰਰਿੰਗ, ਚਿੱਤਰ ਕੇਂਦਰ ਮਿਰਰਿੰਗ ਨਾਲ ਸੰਬੰਧਿਤ
ਕੈਸ਼ ਵਿੱਚ ਬਿੰਦੂ ਦੀ ਡਿਸਪਲੇਅ ਸਥਿਤੀ ਅਤੇ ਰੰਗ ਸੈਟ ਕਰੋ: ਕੈਸ਼ ਵਿੱਚ ਪੁਆਇੰਟਾਂ ਦੀ ਸਥਿਤੀ ਅਤੇ ਰੰਗ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕਰਨ ਲਈ ਇੱਥੇ GUI ਦਾ ਮੁੱਖ ਕਾਰਜ ਹੈ।
void Paint_SetPixel(UWORD Xpoint, UWORD Ypoint, UWORD ਰੰਗ) ਪੈਰਾਮੀਟਰ:
XPoint: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ ਬਿੰਦੂ ਦੀ X ਸਥਿਤੀ YPoint: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ ਬਿੰਦੂ ਦੀ Y ਸਥਿਤੀ ਰੰਗ: ਬਿੰਦੂ ਡਿਸਪਲੇਅ ਦਾ ਰੰਗ
ਚਿੱਤਰ ਕੈਸ਼ ਰੰਗ ਭਰਦਾ ਹੈ: ਚਿੱਤਰ ਕੈਸ਼ ਨੂੰ ਇੱਕ ਖਾਸ ਰੰਗ ਨਾਲ ਭਰੋ, ਆਮ ਤੌਰ 'ਤੇ ਸਕ੍ਰੀਨ ਨੂੰ ਖਾਲੀ ਵਿੱਚ ਫਲੈਸ਼ ਕਰਨ ਲਈ।
void Paint_Clear(UWORD ਰੰਗ) ਪੈਰਾਮੀਟਰ:
ਰੰਗ: ਭਰਨ ਦਾ ਰੰਗ
ਚਿੱਤਰ ਕੈਸ਼ ਵਿੰਡੋ ਦੇ ਹਿੱਸੇ ਦਾ ਰੰਗ ਭਰਨਾ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੰਡੋ ਦੇ ਇੱਕ ਨਿਸ਼ਚਿਤ ਹਿੱਸੇ ਨੂੰ ਇੱਕ ਖਾਸ ਰੰਗ ਨਾਲ ਭਰੋ, ਆਮ ਤੌਰ 'ਤੇ ਵਿੰਡੋ ਵਾਈਟਿੰਗ ਫੰਕਸ਼ਨ ਵਜੋਂ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਅਕਸਰ ਸਮਾਂ ਡਿਸਪਲੇ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਇੱਕ ਸਕਿੰਟ ਲਈ ਚਿੱਟਾ ਕਰਨਾ।
void Paint_ClearWindows(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD ਯੇਨ d, UWORD ਰੰਗ) ਪੈਰਾਮੀਟਰ:
ਐਕਸਸਟਾਰਟ: ਵਿੰਡੋ ਦੇ ਐਕਸ ਸਟਾਰਟ ਕੋਆਰਡੀਨੇਟਸ ਵਾਈਸਟਾਰਟ: ਵਿੰਡੋ ਦੇ ਵਾਈ ਸਟਾਰਟ ਕੋਆਰਡੀਨੇਟਸ Xend: ਵਿੰਡੋ ਦੇ ਐਕਸ ਐਂਡ ਕੋਆਰਡੀਨੇਟਸ ਯੈਂਡ: ਵਿੰਡੋ ਦੇ ਵਾਈ ਐਂਡ ਕੋਆਰਡੀਨੇਟਸ ਰੰਗ: ਭਰੋ ਰੰਗ
ਬਿੰਦੂ ਖਿੱਚੋ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ, (ਐਕਸਪੁਆਇੰਟ, ਵਾਈਪੁਆਇੰਟ) 'ਤੇ ਪੁਆਇੰਟ ਖਿੱਚੋ, ਤੁਸੀਂ ਰੰਗ, ਬਿੰਦੂ ਦਾ ਆਕਾਰ ਅਤੇ ਬਿੰਦੂ ਸ਼ੈਲੀ ਚੁਣ ਸਕਦੇ ਹੋ।
void Paint_DrawPoint(UWORD Xpoint, UWORD Ypoint, UWORD ਰੰਗ, DOT_PIXEL ਕਰੋ
t_Pixel, DOT_STYLE Dot_Style)
ਪੈਰਾਮੀਟਰ:
ਐਕਸਪੁਆਇੰਟ: ਬਿੰਦੂ ਦਾ X ਕੋਆਰਡੀਨੇਟ
Ypoint: ਬਿੰਦੂ ਦਾ 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, UW
ORD ਰੰਗ, LINE_STYLE ਲਾਈਨ_ਸ਼ੈਲੀ , LINE_STYLE ਲਾਈਨ_ਸ਼ੈਲੀ)
ਪੈਰਾਮੀਟਰ:
Xstart: ਲਾਈਨ ਦੇ ਸ਼ੁਰੂਆਤੀ ਬਿੰਦੂ ਦਾ X ਕੋਆਰਡੀਨੇਟ
Ystart: ਲਾਈਨ ਦੇ ਸ਼ੁਰੂਆਤੀ ਬਿੰਦੂ ਦਾ Y ਕੋਆਰਡੀਨੇਟ
Xend: ਲਾਈਨ ਦਾ X ਐਂਡਪੁਆਇੰਟ ਕੋਆਰਡੀਨੇਟ
ਯੈਂਡ: ਲਾਈਨ ਦਾ Y ਅੰਤ ਬਿੰਦੂ ਕੋਆਰਡੀਨੇਟ
ਰੰਗ: ਰੰਗ ਭਰੋ
ਲਾਈਨ_ਚੌੜਾਈ: ਲਾਈਨ ਦੀ ਚੌੜਾਈ, 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;
ਲਾਈਨ_ਸ਼ੈਲੀ: ਲਾਈਨ ਸ਼ੈਲੀ, ਚੁਣੋ ਕਿ ਲਾਈਨਾਂ ਜੁੜੀਆਂ ਹਨ ਜਾਂ ਨਹੀਂ
ਇੱਕ ਸਿੱਧੀ ਲਾਈਨ ਜਾਂ ਬਿੰਦੀ ਵਾਲੀ ਲਾਈਨ।
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 ਯੇਨ
d, UWORD ਰੰਗ, DOT_PIXEL ਲਾਈਨ_ਚੌੜਾਈ, DRAW_FILL Draw_Fill)
ਪੈਰਾਮੀਟਰ:
Xstart: ਆਇਤਕਾਰ ਦੇ ਸ਼ੁਰੂਆਤੀ ਬਿੰਦੂ ਦਾ X ਕੋਆਰਡੀਨੇਟ
Ystart: ਆਇਤਕਾਰ ਦੇ ਸ਼ੁਰੂਆਤੀ ਬਿੰਦੂ ਦਾ Y ਕੋਆਰਡੀਨੇਟ
Xend: ਆਇਤਕਾਰ ਦੇ ਅੰਤ ਬਿੰਦੂ ਦਾ X ਕੋਆਰਡੀਨੇਟ
ਯੈਂਡ: ਆਇਤਕਾਰ ਦੇ ਅੰਤ ਬਿੰਦੂ ਦਾ Y ਕੋਆਰਡੀਨੇਟ
ਰੰਗ: ਭਰਿਆ ਰੰਗ
ਰੇਖਾ_ਚੌੜਾਈ: ਆਇਤਕਾਰ ਦੇ ਚਾਰ ਪਾਸਿਆਂ ਦੀ ਚੌੜਾਈ, ਪ੍ਰਦਾਨ ਕੀਤੀ ਜਾਂਦੀ ਹੈ
g 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;
ਡਰਾਅ_ਫਿਲ: ਭਰੋ, ਕੀ ਆਇਤ ਦੇ ਅੰਦਰ ਨੂੰ ਭਰਨਾ ਹੈ
typedef enum {
DRAW_FILL_EMPTY = 0,
DRAW_FILL_FULL,
} DRAW_FILL;
ਇੱਕ ਚੱਕਰ ਖਿੱਚੋ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ, (X_Center Y_Center) ਨੂੰ ਕੇਂਦਰ ਵਜੋਂ, ਰੇਡੀਅਸ ਦੇ ਨਾਲ ਇੱਕ ਚੱਕਰ ਖਿੱਚੋ, ਤੁਸੀਂ ਰੰਗ ਚੁਣ ਸਕਦੇ ਹੋ, ਲਾਈਨ ਦੀ ਚੌੜਾਈ, ਅਤੇ ਕੀ ਚੱਕਰ ਦੇ ਅੰਦਰ ਭਰਨਾ ਹੈ।
void Paint_DrawCircle(UWORD X_Center, UWORD Y_Center, UWORD ਰੇਡੀਅਸ, UWORD
ਰੰਗ, DOT_PIXEL ਲਾਈਨ_ਚੌੜਾਈ, DRAW_FILL Draw_Fill)
ਪੈਰਾਮੀਟਰ:
X_Center: ਚੱਕਰ ਦੇ ਕੇਂਦਰ ਦਾ X ਕੋਆਰਡੀਨੇਟ
Y_Center: ਚੱਕਰ ਰੇਡੀਅਸ ਸਰਕਲ ਰੇਡੀਅਸ ਦੇ ਕੇਂਦਰ ਦਾ Y ਕੋਆਰਡੀਨੇਟ
ਰੰਗ: ਭਰਨ ਦਾ ਰੰਗ
ਲਾਈਨ_ਚੌੜਾਈ: ਚਾਪ ਦੀ ਚੌੜਾਈ, 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;
ਡਰਾਅ_ਫਿਲ: ਭਰੋ, ਕੀ ਚੱਕਰ ਦੇ ਅੰਦਰ ਭਰਨਾ ਹੈ
typedef enum {
DRAW_FILL_EMPTY = 0,
DRAW_FILL_FULL,
} DRAW_FILL;
Ascii ਅੱਖਰ ਲਿਖੋ: ਚਿੱਤਰ ਬਫਰ ਵਿੱਚ, ਇੱਕ Ascii ਅੱਖਰ (Xstart Ystart) 'ਤੇ ਖੱਬੇ ਪਾਸੇ ਦੇ ਰੂਪ ਵਿੱਚ ਲਿਖੋ, ਤੁਸੀਂ Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ, ਫੌਂਟ ਫੋਰਗਰਾਉਂਡ ਰੰਗ, ਅਤੇ ਫੌਂਟ ਬੈਕਗਰਾਊਂਡ ਰੰਗ ਚੁਣ ਸਕਦੇ ਹੋ।
void Paint_DrawChar(UWORD Xstart, UWORD Ystart, const char Ascii_Char, sFO NT* ਫੌਂਟ, UWORD Color_Foreground, UWORD Color_Background) ਪੈਰਾਮੀਟਰ:
Xstart: ਅੱਖਰ Ystart ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ X ਕੋਆਰਡੀਨੇਟ: Ascii_Char Ascii ਅੱਖਰ ਅੱਖਰ ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ Y ਕੋਆਰਡੀਨੇਟ: Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ ਫੌਂਟਸ ਫੋਲਡਰ ਵਿੱਚ ਫੋਲੋਇੰਗ ਫੌਂਟਾਂ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ:
font85*8 font font127*12 font font1611*16 font 2014*20 font font2417*24 font Color_Foreground: font color Color_Background: ਬੈਕਗ੍ਰਾਊਂਡ ਰੰਗ
ਅੰਗਰੇਜ਼ੀ ਅੱਖਰ ਸਤਰ ਲਿਖੋ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ, (Xstart Ystart) ਖੱਬੇ ਪਾਸੇ ਦੇ ਰੂਪ ਵਿੱਚ, ਅੰਗਰੇਜ਼ੀ ਅੱਖਰਾਂ ਦੀ ਇੱਕ ਸਤਰ ਲਿਖੋ, ਤੁਸੀਂ Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ, ਫੌਂਟ ਫੋਰਗਰਾਉਂਡ ਰੰਗ, ਫੌਂਟ ਬੈਕਗਰਾਊਂਡ ਰੰਗ ਚੁਣ ਸਕਦੇ ਹੋ;
void Paint_DrawString_EN(UWORD Xstart, UWORD Ystart, const char * pString, sFONT* Font, UWORD Color_Foreground, UWORD Color_Background) ਪੈਰਾਮੀਟਰ:
Xstart: ਅੱਖਰ ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ X ਕੋਆਰਡੀਨੇਟ Ystart: ਫੌਂਟ pString ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ Y ਕੋਆਰਡੀਨੇਟ: ਸਤਰ, ਸਤਰ ਇੱਕ ਪੁਆਇੰਟਰ ਫੌਂਟ ਹੈ: Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ ਫੌਂਟਸ ਫੋਲਡਰ ਵਿੱਚ ਫੋਲੋਇੰਗ ਫੌਂਟਾਂ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ :
font85*8 font font127*12 font font1611*16 font 2014*20 font font2417*24 font Color_Foreground: font color Color_Background: ਬੈਕਗ੍ਰਾਊਂਡ ਰੰਗ
ਚੀਨੀ ਅੱਖਰ ਸਤਰ ਲਿਖੋ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ, (Xstart Ystart) ਖੱਬੇ ਪਾਸੇ ਦੇ ਰੂਪ ਵਿੱਚ, ਚੀਨੀ ਅੱਖਰਾਂ ਦੀ ਇੱਕ ਸਤਰ ਲਿਖੋ, ਤੁਸੀਂ GB2312 ਕੋਡ ਕੀਤੇ ਅੱਖਰ ਫੌਂਟ, ਫੌਂਟ ਫੋਰਗਰਾਉਂਡ ਰੰਗ, ਫੌਂਟ ਬੈਕਗਰਾਊਂਡ ਰੰਗ ਚੁਣ ਸਕਦੇ ਹੋ;
void Paint_DrawString_CN(UWORD Xstart, UWORD Ystart, const char * pString, cFONT* ਫੌਂਟ, UWORD Color_Foreground, UWORD Color_Background) ਪੈਰਾਮੀਟਰ:
Xstart: ਅੱਖਰ ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ X ਕੋਆਰਡੀਨੇਟ Ystart: ਅੱਖਰ pString ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ Y ਕੋਆਰਡੀਨੇਟ: ਸਤਰ, ਸਤਰ ਇੱਕ ਪੁਆਇੰਟਰ ਫੌਂਟ ਹੈ: GB2312 ਕੋਡਿਡ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ ਫੌਂਟ ਫੋਲਡਰ ਵਿੱਚ ਹੇਠਾਂ ਦਿੱਤੇ ng ਫੌਂਟ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ:
font12CNascii ਅੱਖਰ ਫੌਂਟ 11*21, ਚੀਨੀ ਫੌਂਟ 16*21 ਫੌਂਟ24CNascii ਅੱਖਰ ਫੌਂਟ 24*41, ਚੀਨੀ ਫੌਂਟ 32*41 ਰੰਗ_ਫੋਰਗਰਾਉਂਡ: ਫੌਂਟ ਰੰਗ ਰੰਗ_ਬੈਕਗ੍ਰਾਊਂਡ: ਬੈਕਗ੍ਰਾਊਂਡ ਦਾ ਰੰਗ
ਨੰਬਰ ਲਿਖੋ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ, ਖੱਬੇ ਪਾਸੇ (Xstart Ystart) 'ਤੇ ਨੰਬਰਾਂ ਦੀ ਇੱਕ ਸਤਰ ਲਿਖੋ, ਤੁਸੀਂ Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ, ਫੌਂਟ ਫੋਰਗਰਾਉਂਡ ਰੰਗ, ਫੌਂਟ ਬੈਕਗਰਾਊਂਡ ਰੰਗ ਚੁਣ ਸਕਦੇ ਹੋ।
void Paint_DrawNum(UWORD XPoint, UWORD Ypoint, int32_t ਨੰਬਰ, sFONT* Font, UWORD Color_Foreground, UWORD Color_Background) ਪੈਰਾਮੀਟਰ:
Xstart: ਅੱਖਰ ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ X ਕੋਆਰਡੀਨੇਟ Ystart: ਅੱਖਰ ਨੰਬਰ ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ Y ਕੋਆਰਡੀਨੇਟ: ਇੱਥੇ ਪ੍ਰਦਰਸ਼ਿਤ ਸੰਖਿਆ 32-ਬਿੱਟ ਲੰਬੀ ਇੰਟ ਕਿਸਮ ਵਿੱਚ ਸਟੋਰ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜਿਸ ਨੂੰ 2147483647 ਫੌਂਟ ਤੱਕ ਪ੍ਰਦਰਸ਼ਿਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ: Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ ਫੌਂਟਸ ਫੋਲਡਰ ਵਿੱਚ ਫੋਲੋਇੰਗ ਫੌਂਟਾਂ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ:
font85*8 font font127*12 font font1611*16 font 2014*20 font font2417*24 font Color_Foreground: font color Color_Background: ਬੈਕਗ੍ਰਾਊਂਡ ਰੰਗ
ਦਸ਼ਮਲਵ ਨਾਲ ਸੰਖਿਆਵਾਂ ਲਿਖੋ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ, (Xstart Ystart) ਖੱਬਾ ਸਿਰਾ ਹੈ, ਸੰਖਿਆਵਾਂ ਦੀ ਇੱਕ ਸਤਰ ਲਿਖੋ ਜਿਸ ਵਿੱਚ ਦਸ਼ਮਲਵ ਸੰਖਿਆਵਾਂ ਹੋ ਸਕਦੀਆਂ ਹਨ, ਤੁਸੀਂ Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ, ਫੌਂਟ ਫੋਰਗਰਾਉਂਡ ਰੰਗ, ਫੌਂਟ ਬੈਕਗਰਾਊਂਡ ਰੰਗ ਚੁਣ ਸਕਦੇ ਹੋ।
void Paint_DrawFloatNum(UWORD XPoint, UWORD YPoint, ਡਬਲ ਨੰਬਰ, UBYTE Decimal_Point, sFONT* Font, UWORD Color_Foreground, UWORD Color_Backg ਰਾਉਂਡ); ਪੈਰਾਮੀਟਰ:
Xstart: ਅੱਖਰ Ystart ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ X ਕੋਆਰਡੀਨੇਟ: ਅੱਖਰ ਨੰਬਰ ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ Y ਕੋਆਰਡੀਨੇਟ: ਇੱਥੇ ਪ੍ਰਦਰਸ਼ਿਤ ਸੰਖਿਆ ਡਬਲ ਕਿਸਮ ਵਿੱਚ ਸੁਰੱਖਿਅਤ ਕੀਤੀ ਗਈ ਹੈ, ਜੋ ਕਿ ਆਮ ਲੋੜਾਂ ਲਈ ਕਾਫੀ ਹੈ Decimal_Point: ਦੇ ਬਾਅਦ ਅੰਕਾਂ ਦੀ ਸੰਖਿਆ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰੋ ਦਸ਼ਮਲਵ ਬਿੰਦੂ t ਫੌਂਟ: Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ ਫੌਂਟਸ ਫੋਲਡਰ ਵਿੱਚ ਫੋਲੋਇੰਗ ਫੌਂਟਾਂ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ:
font85*8 font font127*12 font font1611*16 font 2014*20 font font2417*24 font Color_Foreground: font color Color_Background: ਬੈਕਗ੍ਰਾਊਂਡ ਰੰਗ
ਡਿਸਪਲੇ ਟਾਈਮ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ, (Xstart Ystart) ਖੱਬਾ ਸਿਖਰ ਹੈ, ਅਤੇ ਇਹ ਇੱਕ ਸਮੇਂ ਲਈ ਪ੍ਰਦਰਸ਼ਿਤ ਕੀਤਾ ਜਾਵੇਗਾ, ਅਤੇ ਤੁਸੀਂ Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ, ਫੌਂਟ ਫੋਰਗਰਾਉਂਡ ਰੰਗ, ਅਤੇ ਫੌਂਟ ਬੈਕਗਰਾਊਂਡ ਰੰਗ ਚੁਣ ਸਕਦੇ ਹੋ;
void Paint_DrawTime(UWORD Xstart, UWORD Ystart, PAINT_TIME *pTime, sFONT* ਫੌਂਟ, UWORD Color_Background, UWORD Color_Foreground) ਪੈਰਾਮੀਟਰ:
Xstart: ਅੱਖਰ Ystart ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ X ਕੋਆਰਡੀਨੇਟ: ਅੱਖਰ pTime ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ Y ਕੋਆਰਡੀਨੇਟ: ਪ੍ਰਦਰਸ਼ਿਤ ਸਮਾਂ, ਇੱਕ ਸਮਾਂ ਬਣਤਰ ਇੱਥੇ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਜਦੋਂ ਤੱਕ ਘੰਟੇ, ਮਿੰਟ ਅਤੇ ਸਕਿੰਟ ਦੇ ਅੰਕ ਪਾਸ ਕੀਤੇ ਜਾਂਦੇ ਹਨ ਪੈਰਾਮੀਟਰਾਂ ਨੂੰ; ਫੌਂਟ: Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ ਫੌਂਟਸ ਫੋਲਡਰ ਵਿੱਚ ਫੋਲੋਇੰਗ ਫੌਂਟਾਂ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ:
font85*8 font font127*12 font font1611*16 font 2014*20 font font2417*24 font Color_Foreground: font color Color_Background: ਬੈਕਗ੍ਰਾਊਂਡ ਰੰਗ
Arduino
ਨੋਟ: ਸਾਰੇ ਡੈਮੋ ਦੀ Arduino uno ਵਿੱਚ ਜਾਂਚ ਕੀਤੀ ਗਈ ਹੈ। ਜੇਕਰ ਤੁਹਾਨੂੰ ਹੋਰ ਕਿਸਮਾਂ ਦੀਆਂ Arduino ਦੀ ਲੋੜ ਹੈ, ਤਾਂ ਤੁਹਾਨੂੰ ਇਹ ਨਿਰਧਾਰਤ ਕਰਨ ਦੀ ਲੋੜ ਹੈ ਕਿ ਕੀ ਕਨੈਕਸ਼ਨ ਪਿੰਨ ਸਹੀ ਹਨ।
IDE ਸਥਾਪਨਾ
Arduino IDE ਇੰਸਟਾਲੇਸ਼ਨ ਕਦਮ
ਹਾਰਡਵੇਅਰ ਕਨੈਕਸ਼ਨ
Arduino UNO ਪਿੰਨ ਕਨੈਕਸ਼ਨ ਪੱਤਰ-ਵਿਹਾਰ
LCD VCC GND DIN CLK
CS DC RST BL
ਕੁਨੈਕਸ਼ਨ ਡਾਇਗਰਾਮ ਹੇਠ ਲਿਖੇ ਅਨੁਸਾਰ ਹੈ (ਵੱਡਾ ਕਰਨ ਲਈ ਕਲਿੱਕ ਕਰੋ):
UNO 5V
GND D11 D13 D10 D7 D8 D9
ਡੈਮੋ ਚਲਾਓ
ਡੈਮੋ ਡਾਊਨਲੋਡ ਕਰੋ ਅਤੇ ਇਸਨੂੰ ਅਨਜ਼ਿਪ ਕਰੋ। Arduino ਡੈਮੋ ਵਿੱਚ ਹੈ ~/Arduino/…. ਜਿਵੇਂ ਕਿ ਅਸੀਂ 1.9inch LCD ਮੋਡੀਊਲ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਾਂ, ਸਾਨੂੰ LCD_1inch9 ਨੂੰ ਖੋਲ੍ਹਣ ਦੀ ਲੋੜ ਹੈ file ਫੋਲਡਰ ਅਤੇ LCD_1inch9.ino ਚਲਾਓ file ਫੋਲਡਰ।
ਡੈਮੋ ਖੋਲ੍ਹੋ ਅਤੇ ਵਿਕਾਸ ਬੋਰਡ ਮਾਡਲ ਨੂੰ Arduino UNO ਵਜੋਂ ਚੁਣੋ।
ਅਨੁਸਾਰੀ COM ਪੋਰਟ ਚੁਣੋ।
ਅਤੇ ਫਿਰ ਕੰਪਾਇਲ ਅਤੇ ਡਾਊਨਲੋਡ 'ਤੇ ਕਲਿੱਕ ਕਰੋ।
ਡੈਮੋ ਵਰਣਨ File ਜਾਣ-ਪਛਾਣ
Arduino UNO ਨਿਯੰਤਰਿਤ 1.54inch LCD ਨੂੰ ਸਾਬਕਾ ਵਜੋਂ ਲਓample, ArduinoLCD_1inch54 ਡਾਇਰੈਕਟਰੀ ਖੋਲ੍ਹੋ।
LCD_1inch54.ino: ਇਸਨੂੰ Arduino IDE ਨਾਲ ਖੋਲ੍ਹੋ। LCD_Driver.cpp(.h): ਇਹ LCD ਸਕ੍ਰੀਨ ਦਾ ਡਰਾਈਵਰ ਹੈ। DEV_Config.cpp(.h): ਇਹ ਹਾਰਡਵੇਅਰ ਇੰਟਰਫੇਸ ਪਰਿਭਾਸ਼ਾ ਹੈ, ਜੋ ਕਿ ਰੀਡਿੰਗ ਅਤੇ ਰਾਈਟਿੰਗ ਪਿੰਨ ਪੱਧਰ, SPI ਟ੍ਰਾਂਸਮਿਸ਼ਨ ਡੇਟਾ, ਅਤੇ ਪਿੰਨ ਸ਼ੁਰੂਆਤ ਨੂੰ ਸ਼ਾਮਲ ਕਰਦੀ ਹੈ। font8.cpp, font12.cpp, font16.cpp, font20.cpp, font24.cpp, font24CN.cpp, fonts.h: ਵੱਖ-ਵੱਖ ਆਕਾਰਾਂ ਦੇ ਅੱਖਰਾਂ ਲਈ ਫੌਂਟ। image.cpp(.h): ਇਹ ਚਿੱਤਰ ਡੇਟਾ ਹੈ, ਜੋ ਕਿ ਕਿਸੇ ਵੀ BMP ਚਿੱਤਰ ਨੂੰ Img16Lcd (#Resource ਵਿੱਚ ਡਾਊਨਲੋਡ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ) ਰਾਹੀਂ 2-ਬਿੱਟ ਟਰੂ-ਕਲਰ ਚਿੱਤਰ ਐਰੇ ਵਿੱਚ ਬਦਲ ਸਕਦਾ ਹੈ। ਡੈਮੋ ਨੂੰ ਅੰਡਰਲਾਈੰਗ ਹਾਰਡਵੇਅਰ ਇੰਟਰਫੇਸ, ਮੱਧ-ਲੇਅਰ LCD ਡਰਾਈਵਰ, ਅਤੇ ਉਪਰਲੀ-ਲੇਅਰ ਐਪਲੀਕੇਸ਼ਨ ਵਿੱਚ ਵੰਡਿਆ ਗਿਆ ਹੈ।
ਅੰਡਰਲਾਈੰਗ ਹਾਰਡਵੇਅਰ ਇੰਟਰਫੇਸ
ਹਾਰਡਵੇਅਰ ਇੰਟਰਫੇਸ ਨੂੰ ਦੋ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਗਿਆ ਹੈ files DEV_Config.cpp (.h), ਅਤੇ ਫੰਕਸ਼ਨ ਜਿਵੇਂ ਕਿ ਪੜ੍ਹਨਾ ਅਤੇ ਲਿਖਣਾ ਪਿੰਨ ਪੱਧਰ, ਦੇਰੀ, ਅਤੇ SPI ਟ੍ਰਾਂਸਮਿਸ਼ਨ ਸ਼ਾਮਲ ਹਨ।
ਪਿੰਨ ਪੱਧਰ ਲਿਖੋ
void DEV_Digital_Write(int pin, int value)
ਪਹਿਲਾ ਪੈਰਾਮੀਟਰ ਪਿੰਨ ਹੈ, ਅਤੇ ਦੂਜਾ ਉੱਚ ਅਤੇ ਨੀਵਾਂ ਪੱਧਰ ਹੈ। ਪਿੰਨ ਪੱਧਰ ਲਿਖੋ
int DEV_Digital_Read(int pin)
ਪੈਰਾਮੀਟਰ ਪਿੰਨ ਹੈ, ਅਤੇ ਵਾਪਸੀ ਦਾ ਮੁੱਲ ਰੀਡ ਪਿੰਨ ਦਾ ਪੱਧਰ ਹੈ। ਦੇਰੀ
DEV_Delay_ms(ਅਨ-ਹਸਤਾਖਰਿਤ int ਦੇਰੀ ਦਾ ਸਮਾਂ)
ਮਿਲੀਸਕਿੰਟ ਪੱਧਰ ਦੇਰੀ। SPI ਆਉਟਪੁੱਟ ਡਾਟਾ
DEV_SPI_WRITE(ਹਸਤਾਖਰਿਤ ਚਾਰ ਡੇਟਾ)
ਪੈਰਾਮੀਟਰ ਚਾਰ ਕਿਸਮ ਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ 8 ਬਿੱਟ ਹਨ।
ਉਪਰਲੀ ਐਪਲੀਕੇਸ਼ਨ
LCDs ਲਈ, ਇਹ ਉਪਰਲੀ ਐਪਲੀਕੇਸ਼ਨ ਹੈ ਜੋ ਤਸਵੀਰਾਂ ਖਿੱਚਦੀ ਹੈ, ਚਾਈਨਜ਼/ਅੰਗਰੇਜ਼ੀ ਅੱਖਰ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਦੀ ਹੈ, ਤਸਵੀਰਾਂ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਦੀ ਹੈ, ਆਦਿ। ਬਹੁਤ ਸਾਰੇ ਦੋਸਤਾਂ ਨੇ ਕੁਝ ਗ੍ਰਾਫਿਕਸ ਪ੍ਰੋਸੈਸਿੰਗ ਬਾਰੇ ਪੁੱਛਿਆ ਹੈ। ਅਸੀਂ ਇੱਥੇ ਕੁਝ ਬੁਨਿਆਦੀ ਫੰਕਸ਼ਨ GUI_Paint.c(.h) ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਾਂ। ਨੋਟ: STM32 ਅਤੇ Arduino ਦੀਆਂ RAM ਸੀਮਾਵਾਂ ਦੇ ਕਾਰਨ GUI ਸਿੱਧੇ LCD RAM ਵਿੱਚ ਲਿਖਿਆ ਗਿਆ ਹੈ।
GUI ਦੁਆਰਾ ਵਰਤੇ ਗਏ ਫੌਂਟ ਸਾਰੇ ਫੌਂਟ*.cpp(h) 'ਤੇ ਨਿਰਭਰ ਕਰਦੇ ਹਨ। file ਉਸੇ ਦੇ ਤਹਿਤ file.
ਨਵੀਂ ਚਿੱਤਰ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ: ਚਿੱਤਰ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਵਿੱਚ ਸ਼ਾਮਲ ਹਨ: ਚਿੱਤਰ ਕੈਸ਼ ਦਾ ਨਾਮ, ਚੌੜਾਈ, ਉਚਾਈ, ਘੁੰਮਣ ਵਾਲਾ ਕੋਣ ਅਤੇ ਰੰਗ।
void Paint_NewImage(UWORD ਚੌੜਾਈ, UWORD ਉਚਾਈ, UWORD ਰੋਟੇਟ, UWORD ਰੰਗ); ਪੈਰਾਮੀਟਰ:
ਚੌੜਾਈ: ਚਿੱਤਰ ਕੈਸ਼ ਦੀ ਚੌੜਾਈ ਉਚਾਈ: ਚਿੱਤਰ ਕੈਸ਼ ਦੀ ਉਚਾਈ ਘੁੰਮਾਓ: ਚਿੱਤਰ ਕੈਸ਼ ਦਾ ਘੁੰਮਣ ਵਾਲਾ ਕੋਣ ਰੰਗ: ਚਿੱਤਰ ਕੈਸ਼ ਦਾ ਰੰਗ
ਸਕ੍ਰੀਨ ਕਲੀਅਰਿੰਗ ਫੰਕਸ਼ਨ ਸੈੱਟ ਕਰੋ, ਆਮ ਤੌਰ 'ਤੇ LCD ਦੇ ਸਪਸ਼ਟ ਫੰਕਸ਼ਨ ਨੂੰ ਕਾਲ ਕਰੋ;
void Paint_SetClearFuntion(void (*Clear)(UWORD)); ਪੈਰਾਮੀਟਰ:
ਕਲੀਅਰ: ਸਕਰੀਨ ਕਲੀਅਰਿੰਗ ਫੰਕਸ਼ਨ ਲਈ ਇੱਕ ਪੁਆਇੰਟਰ, ਜੋ ਸਕ੍ਰੀਨ ਨੂੰ ਇੱਕ ਖਾਸ ਰੰਗ ਵਿੱਚ ਤੇਜ਼ੀ ਨਾਲ ਸਾਫ਼ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ;
ਡਰਾਇੰਗ ਪਿਕਸਲ ਦਾ ਫੰਕਸ਼ਨ ਸੈੱਟ ਕਰੋ, ਆਮ ਤੌਰ 'ਤੇ LCD ਦੇ DrawPaint ਫੰਕਸ਼ਨ ਨੂੰ ਕਾਲ ਕਰੋ;
void Paint_SetDisplayFuntion(void (*Display)(UWORD,UWORD,UWORD)); ਪੈਰਾਮੀਟਰ:
ਡਿਸਪਲੇਅ: ਡਰਾਇੰਗ ਪਿਕਸਲ ਦੇ ਫੰਕਸ਼ਨ ਲਈ ਪੁਆਇੰਟਰ, ਜੋ ਕਿ LCD ਅੰਦਰੂਨੀ ਰੈਮ ਦੇ ਨਿਰਧਾਰਤ ਸਥਾਨ 'ਤੇ ਡਾਟਾ ਲਿਖਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ;
ਚਿੱਤਰ ਕੈਸ਼ ਚੁਣੋ: ਚਿੱਤਰ ਕੈਸ਼ ਚੁਣੋ, ਚੋਣ ਦਾ ਉਦੇਸ਼ ਇਹ ਹੈ ਕਿ ਤੁਸੀਂ ਕਈ ਚਿੱਤਰ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬਣਾ ਸਕਦੇ ਹੋ, ਚਿੱਤਰ ਕੈਚ ਮਲਟੀਪਲ ਮੌਜੂਦ ਹੋ ਸਕਦੇ ਹਨ, ਅਤੇ ਤੁਸੀਂ ਹਰੇਕ ਚਿੱਤਰ ਨੂੰ ਚੁਣ ਸਕਦੇ ਹੋ ਜੋ ਤੁਸੀਂ ਬਣਾਇਆ ਹੈ।
void Paint_SelectImage(UBYTE *ਚਿੱਤਰ) ਪੈਰਾਮੀਟਰ:
ਚਿੱਤਰ: ਚਿੱਤਰ ਕੈਸ਼ ਦਾ ਨਾਮ, ਜੋ ਅਸਲ ਵਿੱਚ ਚਿੱਤਰ ਕੈਸ਼ ਦੇ f ਪਹਿਲੇ ਪਤੇ ਦਾ ਸੰਕੇਤਕ ਹੈ;
ਚਿੱਤਰ ਰੋਟੇਸ਼ਨ: ਚੁਣੇ ਹੋਏ ਚਿੱਤਰ ਦੇ ਘੁੰਮਣ ਵਾਲੇ ਕੋਣ ਨੂੰ ਸੈੱਟ ਕਰੋ, ਅਤੇ ਇਸਨੂੰ "Paint_SelectImage()" ਤੋਂ ਬਾਅਦ ਵਰਤਣ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਅਤੇ ਤੁਸੀਂ 0, 90, 180, 270 ਨੂੰ ਘੁੰਮਾਉਣ ਦੀ ਚੋਣ ਕਰ ਸਕਦੇ ਹੋ।
void Paint_SetRotate(UWORD ਰੋਟੇਟ) ਪੈਰਾਮੀਟਰ:
ਰੋਟੇਟ: ਚਿੱਤਰ ਚੋਣ ਕੋਣ, ਤੁਸੀਂ ਕ੍ਰਮਵਾਰ 0, 90, 180, ਅਤੇ 270 ਡਿਗਰੀ ਦੇ ਅਨੁਸਾਰੀ ROTATE_0, ROTATE_90, ROTAT E_180, ਅਤੇ ROTATE_270 ਚੁਣ ਸਕਦੇ ਹੋ
ਨੋਟ: ਵੱਖ-ਵੱਖ ਚੋਣ ਕੋਣਾਂ ਦੇ ਅਧੀਨ, ਕੋਆਰਡੀਨੇਟ ਵੱਖ-ਵੱਖ ਸ਼ੁਰੂਆਤੀ ਪਿਕਸਲਾਂ ਨਾਲ ਮੇਲ ਖਾਂਦੇ ਹਨ। ਇੱਥੇ ਅਸੀਂ 1.14 ਨੂੰ ਸਾਬਕਾ ਵਜੋਂ ਲੈਂਦੇ ਹਾਂample, ਅਤੇ ਚਾਰ ਤਸਵੀਰਾਂ 0°, 90°, 180°, ਅਤੇ 270° ਕ੍ਰਮ ਵਿੱਚ ਹਨ। ਸਿਰਫ ਹਵਾਲੇ ਲਈ:
ਚਿੱਤਰ ਮਿਰਰ ਫਲਿੱਪ: ਚੁਣੇ ਹੋਏ ਚਿੱਤਰ ਦੇ ਸ਼ੀਸ਼ੇ ਦੀ ਫਲਿੱਪ ਸੈੱਟ ਕਰੋ, ਤੁਸੀਂ ਕੋਈ ਵੀ ਸ਼ੀਸ਼ਾ, ਹਰੀਜੱਟਲ ਮਿਰਰ, ਵਰਟੀਕਲ ਮਿਰਰ, ਜਾਂ ਚਿੱਤਰ ਕੇਂਦਰ ਸ਼ੀਸ਼ਾ ਨਹੀਂ ਚੁਣ ਸਕਦੇ ਹੋ।
void Paint_SetMirroring(UBYTE ਮਿਰਰ) ਪੈਰਾਮੀਟਰ:
ਮਿਰਰ: MIRROR_NONEMIRROR_HORIZONTALMIRROR_VERTICALMIRROR_ORI GIN ਕ੍ਰਮਵਾਰ ਕਿਸੇ ਵੀ ਮਿਰਰਿੰਗ, ਹਰੀਜੱਟਲ ਮਿਰਰਿੰਗ, ve rtical ਮਿਰਰਿੰਗ, ਚਿੱਤਰ ਕੇਂਦਰ ਮਿਰਰਿੰਗ ਨਾਲ ਸੰਬੰਧਿਤ
ਕੈਸ਼ ਵਿੱਚ ਬਿੰਦੂ ਦੀ ਡਿਸਪਲੇਅ ਸਥਿਤੀ ਅਤੇ ਰੰਗ ਸੈਟ ਕਰੋ: ਕੈਸ਼ ਵਿੱਚ ਪੁਆਇੰਟ ਪੋਜੀਸ਼ਨ ਅਤੇ ਰੰਗ ਨੂੰ ਪ੍ਰੋਸੈਸ ਕਰਨ ਲਈ ਇੱਥੇ GUI ਦਾ ਮੁੱਖ ਕਾਰਜ ਹੈ।
void Paint_SetPixel(UWORD Xpoint, UWORD Ypoint, UWORD ਰੰਗ) ਪੈਰਾਮੀਟਰ:
XPoint: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ ਬਿੰਦੂ ਦੀ X ਸਥਿਤੀ YPoint: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ ਬਿੰਦੂ ਦੀ Y ਸਥਿਤੀ ਰੰਗ: ਬਿੰਦੂ ਡਿਸਪਲੇਅ ਦਾ ਰੰਗ
ਚਿੱਤਰ ਕੈਸ਼ ਰੰਗ ਭਰਦਾ ਹੈ: ਚਿੱਤਰ ਕੈਸ਼ ਨੂੰ ਇੱਕ ਖਾਸ ਰੰਗ ਨਾਲ ਭਰੋ, ਆਮ ਤੌਰ 'ਤੇ ਸਕ੍ਰੀਨ ਨੂੰ ਖਾਲੀ ਵਿੱਚ ਫਲੈਸ਼ ਕਰਨ ਲਈ।
void Paint_Clear(UWORD ਰੰਗ) ਪੈਰਾਮੀਟਰ:
ਰੰਗ: ਭਰਨ ਦਾ ਰੰਗ
ਚਿੱਤਰ ਕੈਸ਼ ਵਿੰਡੋ ਦੇ ਹਿੱਸੇ ਦਾ ਰੰਗ ਭਰਨਾ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੰਡੋ ਦੇ ਇੱਕ ਨਿਸ਼ਚਿਤ ਹਿੱਸੇ ਨੂੰ ਇੱਕ ਖਾਸ ਰੰਗ ਨਾਲ ਭਰੋ, ਆਮ ਤੌਰ 'ਤੇ ਵਿੰਡੋ ਵਾਈਟਿੰਗ ਫੰਕਸ਼ਨ ਵਜੋਂ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਅਕਸਰ ਸਮਾਂ ਡਿਸਪਲੇ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਇੱਕ ਸਕਿੰਟ ਲਈ ਚਿੱਟਾ ਕਰਨਾ।
void Paint_ClearWindows(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD ਯੇਨ d, UWORD ਰੰਗ) ਪੈਰਾਮੀਟਰ:
ਐਕਸਸਟਾਰਟ: ਵਿੰਡੋ ਦੇ ਐਕਸ ਸਟਾਰਟ ਕੋਆਰਡੀਨੇਟਸ ਵਾਈਸਟਾਰਟ: ਵਿੰਡੋ ਦੇ ਵਾਈ ਸਟਾਰਟ ਕੋਆਰਡੀਨੇਟਸ Xend: ਵਿੰਡੋ ਦੇ ਐਕਸ ਐਂਡ ਕੋਆਰਡੀਨੇਟਸ ਯੈਂਡ: ਵਿੰਡੋ ਦੇ ਵਾਈ ਐਂਡ ਕੋਆਰਡੀਨੇਟਸ ਰੰਗ: ਭਰੋ ਰੰਗ
ਬਿੰਦੂ ਖਿੱਚੋ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ, (ਐਕਸਪੁਆਇੰਟ, ਵਾਈਪੁਆਇੰਟ) 'ਤੇ ਪੁਆਇੰਟ ਖਿੱਚੋ, ਤੁਸੀਂ ਰੰਗ, ਬਿੰਦੂ ਦਾ ਆਕਾਰ ਅਤੇ ਬਿੰਦੂ ਸ਼ੈਲੀ ਚੁਣ ਸਕਦੇ ਹੋ।
void Paint_DrawPoint(UWORD Xpoint, UWORD Ypoint, UWORD ਰੰਗ, DOT_PIXEL ਕਰੋ
t_Pixel, DOT_STYLE Dot_Style)
ਪੈਰਾਮੀਟਰ:
ਐਕਸਪੁਆਇੰਟ: ਬਿੰਦੂ ਦਾ X ਕੋਆਰਡੀਨੇਟ
Ypoint: ਬਿੰਦੂ ਦਾ 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, UW
ORD ਰੰਗ, LINE_STYLE ਲਾਈਨ_ਸ਼ੈਲੀ , LINE_STYLE ਲਾਈਨ_ਸ਼ੈਲੀ)
ਪੈਰਾਮੀਟਰ:
Xstart: ਲਾਈਨ ਦੇ ਸ਼ੁਰੂਆਤੀ ਬਿੰਦੂ ਦਾ X ਕੋਆਰਡੀਨੇਟ
Ystart: ਲਾਈਨ ਦੇ ਸ਼ੁਰੂਆਤੀ ਬਿੰਦੂ ਦਾ Y ਕੋਆਰਡੀਨੇਟ
Xend: ਲਾਈਨ ਦਾ X ਅੰਤ ਬਿੰਦੂ ਕੋਆਰਡੀਨੇਟ
ਯੈਂਡ: ਲਾਈਨ ਦਾ Y ਅੰਤ ਬਿੰਦੂ ਕੋਆਰਡੀਨੇਟ
ਰੰਗ: ਰੰਗ ਭਰੋ
ਲਾਈਨ_ਚੌੜਾਈ: ਲਾਈਨ ਦੀ ਚੌੜਾਈ, 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;
ਲਾਈਨ_ਸ਼ੈਲੀ: ਲਾਈਨ ਸ਼ੈਲੀ, ਚੁਣੋ ਕਿ ਲਾਈਨਾਂ ਜੁੜੀਆਂ ਹਨ ਜਾਂ ਨਹੀਂ
ਇੱਕ ਸਿੱਧੀ ਲਾਈਨ ਜਾਂ ਬਿੰਦੀ ਵਾਲੀ ਲਾਈਨ।
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 ਯੇਨ
d, UWORD ਰੰਗ, DOT_PIXEL ਲਾਈਨ_ਚੌੜਾਈ, DRAW_FILL Draw_Fill)
ਪੈਰਾਮੀਟਰ:
Xstart: ਆਇਤਕਾਰ ਦੇ ਸ਼ੁਰੂਆਤੀ ਬਿੰਦੂ ਦਾ X ਕੋਆਰਡੀਨੇਟ
Ystart: ਆਇਤਕਾਰ ਦੇ ਸ਼ੁਰੂਆਤੀ ਬਿੰਦੂ ਦਾ Y ਕੋਆਰਡੀਨੇਟ
Xend: ਆਇਤਕਾਰ ਦੇ ਅੰਤ ਬਿੰਦੂ ਦਾ X ਕੋਆਰਡੀਨੇਟ
ਯੈਂਡ: ਆਇਤਕਾਰ ਦੇ ਅੰਤ ਬਿੰਦੂ ਦਾ Y ਕੋਆਰਡੀਨੇਟ
ਰੰਗ: ਭਰਿਆ ਰੰਗ
ਰੇਖਾ_ਚੌੜਾਈ: ਆਇਤਕਾਰ ਦੇ ਚਾਰ ਪਾਸਿਆਂ ਦੀ ਚੌੜਾਈ, ਪ੍ਰਦਾਨ ਕੀਤੀ ਜਾਂਦੀ ਹੈ
g 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;
ਡਰਾਅ_ਫਿਲ: ਭਰੋ, ਕੀ ਆਇਤ ਦੇ ਅੰਦਰ ਨੂੰ ਭਰਨਾ ਹੈ
typedef enum {
DRAW_FILL_EMPTY = 0,
DRAW_FILL_FULL,
} DRAW_FILL;
ਇੱਕ ਚੱਕਰ ਖਿੱਚੋ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ, (X_Center Y_Center) ਨੂੰ ਕੇਂਦਰ ਵਜੋਂ, ਰੇਡੀਅਸ ਦੇ ਨਾਲ ਇੱਕ ਚੱਕਰ ਖਿੱਚੋ, ਤੁਸੀਂ ਰੰਗ ਚੁਣ ਸਕਦੇ ਹੋ, ਲਾਈਨ ਦੀ ਚੌੜਾਈ, ਅਤੇ ਕੀ ਚੱਕਰ ਦੇ ਅੰਦਰ ਭਰਨਾ ਹੈ।
void Paint_DrawCircle(UWORD X_Center, UWORD Y_Center, UWORD ਰੇਡੀਅਸ, UWORD
ਰੰਗ, DOT_PIXEL ਲਾਈਨ_ਚੌੜਾਈ, DRAW_FILL Draw_Fill)
ਪੈਰਾਮੀਟਰ:
X_Center: ਚੱਕਰ ਦੇ ਕੇਂਦਰ ਦਾ X ਕੋਆਰਡੀਨੇਟ
Y_Center: ਚੱਕਰ ਦੇ ਕੇਂਦਰ ਦਾ Y ਕੋਆਰਡੀਨੇਟ
ਰੇਡੀਅਸ: ਚੱਕਰ ਦਾ ਘੇਰਾ
ਰੰਗ: ਭਰਨ ਦਾ ਰੰਗ
ਲਾਈਨ_ਚੌੜਾਈ: ਚਾਪ ਦੀ ਚੌੜਾਈ, 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;
ਡਰਾਅ_ਫਿਲ: ਭਰੋ, ਕੀ ਚੱਕਰ ਦੇ ਅੰਦਰ ਭਰਨਾ ਹੈ
typedef enum {
DRAW_FILL_EMPTY = 0,
DRAW_FILL_FULL,
} DRAW_FILL;
Ascii ਅੱਖਰ ਲਿਖੋ: ਚਿੱਤਰ ਬਫਰ ਵਿੱਚ, ਇੱਕ Ascii ਅੱਖਰ (Xstart Ystart) ਤੇ ਖੱਬੇ ਪਾਸੇ ਦੇ ਰੂਪ ਵਿੱਚ ਲਿਖੋ, ਤੁਸੀਂ Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ, ਫੌਂਟ ਫੋਰਗਰਾਉਂਡ ਰੰਗ, ਫੌਂਟ ਬੈਕਗਰਾਊਂਡ ਰੰਗ ਚੁਣ ਸਕਦੇ ਹੋ।
void Paint_DrawChar(UWORD Xstart, UWORD Ystart, const char Ascii_Char, sFO NT* ਫੌਂਟ, UWORD Color_Foreground, UWORD Color_Background) ਪੈਰਾਮੀਟਰ:
Xstart: ਅੱਖਰ Ystart ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ X ਕੋਆਰਡੀਨੇਟ: Ascii_Char ਅੱਖਰ ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ Y ਕੋਆਰਡੀਨੇਟ: Ascii ਅੱਖਰ ਫੌਂਟ: Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ ਫੌਂਟਸ ਫੋਲਡਰ ਵਿੱਚ ਫੋਲੋਇੰਗ ਫੌਂਟਾਂ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ:
font85*8 font font127*12 font font1611*16 font 2014*20 font font2417*24 font Color_Foreground: font color Color_Background: ਬੈਕਗ੍ਰਾਊਂਡ ਰੰਗ
ਅੰਗਰੇਜ਼ੀ ਅੱਖਰ ਸਤਰ ਲਿਖੋ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ, (Xstart Ystart) ਖੱਬੇ ਪਾਸੇ ਦੇ ਰੂਪ ਵਿੱਚ, ਅੰਗਰੇਜ਼ੀ ਅੱਖਰਾਂ ਦੀ ਇੱਕ ਸਤਰ ਲਿਖੋ, ਤੁਸੀਂ Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ, ਫੌਂਟ ਫੋਰਗਰਾਉਂਡ ਰੰਗ, ਫੌਂਟ ਬੈਕਗਰਾਊਂਡ ਰੰਗ ਚੁਣ ਸਕਦੇ ਹੋ;
void Paint_DrawString_EN(UWORD Xstart, UWORD Ystart, const char * pString, sFONT* Font, UWORD Color_Foreground, UWORD Color_Background) ਪੈਰਾਮੀਟਰ:
Xstart: ਅੱਖਰ ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ X ਕੋਆਰਡੀਨੇਟ Ystart: ਫੌਂਟ pStringstring ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ Y ਕੋਆਰਡੀਨੇਟ, ਸਤਰ ਇੱਕ ਪੁਆਇੰਟਰ ਫੌਂਟ ਹੈ: Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ ਫੌਂਟਸ ਫੋਲਡਰ ਵਿੱਚ ਫੋਲੋਇੰਗ ਫੌਂਟਾਂ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ:
font85*8 font font127*12 font font1611*16 font 2014*20 font font2417*24 font Color_Foreground: font color Color_Background: ਬੈਕਗ੍ਰਾਊਂਡ ਰੰਗ
ਚੀਨੀ ਅੱਖਰ ਸਤਰ ਲਿਖੋ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ, (Xstart Ystart) ਖੱਬੇ ਪਾਸੇ ਦੇ ਰੂਪ ਵਿੱਚ, ਚੀਨੀ ਅੱਖਰਾਂ ਦੀ ਇੱਕ ਸਤਰ ਲਿਖੋ, ਤੁਸੀਂ GB2312 ਕੋਡ ਕੀਤੇ ਅੱਖਰ ਫੌਂਟ, ਫੌਂਟ ਫੋਰਗਰਾਉਂਡ ਰੰਗ, ਫੌਂਟ ਬੈਕਗਰਾਊਂਡ ਰੰਗ ਚੁਣ ਸਕਦੇ ਹੋ;
void Paint_DrawString_CN(UWORD Xstart, UWORD Ystart, const char * pString, cFONT* ਫੌਂਟ, UWORD Color_Foreground, UWORD Color_Background) ਪੈਰਾਮੀਟਰ:
Xstart: ਅੱਖਰ ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ X ਕੋਆਰਡੀਨੇਟ Ystart: ਅੱਖਰ pStringstring ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ Y ਕੋਆਰਡੀਨੇਟ, ਸਤਰ ਇੱਕ ਪੁਆਇੰਟਰ ਫੌਂਟ ਹੈ: GB2312-ਕੋਡਿਡ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ ਫੌਂਟ ਫੋਲਡਰ ਵਿੱਚ ਹੇਠਾਂ ਦਿੱਤੇ ng ਫੌਂਟ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ:
font12CNascii ਅੱਖਰ ਫੌਂਟ 11*21, ਚੀਨੀ ਫੌਂਟ 16*21 ਫੌਂਟ24CNascii ਅੱਖਰ ਫੌਂਟ 24*41, ਚੀਨੀ ਫੌਂਟ 32*41 ਰੰਗ_ਫੋਰਗਰਾਉਂਡ: ਫੌਂਟ ਰੰਗ ਰੰਗ_ਬੈਕਗ੍ਰਾਊਂਡ: ਬੈਕਗ੍ਰਾਊਂਡ ਦਾ ਰੰਗ
ਨੰਬਰ ਲਿਖੋ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ, ਖੱਬੇ ਪਾਸੇ (Xstart Ystart) 'ਤੇ ਨੰਬਰਾਂ ਦੀ ਇੱਕ ਸਤਰ ਲਿਖੋ, ਤੁਸੀਂ Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ, ਫੌਂਟ ਫੋਰਗਰਾਉਂਡ ਰੰਗ, ਫੌਂਟ ਬੈਕਗਰਾਊਂਡ ਰੰਗ ਚੁਣ ਸਕਦੇ ਹੋ।
void Paint_DrawNum(UWORD XPoint, UWORD Ypoint, int32_t ਨੰਬਰ, sFONT* Font, UWORD Color_Foreground, UWORD Color_Background) ਪੈਰਾਮੀਟਰ:
Xstart: ਅੱਖਰ ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ X ਕੋਆਰਡੀਨੇਟ Ystart: ਅੱਖਰ ਨੰਬਰ ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ Y ਕੋਆਰਡੀਨੇਟ: ਇੱਥੇ ਪ੍ਰਦਰਸ਼ਿਤ ਸੰਖਿਆ 32-ਬਿਟ ਲੰਬੇ ਇੰਟ ਟੀ ਕਿਸਮ ਵਿੱਚ ਸਟੋਰ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜਿਸ ਨੂੰ 2147483647 ਫੋਂਟ ਤੱਕ ਪ੍ਰਦਰਸ਼ਿਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। : Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ ਫੌਂਟਸ ਫੋਲਡਰ ਵਿੱਚ ਫੋਲੋਇੰਗ ਫੌਂਟਾਂ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ:
font85*8 font font127*12 font font1611*16 font 2014*20 font font2417*24 font Color_Foreground: font color Color_Background: ਬੈਕਗ੍ਰਾਊਂਡ ਰੰਗ
ਦਸ਼ਮਲਵ ਨਾਲ ਸੰਖਿਆਵਾਂ ਲਿਖੋ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ, (Xstart Ystart) ਖੱਬਾ ਸਿਰਾ ਹੈ, ਸੰਖਿਆਵਾਂ ਦੀ ਇੱਕ ਸਤਰ ਲਿਖੋ ਜਿਸ ਵਿੱਚ ਦਸ਼ਮਲਵ ਸੰਖਿਆਵਾਂ ਹੋ ਸਕਦੀਆਂ ਹਨ, ਤੁਸੀਂ Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ, ਫੌਂਟ ਫੋਰਗਰਾਉਂਡ ਰੰਗ, ਫੌਂਟ ਬੈਕਗਰਾਊਂਡ ਰੰਗ ਚੁਣ ਸਕਦੇ ਹੋ।
void Paint_DrawFloatNum(UWORD XPoint, UWORD YPoint, ਡਬਲ ਨੰਬਰ, UBYTE Decimal_Point, sFONT* Font, UWORD Color_Foreground, UWORD Color_Backg ਰਾਉਂਡ); ਪੈਰਾਮੀਟਰ:
Xstart: ਅੱਖਰ ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ X ਕੋਆਰਡੀਨੇਟ Ystart: ਅੱਖਰ ਨੰਬਰ ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ Y ਕੋਆਰਡੀਨੇਟ: ਇੱਥੇ ਪ੍ਰਦਰਸ਼ਿਤ ਸੰਖਿਆ ਡਬਲ ਕਿਸਮ ਵਿੱਚ ਸੁਰੱਖਿਅਤ ਕੀਤੀ ਗਈ ਹੈ, ਜੋ ਕਿ ਆਮ ਲੋੜਾਂ ਲਈ ਕਾਫ਼ੀ ਹੈ Decimal_Point: ਅੰਕਾਂ ਦੀ ਸੰਖਿਆ ਦੇ ਬਾਅਦ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰੋ ਦਸ਼ਮਲਵ ਬਿੰਦੂ t ਫੌਂਟ: Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ ਫੌਂਟਸ ਫੋਲਡਰ ਵਿੱਚ ਫੋਲੋਇੰਗ ਫੌਂਟਾਂ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ:
font85*8 font font127*12 font font1611*16 font 2014*20 font font2417*24 font Color_Foreground: font color Color_Background: ਬੈਕਗ੍ਰਾਊਂਡ ਰੰਗ
ਡਿਸਪਲੇ ਟਾਈਮ: ਚਿੱਤਰ ਕੈਸ਼ ਵਿੱਚ, (Xstart Ystart) ਖੱਬਾ ਸਿਖਰ ਹੈ, ਅਤੇ ਇਹ ਇੱਕ ਸਮੇਂ ਲਈ ਪ੍ਰਦਰਸ਼ਿਤ ਕੀਤਾ ਜਾਵੇਗਾ, ਅਤੇ ਤੁਸੀਂ Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ, ਫੌਂਟ ਫੋਰਗਰਾਉਂਡ ਰੰਗ, ਅਤੇ ਫੌਂਟ ਬੈਕਗਰਾਊਂਡ ਰੰਗ ਚੁਣ ਸਕਦੇ ਹੋ;
void Paint_DrawTime(UWORD Xstart, UWORD Ystart, PAINT_TIME *pTime, sFONT* ਫੌਂਟ, UWORD Color_Background, UWORD Color_Foreground) ਪੈਰਾਮੀਟਰ:
Xstart: ਅੱਖਰ Ystart ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ X ਕੋਆਰਡੀਨੇਟ: ਅੱਖਰ pTime ਡਿਸਪਲੇ ਕੀਤੇ ਸਮੇਂ ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ Y ਕੋਆਰਡੀਨੇਟ, ਇੱਕ ਸਮਾਂ ਬਣਤਰ ਇੱਥੇ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਜਦੋਂ ਤੱਕ ਘੰਟੇ, ਮਿੰਟ ਅਤੇ ਸਕਿੰਟਾਂ ਦੇ ਅੰਕਾਂ ਨੂੰ ਪਾਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਪੈਰਾਮੀਟਰ; ਫੌਂਟ: Ascii ਕੋਡ ਵਿਜ਼ੂਅਲ ਅੱਖਰ ਫੌਂਟ ਲਾਇਬ੍ਰੇਰੀ ਫੌਂਟਸ ਫੋਲਡਰ ਵਿੱਚ ਫੋਲੋਇੰਗ ਫੌਂਟਾਂ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ:
font85*8 font font127*12 font font1611*16 font 2014*20 font font2417*24 font Color_Foreground: font color Color_Background: ਬੈਕਗ੍ਰਾਊਂਡ ਰੰਗ
ਚਿੱਤਰ ਡਿਸਪਲੇ ਕਰੋ: ਜਦੋਂ (Xstart Ystart) ਖੱਬਾ ਸਿਰਾ ਹੋਵੇ, ਤਾਂ W_Image ਦੀ ਚੌੜਾਈ ਅਤੇ H_Image ਦੀ ਉਚਾਈ ਵਾਲਾ ਚਿੱਤਰ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰੋ।
void Paint_DrawImage(const unsigned char *image, UWORD xStart, UWORD yStar t, UWORD W_Image, UWORD H_Image) ਪੈਰਾਮੀਟਰ:
ਚਿੱਤਰ: ਚਿੱਤਰ ਪਤਾ, ਚਿੱਤਰ ਜਾਣਕਾਰੀ ਵੱਲ ਇਸ਼ਾਰਾ ਕਰਦੇ ਹੋਏ ਜਿਸ ਨੂੰ ਤੁਸੀਂ ਡਿਸਪਲੇ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ
Xstart: ਅੱਖਰ Ystart ਦੇ ਖੱਬੇ ਸਿਰੇ ਦਾ X ਕੋਆਰਡੀਨੇਟ: W_Image: ਚਿੱਤਰ ਚੌੜਾਈ H_Image: ਚਿੱਤਰ ਦੀ ਉਚਾਈ
ਸਰੋਤ
ਦਸਤਾਵੇਜ਼
ਯੋਜਨਾਬੱਧ ਚਿੱਤਰ
3D ਡਰਾਇੰਗ
1.9 ਇੰਚ LCD ਮੋਡੀਊਲ 3D ਡਰਾਇੰਗ
1.9 ਇੰਚ LCD ਮੋਡੀਊਲ 3D ਪ੍ਰੀview file
ਡੈਮੋ
LCD ਮੋਡੀਊਲ code.zip
ਸਾਫਟਵੇਅਰ
Zimo221.7z
Image2Lcd2.9.zip
ਚਿੱਤਰ ਐਕਸਟਰੈਕਸ਼ਨ ਟਰਟੋਰੀਅਲ
FAQ
ਸਵਾਲ: 1.9-ਇੰਚ LCD ਦੀ ਵੱਧ ਤੋਂ ਵੱਧ ਪਾਵਰ ਖਪਤ ਕੀ ਹੈ
ਮੋਡੀਊਲ?
ਉੱਤਰ: 3.3V 40mA
ਸਵਾਲ: 1.9 ਇੰਚ LCD ਮੋਡੀਊਲ ਦੀ ਵੱਧ ਤੋਂ ਵੱਧ ਚਮਕ ਕੀ ਹੈ? ਜਵਾਬ:
3.3V 380cd/
ਸਪੋਰਟ
ਜੇਕਰ ਤੁਹਾਨੂੰ ਤਕਨੀਕੀ ਸਹਾਇਤਾ ਦੀ ਲੋੜ ਹੈ, ਤਾਂ ਕਿਰਪਾ ਕਰਕੇ ਪੰਨੇ 'ਤੇ ਜਾਓ ਅਤੇ ਟਿਕਟ ਖੋਲ੍ਹੋ।
ਦਸਤਾਵੇਜ਼ / ਸਰੋਤ
![]() |
ਵੇਵਸ਼ੇਅਰ 1.9 ਇੰਚ LCD ਮਿਨੀ ਡਿਸਪਲੇ ਮੋਡੀਊਲ [pdf] ਯੂਜ਼ਰ ਗਾਈਡ 1.9inch LCD ਮਿਨੀ ਡਿਸਪਲੇ ਮੋਡੀਊਲ, 1.9inch, LCD ਮਿੰਨੀ ਡਿਸਪਲੇ ਮੋਡੀਊਲ, ਮਿੰਨੀ ਡਿਸਪਲੇ ਮੋਡੀਊਲ, ਡਿਸਪਲੇ ਮੋਡੀਊਲ |
