DWIN T5L ASIC 'ਤੇ ਅਧਾਰਤ ਅਡਜੱਸਟੇਬਲ ਪਾਵਰ LCD ਪਾਵਰ ਦੀ ਐਪਲੀਕੇਸ਼ਨ

——DWIN Froum ਤੋਂ ਸਾਂਝਾ ਕੀਤਾ ਗਿਆ

ਪੂਰੀ ਮਸ਼ੀਨ ਦੇ ਕੰਟਰੋਲ ਕੋਰ ਦੇ ਤੌਰ 'ਤੇ DWIN T5L1 ਚਿੱਪ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ, ਟਚ, ADC ਪ੍ਰਾਪਤੀ, PWM ਨਿਯੰਤਰਣ ਜਾਣਕਾਰੀ ਪ੍ਰਾਪਤ ਕਰਦਾ ਹੈ ਅਤੇ ਪ੍ਰਕਿਰਿਆ ਕਰਦਾ ਹੈ, ਅਤੇ ਰੀਅਲ ਟਾਈਮ ਵਿੱਚ ਮੌਜੂਦਾ ਸਥਿਤੀ ਨੂੰ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਨ ਲਈ 3.5-ਇੰਚ ਦੀ LCD ਸਕ੍ਰੀਨ ਨੂੰ ਚਲਾਉਂਦਾ ਹੈ।ਵਾਈਫਾਈ ਮੋਡੀਊਲ ਰਾਹੀਂ LED ਲਾਈਟ ਸੋਰਸ ਚਮਕ ਦੇ ਰਿਮੋਟ ਟੱਚ ਐਡਜਸਟਮੈਂਟ ਦਾ ਸਮਰਥਨ ਕਰੋ, ਅਤੇ ਵੌਇਸ ਅਲਾਰਮ ਦਾ ਸਮਰਥਨ ਕਰੋ।

ਪ੍ਰੋਗਰਾਮ ਦੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ:

1. ਉੱਚ ਬਾਰੰਬਾਰਤਾ 'ਤੇ ਚੱਲਣ ਲਈ T5L ਚਿੱਪ ਨੂੰ ਅਪਣਾਓ, AD ਐਨਾਲਾਗ ਸੈਂਪਲਿੰਗ ਸਥਿਰ ਹੈ, ਅਤੇ ਗਲਤੀ ਛੋਟੀ ਹੈ;

2. ਡੀਬੱਗਿੰਗ ਅਤੇ ਪ੍ਰੋਗਰਾਮ ਬਰਨਿੰਗ ਲਈ ਸਿੱਧੇ ਤੌਰ 'ਤੇ ਪੀਸੀ ਨਾਲ ਜੁੜਿਆ TYPE C ਦਾ ਸਮਰਥਨ ਕਰੋ;

3. ਹਾਈ-ਸਪੀਡ OS ਕੋਰ ਇੰਟਰਫੇਸ, 16 ਬਿੱਟ ਪੈਰਲਲ ਪੋਰਟ ਦਾ ਸਮਰਥਨ ਕਰੋ;UI ਕੋਰ PWM ਪੋਰਟ, AD ਪੋਰਟ ਲੀਡ ਆਉਟ, ਘੱਟ ਲਾਗਤ ਵਾਲੇ ਐਪਲੀਕੇਸ਼ਨ ਡਿਜ਼ਾਈਨ, ਵਾਧੂ MCU ਜੋੜਨ ਦੀ ਕੋਈ ਲੋੜ ਨਹੀਂ;

4. ਸਪੋਰਟ ਵਾਈਫਾਈ, ਬਲੂਟੁੱਥ ਰਿਮੋਟ ਕੰਟਰੋਲ;

5. 5~12V DC ਵਾਈਡ ਵੋਲਟੇਜ ਅਤੇ ਵਾਈਡ ਰੇਂਜ ਇੰਪੁੱਟ ਦਾ ਸਮਰਥਨ ਕਰੋ

