ResearchGate Raspberry Pi едноплочен компјутер

Информации за производот
Спецификации
- Производител: Raspberry Pi Ltd
- Датум на изградба: 22.07.2025
- Верзија на градење: 99a8b0292e31
- Поддржани производи од Raspberry Pi: Pi Zero, Pi Zero 2 W, Pi 1 AB, Pi 2, Pi 3, Pi 4, Pi 5, Модули за пресметување CM1, CM3, CM4, CM5
Колофон
© 2022-2025 Raspberry Pi Ltd
Оваа документација е лиценцирана под Creative Commons Attribution-NoDerivatives 4.0 International (CC BY-ND).
| Ослободете | 1 |
|---|---|
| Датум на градба | 01 |
| Изградба на верзијата | 99a8b0292e31 |
Известување за правно одрекување
ТЕХНИЧКИТЕ ПОДАТОЦИ И ПОДАТОЦИТЕ ЗА СИГУРНОСТА ЗА ПРОИЗВОДИТЕ НА RASPBERRY PI (ВКЛУЧУВАЈЌИ И ЛИСТОВИ СО ПОДАТОЦИ) КАКО ШТО СЕ МОДИФИЦИРААТ ОД ВРЕМЕ („РЕСУРСИ“) ГИ ОБЕЗБЕДУВА RASPBERRY PI LTD („RPL“) „КАКВИ ШТО СЕ“ И СЕКОЈА ИЗРИЧНА ИЛИ ИМПЛИЦИТНА ГАРАНЦИЈА, ВКЛУЧУВАЈЌИ ГИ, НО НЕ ОГРАНИЧУВАЈЌИ СЕ НА, ИМПЛИЦИТНИТЕ ГАРАНЦИИ ЗА ПРОДАЖЛИВОСТ И ПОДГОДНОСТ ЗА ОДРЕДЕНА НАМЕНА, СЕ ОТФРЛААТ. ДО МАКСИМАЛНИОТ СТЕПЕН ДОЗВОЛЕН СО ПРИМЕНЛИВИОТ ЗАКОН ВО НИКАКВ СЛУЧАЈ RPL НЕМА ДА БИДЕ ОДГОВОРЕН ЗА НИКАКВИ ДИРЕКТНИ, ИНДИРЕКТНИ, СЛУЧАЈНИ, СПЕЦИЈАЛНИ, ПРИМЕРНИ ИЛИ ПОСЛЕДИЧНИ ШТЕТИ (ВКЛУЧУВАЈЌИ, НО НЕ ОГРАНИЧУВАЈЌИ СЕ НА, НАБАВКА НА ЗАМЕСНИ СТОКИ ИЛИ УСЛУГИ; ЗАГУБА НА УПОТРЕБА, ПОДАТОЦИ ИЛИ ДОБИВКА; ИЛИ ПРЕКИН НА ДЕЛОВНОТО РАБОТЕЊЕ) НА КАКОВ И КАКВО Е ПРЕДИЗВИКАНА И ПО КОЈА ТЕОРИЈА НА ОДГОВОРНОСТ, БЕЗ РАЗЛИКА ДАЛИ Е ПО ДОГОВОР, СТРИКТНА ОДГОВОРНОСТ ИЛИ ДЕЛИКТ (ВКЛУЧУВАЈЌИ НЕБРЕНИЕ ИЛИ ДРУГ НАЧИН) КОИ ПРОИЗЛЕГУВААТ НА КОЈ БИЛО НАЧИН ОД КОРИСТЕЊЕТО НА РЕСУРСИТЕ, ДУРИ И АКО СЕ ИЗВЕСТУВАНИ ЗА МОЖНОСТА ЗА ТАКВА ШТЕТА.
RPL го задржува правото да направи какви било подобрувања, подобрувања, корекции или какви било други модификации на РЕСУРСИТЕ или на производите опишани во нив во секое време и без дополнително известување.
РЕСУРСИТЕ се наменети за квалификувани корисници со соодветно ниво на знаење за дизајн. Корисниците се единствено одговорни за нивниот избор и користење на РЕСУРСИТЕ и секоја примена на производите опишани во нив. Корисникот се согласува да го обештети и да го држи RPL безопасен за сите обврски, трошоци, штети или други загуби кои произлегуваат од нивната употреба на РЕСУРСИТЕ.
RPL им дава дозвола на корисниците да ги користат РЕСУРСИТЕ исклучиво во врска со производите на Raspberry Pi. Секаква друга употреба на РЕСУРСИТЕ е забранета. Ниту една лиценца не е дадена на кое било друго RPL или право на интелектуална сопственост на трета страна.
АКТИВНОСТИ НА ВИСОКО РИЗИК. Производите на Raspberry Pi не се дизајнирани, произведени или наменети за употреба во опасни средини кои бараат неуспешни безбедни перформанси, како на пример во работењето на нуклеарни постројки, системи за навигација или комуникација на авиони, контрола на летање, системи за оружје или безбедносни критични апликации (вклучувајќи животна поддршка системи и други медицински помагала), во кои дефектот на производите може директно да доведе до смрт, лична повреда или тешка физичка или еколошка штета („Активности со висок ризик“). RPL конкретно отфрла каква било експлицитна или имплицитна гаранција за соодветност за високоризични активности и не прифаќа никаква одговорност за употреба или вклучување на производите на Raspberry Pi во активности со висок ризик.
Производите на Raspberry Pi се обезбедени според стандардните услови на RPL. Обезбедувањето на РЕСУРСИТЕ од RPL не ги проширува или на друг начин ги менува Стандардните Услови на RPL, вклучувајќи, но не ограничувајќи се на одрекувањата и гаранциите изразени во нив.
Историја на верзијата на документот
| Ослободете | Датум | Опис |
|---|---|---|
| 1 | 1 2025 октомври | Почетно ослободување |
Опсег на документот
Овој документ се однесува на следните производи на Raspberry Pi:
Едноплочни компјутери / SBC
| Пи Нула | Пи Зеро 2 | Пи 1 | Пи 2 | Пи 3 | Пи 4 | Пи 5 |
|---|---|---|---|---|---|---|
| ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | – |
Пресметувачки модули
| CM1 | CM3 | CM4 | CM5 |
|---|---|---|---|
| ✓ | ✓ | ✓ | ✓ |
Вовед
USB On-The-Go (OTG) е спецификација што му овозможува на уредот да функционира или како USB домаќин (како компјутер) или како USB уред/периферен уред (како тастатура, Ethernet адаптер или уред за масовно складирање). Страницата „USB On-The-Go“ на Википедија дава многу детали за OTG спецификацијата: https://en.wikipedia.org/wiki/USB_On-The-Go.
Обично, USB-врската вклучува фиксен хост (на пр. компјутер) и периферна направа (на пр. глушец). USB OTG му овозможува на уредот да се префрла помеѓу двете. На пр.ampт.е. Raspberry Pi би можел да дејствува како домаќин при читање files од флеш-драјв, или да функционира како флеш-драјв кога е поврзан со компјутер.
Семејството Raspberry Pi вклучува неколку плочи кои можат да функционираат во OTG/периферен режим, но поддршката се разликува во зависност од моделот и системот на чипот (SoC). Кога работи во овој периферен режим, уредот често се нарекува „гаџет“.
Оваа бела книга ја опишува линијата на Raspberry Pi SBC, ги објаснува нивните OTG можности и дава пример за конфигурација/код.ampлес. Опфаќа два различни OTG механизми: методот legacy, кој е сè уште многу популарен и е опишан прв, проследен со шемата што се препорачува во моментов, ConfigFS.
Застарен OTG
Raspberry Pi Zero / Zero W / Zero 2 W
Овие плочи се најпријателски за OTG во семејството Raspberry Pi. Тие го изложуваат USB контролерот на SoC директно на USB портот за податоци (оној означен како USB, а не PWR IN), а вградениот софтвер може да се конфигурира да го направи вашиот Raspberry Pi да дејствува како OTG уред.
Овозможување на OTG режим
Совет: Бидејќи го користите единствениот USB порт на Raspberry Pi Zero за OTG цели, нема да можете да приклучите тастатура или глушец. Наместо тоа, можете да користите Wi-Fi конекција и SSH за комуникација со Raspberry Pi Zero…
dtoverlay=dwc2
Сега треба да го конфигурираме софтверот за да го поврземе бараниот OTG драјвер со USB системот…
console=serial0,115200 console=tty1 root=PARTUUID=xxxxxxxx-02 rootfstype=ext4 fsck.repair=yes rootwait modules-load=dwc2,g_ether
Други модули за гаџети
Наместо да g_ether, можете да пробате:
g_serialСе појавува како USB сериски уредg_mass_storage: Осветлува слика file како флеш-драјвg_compositeЕмулира композитен уред
Совет
USB композитен уред е еден физички уред кој функционира како повеќе независни уреди за компјутерот, појавувајќи се како неколку одделни интерфејси или класи на уреди. Тој комбинира различни функционалности, како што се тастатура и глушец, или диск за складирање и webкамера, во еден USB уред и конектор. Кога е поврзан, оперативниот систем препознава и користи посебни драјвери за секоја од различните функции на уредот, овозможувајќи им да работат независно.
За да креираме USB сериски гаџет, можеме да го вчитаме соодветниот модул од командната линија:
- Код
- sudo modprobe g_serial
Кога е поврзан со Windows компјутер, Raspberry Pi ќе се појави како COM порт во Device Manager; кога е поврзан со Linux уред (на пр. Raspberry Pi SBC), ќе се појави како сериски уред како /dev/ttyACM0.
Raspberry Pi 4 и 5 (OTG на USB-C портот за напојување)
USB-C напојување/OTG портот на Raspberry Pi 4 поддржува периферен режим кога не се користи за напојување на плочата.
Raspberry Pi 5 воведува PCIe-приклучен USB контролер, кој не поддржува OTG. Сепак, како и кај Raspberry Pi 4, вградената OTG периферна функција на SoC е изложена преку конекторот за напојување.
Чекори
Напојувајте го вашиот Raspberry Pi преку GPIO конекторот (5V и GND), оставајќи го USB-C приклучокот слободен.
Поврзете го USB-C портот со вашиот домаќин компјутер.
Овозможи OTG во /boot/firmware/config.txt
Код
dtoverlay=dwc2, dr_mode=периферен
Забелешка
Потребна ви е опцијата dr_mode=peripheral на преклопот за да го присилите контролерот во OTG периферен режим (наместо хост), бидејќи линијата OTG_ID што нормално би го направила изборот не е присутна на Raspberry Pi 4 или 5.)
Вчитај модул за гаџет (Етернет):
Код
sudo modprobe g_ether
Вашиот Raspberry Pi сега ќе се наброи како USB уред на домаќинот.
Совет
Не сите хост системи го ракуваат сигурно OTG режимот на Raspberry Pi 4. Ethernet и серискиот кабел работат најдобро.
Серија модули за пресметување Raspberry Pi
Модулите 1, 3, 3+ и 4 на Raspberry Pi Compute го изложуваат USB OTG контролерот на SoC директно на матичната плоча, што ги прави многу флексибилни.
CM1/CM3/CM3+ USB OTG интерфејсот е достапен на наменски пинови; носечките плочи често го изложуваат ова преку микро-USB порт. CM4 нуди USB 2.0 интерфејс (USB_OTG) способен за OTG. Тој е насочен кон микро-USB конекторот на Compute Module 4 IO плочата.
CM4 OTG example (Етернет гаџет)
Вклучете микро-USB кабел во USB-портата на IO-плочката.
Во /boot/firmware/config.txt, додадете:
Код
dtoverlay=dwc2, dr_mode=периферен
Во /boot/cmdline.txt, додадете:
- Код
- модули-вчитување=dwc2,g_етер
Рестартирај. Модулот за пресметување 4 сега ќе се појави како USB етернет адаптер.
Малина Пи А, Б, Б+, 2Б, 3Б, 3Б+
USB портите на овие модели се поврзани преку чип-центар (LAN9512/LAN9514 или VIA Labs), што ги елиминира OTG можностите. Тие можат да работат само како USB-домаќини, па затоа не е достапна поддршка за OTG.
Користење на различни типови уреди
Овој дел опишува како да ги поставите најчестите режими на гаџети.
Уреди за масовно складирање
За да користите Raspberry Pi како уред за масовно складирање (како USB стик), ќе треба да креирате подлога. file за да ги чувате зачуваните податоци:
- Код
- # Прample: Направете 256 MB file да дејствува како „USB стик“
- sudo dd if=/dev/zero of=drive.bin bs=1M count=256
- # Креирај VFAT file систем во продавницата за поддршка
- sudo mkfs.vfat drive.bin
- Уредете го /etc/modprobe.d/g_mass_storage.conf за да му кажете на системот да го користи складиштето за резервна копија:
- Код
- опции g_mass_storage file=/drive.bin застој=0 отстранлив=1
- Можете да ја проверите содржината на складиштето за поддршка со тоа што ќе го монтирате на вашиот Raspberry Pi. Тука го монтираме во папка наречена mountpoint:
- Код
- точка за монтирање на sudo mkdir
- sudo mount -o јамка drive.bin точка за монтирање
Ќе треба да ги прилагодите патеките по потреба.
Етернет уреди
Кога уредот g_ether е поврзан со Linux хост, тој обично ќе се појави како мрежен интерфејс наречен usb0 (кога се користи ifconfig).
Можете (обично) да се поврзете со уредот користејќи SSH, на следниов начин:
- Код
- ssh pi@raspberrypi.local
Сериски уреди
Кога Raspberry Pi е поставен како g_serial уред, ќе се појави нов сериски уред (кога се користи Raspberry Pi OS Bookworm со јадро 6.12.34, ова беше /dev/ttyGS0). Кога тој Raspberry Pi уред потоа ќе се вклучи во (на пр.ample, Linux) домаќин, уредот ќе биде препознаен како уред компатибилен со CDC ACM и ќе се појави како друг сериски порт. На примерampна пример, на Raspberry Pi 500 кој работи со Bookworm, се појавува како /dev/ttyACM0.
Под Linux, можете да ја тестирате сериската врска со користење на екранот на секој уред. Ако користите Windows на хостот, нешто како Putty би требало да работи добро.
На вашиот Raspberry Pi:
- Код
- екран /dev/ttyGS0
На Linux домаќин:
- Код
- екран /dev/ttyACM0
Потоа напишете нешто во секој прозорец - резултатот треба да се појави на другиот екран наместо тоа.
Забелешка
Ако екранот не е инсталиран, користете sudo apt install screen во терминален прозорец.
Лесно е да се види како оваа функционалност може да се користи за да се обезбеди сериски интерфејс до Raspberry Pi уред кој следи голем број сензори (на пр. преку I2C или SPI) и ги враќа собраните информации назад, преку серискиот порт, до компјутерот домаќин.
ConfigFS/usb_gadget: храбар нов свет
Иако тие се убедливо најчестиот начин за поставување OTG на уредите Raspberry Pi, механизмите опишани погоре всушност се заменети со нешто наречено usb_gadget, кое е дел од ConfigFS.
ConfigFS е интерфејс на Linux јадрото (виртуелен file Систем монтиран на /sys/kernel/config) што се користи за конфигурирање на објекти на јадрото — вклучувајќи ги и драјверите за USB уреди — на модуларен начин. Користењето на ConfigFS / usb_gadget е пофлексибилно од стариот метод g_mass_storage /g_ether, бидејќи можете да компонирате повеќе USB функции (на пр. Ethernet + сериски + масовно складирање) одеднаш.
Сепак, оваа дополнителна функционалност доаѓа со повисока цена за поставување.
Основната идеја е дека множество виртуелни папки и files се креира во папката /sys/kernel/config, која го дефинира потребниот гаџет.
Дел од документацијата за јадрото на usb_gadgets е достапна тука: https://docs.kernel.org/driver-api/usb/gadget.html и https://www.kernel.org/doc/Documentation/ABI/testing/configfs-usb-gadget.
Поставување
Поставувањето на DWC USB периферниот уред е исто како и во legacy режим. Уредете го config.txt како sudo и додадете:

Можеме да провериме дали е правилно вчитано со прегледување на содржината на /sys/kernel/config, која сега треба да содржи папка наречена usb_gadget.
Следно е креирањето на самиот USB гаџет, што вклучува креирање папка со името на гаџетот, а потоа креирање збир на записи во таа папка за да се дефинираат својствата на гаџетот. Овој извадок од bash скрипта го прави поголемиот дел од потребното поставување:

Сега кога основните податоци за уредот се поставени, треба точно да му кажеме на уредот што е. Креирањето на секој уред е едноставно како креирање папка во папката функции на гаџетот ConfigFS, а потоа поврзување на таа папка со записот за конфигурација во истиот гаџет.
Сериски (CDC ACM):

Етернет (RNDIS и ECM):
Масовно складирање:
Како и со поставката за наследство, ни треба складиште за поддршка за нашиот гаџет за масовно складирање:

И за да го искористите тоа:

Совет
/sys/class/udc е директориум во рамките на sysfs. file систем што ги претставува достапните контролери на USB уреди (UDC). Му овозможува на подсистемот на USB уреди на јадрото да идентификува и да комуницира со хардверски UDC на уредот, овозможувајќи му на системот да функционира како USB периферен уред. Можете да ја наведете неговата содржина користејќи ls /sys/class/udc/ за да го пронајдете името на UDC, како на пример 3f980000.usb, а потоа да го напишете тоа име во конфигурацијата на уредот за да го поврзете уредот со UDC.
Откако ќе заврши поставувањето, структурата и содржината на папката треба да личат на примерокот.ampподолу, кој поставува и сериски уред и етернет уред на истиот уред:

Сега рестартирајте, а потоа поврзете го уредот Raspberry Pi со уред-домаќин (на пр. друг Raspberry Pi, Windows PC или Linux PC). Домаќинот треба да има поврзани USB Ethernet уред и сериски уред.
Како да функционира сè
Сите команди опишани погоре треба да се извршуваат секој пат кога ќе се стартува уредот Raspberry Pi. Бидејќи Raspberry Pi OS користи systemd, тоа е соодветниот начин да се изврши скриптата за стартување што го прави целото поставување. Еве еден примерampскриптата што ги собира сите инструкции од погоре:

Сега треба да му кажеме на systemd да ја изврши нашата скрипта при стартување.
Креирај а file во /lib/systemd/system — името што ќе го изберете зависи од вас (се додека наставката е .service ), но за ова на пр.ampт.е., ќе користиме mass-storage-device.service. Внесете го следново во file (имајте предвид дека постојат многу различни опции за овие услуги) files; ги искористивме само оние што ни беа потребни):

Ќе треба да ја промените линијата ExecStart за да покажува каде што сте ја зачувале скриптата за поставување. Потоа треба да му кажете на systemd да ја изврши услугата при стартување:

Сега, кога ќе го поврзете вашиот Raspberry Pi со хост, тој треба да се појави како уред за масовно складирање. Можете да ја оневозможите услугата systemd на следниов начин:

Прикачување на конзола за најавување на сериски порт
Ако сте го поставиле вашиот Raspberry Pi како сериски гаџет, можеби ќе сакате да го користите тој сериски гаџет за да се најавите на уредот, наместо само да го користите за сериска комуникација од точка до точка. На најновата верзија на Raspberry Pi OS што работи со systemd, ова е лесно. Треба да му кажете на системот да креира getty на серискиот порт, а потоа да му кажете на systemd да го стартува. Следново го поставува getty на ttyGS0 (tty креиран при користење на ConfigFS за поставување на сериски уред); можеби ќе треба да го прилагодите ова за да одговара на кој било tty на кој е доделен серискиот уред.

Ова ќе го стартува getty на серискиот порт и ќе осигури дека автоматски ќе се стартува при секое рестартирање.
Совет
Што е getty? Во Linux, getty е програма што управува со терминали (и физички сериски порти и виртуелни конзоли) за да им овозможи на повеќе корисници да се најават во системот, извршувајќи задачи како што се иницијализирање на терминалот, прикажување на барање за најавување и повикување на програмата за најавување за автентикација на корисникот.
Оваа функција може да биде особено корисна на нешто како Raspberry Pi Zero или Raspberry Pi Zero 2 W. Со само еден USB конектор што обезбедува и напојување и сериска комуникација, можете да го вклучите уредот и да се најавите на него преку терминал.
Заклучок
За вистински проекти за USB гаџети (на пр. Ethernet, сериски, масовно складирање), семејството Raspberry Pi Zero и Raspberry Pi Compute Modules се најдобриот избор.
Raspberry Pi 4 и Raspberry Pi 5 нудат OTG поддршка, но нивните потреби за енергија може да бидат проблем.
Плочките Raspberry Pi A, B, 2B, 3B и 3B+ не поддржуваат OTG.
Ако вашиот проект во голема мера зависи од OTG, најдобрите опции се Raspberry Pi Zero 2 W или Raspberry Pi Compute Module 4 со Compute Module 4 IO плоча.
Од софтверска страна, постојат две опции: застарениот систем сè уште е најчесто користен и лесен за поставување; системот ConfigFS бара повеќе работа за поставување, но обезбедува подобра функционалност.
Табела за брза референца
| Модел | OTG поддршка | Белешки |
| Raspberry Pi Zero / Zero W / Zero 2 W | Да | Целосно поддржано на USB порт за податоци |
| Raspberry Pi 4 | Да ¹ | USB-C порт во режим на уред |
| Raspberry Pi 5 | Да ¹ | USB-C порт во режим на уред |
| Raspberry Pi A/B/2B/3B/3B+ | бр | Само режим на домаќин |
| Модул за пресметување Raspberry Pi 1–3 | Да | Изложено на OTG пинови |
| Raspberry Pi Compute Module 4 | Да | микро-USB на CM4 IO плоча |
¹ Raspberry Pi 4 и 5 обично ќе црпат енергија од домаќинот преку USB кабелот, па затоа може да има ограничувања на достапната струја поради поголемите барања за енергија на овие уреди.
Контакт информации за повеќе информации
Ве молиме контактирајте applications@raspberrypi.com доколку имате какви било прашања во врска со оваа бела книга. Web: www.raspberrypi.com
Најчесто поставувани прашања
Кои се ризиците поврзани со овозможувањето на OTG режимот?
Овозможувањето на OTG режим бара систем за уредување fileшто може да претставува ризик ако се направи неправилно. Препорачливо е внимателно да ги следите упатствата и да направите резервна копија на важните податоци пред да правите промени.
Може ли да користам OTG режим на модели на Raspberry Pi освен Zero, Zero W и Zero 2 W?
Иако дадените упатства се специфични за споменатите модели, можете да истражите слични конфигурации на други Raspberry Pi SBC со соодветни адаптации.
Документи / ресурси
![]() |
ResearchGate Raspberry Pi едноплочен компјутер [pdf] Упатство за употреба Raspberry Pi едноплочен компјутер, Raspberry Pi, едноплочен компјутер, плочен компјутер, Компјутер |
