બધા આર્દુનો આઇ 2 સી બસ વિશે

અરડિનો આઇ 2 સી બસ

સાથે અરડિનો મોટી સંખ્યામાં પ્રોજેક્ટ્સ બનાવી શકે છે તમે જોયું છે કે જો તમે હ્લિબ્રે વાંચો, માઇક્રોકન્ટ્રોલરને સરળ રીતે પ્રોગ્રામિંગ કરવું. પરંતુ આ બોર્ડના એનાલોગ અને ડિજિટલ જોડાણો વચ્ચે hardware libre, કેટલાક એવા છે જે હજુ પણ ઘણા નવા નિશાળીયા માટે અજ્ઞાત છે, જેમ કે PWM કનેક્શનની સાચી સંભવિતતા, SPI, સીરીયલ પોર્ટની RX અને TX પિન, અથવા I2C બસ પોતે. તેથી, આ એન્ટ્રી સાથે તમે ઓછામાં ઓછું I2C વિશે તમને જોઈતી દરેક વસ્તુને જાણી શકશો.

સાથે I2C બસ તમે ઘણા તૃતીય-પક્ષ ઉપકરણોને કનેક્ટ કરી શકો છો અને તેનો ઉપયોગ કરી શકો છો જેમાં આર્ડોમિનો બોર્ડ સાથે વાતચીત કરવા માટે આ પ્રકારનો પ્રોટોકોલ છે. તેમની વચ્ચે, તમે આ ફિલિપ્સની શોધ માટે એક્સેલરોમીટર, ડિસ્પ્લે, કાઉન્ટર, હોકાયંત્ર અને ઘણા વધુ સંકલિત સર્કિટ્સને કનેક્ટ કરી શકો છો.

આઈ 2 સી શું છે?

આઇ 2 સી આંતર-સંકલિત સર્કિટનો સંદર્ભ આપે છે, એટલે કે, આંતર-સંકલિત સર્કિટ. આ સિરીયલ ડેટા કમ્યુનિકેશન બસ છે જે ફિલિપ્સ સેમિકન્ડક્ટર્સ કંપની દ્વારા 1982 માં વિકસિત કરવામાં આવી હતી, જે આ વિભાગમાંથી છૂટકારો મેળવ્યા પછી આજે એનએક્સપી સેમિકન્ડક્ટર છે. શરૂઆતમાં, આ બ્રાન્ડના ટેલિવિઝન માટે, ઘણી બધી આંતરિક ચિપ્સને સરળ રીતે વાતચીત કરવા માટે બનાવવામાં આવી હતી. પરંતુ 1990 થી આઇ 2 સી ફેલાયો છે અને તેનો ઉપયોગ ઘણા ઉત્પાદકો દ્વારા કરવામાં આવે છે.

હાલમાં ડઝનેક ચિપમેકર્સ દ્વારા ઉપયોગમાં લેવામાં આવે છે બહુવિધ કાર્યો માટે. અર્ટુનો બોર્ડ્સના માઇક્રોકન્ટ્રોલર્સના નિર્માતા એટમેલે લાઇસન્સ હેતુ માટે TWI (ટુ વાયર્ડ ઇંટરફેસ) હોદ્દો રજૂ કર્યો, જોકે તે આઇ 2 સી જેવું જ છે. પરંતુ 2006 માં, મૂળ પેટન્ટ સમાપ્ત થઈ ગયું હતું અને હવે તે ક copyrightપિરાઇટને આધિન નથી, તેથી આઇ 2 સી શબ્દનો ફરીથી ઉપયોગ કરવામાં આવ્યો છે (ફક્ત લોગોનો સંરક્ષણ ચાલુ જ છે, પરંતુ તેનો અમલ અથવા શબ્દનો ઉપયોગ પ્રતિબંધિત નથી).

આઇ 2 સી બસ તકનીકી વિગતો

આઇ 2 સી બસ