ਚਿੱਤਰ1

1.1 ਸਕੀਮ ਚਿੱਤਰ

ਚਿੱਤਰ2

1.2 ਪੀਸੀਬੀ ਬੋਰਡ

ਚਿੱਤਰ3

1.3 ਯੂਜ਼ਰ ਇੰਟਰਫੇਸ

ਸ਼ਰਮਨਾਕ ਜਾਣ-ਪਛਾਣ:

(1) ਹਾਰਡਵੇਅਰ ਸਰਕਟ ਡਿਜ਼ਾਈਨ

ਚਿੱਤਰ4

1.4 T5L48320C035 ਸਰਕਟ ਚਿੱਤਰ

1. MCU ਤਰਕ ਪਾਵਰ ਸਪਲਾਈ 3.3V: C18, C26, C27, C28, C29, C31, C32, C33;

2. MCU ਕੋਰ ਪਾਵਰ ਸਪਲਾਈ 1.25V: C23, C24;

3. MCU ਐਨਾਲਾਗ ਪਾਵਰ ਸਪਲਾਈ 3.3V: C35 MCU ਲਈ ਐਨਾਲਾਗ ਪਾਵਰ ਸਪਲਾਈ ਹੈ।ਟਾਈਪਸੈਟਿੰਗ ਕਰਦੇ ਸਮੇਂ, ਕੋਰ 1.25V ਗਰਾਊਂਡ ਅਤੇ ਲੌਜਿਕ ਗਰਾਊਂਡ ਨੂੰ ਇਕੱਠੇ ਜੋੜਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਪਰ ਐਨਾਲਾਗ ਗਰਾਊਂਡ ਨੂੰ ਵੱਖ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ।ਐਨਾਲਾਗ ਗਰਾਊਂਡ ਅਤੇ ਡਿਜੀਟਲ ਗਰਾਊਂਡ ਨੂੰ ਐਲਡੀਓ ਆਉਟਪੁੱਟ ਵੱਡੇ ਕੈਪਸੀਟਰ ਦੇ ਨਕਾਰਾਤਮਕ ਖੰਭੇ 'ਤੇ ਇਕੱਠਾ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ, ਅਤੇ ਐਨਾਲਾਗ ਸਕਾਰਾਤਮਕ ਪੋਲ ਨੂੰ ਵੀ ਐਲਡੀਓ ਵੱਡੇ ਕੈਪਸੀਟਰ ਦੇ ਸਕਾਰਾਤਮਕ ਖੰਭੇ 'ਤੇ ਇਕੱਠਾ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ, ਤਾਂ ਜੋ AD ਸੈਂਪਲਿੰਗ ਸ਼ੋਰ ਨੂੰ ਘੱਟ ਤੋਂ ਘੱਟ ਕੀਤਾ ਜਾ ਸਕੇ।

4. AD ਐਨਾਲਾਗ ਸਿਗਨਲ ਪ੍ਰਾਪਤੀ ਸਰਕਟ: CP1 AD ਐਨਾਲਾਗ ਇਨਪੁਟ ਫਿਲਟਰ ਕੈਪਸੀਟਰ ਹੈ।ਨਮੂਨੇ ਦੀ ਗਲਤੀ ਨੂੰ ਘਟਾਉਣ ਲਈ, MCU ਦੇ ਐਨਾਲਾਗ ਗਰਾਊਂਡ ਅਤੇ ਡਿਜੀਟਲ ਗਰਾਊਂਡ ਨੂੰ ਸੁਤੰਤਰ ਤੌਰ 'ਤੇ ਵੱਖ ਕੀਤਾ ਗਿਆ ਹੈ।CP1 ਦਾ ਨੈਗੇਟਿਵ ਪੋਲ MCU ਦੇ ਐਨਾਲਾਗ ਗਰਾਊਂਡ ਨਾਲ ਘੱਟੋ-ਘੱਟ ਅੜਿੱਕਾ ਨਾਲ ਜੁੜਿਆ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ, ਅਤੇ ਕ੍ਰਿਸਟਲ ਔਸਿਲੇਟਰ ਦੇ ਦੋ ਸਮਾਨਾਂਤਰ ਕੈਪਸੀਟਰ MCU ਦੇ ਐਨਾਲਾਗ ਗਰਾਊਂਡ ਨਾਲ ਜੁੜੇ ਹੋਏ ਹਨ।

