ਦੋ ਮੁੱਖ ਸੀਰੀਅਲ ਸੰਚਾਰ ਵਿਕਲਪਾਂ, I2C ਅਤੇ SPI ਵਿਚਕਾਰ ਚੁਣਨਾ, ਇੱਕ ਚੁਣੌਤੀ ਹੋ ਸਕਦੀ ਹੈ ਅਤੇ ਇੱਕ ਪ੍ਰੋਜੈਕਟ ਦੇ ਡਿਜ਼ਾਈਨ 'ਤੇ ਮਹੱਤਵਪੂਰਣ ਪ੍ਰਭਾਵ ਪਾ ਸਕਦਾ ਹੈ, ਖਾਸ ਕਰਕੇ ਜੇ ਗਲਤ ਸੰਚਾਰ ਪਰੋਟੋਕਾਲ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ. SPI ਅਤੇ I2C ਦੋਵੇਂ ਸੰਚਾਰ ਪ੍ਰੋਟੋਕੋਲ ਦੇ ਤੌਰ ਤੇ ਆਪਣੇ ਫਾਇਦੇ ਅਤੇ ਸੀਮਾਵਾਂ ਲਿਆਉਂਦੇ ਹਨ ਜੋ ਉਹਨਾਂ ਨੂੰ ਹਰੇਕ ਵਿਸ਼ੇਸ਼ ਐਪਲੀਕੇਸ਼ਨ ਲਈ ਅਨੁਕੂਲ ਬਣਾਉਂਦੇ ਹਨ.
SPI
SPI, ਜਾਂ ਸੀਰੀਅਲ ਤੋਂ ਪੈਰੀਫਿਰਲ ਇੰਟਰਫੇਸ, ਇੱਕ ਬਹੁਤ ਘੱਟ ਪਾਵਰ ਹੈ, ਚਾਰ ਤਾਰ ਸੀਰੀਅਲ ਸੰਚਾਰ ਇੰਟਰਫੇਸ ਜੋ ਇਕ ਦੂਜੇ ਨਾਲ ਸੰਚਾਰ ਕਰਨ ਲਈ ਆਈ.ਸੀ. ਕੰਟਰੋਲਰਾਂ ਅਤੇ ਪੈਰੀਫਰਲ ਲਈ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਹੈ. ਐਸ.ਪੀ.ਆਈ. ਬੱਸ ਇਕ ਫੁੱਲ ਡੁਪਲੈਕਸ ਬੱਸ ਹੈ, ਜੋ ਮਾਸਟਰ ਯੰਤਰ ਤੋਂ ਅਤੇ 10 ਐੱਮ.ਬੀ.ਪੀ.ਸੀ. ਤਕ ਦੀ ਰੇਟ ' ਐਸਪੀਆਈ ਦੇ ਹਾਈ-ਸਪੀਡ ਆਪਰੇਸ਼ਨ ਆਮ ਤੌਰ ਤੇ ਇਸ ਨੂੰ ਕੈਪੀਸੈਟ ਦੇ ਵਾਧੇ ਕਰਕੇ ਅਲੱਗ ਪੀਸੀਬੀਜ਼ ਦੇ ਹਿੱਸੇ ਦੇ ਵਿਚ ਸੰਚਾਰ ਕਰਨ ਲਈ ਵਰਤੇ ਜਾਂਦੇ ਹਨ, ਜੋ ਲੰਮੀ ਦੂਰੀ ਸੰਚਾਰ ਸਿਗਨਲ ਲਾਈਨਾਂ ਵਿੱਚ ਜੋੜਦੇ ਹਨ. ਪੀਸੀਬੀ ਕਾਪੀਸੀਟੇਸ਼ਨ ਐਸਪੀਆਈ ਸੰਚਾਰ ਲਾਈਨਜ਼ ਦੀ ਲੰਬਾਈ ਵੀ ਸੀਮਿਤ ਕਰ ਸਕਦੀ ਹੈ.
ਜਦੋਂ SPI ਇੱਕ ਸਥਾਪਿਤ ਪ੍ਰੋਟੋਕੋਲ ਹੈ, ਇਹ ਇੱਕ ਆਧਿਕਾਰਿਕ ਸਟੈਂਡਰਡ ਨਹੀਂ ਹੈ ਜਿਸ ਦੇ ਕਈ ਰੂਪ ਅਤੇ SPI ਕਸਟਮਾਈਜੇਸ਼ਨ ਹੁੰਦੇ ਹਨ ਜੋ ਕਿ ਅਨੁਕੂਲਤਾ ਸਮੱਸਿਆਵਾਂ ਦਾ ਕਾਰਨ ਬਣ ਸਕਦੇ ਹਨ. ਇਹ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਕਿ ਐਸੋਸੀਏਸ਼ਨ ਦੇ ਕਿਸੇ ਵੀ ਅਣਪਛਾਤੀ ਸੰਚਾਰ ਸਮੱਸਿਆਵਾਂ ਨਹੀਂ ਹੋਣਗੀਆਂ, ਜੋ ਕਿਸੇ ਉਤਪਾਦ ਦੇ ਵਿਕਾਸ 'ਤੇ ਅਸਰ ਪਾ ਸਕਦੀਆਂ ਹਨ.
I2C
I2C ਇੱਕ ਅਧਿਕਾਰਕ ਮਿਆਰੀ ਸੀਰੀਅਲ ਸੰਚਾਰ ਪਰੋਟੋਕਾਲ ਹੈ ਜੋ ਸਿਰਫ ਦੋ ਸਿਗਨਲ ਲਾਈਨਾਂ ਦੀ ਲੋੜ ਹੈ ਜੋ ਕਿ ਪੀਸੀਬੀ ਉੱਤੇ ਚਿਪ ਦੇ ਵਿਚਕਾਰ ਸੰਚਾਰ ਲਈ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਸੀ. I2C ਅਸਲ ਵਿੱਚ 100kbps ਸੰਚਾਰ ਲਈ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਸੀ ਪਰ ਵੱਧ ਡਾਟਾ ਪ੍ਰਸਾਰਣ ਵਿਧੀ 3.4 Mbps ਤੱਕ ਦੀ ਸਪੀਡ ਨੂੰ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਸਾਲਾਂ ਵਿੱਚ ਵਿਕਸਿਤ ਕੀਤੀ ਗਈ ਹੈ. I2C ਪ੍ਰੋਟੋਕੋਲ ਨੂੰ ਇੱਕ ਆਧਿਕਾਰਿਕ ਸਟੈਂਡਰਡ ਵਜੋਂ ਸਥਾਪਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਜੋ I2C ਲਾਗੂਕਰਣਾਂ ਅਤੇ ਵਧੀਆ ਪਿਛੋਕੜ ਅਨੁਕੂਲਤਾ ਦੇ ਵਿੱਚ ਚੰਗੀ ਅਨੁਕੂਲਤਾ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ.
I2C ਅਤੇ SPI ਵਿਚਕਾਰ ਚੁਣਨਾ
I2c ਅਤੇ SPI ਦੇ ਵਿਚਕਾਰ ਚੋਣ, ਦੋ ਮੁੱਖ ਸੀਰੀਅਲ ਸੰਚਾਰ ਪਰੋਟੋਕਾਲਾਂ, ਲਈ I2C, SPI, ਅਤੇ ਤੁਹਾਡੀ ਐਪਲੀਕੇਸ਼ਨ ਦੇ ਫਾਇਦਿਆਂ ਅਤੇ ਸੀਮਾਵਾਂ ਦੀ ਚੰਗੀ ਸਮਝ ਦੀ ਲੋੜ ਹੈ. ਹਰ ਸੰਚਾਰ ਪ੍ਰੋਟੋਕੋਲ ਦੇ ਵੱਖਰੇ ਫਾਇਦੇ ਹੋਣਗੇ ਜੋ ਕਿ ਆਪਣੇ ਆਪ ਨੂੰ ਵੱਖ ਕਰਨਾ ਪਸੰਦ ਕਰਨਗੇ ਕਿਉਂਕਿ ਇਹ ਤੁਹਾਡੀ ਐਪਲੀਕੇਸ਼ਨ ਤੇ ਲਾਗੂ ਹੁੰਦਾ ਹੈ. I2C ਅਤੇ SPI ਵਿਚਕਾਰ ਮੁੱਖ ਅੰਤਰ ਹਨ:
- I2C ਲਈ ਸਿਰਫ ਦੋ ਤਾਰਾਂ ਦੀ ਜ਼ਰੂਰਤ ਹੈ, ਜਦਕਿ SPI ਨੂੰ ਤਿੰਨ ਜਾਂ ਚਾਰ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ
- SPI ਵੱਧ ਗਤੀ ਭਰਪੂਰ ਡੁਪਲੈਕਸ ਸੰਚਾਰ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ ਜਦਕਿ I2C ਹੌਲੀ ਹੁੰਦਾ ਹੈ
- I2C ਐਸਪੀਆਈ ਨਾਲੋਂ ਜਿਆਦਾ ਸ਼ਕਤੀ ਪ੍ਰਾਪਤ ਕਰਦਾ ਹੈ
- I2C ਇੱਕੋ ਬੱਸ ਵਿਚ ਬਹੁਤ ਸਾਰੀਆਂ ਉਪਕਰਣਾਂ ਦੀ ਸਹਾਇਤਾ ਕਰਦਾ ਹੈ, ਜਦੋਂ ਕਿ ਸੰਕਰਮਣ ਉਪਕਰਣ ਦੁਆਰਾ ਸੰਕੇਤ ਸੰਕੇਤ ਲਾਈਨਾਂ ਦੀ ਬਜਾਏ ਬਿਨਾਂ ਹੋਰ ਚੋਣ ਸਿਗਨਲ ਲਾਈਨਾਂ
- I2C ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ ਕਿ ਭੇਜੇ ਗਏ ਡੇਟਾ ਨੂੰ ਸਲੇਵ ਡਿਵਾਈਸ ਦੁਆਰਾ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਦੋਂ SPI ਇਹ ਪ੍ਰਮਾਣਿਤ ਨਹੀਂ ਕਰਦਾ ਕਿ ਡੇਟਾ ਸਹੀ ਢੰਗ ਨਾਲ ਪ੍ਰਾਪਤ ਕੀਤਾ ਗਿਆ ਹੈ
- I2C ਇੱਕ ਜੰਤਰ ਦੁਆਰਾ ਬੰਦ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਜੋ ਸੰਚਾਰ ਬੱਸ ਨੂੰ ਜਾਰੀ ਕਰਨ ਵਿੱਚ ਅਸਫਲ ਹੁੰਦਾ ਹੈ
- SPI ਪੀਸੀਬੀ ਬੰਦ ਨਹੀਂ ਕਰ ਸਕਦਾ ਜਦੋਂ ਕਿ I2C ਘੱਟ ਡਾਟਾ ਪਰਸਾਰਣ ਦੀ ਗਤੀ ਤੇ ਹੋ ਸਕਦਾ ਹੈ
- ਆਈਸੀਸੀ ਐਸਪੀਆਈ ਸੰਚਾਰ ਪ੍ਰੋਟੋਕੋਲ ਤੋਂ ਲਾਗੂ ਕਰਨ ਲਈ ਸਸਤਾ ਹੈ
- SPI ਬਸ ਬੱਸ ਵਿਚ ਇਕ ਮਾਸਟਰ ਡਿਵਾਈਸ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ ਜਦਕਿ I2C ਮਲਟੀਪਲ ਮਾਸਟਰ ਡਿਵਾਈਸਿਸ ਨੂੰ ਸਹਿਯੋਗ ਦਿੰਦਾ ਹੈ
- SPI ਨਾਲੋਂ ਰੌਲੇ ਲਈ I2C ਘੱਟ ਸੰਵੇਦਨਸ਼ੀਲ ਹੁੰਦਾ ਹੈ
- ਐਸ.ਪੀ.ਆਈ. ਸਿਰਫ ਥੋੜ੍ਹੇ ਸਮੇਂ ਦੀ ਯਾਤਰਾ ਕਰ ਸਕਦਾ ਹੈ ਅਤੇ ਕਦੇ-ਕਦੇ ਪੀਸੀਬੀ ਦੇ ਬੰਦ ਹੋ ਸਕਦਾ ਹੈ ਜਦਕਿ I2C ਬਹੁਤ ਜ਼ਿਆਦਾ ਦੂਰੀ ਤੋਂ ਡਾਟਾ ਸੰਚਾਰ ਕਰ ਸਕਦਾ ਹੈ, ਹਾਲਾਂਕਿ ਘੱਟ ਡਾਟਾ ਦਰਾਂ
- ਇੱਕ ਰਸਮੀ ਮਾਨਕ ਦੀ ਕਮੀ ਦੇ ਸਿੱਟੇ ਵਜੋਂ ਐਸਪੀਆਈ ਪ੍ਰੋਟੋਕੋਲ ਦੇ ਕਈ ਬਦਲਾਅ ਹੋਏ ਹਨ, ਭਿੰਨਤਾਵਾਂ ਜੋ ਜਿਆਦਾਤਰ I2C ਪ੍ਰੋਟੋਕੋਲ ਨਾਲ ਟਾਲਿਆ ਗਿਆ ਹੈ
SPI ਅਤੇ I2C ਵਿਚਕਾਰ ਇਹ ਫਰਕ ਤੁਹਾਨੂੰ ਆਪਣੀ ਐਪਲੀਕੇਸ਼ਨ ਲਈ ਵਧੀਆ ਸੰਚਾਰ ਵਿਕਲਪ ਚੁਣਨਾ ਚਾਹੀਦਾ ਹੈ. ਸਪੀਆਈ ਅਤੇ I2C ਦੋਨੋ ਵਧੀਆ ਸੰਚਾਰ ਵਿਕਲਪ ਹਨ, ਪਰ ਹਰ ਇੱਕ ਦਾ ਕੁਝ ਵੱਖਰਾ ਫਾਇਦਾ ਹੈ ਅਤੇ ਪਸੰਦੀਦਾ ਐਪਲੀਕੇਸ਼ਨ ਹਨ ਕੁੱਲ ਮਿਲਾ ਕੇ, ਐਸਪੀਆਈ ਹਾਈ ਸਪੀਡ ਅਤੇ ਘੱਟ ਪਾਵਰ ਐਪਲੀਕੇਸ਼ਨ ਲਈ ਬਿਹਤਰ ਹੈ ਜਦਕਿ I2C ਬਹੁਤ ਜ਼ਿਆਦਾ ਪੈਰੀਫਿਰਲ ਦੇ ਨਾਲ ਸੰਚਾਰ ਲਈ ਢੁਕਵਾਂ ਹੈ ਅਤੇ I2C ਬੱਸ ਉੱਤੇ ਪੈਰੀਫਿਰਲਾਂ ਵਿਚ ਮਾਸਟਰ ਯੰਤਰ ਦੀ ਰਣਨੀਤੀ ਬਦਲਣ ਲਈ ਵਧੀਆ ਹੈ. ਐੱਮਪੀਆਈ ਅਤੇ ਆਈਸੀਸੀ ਦੋਵੇਂ ਹੀ ਐਮਬੈਡਡ ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ ਮਜ਼ਬੂਤ, ਸਥਾਈ ਸੰਚਾਰ ਪ੍ਰੋਟੋਕੋਲ ਹਨ ਜੋ ਏਮਬੇਡ ਦੁਨੀਆ ਲਈ ਚੰਗੀ ਤਰ੍ਹਾਂ ਅਨੁਕੂਲ ਹਨ.