Ჟოლოს Pi GPIO- ს ტური

01 09

შესავალი ჟოლოს Pi- ის ქინძისთავები

ჟოლო Pi GPIO. რიჩარდ სავილე

ტერმინი "ჯიოიო" (გენერალური დანიშნულების შეყვანის შედეგები) არ არის ექსკლუზიური ჟოლოს Pi. შეყვანის და გამომავალი ქინძისთავები შეიძლება მოიძებნოს უმეტეს მიკროკონტრორორებზე, როგორიცაა Arduino, Beaglebone და სხვა.

როდესაც ჩვენ ვისაუბრებთ GPIO- სთან ჟოლოს Pi- სთან ერთად, ჩვენ გვეუბნება გამგეობის ზედა მარცხენა კუთხეში ქინძისთავები. ძველ მოდელებს 26 ქინძისთავები ჰქონდათ, თუმცა ყველაზე მეტად ჩვენგანს 40-ზე მოქმედი მოდელი მოხმარდება.

თქვენ შეგიძლიათ შეუერთოთ კომპონენტები და სხვა აპარატურის მოწყობილობები ამ ქინძისთავებში და გამოიყენოთ კოდი, რათა გააკონტროლონ ისინი. ეს არის მნიშვნელოვანი ნაწილი ჟოლო Pi და შესანიშნავი გზა ვისწავლოთ ელექტრონიკა.

რამოდენიმე პროგრამული პროექტების შემდეგ, თქვენ სავარაუდოდ აღმოჩნდებით ექსპერიმენტებით ამ ქინძისთავებით, სასურველია თქვენი კოდის შედგენა აპარატურა, რათა რამე რეალურ ცხოვრებაში მოხდეს.

ეს პროცესი შეიძლება იყოს დაშინება, თუ თქვენ ახალი სცენა და განიხილავს, რომ ერთი მცდარი ნაბიჯი შეიძლება დააზიანოს თქვენი ჟოლო Pi, გასაგებია, რომ ეს არის ნერვული ფართობი დამწყებთათვის შეისწავლონ.

ამ სტატიაში განმარტავს, თუ რა სახის GPIO pin- ს თითოეული ტიპი და მათი შეზღუდვები.

09 09

GPIO- ს

GPIO ქინძისთავები დათვლილია 1-დან 40-მდე და შეიძლება დაჯგუფდეს სხვადასხვა ფუნქციებით. რიჩარდ სავილე

პირველი, მოდით შევხედოთ GPIO მთლიანად. ქინძისები შეიძლება გამოიყურებოდეს იგივე, მაგრამ მათ აქვთ განსხვავებული ფუნქციები. ზემოთ მოყვანილი გამოსახულება გვიჩვენებს ამ ფუნქციებს სხვადასხვა ფერებიდან, რომლებიც ჩვენ განვმარტდებით შემდეგი ნაბიჯებით.

თითოეული pin არის დანომრილი 1 დან 40 დაწყებული ქვედა მარცხენა. ეს არის ფიზიკური pin ნომრები, თუმცა, არსებობს ასევე ნუმერაციის / ეტიკეტირების კონვენციები, როგორიცაა "BCM", რომლებიც გამოიყენება კოდი.

09 09

სიმძლავრე და სახმელეთო

Raspberry Pi გთავაზობთ მრავალ ძალას და ადგილზე ქინძისთავებს. რიჩარდ სავილე

ხაზგასმული წითელი, არის ძალა ქინძისთავები შეაფასა '3' ან '5' for 3.3V ან 5V.

ეს ქინძისთავები საშუალებას გაძლევთ პირდაპირ გააგზავნოთ ძალა მოწყობილობის გარეშე ნებისმიერი კოდი. არ არსებობს გზა გარდამტეხი ეს off ან.

არსებობს 2 დენის რელსები - 3.3 ვოლტი და 5 ვოლტი. ამ სტატიის მიხედვით, 3.3V სარკინიგზო ტრანსპორტით შემოიფარგლება 50mA მიმდინარე გათამაშებაზე, ხოლო 5V სარკინიგზო შეუძლია უზრუნველყოს, რომ ელექტროენერგია არ მიეწოდება თქვენს ელექტრომომარაგებას.