5. ਬਜ਼ਰ ਸਰਕਟ: C25 ਬਜ਼ਰ ਲਈ ਪਾਵਰ ਸਪਲਾਈ ਕੈਪੇਸੀਟਰ ਹੈ।ਬਜ਼ਰ ਇੱਕ ਪ੍ਰੇਰਕ ਯੰਤਰ ਹੈ, ਅਤੇ ਓਪਰੇਸ਼ਨ ਦੌਰਾਨ ਇੱਕ ਚੋਟੀ ਦਾ ਕਰੰਟ ਹੋਵੇਗਾ।ਸਿਖਰ ਨੂੰ ਘਟਾਉਣ ਲਈ, MOS ਟਿਊਬ ਨੂੰ ਰੇਖਿਕ ਖੇਤਰ ਵਿੱਚ ਕੰਮ ਕਰਨ ਲਈ ਬਜ਼ਰ ਦੇ MOS ਡਰਾਈਵ ਕਰੰਟ ਨੂੰ ਘਟਾਉਣਾ, ਅਤੇ ਇਸਨੂੰ ਸਵਿੱਚ ਮੋਡ ਵਿੱਚ ਕੰਮ ਕਰਨ ਲਈ ਸਰਕਟ ਨੂੰ ਡਿਜ਼ਾਈਨ ਕਰਨਾ ਜ਼ਰੂਰੀ ਹੈ।ਨੋਟ ਕਰੋ ਕਿ R18 ਨੂੰ ਬਜ਼ਰ ਦੀ ਆਵਾਜ਼ ਦੀ ਗੁਣਵੱਤਾ ਨੂੰ ਅਨੁਕੂਲ ਕਰਨ ਅਤੇ ਬਜ਼ਰ ਦੀ ਆਵਾਜ਼ ਨੂੰ ਕਰਿਸਪ ਅਤੇ ਸੁਹਾਵਣਾ ਬਣਾਉਣ ਲਈ ਬਜ਼ਰ ਦੇ ਦੋਵੇਂ ਸਿਰਿਆਂ 'ਤੇ ਸਮਾਨਾਂਤਰ ਵਿੱਚ ਜੋੜਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ।

6. ਵਾਈਫਾਈ ਸਰਕਟ: ਵਾਈਫਾਈ ਚਿੱਪ ਸੈਂਪਲਿੰਗ ESP32-C, WiFi+Bluetooth+BLE ਨਾਲ।ਵਾਇਰਿੰਗ 'ਤੇ, ਆਰਐਫ ਪਾਵਰ ਗਰਾਊਂਡ ਅਤੇ ਸਿਗਨਲ ਗਰਾਊਂਡ ਨੂੰ ਵੱਖ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।

ਚਿੱਤਰ5

1.5 ਵਾਈਫਾਈ ਸਰਕਟ ਡਿਜ਼ਾਈਨ