El આઇ 2 સી બસ એક ઉદ્યોગ ધોરણ બની ગઈ છે, અને અરડિનોએ તેને લાગુ કરી દીધી છે પેરિફેરલ્સ સાથે વાતચીત કરવા માટે જેની જરૂર હોય. તેના operationપરેશન માટે તેને ફક્ત બે લાઇન અથવા કેબલની જરૂર છે, એક ઘડિયાળ સિગ્નલ (સીએલકે) માટે અને બીજી સીરીયલ ડેટા મોકલવા માટે (એસડીએ). એસપીઆઈ બસની તુલનામાં આ અન્ય સંદેશાવ્યવહારની તુલનામાં ફાયદાકારક છે, જો કે વધારાની સર્કિટરી જરૂરી હોવાને કારણે તેનું સંચાલન કંઈક અંશે જટિલ છે.

આ બસ પર તેની સાથે જોડાયેલા દરેક ઉપકરણનું સરનામું છે આ ઉપકરણોને વ્યક્તિગત રૂપે toક્સેસ કરવા માટે વપરાય છે. આ સરનામાં હાર્ડવેર દ્વારા ઠીક કરવામાં આવ્યું છે, જમ્પર્સ અથવા સ્વીચ ડીઆઈપી દ્વારા છેલ્લા 3 બિટ્સમાં ફેરફાર કરીને, જો કે તે સ softwareફ્ટવેર દ્વારા પણ થઈ શકે છે. દરેક ઉપકરણનું એક વિશિષ્ટ સરનામું હશે, જો કે તેમાંના ઘણામાં સમાન સરનામું હોઈ શકે છે અને તકરાર ટાળવા અથવા શક્ય હોય તો તેને બદલવા માટે ગૌણ બસનો ઉપયોગ કરવો જરૂરી છે.

આ ઉપરાંત, આઇ 2 સી બસમાં એ માસ્ટર-સ્લેવ પ્રકારની આર્કિટેક્ચર, તે છે, માસ્ટર-ગુલામ. આનો અર્થ એ છે કે જ્યારે માસ્ટર ડિવાઇસ દ્વારા વાતચીત શરૂ થાય છે, ત્યારે તે તેના ગુલામો પાસેથી ડેટા મોકલવા અથવા પ્રાપ્ત કરવામાં સમર્થ હશે. ગુલામો સંદેશાવ્યવહાર શરૂ કરી શકશે નહીં, ફક્ત માસ્ટર જ કરી શકે છે, અને ગુલામ માસ્ટરની દખલ વિના સીધા એકબીજા સાથે વાત કરી શકતા નથી.

જો તમારી પાસે બસ પર ઘણા શિક્ષકો, એક સાથે એક જ શિક્ષક તરીકે કામ કરી શકે છે. પરંતુ તે મૂલ્યના નથી, કારણ કે શિક્ષકનું પરિવર્તન ઉચ્ચ જટિલતાની માંગ કરે છે, તેથી તે વારંવાર થતું નથી.

ધ્યાનમાં રાખો કે આ માસ્ટર બસ પરના બધા ઉપકરણોને સિંક્રનાઇઝ કરવા માટે ક્લોક સિગ્નલ પ્રદાન કરે છે. આ દરેક ગુલામની પોતાની ઘડિયાળ રાખવાની જરૂરિયાતને દૂર કરે છે.

આઇ 2 સી બસ પ્રોટોકોલ પણ સપ્લાય વોલ્ટેજ લાઇન્સ (વીસીસી) માં પુલ-અપ રેઝિસ્ટરનો ઉપયોગ કરવાની આગાહી કરે છે, જોકે આ રેઝિસ્ટર સામાન્ય રીતે અરુડિઓનો સાથે ઉપયોગમાં લેવામાં આવતા નથી. પુલ-અપ કારણ કે પ્રોગ્રામિંગ લાઇબ્રેરીઓ વાયર 20-30 કે ની કિંમતો સાથે આંતરિકને સક્રિય કરે છે. કેટલાક પ્રોજેક્ટ્સ માટે આ ખૂબ નરમ હોઈ શકે છે, તેથી સિગ્નલની વધતી ધાર ધીમી હશે, તેથી નીચી ગતિ અને ટૂંકા સંદેશાવ્યવહારના અંતરનો ઉપયોગ કરી શકાય છે. તેને સુધારવા માટે તમારે બાહ્ય પુલ-અપ રેઝિસ્ટરને 1 કે થી 4 કે 7 સેટ કરવાની જરૂર પડી શકે છે.

