మొబైల్ హ్యాండ్సెట్లు, కంప్యూటర్లలో డిజిటల్ సిస్టమ్లు మరియు దాని ఆడియో డేటా అవసరాలు హోమ్ ఆటోమేషన్ ఉత్పత్తులు కాల వ్యవధిలో నాటకీయంగా మారాయి. ప్రాసెసర్ల నుండి లేదా వాటికి సంబంధించిన ఆడియో సిగ్నల్ డిజిటల్గా మారుతోంది. వివిధ సిస్టమ్లలోని ఈ డేటా వంటి అనేక పరికరాల ద్వారా ప్రాసెస్ చేయబడుతుంది డీఎస్పీలు , ADCలు, DACలు, డిజిటల్ I/O ఇంటర్ఫేస్లు మొదలైనవి. ఈ పరికరాలు ఆడియో డేటాను ఒకదానితో ఒకటి కమ్యూనికేట్ చేయడానికి ప్రామాణిక ప్రోటోకాల్ అవసరం. అలాంటి వాటిలో ఒకటి I2S ప్రోటోకాల్. ఇది పరికరాల మధ్య డిజిటల్ ఆడియో ఇంటర్ఫేస్ కోసం ఫిబ్రవరి 1986లో ఫిలిప్ సెమీకండక్టర్ రూపొందించిన సీరియల్ బస్ ఇంటర్ఫేస్. ఈ వ్యాసం I యొక్క అవలోకనాన్ని చర్చిస్తుంది 2S ప్రోటోకాల్ ఇది అప్లికేషన్లతో పని చేస్తుంది.
I2S ప్రోటోకాల్ అంటే ఏమిటి?
డిజిటల్ ఆడియో డేటాను ఒక పరికరం నుండి మరొక పరికరానికి ప్రసారం చేయడానికి ఉపయోగించే ప్రోటోకాల్ను I2S లేదా ఇంటర్-ఐసి సౌండ్ ప్రోటోకాల్ అంటారు. ఈ ప్రోటోకాల్ ఎలక్ట్రానిక్ పరికరంలో PCM (పల్స్-కోడ్ మాడ్యులేటెడ్) ఆడియో డేటాను ఒక IC నుండి మరొకదానికి ప్రసారం చేస్తుంది. MCU నుండి DAC లేదా యాంప్లిఫైయర్కు ముందే రికార్డ్ చేయబడిన ఆడియో ఫైల్లను ప్రసారం చేయడంలో I2S కీలక పాత్ర పోషిస్తుంది. మైక్రోఫోన్ని ఉపయోగించి ఆడియోను డిజిటలైజ్ చేయడానికి కూడా ఈ ప్రోటోకాల్ను ఉపయోగించవచ్చు. I2S ప్రోటోకాల్లలో కుదింపు లేదు, కాబట్టి మీరు OGG లేదా MP3 లేదా ఆడియోను ఘనీభవించే ఇతర ఆడియో ఫార్మాట్లను ప్లే చేయలేరు, అయితే, మీరు WAV ఫైల్లను ప్లే చేయవచ్చు.
లక్షణాలు
ది I2S ప్రోటోకాల్ లక్షణాలు కింది వాటిని చేర్చండి.
- ఇది ప్రతి నమూనాకు 8 నుండి 32 డేటా బిట్లను కలిగి ఉంటుంది.
- Tx & Rx FIFO అంతరాయాలు.
- ఇది DMAకి మద్దతు ఇస్తుంది.
- 16-బిట్, 32-బిట్, 48-బిట్ లేదా 64-బిట్ వర్డ్ సెలెక్ట్ పీరియడ్.
- ఏకకాలంలో ద్వి-దిశాత్మక ఆడియో స్ట్రీమింగ్.
- 8-బిట్, 16-బిట్ మరియు 24-బిట్ నమూనా వెడల్పు.
- ఇది వేర్వేరు నమూనా రేట్లు కలిగి ఉంది.
- 64-బిట్ వర్డ్ ఎంపిక వ్యవధిలో డేటా రేటు 96 kHz వరకు ఉంటుంది.
- ఇంటర్లీవ్డ్ స్టీరియో FIFOలు లేదా స్వతంత్ర కుడి & ఎడమ ఛానెల్ FIFOలు
- Tx & Rx యొక్క స్వతంత్ర ఎనేబుల్.
I2S కమ్యూనికేషన్ ప్రోటోకాల్ పని చేస్తోంది
I2S కమ్యూనికేషన్ ప్రోటోకాల్ అనేది 3 వైర్ ప్రోటోకాల్, ఇది SCK (నిరంతర సీరియల్ క్లాక్), WS (వర్డ్ సెలెక్ట్) & SD (సీరియల్ డేటా)ను కలిగి ఉన్న 3-లైన్ సీరియల్ బస్సు ద్వారా ఆడియో డేటాను హ్యాండిల్ చేస్తుంది.
I2S యొక్క 3-వైర్ కనెక్షన్:
SCK
SCK లేదా సీరియల్ క్లాక్ అనేది I2S ప్రోటోకాల్ యొక్క మొదటి పంక్తి, దీనిని BCLK లేదా బిట్ క్లాక్ లైన్ అని కూడా పిలుస్తారు, ఇది ఇదే సైకిల్లో డేటాను పొందేందుకు ఉపయోగించబడుతుంది. ప్రతి ఛానెల్ x సంఖ్య కోసం ఫ్రీక్వెన్సీ = నమూనా రేటు x బిట్స్ వంటి సూత్రాన్ని ఉపయోగించడం ద్వారా సీరియల్ క్లాక్ ఫ్రీక్వెన్సీ కేవలం నిర్వచించబడుతుంది. ఛానెల్ల.
WS
I2S కమ్యూనికేషన్ ప్రోటోకాల్లో, WS లేదా వర్డ్ సెలెక్ట్ అనేది కుడి లేదా ఎడమ ఛానెల్ని వేరుచేసే FS (ఫ్రేమ్ సెలెక్ట్) వైర్ అని కూడా పిలువబడే లైన్.
WS = 0 అయితే ఎడమ ఛానెల్ లేదా ఛానెల్-1 ఉపయోగించబడుతుంది.
WS = 1 అయితే సరైన ఛానెల్ లేదా ఛానెల్-2 ఉపయోగించబడుతుంది.
SD
సీరియల్ డేటా లేదా SD అనేది పేలోడ్ 2 పూరకాలలో ప్రసారం చేయబడిన చివరి వైర్. కాబట్టి, MSB మొదట బదిలీ చేయబడటం చాలా ముఖ్యమైనది, ఎందుకంటే ట్రాన్స్మిటర్ & రిసీవర్ రెండూ వేర్వేరు పద నిడివిని కలిగి ఉండవచ్చు. అందువలన, ట్రాన్స్మిటర్ లేదా రిసీవర్ ఎన్ని బిట్లు ప్రసారం చేయబడతాయో గుర్తించాలి.
- రిసీవర్ యొక్క పద పొడవు ట్రాన్స్మిటర్ కంటే ఎక్కువగా ఉంటే, అప్పుడు పదం కుదించబడుతుంది (LSB బిట్లు సున్నాకి సెట్ చేయబడతాయి).
- రిసీవర్ పద పొడవు ట్రాన్స్మిటర్ పద పొడవు కంటే తక్కువగా ఉంటే, LSB బిట్లు విస్మరించబడతాయి.
ది ట్రాన్స్మిటర్ డేటాను పంపవచ్చు గడియారం పల్స్ యొక్క లీడింగ్ ఎడ్జ్ లేదా వెనుక అంచు . దీన్ని సంబంధితంగా కాన్ఫిగర్ చేయవచ్చు నియంత్రణ రిజిస్టర్లు . కానీ రిసీవర్ సీరియల్ డేటాను మరియు WSని క్లాక్ పల్స్ యొక్క అగ్ర అంచున మాత్రమే లాక్ చేస్తుంది . ట్రాన్స్మిటర్ WSలో మార్పు తర్వాత ఒక క్లాక్ పల్స్ తర్వాత మాత్రమే డేటాను ప్రసారం చేస్తుంది. సీరియల్ డేటా సమకాలీకరణ కోసం రిసీవర్ WS సిగ్నల్ని ఉపయోగిస్తుంది.
I2S నెట్వర్క్ భాగాలు
బహుళ I2S భాగాలు ఒకదానికొకటి కనెక్ట్ అయినప్పుడు దీనిని I2S నెట్వర్క్ అంటారు. ఈ నెట్వర్క్ యొక్క భాగం విభిన్న పేర్లు & విభిన్న విధులను కూడా కలిగి ఉంటుంది. కాబట్టి, కింది రేఖాచిత్రం 3 విభిన్న నెట్వర్క్లను చూపుతుంది. ఇక్కడ ESP NodeMCU బోర్డ్ ట్రాన్స్మిటర్గా ఉపయోగించబడుతుంది మరియు I2S ఆడియో బ్రేక్అవుట్ బోర్డ్ రిసీవర్గా ఉపయోగించబడుతుంది. ట్రాన్స్మిటర్ మరియు రిసీవర్ని కనెక్ట్ చేయడానికి ఉపయోగించే మూడు వైర్లు SCK, WS & SD.
మొదటి రేఖాచిత్రంలో, ట్రాన్స్మిటర్ (Tx) మాస్టర్ కాబట్టి ఇది SCK (సీరియల్ క్లాక్) & WS (వర్డ్ సెలెక్ట్) లైన్లను నియంత్రిస్తుంది.
రెండవ రేఖాచిత్రంలో, రిసీవర్ మాస్టర్. కాబట్టి SCK & WS లైన్లు రెండూ రిసీవర్ నుండి ప్రారంభమవుతాయి & ట్రాన్స్మిటర్ ముగుస్తుంది.
మూడవ రేఖాచిత్రంలో, మాస్టర్ పరికరం వలె పనిచేసే నెట్వర్క్లోని నోడ్లకు బాహ్య కంట్రోలర్ కనెక్ట్ చేయబడింది. కాబట్టి ఈ పరికరం SCK & WSని ఉత్పత్తి చేస్తుంది.
పై-అన్ని I2S నెట్వర్క్లలో, ఒకే ఒక మాస్టర్ పరికరం మాత్రమే అందుబాటులో ఉంది మరియు సౌండ్ డేటాను ప్రసారం చేసే లేదా స్వీకరించే అనేక ఇతర భాగాలు ఉన్నాయి.
I2Sలో క్లాక్ సిగ్నల్ అందించడం ద్వారా ఏదైనా పరికరం మాస్టర్గా ఉంటుంది.
I2S టైమింగ్ రేఖాచిత్రం
I2S & దాని కార్యాచరణ గురించి మెరుగైన అవగాహన కోసం, మేము క్రింద చూపిన I2S కమ్యూనికేషన్ ప్రోటోకాల్ టైమింగ్ రేఖాచిత్రాన్ని కలిగి ఉన్నాము. I2S ప్రోటోకాల్ యొక్క సమయ రేఖాచిత్రం క్రింద చూపబడింది, ఇందులో మూడు వైర్లు SCK, WS & SD ఉన్నాయి.
ఎగువ రేఖాచిత్రంలో, ముందుగా, సీరియల్ గడియారం ప్రతి ఛానెల్కు ఫ్రీక్వెన్సీ = నమూనా రేట్ * బిట్లను కలిగి ఉంటుంది * సంఖ్య. ఛానెల్స్). సెలెక్ట్ లైన్ అనే పదం కుడి ఛానెల్కు '1' & ఎడమ ఛానెల్కి '0' మధ్య మారే రెండవ పంక్తి.
మూడవ పంక్తి సీరియల్ డేటా లైన్, ఇక్కడ డేటా ప్రతి క్లాక్ సైకిల్పై పడే అంచుపై ప్రసారం చేయబడుతుంది, ఇది ఎత్తు నుండి తక్కువ వరకు చుక్కలతో సూచించబడుతుంది.
అదనంగా, MSB ప్రసారం చేయబడే ముందు WS లైన్ ఒక CLK చక్రం మారుతుందని మేము గమనించవచ్చు, ఇది రిసీవర్కు మునుపటి పదాన్ని నిల్వ చేయడానికి మరియు తదుపరి పదం కోసం ఇన్పుట్ రిజిస్టర్ను క్లియర్ చేయడానికి సమయాన్ని ఇస్తుంది. WS మారిన తర్వాత SCK మారినప్పుడు MSB పంపబడుతుంది.
ట్రాన్స్మిటర్ మరియు రిసీవర్ మధ్య డేటా ప్రసారం చేయబడినప్పుడల్లా ప్రచారం ఆలస్యం అవుతుంది అది
ప్రచారం ఆలస్యం = (బాహ్య గడియారం మరియు రిసీవర్ యొక్క అంతర్గత గడియారం మధ్య సమయ వ్యత్యాసం )+( డేటా స్వీకరించబడిన సమయానికి అంతర్గత గడియారం మధ్య సమయ వ్యత్యాసం).
ప్రచార ఆలస్యాన్ని తగ్గించడానికి మరియు ట్రాన్స్మిటర్ మరియు రిసీవర్ మధ్య డేటా ట్రాన్స్మిషన్ సమకాలీకరణ కోసం ట్రాన్స్మిటర్కి గడియార వ్యవధి
T > tr – T అనేది ట్రాన్స్మిటర్ యొక్క గడియార కాలం మరియు tr అనేది ట్రాన్స్మిటర్ యొక్క కనిష్ట గడియార కాలం అని భావించడం.
మేము ఉదాహరణకు పరిగణలోకి తీసుకుంటే పైన పరిస్థితి కింద a ట్రాన్స్మిటర్ డేటా ట్రాన్స్మిషన్ రేట్ 2.5MHzతో ఆపై:
tr = 360ns
గడియారం అధిక tHC (కనీస) >0.35 T.
గడియారం తక్కువ tLC (కనిష్ట> > 0.35T.
డేటా ట్రాన్స్మిషన్ రేటు 2.5MHzతో బానిసగా స్వీకర్త:
గడియారం అధిక tHC (కనిష్ట) <0.35 T
గడియారం తక్కువ tLC (కనిష్ట) < 0.35T.
సెటప్ సమయం tst(కనీసం) <0.20T.
I2S ప్రోటోకాల్ Arduino
Arduino I2S లైబ్రరీని ఉపయోగించి I2S Theremin ఇంటర్ఫేస్ను తయారు చేయడం ఈ ప్రాజెక్ట్ యొక్క ప్రధాన లక్ష్యం. ఈ ప్రాజెక్ట్ చేయడానికి అవసరమైన భాగాలు; Arduino MKR జీరో, బ్రెడ్బోర్డ్ , జంపర్ వైర్లు, Adafruit MAX98357A, 3W, 4 ohms స్పీకర్ మరియు RobotGeek స్లైడర్.
Arduino I2S లైబ్రరీ కేవలం I2S బస్సు ద్వారా డిజిటల్ ఆడియో డేటాను ప్రసారం చేయడానికి మరియు స్వీకరించడానికి మిమ్మల్ని అనుమతిస్తుంది. కాబట్టి ఈ ఉదాహరణ Arduino డిజైన్లో కంప్యూట్ చేయబడిన ధ్వనిని పునరుత్పత్తి చేయడం కోసం I2S DACని డ్రైవ్ చేయడానికి ఈ లైబ్రరీని ఎలా ఉపయోగించాలో వివరించడానికి లక్ష్యంగా పెట్టుకుంది.
ఈ సర్క్యూట్ను ఇలా కనెక్ట్ చేయవచ్చు; ఈ ఉదాహరణలో ఉపయోగించబడిన I2S DACకి కేవలం మూడు వైర్లు మరియు I2S బస్సుకు విద్యుత్ సరఫరా అవసరం. Arduino MKRZeroలో I2S కోసం కనెక్షన్లు ఇలా అనుసరించబడతాయి;
పిన్ A6పై సీరియల్ డేటా (SD);
పిన్2లో సీరియల్ క్లాక్ (SCK);
పిన్3లో ఫ్రేమ్ లేదా వర్డ్ సెలెక్ట్ (FS);
పని చేస్తోంది
ప్రాథమికంగా, థెరెమిన్లో పిచ్ మరియు వాల్యూమ్ అనే రెండు నియంత్రణలు ఉన్నాయి. కాబట్టి, ఈ రెండు పారామితులు రెండు స్లయిడ్ పొటెన్షియోమీటర్లను తరలించడం ద్వారా సవరించబడతాయి, అయినప్పటికీ, మీరు వాటిని చదవడానికి వాటిని సర్దుబాటు చేయవచ్చు. రెండు పొటెన్షియోమీటర్లు వోల్టేజ్ డివైడర్ రూపంలో అనుసంధానించబడి ఉన్నాయి, కాబట్టి ఈ పొటెన్షియోమీటర్లను తరలించడం ద్వారా మీరు 0 నుండి 1023 వరకు విలువలను పొందుతారు. ఆ తర్వాత, ఈ విలువలు గరిష్ట & కనిష్ట పౌనఃపున్యం మరియు తక్కువ మరియు అత్యధిక వాల్యూమ్ మధ్య మ్యాప్ చేయబడతాయి.
I2S బస్సులో ప్రసారమయ్యే ధ్వని ఒక సాధారణ సైన్ వేవ్, దీని వ్యాప్తి & ఫ్రీక్వెన్సీ పొటెన్షియోమీటర్ల రీడింగ్ ఆధారంగా సవరించబడుతుంది.
కోడ్
Arduino MKRZero, 2-స్లయిడర్ పొటెన్షియోమీటర్లు & I2S DACతో థెరిమిన్ని ఇంటర్ఫేస్ చేసే కోడ్ క్రింద ఇవ్వబడింది.
#
const int maxFrequency = 5000; //గరిష్టంగా ఉత్పత్తి చేయబడిన ఫ్రీక్వెన్సీ
const int minFrequency = 220; //కనిష్టంగా ఉత్పత్తి చేయబడిన ఫ్రీక్వెన్సీ
const int maxVolume = 100; // ఉత్పత్తి చేయబడిన ఫ్రీక్వెన్సీ యొక్క గరిష్ట వాల్యూమ్
const int minVolume = 0; ఉత్పత్తి చేయబడిన ఫ్రీక్వెన్సీ యొక్క //నిమి వాల్యూమ్
స్థిర పూర్ణాంక నమూనా రేటు = 44100; // ఉత్పత్తి చేయబడిన ఫ్రీక్వెన్సీ యొక్క నమూనా
const int wavSize = 256; //బఫర్ పరిమాణం
చిన్న సైన్[wavSize]; //బఫర్లో సైన్ విలువలు నిల్వ చేయబడతాయి
const int frequencyPin = A0; //పిన్ సిగ్నల్ యొక్క ఫ్రీక్వెన్సీని నిర్ణయించే కుండకు కనెక్ట్ చేయబడింది
const int amplitudePin = A1; //పిన్ కుండకు కనెక్ట్ చేయబడింది, ఇది సిగ్నల్ యొక్క వ్యాప్తిని నిర్ణయిస్తుంది
const int బటన్ = 6; ఫ్రీక్వెన్సీని ప్రదర్శించడానికి // బటన్ కంట్రోల్కి కనెక్ట్ చేయబడిన పిన్
శూన్యమైన సెటప్()
{
సీరియల్.బిగిన్(9600); // సీరియల్ పోర్ట్ను కాన్ఫిగర్ చేయండి
// I2S ట్రాన్స్మిటర్ని ప్రారంభించండి.
అయితే (!I2S.begin(I2S_PHILIPS_MODE, నమూనా రేటు, 16)) {
Serial.println(“I2Sని ప్రారంభించడంలో విఫలమైంది!”);
అయితే (1);
}
జనరేట్సైన్(); // బఫర్ను సైన్ విలువలతో పూరించండి
పిన్మోడ్(బటన్, INPUT_PULLUP); // బటన్ పిన్ను ఇన్పుట్ పుల్అప్లో ఉంచండి
}
శూన్య లూప్() {
ఉంటే (డిజిటల్ రీడ్(బటన్) == తక్కువ)
{
ఫ్లోట్ ఫ్రీక్వెన్సీ = మ్యాప్ (అనలాగ్రీడ్ (ఫ్రీక్వెన్సీపిన్), 0, 1023, minFrequency, maxFrequency); //మ్యాప్ ఫ్రీక్వెన్సీ
int వ్యాప్తి = మ్యాప్ (అనలాగ్ రీడ్ (యాంప్లిట్యూడ్ పిన్), 0, 1023, minVolume, maxVolume); // మ్యాప్ వ్యాప్తి
ప్లే వేవ్ (ఫ్రీక్వెన్సీ, 0.1, వ్యాప్తి); //శబ్దం చేయి
//సీరియల్లో విలువలను ముద్రించండి
Serial.print('ఫ్రీక్వెన్సీ = ');
Serial.println(ఫ్రీక్వెన్సీ);
Serial.print(“యాంప్లిట్యూడ్ = “);
Serial.println(వ్యాప్తి);
}
}
శూన్యం జనరేట్సైన్() {
కోసం (int i = 0; i < wavSize; ++i) {
sine[i] = ushort(float(100) * sin(2.0 * PI * (1.0 / wavSize) * i)); //100 చిన్న సంఖ్యలను కలిగి ఉండకూడదు
}
}
శూన్యమైన ప్లే వేవ్ (ఫ్లోట్ ఫ్రీక్వెన్సీ, ఫ్లోట్ సెకన్లు, పూర్ణాంక వ్యాప్తి) {
// పేర్కొన్న వాటి కోసం అందించిన వేవ్ఫార్మ్ బఫర్ని ప్లే బ్యాక్ చేయండి
// సెకన్ల మొత్తం.
// ముందుగా అమలు చేయడానికి ఎన్ని నమూనాలు ప్లే బ్యాక్ కావాలో లెక్కించండి
// కావలసిన సెకనుల కోసం.
సంతకం చేయని పూర్తి పునరావృత్తులు = సెకన్లు * నమూనా రేటు;
// అప్పుడు మనం వేవ్ ద్వారా కదిలే ‘వేగాన్ని’ లెక్కించండి
// ప్లే చేయబడే టోన్ యొక్క ఫ్రీక్వెన్సీ ఆధారంగా బఫర్.
ఫ్లోట్ డెల్టా = (ఫ్రీక్వెన్సీ * wavSize) / ఫ్లోట్ (నమూనా రేటు);
// ఇప్పుడు అన్ని నమూనాలను లూప్ చేయండి మరియు వాటిని ప్లే చేయండి, గణిస్తూ
// ప్రతి క్షణం వేవ్ బఫర్లో స్థానం.
కోసం (సంతకం చేయని int i = 0; i < పునరావృత్తులు; ++i) {
షార్ట్ పోస్ = (సంతకం చేయని పూర్ణం)(i * డెల్టా) % wavSize;
చిన్న నమూనా = వ్యాప్తి * సైన్[పోస్];
// నమూనాను నకిలీ చేయండి, తద్వారా ఇది ఎడమ మరియు కుడి ఛానెల్లకు పంపబడుతుంది.
// మీరు వ్రాయాలనుకుంటే సరైన ఛానెల్, ఎడమ ఛానెల్ అని ఆర్డర్ కనిపిస్తుంది
// స్టీరియో సౌండ్.
అయితే (I2S.availableForWrite() < 2);
I2S.write(నమూనా);
I2S.write(నమూనా);
}
}
I2C మరియు I2S ప్రోటోకాల్ మధ్య వ్యత్యాసం
I2C మరియు I2S ప్రోటోకాల్ మధ్య వ్యత్యాసం క్రింది వాటిని కలిగి ఉంటుంది.
2C |
I2S |
ది I2C ప్రోటోకాల్ ఇంటర్-ఐసి బస్ ప్రోటోకాల్ని సూచిస్తుంది | I2S అంటే ఇంటర్-IC సౌండ్ ప్రోటోకాల్ . |
ఇది ప్రధానంగా ఇలాంటి PCBలో ఉంచబడిన ఇంటిగ్రేటెడ్ సర్క్యూట్ల మధ్య సిగ్నల్లను అమలు చేయడానికి ఉపయోగించబడుతుంది. | ఇది డిజిటల్ ఆడియో పరికరాలను కనెక్ట్ చేయడానికి ఉపయోగించబడుతుంది. |
ఇది SDA & SCL వంటి అనేక మంది మాస్టర్స్ & స్లేవ్ల మధ్య రెండు లైన్లను ఉపయోగిస్తుంది . | ఇది WS, SCK & SD అనే మూడు లైన్లను ఉపయోగిస్తుంది. |
ఇది మల్టీ-మాస్టర్ & మల్టీ-స్లేవ్కు మద్దతు ఇస్తుంది. | ఇది ఒకే మాస్టర్కు మద్దతు ఇస్తుంది. |
ఈ ప్రోటోకాల్ CLK స్ట్రెచింగ్కు మద్దతు ఇస్తుంది. | ఈ ప్రోటోకాల్లో CLK స్ట్రెచింగ్ లేదు. |
I2C అదనపు ఓవర్హెడ్ స్టార్ట్ & స్టాప్ బిట్లను కలిగి ఉంటుంది. | I2Sలో స్టార్ట్ & స్టాప్ బిట్లు లేవు. |
ప్రయోజనాలు
ది I2S బస్సు యొక్క ప్రయోజనాలు కింది వాటిని చేర్చండి.
- I2S ప్రత్యేక CLK & సీరియల్ డేటా లైన్లను ఉపయోగిస్తుంది. కాబట్టి ఇది అసమకాలిక వ్యవస్థలతో పోలిస్తే చాలా సులభమైన రిసీవర్ డిజైన్లను కలిగి ఉంది.
- ఇది సింగిల్ మాస్టర్ పరికరం కాబట్టి డేటా సింక్రొనైజేషన్తో సమస్య లేదు.
- I2S o/p ఆధారంగా మైక్రోఫోన్కు అనలాగ్ ఫ్రంట్ ఎండ్ అవసరం లేదు కానీ డిజిటల్ ట్రాన్స్మిటర్ని ఉపయోగించడం ద్వారా వైర్లెస్ మైక్రోఫోన్లో ఉపయోగించబడుతుంది. దీన్ని ఉపయోగించడం ద్వారా, మీరు ట్రాన్స్మిటర్ & ట్రాన్స్డ్యూసర్ మధ్య పూర్తిగా డిజిటల్ కనెక్షన్ని కలిగి ఉండవచ్చు.
ప్రతికూలతలు
ది I2S బస్సు యొక్క ప్రతికూలతలు కింది వాటిని చేర్చండి.
- కేబుల్స్ ద్వారా డేటాను బదిలీ చేయడానికి I2S ప్రతిపాదించబడలేదు.
- I2Sకి ఉన్నత-స్థాయి అప్లికేషన్లలో మద్దతు లేదు.
- ఈ ప్రోటోకాల్ మూడు సిగ్నల్ లైన్ల మధ్య సమకాలీకరణ సమస్యను కలిగి ఉంది, ఇది అధిక బిట్ రేట్ & నమూనా ఫ్రీక్వెన్సీలో గుర్తించబడుతుంది. కాబట్టి ఈ సమస్య ప్రధానంగా క్లాక్ లైన్లు & డేటా లైన్ల మధ్య ప్రచారం ఆలస్యం యొక్క వైవిధ్యం కారణంగా సంభవిస్తుంది.
- I2S లో దోష గుర్తింపు యంత్రాంగాన్ని చేర్చలేదు, కనుక ఇది డేటా డీకోడింగ్లో లోపాలను కలిగిస్తుంది.
- ఇది ప్రధానంగా ఇలాంటి PCBలో ఇంటర్-IC కమ్యూనికేషన్ కోసం ఉపయోగించబడుతుంది.
- I2S కోసం సాధారణ కనెక్టర్లు & ఇంటర్కనెక్ట్ కేబుల్లు లేవు, కాబట్టి వేర్వేరు డిజైనర్లు వేర్వేరు కనెక్టర్లను ఉపయోగిస్తారు.
అప్లికేషన్లు
ది I2S ప్రోటోకాల్ యొక్క అప్లికేషన్లు కింది వాటిని చేర్చండి.
- డిజిటల్ ఆడియో పరికరాలను కనెక్ట్ చేయడానికి I2S ఉపయోగించబడుతుంది.
- ఆడియోను ప్లే చేయడానికి DSP లేదా మైక్రోకంట్రోలర్ నుండి ఆడియో కోడెక్కి ఆడియో డేటాను బదిలీ చేయడంలో ఈ ప్రోటోకాల్ విస్తృతంగా ఉపయోగించబడుతుంది.
- ప్రారంభంలో, I2S ఇంటర్ఫేస్ CD ప్లేయర్ డిజైన్లలో ఉపయోగించబడుతుంది. ఇప్పుడు, ICల మధ్య డిజిటల్ ఆడియో డేటా ఎక్కడ పంపబడుతుందో కనుగొనవచ్చు.
- I2S DSPలు, ఆడియో ADCలు, DACలు, మైక్రోకంట్రోలర్లు, నమూనా రేటు కన్వర్టర్లు మొదలైన వాటిలో ఉపయోగించబడుతుంది.
- I2S ప్రత్యేకంగా డిజిటల్ ఆడియో డేటాను కమ్యూనికేట్ చేయడానికి ఇంటిగ్రేటెడ్ సర్క్యూట్ల మధ్య ఉపయోగించేందుకు రూపొందించబడింది.
- డిజిటల్ ఆడియో పరికరాల మధ్య ఆడియో డేటా ట్రాన్స్మిషన్పై I2S ఫోకస్ చేసినప్పుడు మైక్రోకంట్రోలర్ & దాని పరిధీయ పరికరాలను కనెక్ట్ చేయడంలో ఈ ప్రోటోకాల్ కీలక పాత్ర పోషిస్తుంది.
కాబట్టి, ఇదంతా స్థూలదృష్టి గురించి I2S ప్రోటోకాల్ స్పెసిఫికేషన్ ఇది పని, తేడాలు మరియు దాని అనువర్తనాలను కలిగి ఉంటుంది. I²S అనేది 3 వైర్ సింక్రోనస్ సీరియల్ ప్రోటోకాల్ రెండు ఇంటిగ్రేటెడ్ సర్క్యూట్ల మధ్య డిజిటల్ స్టీరియో ఆడియోను బదిలీ చేయడానికి ఉపయోగిస్తారు. ది I2S ప్రోటోకాల్ ఎనలైజర్ అన్ని DigiView లాజిక్ ఎనలైజర్లను కలిగి ఉండే సిగ్నల్ డీకోడర్. ఈ DigiView సాఫ్ట్వేర్ అన్ని రకాల సిగ్నల్లకు విస్తృత శోధన, నావిగేషన్, ఎగుమతి, కొలత, ప్లాట్ & ప్రింటింగ్ సామర్థ్యాలను అందిస్తుంది. ఇక్కడ మీ కోసం ఒక ప్రశ్న ఉంది, I3C ప్రోటోకాల్ అంటే ఏమిటి?