ਉਪਰੋਕਤ ਚਿੱਤਰ ਵਿੱਚ, ਤਾਂਬੇ ਦੀ ਪਰਤ ਦਾ ਉੱਪਰਲਾ ਹਿੱਸਾ ਪਾਵਰ ਗਰਾਊਂਡ ਲੂਪ ਹੈ।ਵਾਈਫਾਈ ਐਂਟੀਨਾ ਰਿਫਲਿਕਸ਼ਨ ਗਰਾਊਂਡ ਲੂਪ ਦਾ ਪਾਵਰ ਗਰਾਊਂਡ ਲਈ ਇੱਕ ਵੱਡਾ ਖੇਤਰ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ, ਅਤੇ ਪਾਵਰ ਗਰਾਊਂਡ ਦਾ ਕਲੈਕਸ਼ਨ ਪੁਆਇੰਟ C6 ਦਾ ਨੈਗੇਟਿਵ ਪੋਲ ਹੈ।ਪਾਵਰ ਗਰਾਊਂਡ ਅਤੇ ਵਾਈਫਾਈ ਐਂਟੀਨਾ ਦੇ ਵਿਚਕਾਰ ਇੱਕ ਪ੍ਰਤੀਬਿੰਬਿਤ ਕਰੰਟ ਪ੍ਰਦਾਨ ਕਰਨ ਦੀ ਲੋੜ ਹੈ, ਇਸਲਈ ਵਾਈਫਾਈ ਐਂਟੀਨਾ ਦੇ ਹੇਠਾਂ ਤਾਂਬੇ ਦੀ ਪਰਤ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ।ਕਾਪਰ ਕੋਟਿੰਗ ਦੀ ਲੰਬਾਈ ਵਾਈਫਾਈ ਐਂਟੀਨਾ ਦੀ ਐਕਸਟੈਂਸ਼ਨ ਲੰਬਾਈ ਤੋਂ ਵੱਧ ਜਾਂਦੀ ਹੈ, ਅਤੇ ਐਕਸਟੈਂਸ਼ਨ ਵਾਈਫਾਈ ਦੀ ਸੰਵੇਦਨਸ਼ੀਲਤਾ ਨੂੰ ਵਧਾਏਗੀ;C2 ਦੇ ਨੈਗੇਟਿਵ ਪੋਲ 'ਤੇ ਬਿੰਦੂ।ਤਾਂਬੇ ਦਾ ਇੱਕ ਵੱਡਾ ਖੇਤਰ ਵਾਈਫਾਈ ਐਂਟੀਨਾ ਰੇਡੀਏਸ਼ਨ ਕਾਰਨ ਹੋਣ ਵਾਲੇ ਰੌਲੇ ਨੂੰ ਬਚਾ ਸਕਦਾ ਹੈ।2 ਤਾਂਬੇ ਦੇ ਮੈਦਾਨਾਂ ਨੂੰ ਹੇਠਲੀ ਪਰਤ 'ਤੇ ਵੱਖ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਵਿਅਸ ਰਾਹੀਂ ESP32-C ਦੇ ਵਿਚਕਾਰਲੇ ਪੈਡ 'ਤੇ ਇਕੱਠਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।RF ਪਾਵਰ ਗਰਾਊਂਡ ਨੂੰ ਸਿਗਨਲ ਗਰਾਊਂਡ ਲੂਪ ਨਾਲੋਂ ਘੱਟ ਪ੍ਰਤੀਰੋਧ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ, ਇਸਲਈ ਕਾਫ਼ੀ ਘੱਟ ਰੁਕਾਵਟ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਪਾਵਰ ਗਰਾਊਂਡ ਤੋਂ ਚਿੱਪ ਪੈਡ ਤੱਕ 6 ਵਿਅਸ ਹਨ।ਕ੍ਰਿਸਟਲ ਔਸਿਲੇਟਰ ਦੇ ਜ਼ਮੀਨੀ ਲੂਪ ਵਿੱਚ RF ਪਾਵਰ ਨਹੀਂ ਹੋ ਸਕਦੀ ਹੈ, ਨਹੀਂ ਤਾਂ ਕ੍ਰਿਸਟਲ ਔਸਿਲੇਟਰ ਫ੍ਰੀਕੁਐਂਸੀ ਜਿਟਰ ਪੈਦਾ ਕਰੇਗਾ, ਅਤੇ ਵਾਈਫਾਈ ਬਾਰੰਬਾਰਤਾ ਔਫਸੈੱਟ ਡਾਟਾ ਭੇਜਣ ਅਤੇ ਪ੍ਰਾਪਤ ਕਰਨ ਦੇ ਯੋਗ ਨਹੀਂ ਹੋਵੇਗਾ।

