રાસ્પબેરી પી.પી.િયો.નું ટૂર

09 ના 01

રાસ્પબરી પીઆઇના પિનનો પરિચય

રાસ્પબેરી પી.પી.િયો. રિચાર્ડ સેવિલે

'જીપીઆઈઓ' (જનરલ પર્પઝ ઈનપુટ આઉટપુટ) શબ્દ રાસ્પબરી પીઆઇ માટે વિશિષ્ટ નથી. ઇનપુટ અને આઉટપુટ પિન, મોટા ભાગના માઇક્રોકન્ટ્રોલર્સ જેવા કે Arduino, Beaglebone અને વધુ પર મળી શકે છે.

જ્યારે આપણે રાસ્પબરી પી સાથે GPIO વિશે વાત કરીએ છીએ, ત્યારે અમે બોર્ડના ટોચના ડાબા ખૂણામાં પીનના લાંબા બ્લોકનો ઉલ્લેખ કરી રહ્યાં છીએ. જૂની મોડેલોમાં 26 પિન હતા, જો કે અમને મોટા ભાગના 40 નું વર્તમાન મોડેલનો ઉપયોગ કરશે.

તમે ઘટકો અને અન્ય હાર્ડવેર ડિવાઇઝને આ પીનથી કનેક્ટ કરી શકો છો અને તેઓ શું કરે છે તે નિયંત્રિત કરવા માટે કોડનો ઉપયોગ કરે છે. રાસ્પબરી પી અને તે ઇલેક્ટ્રોનિક્સ વિશે જાણવા માટે એક ઉત્તમ રીત છે.

થોડા સોફ્ટવેર પ્રોજેક્ટ્સ પછી, તમે ખરેખર આ પીન સાથે પ્રયોગ કરી શકો છો, તમારા કોડને 'વાસ્તવિક જીવન' માં થતાં બનાવવા માટે તમારા કોડને હાર્ડવેર સાથે મિશ્રિત કરવા આતુર છો.

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

આ લેખમાં સમજાવવામાં આવશે કે દરેક પ્રકારના GPIO પિન શું કરે છે અને તેમની મર્યાદાઓ.

09 નો 02

જીપીઆઈઓ

GPIO પિનને 1 થી 40 નંબર આપવામાં આવે છે, અને તેને વિવિધ કાર્યો હેઠળ જૂથબદ્ધ કરી શકાય છે. રિચાર્ડ સેવિલે

પ્રથમ, ચાલો જી.પી.આઈ. પિન તે જ દેખાશે પરંતુ તે બધાને વિવિધ કાર્યો છે. ઉપરોક્ત છબી આ વિધેયોને જુદા જુદા રંગોમાં દર્શાવે છે, જે આપણે નીચેના પગલાંઓમાં સમજાવશે.

દરેક પિન નીચે ડાબી બાજુએથી શરૂ થતાં 1 થી 40 સુધીની સંખ્યાને ગણવામાં આવે છે. આ ભૌતિક પિન સંખ્યાઓ છે, તેમ છતાં, 'બીસીએમ' જેવા સંખ્યાઓ / લેબલીંગ સંમેલનો પણ છે, જે કોડ લખતી વખતે વપરાય છે.

09 ની 03

પાવર એન્ડ ગ્રાઉન્ડ

રાસ્પબરી પીઆઇ અનેક શક્તિ અને જમીન પિન ઓફર કરે છે. રિચાર્ડ સેવિલે

હાઇલાઇટ થયેલ લાલ, '3' અથવા '5' ને 3.3V અથવા 5V માટે લેબલ થયેલ પાવર પિન છે.

આ પીન તમને કોઈ પણ કોડની જરૂર વગર સીધી ઉપકરણ પર પાવર મોકલવાની મંજૂરી આપે છે. ક્યાં તો આ બોલ દેવાનો કોઈ રીત નથી

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