સિગ્નલ

આઇ 2 સી સિગ્નલ

La વાતચીત ફ્રેમ જેમાંથી I2C બસ સિગ્નલમાં બિટ્સ અથવા સ્ટેટ્સ શામેલ હોય છે (તે આરડુનોમાં વપરાય છે, કારણ કે I2C ધોરણ અન્યને મંજૂરી આપે છે):

  • 8 બિટ્સ, તેમાંથી 7 દિશા ગુલામ ઉપકરણ કે જેમાં તમે તેનાથી ડેટા મોકલવા અથવા પ્રાપ્ત કરવા theક્સેસ કરવા માંગો છો. 7 બિટ્સ સાથે, 128 સુધી વિવિધ સરનામાંઓ બનાવી શકાય છે, જેથી 128 ઉપકરણોને સૈદ્ધાંતિક રીતે beક્સેસ કરી શકાય, પરંતુ ફક્ત 112 જ beક્સેસ કરી શકાય છે, કારણ કે 16 ખાસ ઉપયોગ માટે અનામત છે. અને અતિરિક્ત બીટ જે જો તમે ઇચ્છો તો સૂચવે છે મોકલો અથવા પ્રાપ્ત કરો ગુલામ ઉપકરણ માહિતી.
  • ત્યાં પણ છે માન્યતા બીટ, જો તે સક્રિય ન હોય તો વાતચીત માન્ય રહેશે નહીં.
  • પછી ડેટા બાઇટ્સ કે તેઓ ગુલામો દ્વારા મોકલવા અથવા પ્રાપ્ત કરવા માંગતા હોય. દરેક બાઇટ, જેમ તમે જાણો છો, 8-બીટ્સથી બનેલું છે. નોંધ લો કે મોકલેલા અથવા પ્રાપ્ત કરેલ ડેટાના દરેક 8-બીટ અથવા 1 બાઇટ માટે, માન્યતા, સરનામું, વગેરેના વધારાના 18 બીટ્સ આવશ્યક છે, જેનો અર્થ છે કે બસની ગતિ ખૂબ મર્યાદિત છે.
  • એક અંતિમ બીટ માન્યતા કોમ્યુનિકેશન.

આ ઉપરાંત, ઘડિયાળની આવર્તન ટ્રાન્સમિશન 100 મેગાહર્ટઝ ધોરણ તરીકે છે, જોકે ત્યાં 400 મેગાહર્ટઝનો ઝડપી મોડ છે.

આઇ 2 સી બસના ફાયદા અને ગેરફાયદા

લાભો તે છે:

  • સાદગી ફક્ત બે લાઇનનો ઉપયોગ કરીને.
  • તે છે સંકેત આવી ગયો છે કે કેમ તે જાણવાની પદ્ધતિઓ અન્ય કમ્યુનિકેશન પ્રોટોકોલની તુલનામાં.

ગેરફાયદા તે છે:

  • ઝડપ એકદમ ઓછી ટ્રાન્સમિશન.
  • તે પૂર્ણ દ્વિગુણિત નથી, એટલે કે, તમે એક સાથે મોકલી અને પ્રાપ્ત કરી શકતા નથી.
  • સમાનતાનો ઉપયોગ કરતો નથી અથવા પ્રાપ્ત કરેલા ડેટા બિટ્સ યોગ્ય છે કે નહીં તે જાણવા માટે અન્ય કોઈપણ પ્રકારની ચકાસણી પદ્ધતિ.

આઇડુઅરિનો પર આઇ 2 સી

અરડિનો આઇ 2 સી બસ

En અરુડિનો, મોડેલના આધારે, આ I2C બસનો ઉપયોગ કરવા માટે સક્ષમ કરી શકાય તેવા પિન બદલાય છે. દાખ્લા તરીકે:

  • Arduino UNO, નેનો, મિની પ્રો: એ 4 નો ઉપયોગ એસડીએ (ડેટા) અને એસસી (ઘડિયાળ) માટે એ 5 માટે થાય છે.
  • અરડિનો મેગા: એસડીએ માટે પિન 20 અને એસસીકે માટે 21.