7. ਬੈਕਲਾਈਟ LED ਪਾਵਰ ਸਪਲਾਈ ਸਰਕਟ: SOT23-6LED ਡਰਾਈਵਰ ਚਿੱਪ ਸੈਂਪਲਿੰਗ।LED ਨੂੰ DC/DC ਪਾਵਰ ਸਪਲਾਈ ਸੁਤੰਤਰ ਤੌਰ 'ਤੇ ਲੂਪ ਬਣਾਉਂਦੀ ਹੈ, ਅਤੇ DC/DC ਗਰਾਊਂਡ 3.3V LOD ਗਰਾਊਂਡ ਨਾਲ ਜੁੜਿਆ ਹੁੰਦਾ ਹੈ।ਕਿਉਂਕਿ PWM2 ਪੋਰਟ ਕੋਰ ਨੂੰ ਵਿਸ਼ੇਸ਼ ਬਣਾਇਆ ਗਿਆ ਹੈ, ਇਹ ਇੱਕ 600K PWM ਸਿਗਨਲ ਆਊਟਪੁੱਟ ਕਰਦਾ ਹੈ, ਅਤੇ ਇੱਕ RC ਨੂੰ PWM ਆਉਟਪੁੱਟ ਨੂੰ ਇੱਕ ਚਾਲੂ/ਬੰਦ ਕੰਟਰੋਲ ਵਜੋਂ ਵਰਤਣ ਲਈ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ।

8. ਵੋਲਟੇਜ ਇਨਪੁਟ ਰੇਂਜ: ਦੋ DC/DC ਸਟੈਪ-ਡਾਊਨ ਡਿਜ਼ਾਈਨ ਕੀਤੇ ਗਏ ਹਨ।ਨੋਟ ਕਰੋ ਕਿ DC/DC ਸਰਕਟ ਵਿੱਚ R13 ਅਤੇ R17 ਰੋਧਕਾਂ ਨੂੰ ਛੱਡਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ ਹੈ।ਦੋ DC/DC ਚਿਪਸ 18V ਇੰਪੁੱਟ ਤੱਕ ਦਾ ਸਮਰਥਨ ਕਰਦੇ ਹਨ, ਜੋ ਕਿ ਬਾਹਰੀ ਪਾਵਰ ਸਪਲਾਈ ਲਈ ਸੁਵਿਧਾਜਨਕ ਹੈ।

9. USB TYPE C ਡੀਬੱਗ ਪੋਰਟ: TYPE C ਨੂੰ ਅੱਗੇ ਅਤੇ ਪਿੱਛੇ ਪਲੱਗ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ ਅਨਪਲੱਗ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।ਫਾਰਵਰਡ ਸੰਮਿਲਨ WIFI ਚਿੱਪ ਨੂੰ ਪ੍ਰੋਗਰਾਮ ਕਰਨ ਲਈ WIFI ਚਿੱਪ ESP32-C ਨਾਲ ਸੰਚਾਰ ਕਰਦਾ ਹੈ;ਉਲਟਾ ਸੰਮਿਲਨ T5L ਨੂੰ ਪ੍ਰੋਗਰਾਮ ਕਰਨ ਲਈ XR21V1410IL16 ਨਾਲ ਸੰਚਾਰ ਕਰਦਾ ਹੈ।TYPE C 5V ਪਾਵਰ ਸਪਲਾਈ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ।