હાઈલાઇટ થયેલ ભુરો જમીન પિન છે (GND) આ પીન તે જ છે જે તેઓ કહે છે - ગ્રાઉન્ડ પિન - જે કોઈપણ ઇલેક્ટ્રોનિક્સ પ્રોજેક્ટનો મહત્વપૂર્ણ ભાગ છે

(5 વી GPIO પિન ભૌતિક નંબરો 2 અને 4 છે. 3.3 વી GPIO પિન ભૌતિક નંબરો 1 અને 17. છે ગ્રાઉન્ડ GPIO પિન ભૌતિક નંબરો છે 6, 9, 14, 20, 25, 30, 34 અને 39)

04 ના 09

ઇનપુટ / આઉટપુટ પિન

ઇનપુટ અને આઉટપુટ પિન તમને સેન્સર અને સ્વીચ જેવા હાર્ડવેરને કનેક્ટ કરવાની મંજૂરી આપે છે. રિચાર્ડ સેવિલે

લીલી પિન છે જેને હું 'જિનેરિક' ઇનપુટ / આઉટપુટ પિન કહેતો છું. અન્ય વિધેયો જેમ કે I2C, SPI અથવા UART સાથે અથડામણ વિશે કોઈ ચિંતાઓ વગર આ સરળતાથી ઇનપુટ અથવા આઉટપુટ તરીકે ઉપયોગ કરી શકાય છે.

આ પીન છે જે એલઇડી, બઝર, અથવા અન્ય ઘટકોને પાવર મોકલી શકે છે અથવા સેન્સર્સ, સ્વીચ અથવા અન્ય ઇનપુટ ઉપકરણ વાંચવા માટે ઇનપુટ તરીકે ઉપયોગમાં લેવાય છે.

આ પીનની આઉટપુટ પાવર 3.3V છે. પ્રત્યેક પીન હાલના 16mA થી વધારે ન હોવો જોઈએ, ક્યાં તો ડૂબત અથવા સ્ત્રોત છે, અને GPIO પિનનો સંપૂર્ણ સેટ કોઈપણ એક સમયે 50mA થી વધુ ન હોવો જોઇએ. આ પ્રતિબંધિત હોઈ શકે છે, તેથી તમારે અમુક પ્રોજેક્ટ્સમાં સર્જનાત્મક બનવું પડશે.

(સામાન્ય પી.પી.આઈ.આઈ. પિન ભૌતિક સંખ્યાઓ 7, 11, 12, 13, 15, 16, 18, 22, 29, 31, 32, 33, 35, 36, 37, 38 અને 40) છે.

05 ના 09

I2C પિન

I2C તમને ફક્ત થોડી જ પીન સાથે તમારા પાઇમાં અન્ય ઉપકરણોને કનેક્ટ કરવાની પરવાનગી આપે છે. રિચાર્ડ સેવિલે

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

I2C વાપરવાનું એક સારું ઉદાહરણ MCP23017 પોર્ટ એક્સપાન્ટર ચિપ છે, જે આ I2C પ્રોટોકોલ દ્વારા વધુ ઇનપુટ / આઉટપુટ પિન આપી શકે છે.

(I2C GPIO પિન ભૌતિક પિન નંબર 3 અને 5 છે)

06 થી 09

UART (સીરીયલ) પિન

UART પીન સાથે સીરીયલ કનેક્શન પર તમારા Pi સાથે કનેક્ટ કરો. રિચાર્ડ સેવિલે

ગ્રેમાં, UART પીન છે. આ પીન અન્ય કોમ્યુનિકેશન પ્રોટોકોલ છે જે સીરીયલ કનેક્શન્સ ઓફર કરે છે, અને તે 'જિનેરિક' GPIO ઇનપુટ / આઉટપુટ તરીકે પણ ઉપયોગમાં લઈ શકાય છે.

UART માટે મારો પ્રિય ઉપયોગ એ છે કે મારા પીઆઇથી સીરીયલ કનેક્શનને યુએસબી પર મારા લેપટોપ પર સક્રિય કરવું. આ ઍડ-ઑન બૉર્ડ્સ અથવા સાદા કેબલ્સ દ્વારા પ્રાપ્ત કરી શકાય છે અને તમારી પીને ઍક્સેસ કરવા માટે સ્ક્રીન અથવા ઇન્ટરનેટ કનેક્શનની જરૂરિયાતને દૂર કરે છે.