યાદ રાખો કે તેનો ઉપયોગ તમારે કરવો જ જોઇએ ગ્રંથાલયનો ઉપયોગ કરો વાયર તમારા આર્દુનો IDE કોડ માટે, તેમ છતાં અન્ય જેવા છે I2C y i2cdevlib. તમે આ લાઇબ્રેરીઓના દસ્તાવેજો અથવા પ્રોજેક્ટ્સ પરના અમારા લેખો વાંચી શકો છો જે તમને કેવી રીતે પ્રોગ્રામ કરવામાં આવશે તેના કોડ મેળવવા માટે રુચિ છે.

આઇ 2 સી સાથે ઉપકરણનો ઉપયોગ કરવા માટેના સરનામાંને કેવી રીતે જાણવું?

ફક્ત એક છેલ્લી ચેતવણી, અને તે તે છે કે જ્યારે તમે યુરોપિયન, જાપાનીઝ અથવા અમેરિકન ઉત્પાદકો પાસેથી આઇસી ખરીદો છો, ત્યારે તમે દિશા સૂચવે છે કે જે તમારે ઉપકરણ માટે વાપરવું જોઈએ. બીજી બાજુ, ચિનીઓ કેટલીકવાર તેની વિગતો આપતી નથી અથવા તે યોગ્ય નથી, તેથી તે કાર્ય કરશે નહીં. તમારા સ્કેચમાં તમારે કઈ દિશાનો સંદર્ભ લેવો જોઈએ તે જાણવા તે સરનામાં સ્કેનરથી સરળતાથી ઉકેલી શકાય છે.

La આર્દુનો સમુદાય આ બનાવ્યું છે સરનામું સ્કેન કરવા માટે અને તેને ઓળખવા માટેનો કોડ સરળ રીતે. તેમ છતાં હું તમને હમણાં જ કોડ બતાવું છું:

#include "Wire.h"
 
extern "C" { 
    #include "utility/twi.h"
}
 
void scanI2CBus(byte from_addr, byte to_addr, void(*callback)(byte address, byte result) ) 
{
  byte rc;
  byte data = 0;
  for( byte addr = from_addr; addr <= to_addr; addr++ ) {
    rc = twi_writeTo(addr, &data, 0, 1, 0);
    callback( addr, rc );
  }
}
 
void scanFunc( byte addr, byte result ) {
  Serial.print("addr: ");
  Serial.print(addr,DEC);
  Serial.print( (result==0) ? " Encontrado!":"       ");
  Serial.print( (addr%4) ? "\t":"\n");
}
 
 
const byte start_address = 8;
const byte end_address = 119;
 
void setup()
{
    Wire.begin();
 
    Serial.begin(9600);
    Serial.print("Escaneando bus I2C...");
    scanI2CBus( start_address, end_address, scanFunc );
    Serial.println("\nTerminado");
}
 
void loop() 
{
    delay(1000);
}


ટિપ્પણી કરવા માટે સૌ પ્રથમ બનો

તમારી ટિપ્પણી મૂકો

તમારું ઇમેઇલ સરનામું પ્રકાશિત કરવામાં આવશે નહીં. આવશ્યક ક્ષેત્રો સાથે ચિહ્નિત થયેલ છે *

*

*

  1. ડેટા માટે જવાબદાર: મિગ્યુએલ gelંજેલ ગેટóન
  2. ડેટાનો હેતુ: નિયંત્રણ સ્પામ, ટિપ્પણી સંચાલન.
  3. કાયદો: તમારી સંમતિ
  4. ડેટાની વાતચીત: કાયદાકીય જવાબદારી સિવાય ડેટા તૃતીય પક્ષને આપવામાં આવશે નહીં.
  5. ડેટા સ્ટોરેજ: cસેન્ટસ નેટવર્ક્સ (ઇયુ) દ્વારા હોસ્ટ કરેલો ડેટાબેઝ
  6. અધિકાર: કોઈપણ સમયે તમે તમારી માહિતીને મર્યાદિત, પુન recoverપ્રાપ્ત અને કા deleteી શકો છો.