10. ਪੈਰਲਲ ਪੋਰਟ ਸੰਚਾਰ: T5L OS ਕੋਰ ਵਿੱਚ ਬਹੁਤ ਸਾਰੇ ਮੁਫਤ IO ਪੋਰਟ ਹਨ, ਅਤੇ 16bit ਪੈਰਲਲ ਪੋਰਟ ਸੰਚਾਰ ਨੂੰ ਡਿਜ਼ਾਈਨ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।ST ARM FMC ਪੈਰਲਲ ਪੋਰਟ ਪ੍ਰੋਟੋਕੋਲ ਦੇ ਨਾਲ ਮਿਲਾ ਕੇ, ਇਹ ਸਮਕਾਲੀ ਪੜ੍ਹਨ ਅਤੇ ਲਿਖਣ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ।

11. LCM RGB ਹਾਈ-ਸਪੀਡ ਇੰਟਰਫੇਸ ਡਿਜ਼ਾਈਨ: T5L RGB ਆਉਟਪੁੱਟ LCM RGB ਨਾਲ ਸਿੱਧਾ ਜੁੜਿਆ ਹੋਇਆ ਹੈ, ਅਤੇ LCM ਵਾਟਰ ਰਿਪਲ ਦਖਲਅੰਦਾਜ਼ੀ ਨੂੰ ਘਟਾਉਣ ਲਈ ਮੱਧ ਵਿੱਚ ਬਫਰ ਪ੍ਰਤੀਰੋਧ ਜੋੜਿਆ ਗਿਆ ਹੈ।ਵਾਇਰਿੰਗ ਕਰਦੇ ਸਮੇਂ, RGB ਇੰਟਰਫੇਸ ਕੁਨੈਕਸ਼ਨ ਦੀ ਲੰਬਾਈ ਨੂੰ ਘਟਾਓ, ਖਾਸ ਕਰਕੇ PCLK ਸਿਗਨਲ, ਅਤੇ RGB ਇੰਟਰਫੇਸ PCLK, HS, VS, DE ਟੈਸਟ ਪੁਆਇੰਟਾਂ ਨੂੰ ਵਧਾਓ;ਸਕਰੀਨ ਦਾ SPI ਪੋਰਟ T5L ਦੇ P2.4~P2.7 ਪੋਰਟਾਂ ਨਾਲ ਜੁੜਿਆ ਹੋਇਆ ਹੈ, ਜੋ ਸਕਰੀਨ ਡਰਾਈਵਰ ਨੂੰ ਡਿਜ਼ਾਈਨ ਕਰਨ ਲਈ ਸੁਵਿਧਾਜਨਕ ਹੈ।ਅੰਡਰਲਾਈੰਗ ਸੌਫਟਵੇਅਰ ਦੇ ਵਿਕਾਸ ਦੀ ਸਹੂਲਤ ਲਈ RST, nCS, SDA, SCI ਟੈਸਟ ਪੁਆਇੰਟਾਂ ਦੀ ਅਗਵਾਈ ਕਰੋ।

(2) DGUS ਇੰਟਰਫੇਸ

ਚਿੱਤਰ6 ਚਿੱਤਰ7

1.6 ਡਾਟਾ ਵੇਰੀਏਬਲ ਡਿਸਪਲੇ ਕੰਟਰੋਲ

(3) ਓ.ਐਸ
//———————————DGUS ਪੜ੍ਹਨ ਅਤੇ ਲਿਖਣ ਦਾ ਫਾਰਮੈਟ
typedef struct
{
u16 addr;//UI 16bit ਵੇਰੀਏਬਲ ਪਤਾ
u8 datLen;//8ਬਿਟਡਾਟਾ ਲੰਬਾਈ
u8 *pBuf;//8 ਬਿੱਟ ਡਾਟਾ ਪੁਆਇੰਟਰ
} UI_packTypeDef;//DGUS ਪੈਕਟ ਪੜ੍ਹੋ ਅਤੇ ਲਿਖੋ