(UART GPIO પિન ભૌતિક પિન નંબર 8 અને 10 છે)

07 ની 09

એસપીઆઇ પિન

એસપીઆઈ પિન - અન્ય ઉપયોગી સંચાર પ્રોટોકોલ રિચાર્ડ સેવિલે

ગુલાબીમાં , અમારી પાસે એસપીઆઈ પિન છે. એસપીઆઈ એક ઈન્ટરફેસ બસ છે જે પાઇ અને અન્ય હાર્ડવેર / પેરિફેરલ્સ વચ્ચે ડેટા મોકલે છે. તે સામાન્ય રીતે એક એલઇડી મેટ્રિક્સ અથવા ડિસ્પ્લે જેવા ઉપકરણોની ચેઇનિંગ માટે ઉપયોગમાં લેવાય છે.

અન્યની જેમ, આ પીનને 'જિનેરિક' GPIO ઇનપુટ / આઉટપુટ તરીકે પણ ઉપયોગમાં લઇ શકાય છે.

(SPI GPIO પિન ભૌતિક પિન નંબરો છે 19, 21, 23, 24 અને 26)

09 ના 08

DNC પિન

અહીં જોવા માટે કંઈ નથી - ડીએનસી પિન કોઈ કાર્ય કરે છે. રિચાર્ડ સેવિલે

છેલ્લે બે વાદળી વાદળી છે, જે હાલમાં, 'ડુ નો કનેક્ટ નથી' એટલે કે DNC તરીકે લેબલ થયેલ છે. જો રાસ્પબરી પી ફાઉન્ડેશન બોર્ડ / સોફ્ટવેરને બદલશે તો આ ભવિષ્યમાં બદલાશે.

(DNC GPIO પિન ભૌતિક પિન નંબર 27 અને 28 છે)

09 ના 09

જી.પી.િયો. ક્રમાંકન સંમેલનો

પોર્ટોપ્લસ GPIO પીન નંબરો ચકાસવા માટે એક સરળ સાધન છે. રિચાર્ડ સેવિલે

GPIO સાથે કોડિંગ કરતી વખતે, તમારી પાસે બેમાંથી એક માર્ગે GPIO લાઇબ્રેરીને આયાત કરવાની પસંદગી છે - બીસીએમ અથવા બોર્ડ.

જે વિકલ્પ હું પસંદ કરું છું તે જી.પી.િયો. આ બ્રોડકૉક નંબરિંગ કન્વેન્શન છે અને મને લાગે છે કે તે પ્રોજેક્ટ્સ અને હાર્ડવેર ઍડ-ઑન્સમાં વધુ સામાન્ય રીતે વપરાય છે.

બીજો વિકલ્પ જી.પી.આઈ.ઓ. બોર્ડ છે. આ પદ્ધતિ તેના બદલે ભૌતિક પિન નંબરનો ઉપયોગ કરે છે, જે પીનની ગણતરી કરતી વખતે સરળ છે, પરંતુ તમને મળશે કે તે પ્રોજેક્ટ ઉદાહરણોમાં ઓછો ઉપયોગ કરે છે.

GPIO લાઇબ્રેરીને આયાત કરતી વખતે GPIO મોડ સેટ કરેલ છે:

બીસીએમ તરીકે આયાત કરવા માટે:

GPi GPIO.setmode (GPIO.BCM) તરીકે RPi.GPIO આયાત કરો

બોર્ડ તરીકે આયાત કરવા માટે:

આયાત RPi.GPIO તરીકે GPIO GPIO.setmode (GPIO.BOARD)

આ બંને પદ્ધતિઓ બરાબર એ જ કામ છે, તે માત્ર પસંદગીની પસંદગીની બાબત છે.

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