გაშუქებული ყავისფერი არის ადგილზე ქინძისთავები (GND). ეს ქინძისთავები ზუსტად ისაა, რასაც ამბობენ - ადგილზე ქინძისთავები - რომლებიც ნებისმიერი ელექტრონიკის პროექტის სასიცოცხლო ნაწილია.

(5V GPIO ქინძისთავები არის ფიზიკური ნომრები 2 და 4. 3.3V GPIO ქინძისთავები ფიზიკური ნომრები 1 და 17. გორი GPIO ქინძისთავები არიან ფიზიკური ნომრები 6, 9, 14, 20, 25, 30, 34 და 39)

04 09

შეყვანის / გამოყვანის ქინძისთავები

შეყვანის და გამოყვანის ქინძისთავები საშუალებას გაძლევთ დაკავშირება აპარატურა, როგორიცაა სენსორები და კონცენტრატორები. რიჩარდ სავილე

მწვანე ქინძისთავები რა ვუწოდებ "ზოგადი" შეყვანის / გამომავალი ქინძისთავები. ეს ადვილად შეიძლება გამოყენებულ იქნას როგორც შეყვანის ან შედეგების გარეშე ნებისმიერი შეშფოთება შეჯახების სხვა ფუნქციები, როგორიცაა I2C, SPI ან UART.

ეს არის ქინძისთავები, რომლებიც ელექტრონს, ბაზარს, ან სხვა კომპონენტებს აგზავნიან, ან გამოყენებული იქნება როგორც შეყვანის ჩასატარებლად სენსორების, გადამრთველების ან სხვა შეყვანის აპარატის წაკითხვა.

გამომავალი ძალა ამ ქინძისთავები არის 3.3V. თითოეული pin არ უნდა აღემატებოდეს 16mA მიმდინარე, არც ჩაიძიროს ან sourcing და მთელი კომპლექტი GPIO ქინძისთავები არ უნდა აღემატებოდეს 50mA ზე ნებისმიერ დროს. ეს შეიძლება იყოს შემაკავებელი, ასე რომ თქვენ შეიძლება გარკვეული შემოქმედებით შემოქმედებით.

(საერთო GPIO ქინძისთავები არის ფიზიკური ნომრები 7, 11, 12, 13, 15, 16, 18, 22, 29, 31, 32, 33, 35, 36, 37, 38 და 40)

09 09

I2C ქინძისთავები

I2C საშუალებას გაძლევთ დაკავშირება სხვა მოწყობილობები თქვენს Pi მხოლოდ რამდენიმე ქინძისთავები. რიჩარდ სავილე

ყვითელი, ჩვენ გვაქვს I2C ქინძისთავები. I2C არის კომუნიკაციის პროტოკოლი, რომ მარტივი პირობებით საშუალებას აძლევს მოწყობილობებს შეატყობინოთ ჟოლო Pi. ეს ქინძისთავები ასევე შეიძლება გამოყენებულ იქნას როგორც 'generic' GPIO ქინძისთავები.

კარგი მაგალითია I2C- ის გამოყენება MCP23017 პორტის ექსპანდერის ჩიპით, რომელიც მოგცემთ უფრო მეტ შეყვანის / გამომავალი ქინძისთავებს ამ I2C პროტოკოლის მეშვეობით.

(I2C GPIO ქინძისთავები ფიზიკური PIN რიცხვი 3 და 5)

09 09

UART (სერიული) ქინძისთავები

დაკავშირება თქვენს Pi ზე სერიული კავშირი UART ქინძისთავები. რიჩარდ სავილე

ნაცრისფერი, UART ქინძისთავები. ეს ქინძისთავები კიდევ ერთი კომუნიკაციური ოქმია, რომელიც სერიულ კავშირებს სთავაზობს და ასევე შეიძლება გამოყენებულ იქნას როგორც 'generic' GPIO პორტები / შედეგები.