//——————————- ਡਾਟਾ ਵੇਰੀਏਬਲ ਡਿਸਪਲੇ ਕੰਟਰੋਲ
typedef struct
{
u16 VP;
u16 X;
u16 Y;
u16 ਰੰਗ;
u8 Lib_ID;
u8 ਫੌਂਟਸਾਈਜ਼;
u8 ਅਲਗਨਮੈਂਟ;
u8 IntNum;
u8 ਦਸੰਬਰ;
u8 ਕਿਸਮ;
u8 LenUint;
u8 StringUinit[11];
} Number_spTypeDef;// ਡੇਟਾ ਵੇਰੀਏਬਲ ਵਰਣਨ ਬਣਤਰ

typedef struct
{
ਨੰਬਰ_spTypeDef sp;// SP ਵਰਣਨ ਪੁਆਇੰਟਰ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ
UI_packTypeDef spPack;// SP ਵੇਰੀਏਬਲ DGUS ਰੀਡ ਅਤੇ ਰਾਈਟ ਪੈਕੇਜ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ
UI_packTypeDef vpPack;// vp ਵੇਰੀਏਬਲ DGUS ਰੀਡ ਅਤੇ ਰਾਈਟ ਪੈਕੇਜ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ
} Number_HandleTypeDef;// ਡਾਟਾ ਵੇਰੀਏਬਲ ਬਣਤਰ

ਪਿਛਲੀ ਡਾਟਾ ਵੇਰੀਏਬਲ ਹੈਂਡਲ ਪਰਿਭਾਸ਼ਾ ਦੇ ਨਾਲ।ਅੱਗੇ, ਵੋਲਟੇਜ ਸੈਂਪਲਿੰਗ ਡਿਸਪਲੇ ਲਈ ਇੱਕ ਵੇਰੀਏਬਲ ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ:
Number_HandleTypeDef Hsample;
u16 ਵੋਲਟੇਜ_ਨਮੂਨਾ;

ਪਹਿਲਾਂ, ਸ਼ੁਰੂਆਤੀ ਫੰਕਸ਼ਨ ਨੂੰ ਚਲਾਓ
NumberSP_Init(&Hsample,voltage_sample,0×8000);//0×8000 ਇੱਥੇ ਵਰਣਨ ਪੁਆਇੰਟਰ ਹੈ
//——ਡਾਟਾ ਵੇਰੀਏਬਲ SP ਪੁਆਇੰਟਰ ਬਣਤਰ ਦੀ ਸ਼ੁਰੂਆਤ ਦਿਖਾ ਰਿਹਾ ਹੈ——
void NumberSP_Init(Number_HandleTypeDef *number,u8 *ਮੁੱਲ, u16 numberAddr)
{
number->spPack.addr = numberAddr;
number->spPack.datLen = sizeof(number->sp);
number->spPack.pBuf = (u8 *)&number->sp;
        
Read_Dgus(&number->spPack);
number->vpPack.addr = number->sp.VP;
ਸਵਿੱਚ(number->sp.Type) //vp ਵੇਰੀਏਬਲ ਦੀ ਡਾਟਾ ਲੰਬਾਈ DGUS ਇੰਟਰਫੇਸ ਵਿੱਚ ਡਿਜ਼ਾਈਨ ਕੀਤੇ ਗਏ ਡੇਟਾ ਵੇਰੀਏਬਲ ਕਿਸਮ ਦੇ ਅਨੁਸਾਰ ਆਪਣੇ ਆਪ ਚੁਣੀ ਜਾਂਦੀ ਹੈ।

{
ਕੇਸ 0:
ਕੇਸ 5:
ਨੰਬਰ->vpPack.datLen = 2;
ਤੋੜਨਾ;
ਕੇਸ 1:
ਕੇਸ 2:
ਕੇਸ 3:
ਕੇਸ 6:
ਨੰਬਰ->vpPack.datLen = 4;
ਕੇਸ 4:
ਨੰਬਰ->vpPack.datLen = 8;
ਤੋੜਨਾ;
}
number->vpPack.pBuf = ਮੁੱਲ;
}