ჩემი საყვარელი გამოყენება UART- ისთვის არის შესაძლებელი სერიული კავშირი ჩემი Pi- დან ჩემი ლეპტოპის USB- ზე. ეს შეიძლება მიღწეული იქნას დამატებითი დაფებითა და მარტივი კაბელების გამოყენებით და ამოიღონ ეკრანის ან ინტერნეტ კავშირის საჭიროება თქვენს Pi- ზე წვდომისთვის.

(UART GPIO ქინძისთავები ფიზიკური PIN რიცხვი 8 და 10)

09 09

SPI ქინძისთავები

SPI ქინძისთავები - კიდევ ერთი სასარგებლო კომუნიკაციის ოქმი. რიჩარდ სავილე

ვარდისფერი , ჩვენ გვაქვს SPI ქინძისთავები. SPI არის ინტერფეისი ავტობუსი, რომელიც აგზავნის მონაცემებს Pi- ს და სხვა აპარატურას / პერიფერიებს შორის. ეს ჩვეულებრივ გამოიყენება მოწყობილობების ქსელისთვის, როგორიცაა LED მატრიცა ან ეკრანი.

სხვათა მსგავსად, ეს ქინძისთავები ასევე შეიძლება გამოყენებულ იქნას როგორც 'generic' GPIO პორტები / შედეგები.

(SPI GPIO ქინძისთავები ფიზიკური რიცხვი 19, 21, 23, 24 და 26)

08 09

DNC ქინძისთავები

არაფერი აქ არ არის - DNC ქინძისთავები ემსახურებიან ფუნქციას. რიჩარდ სავილე

საბოლოოდ არის ორი ქინძისთავები ლურჯი, რომელიც ამჟამად არის DNC- ისთვის, რომელიც 'Do Not Connect'. ეს შეიძლება შეიცვალოს მომავალში, თუ Raspberry Pi Foundation იცვლება დაფები / პროგრამული უზრუნველყოფა.

(DNC GPIO ქინძისთავები ფიზიკური PIN რიცხვი 27 და 28)

09 09

GPIO ნუმერაციის კონვენციები

Portsplus არის მოსახერხებელი ინსტრუმენტი GPIO pin ნომრების შემოწმების მიზნით. რიჩარდ სავილე

GPIO- თან ერთად კოდირებისას თქვენ გაქვთ არჩევანი GPIO- ს ბიბლიოთეკის ერთ-ერთი ორი გზა - BCM ან BOARD.

ვარიანტი მირჩევნია არის GPIO BCM. ეს არის Broadcom ნუმერაციის კონცეფცია და მე ვიპოვე, რომ ის უფრო ფართოდ გამოიყენება პროექტებსა და ტექნიკურ მოდერებში.

მეორე ვარიანტია GPIO BOARD. ეს მეთოდი ნაცვლად ფიზიკური pin ნომრები, რომელიც არის მოსახერხებელი, როდესაც დათვლის ქინძისთავები, მაგრამ თქვენ იპოვით ის გამოიყენება ნაკლებად პროექტის მაგალითები.

GPIO- ს რეჟიმი არის GPIO- ს ბიბლიოთეკის იმპორტირებისას:

BCM- ის იმპორტისთვის:

იმპორტიორი RPi.GPIO როგორც GPIO GPIO.setmode (GPIO.BCM)

იმპორტისთვის:

იმპორტიორი RPi.GPIO როგორც GPIO GPIO.setmode (GPIO.BOARD)

ორივე მეთოდი ზუსტად იგივე სამუშაოა, რაც ნუმერაციის უპირატესობაა.

მე რეგულარულად იყენებენ ჯიბის ჯიშის ეტიკეტების დაფებს, როგორიცაა RasPiO Portsplus (სურათზე), რათა შეამოწმოთ რომელი ქინძისთავები მეც დამაკავშირებელი ხაზებიც. ერთი მხარე გვიჩვენებს BCM ნუმერაციის კონვენციას, სხვა შოუები BOARD - ასე რომ თქვენ დაფარული ნებისმიერი პროექტი თქვენთვის.