ਸ਼ੁਰੂਆਤੀਕਰਣ ਤੋਂ ਬਾਅਦ, Hsample.sp ਵੋਲਟੇਜ ਸੈਂਪਲਿੰਗ ਡੇਟਾ ਵੇਰੀਏਬਲ ਦਾ ਵਰਣਨ ਪੁਆਇੰਟਰ ਹੈ;Hsample.spPack DGUS ਇੰਟਰਫੇਸ ਫੰਕਸ਼ਨ ਦੁਆਰਾ OS ਕੋਰ ਅਤੇ UI ਵੋਲਟੇਜ ਸੈਂਪਲਿੰਗ ਡੇਟਾ ਵੇਰੀਏਬਲ ਵਿਚਕਾਰ ਸੰਚਾਰ ਪੁਆਇੰਟਰ ਹੈ;Hsample.vpPack ਵੋਲਟੇਜ ਸੈਂਪਲਿੰਗ ਡੇਟਾ ਵੇਰੀਏਬਲ ਨੂੰ ਬਦਲਣ ਦਾ ਗੁਣ ਹੈ, ਜਿਵੇਂ ਕਿ ਫੌਂਟ ਕਲਰ, ਆਦਿ ਵੀ DGUS ਇੰਟਰਫੇਸ ਫੰਕਸ਼ਨ ਦੁਆਰਾ UI ਕੋਰ ਨੂੰ ਪਾਸ ਕੀਤੇ ਜਾਂਦੇ ਹਨ।Hsample.vpPack.addr ਵੋਲਟੇਜ ਸੈਂਪਲਿੰਗ ਡੇਟਾ ਵੇਰੀਏਬਲ ਐਡਰੈੱਸ ਹੈ, ਜੋ ਆਪਣੇ ਆਪ ਸ਼ੁਰੂਆਤੀ ਫੰਕਸ਼ਨ ਤੋਂ ਪ੍ਰਾਪਤ ਕੀਤਾ ਗਿਆ ਹੈ।ਜਦੋਂ ਤੁਸੀਂ DGUS ਇੰਟਰਫੇਸ ਵਿੱਚ ਵੇਰੀਏਬਲ ਐਡਰੈੱਸ ਜਾਂ ਵੇਰੀਏਬਲ ਡੇਟਾ ਕਿਸਮ ਨੂੰ ਬਦਲਦੇ ਹੋ, ਤਾਂ OS ਕੋਰ ਵਿੱਚ ਵੇਰੀਏਬਲ ਐਡਰੈੱਸ ਨੂੰ ਸਮਕਾਲੀ ਰੂਪ ਵਿੱਚ ਅਪਡੇਟ ਕਰਨ ਦੀ ਕੋਈ ਲੋੜ ਨਹੀਂ ਹੁੰਦੀ ਹੈ।OS ਕੋਰ ਦੁਆਰਾ voltage_sample ਵੇਰੀਏਬਲ ਦੀ ਗਣਨਾ ਕਰਨ ਤੋਂ ਬਾਅਦ, ਇਸਨੂੰ ਅਪਡੇਟ ਕਰਨ ਲਈ ਸਿਰਫ Write_Dgus(&Hsample.vpPack) ਫੰਕਸ਼ਨ ਨੂੰ ਚਲਾਉਣ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।DGUS ਟ੍ਰਾਂਸਮਿਸ਼ਨ ਲਈ ਵੋਲਟੇਜ_ਸੈਂਪਲ ਨੂੰ ਪੈਕ ਕਰਨ ਦੀ ਕੋਈ ਲੋੜ ਨਹੀਂ ਹੈ।


ਪੋਸਟ ਟਾਈਮ: ਜੂਨ-15-2022