Протоколът на серийния периферен интерфейс (SPI) се очертава като крайъгълен камък в сферата на цифровата комуникация, особено в вградените системи, изискващи стабилен обмен на високоскоростни данни.Първоначално разработен за улесняване на безпроблемния поток от данни между микроконтролери и периферни устройства, SPI се отличава със своите пълнодуплекс, синхронни възможности, като гарантира едновременна двупосочна комуникация.Този протокол използва архитектура на главния роб, използвайки четири основни линии-началник, роб в (mosi);Господарю в, роб навън (мисо);Часовник (SCK);и Slave Select (SS) - За да се установи контролирана и ефективна среда за предаване на данни.Чрез поддържане на различни оперативни режими и конфигурации, включително 3-проводници и мулти-IO настройки, SPI се адаптира към различни технологични изисквания, в основата на широкото му приложение в различни сектори като автомобилна електроника, системи за индустриален контрол и потребителска електроника.Това задълбочено проучване се задълбочава в техническите тънкости на SPI, обсъждайки неговите конфигурации, типове транзакции и програмиране, заедно с основната му роля в съвременните електронни дизайни и системи.
Фигура 1: шина на сериен периферен интерфейс (SPI)
Шината на серийния периферен интерфейс (SPI) е от ключово значение за бърз, пълен дуплекс, синхронен трансфер на данни между главно устройство и множество подчинени устройства.За разлика от други протоколи, SPI използва четири основни линии на данни: Учийте навън, роб в (MOSI), Master In, Slave Out (MISO), Clock (SCK) и Slave Select (SS).Тази настройка позволява ефективна и стабилна обработка на данни за различни приложения.
Фигура 2: Конфигурация на главния роб
В SPI система данните текат едновременно и в двете посоки, което позволява комуникация в реално време.Учителят изпраща данни до роба през линията MOSI и получава данни от роба през линията MISO едновременно.SPI устройствата могат да предават данни, започващи или с най -значимия бит (MSB), или с най -малко значимия бит (LSB).Това изисква внимателна конфигурация според листа за данни на устройството, за да се гарантира правилната битова последователност.Например, в проектите на Arduino, след това са необходими подробни указания за конфигуриране на SPI порта, за да съответстват на изискванията на конкретното устройство, както е посочено в техническите справки и таблиците с данни.
Фигура 3: Полярност на часовника и фаза
Точността на трансфера на данни в SPI зависи от правилно задаване на полярността на часовника (CPOL) и фазата (CPHA), които определят как битовете на данните се подравняват и се улавят по време на комуникацията.SPI поддържа четири режима за задоволяване на различни нужди от време:
• Режим 0 (CPOL = 0, CPHA = 0)
Часовникът е на празен ход.Битовете на данните се улавят на издигащия се ръб на часовника и се предават на падащия ръб.Данните трябва да са готови преди първия пулс за издигане на часовника.
• Режим 1 (CPOL = 0, CPHA = 1)
Часовникът е на празен ход.Битовете на данните се улавят на падащия ръб и се предават на следващия ръб.
• Режим 2 (CPOL = 1, CPHA = 0)
Часовникът е на празен ход.Данните се улавят на падащия ръб и се предават на нарастващия ръб.Данните трябва да са готови преди първия пулс на падащия часовник.
• Режим 3 (CPOL = 1, CPHA = 1)
Часовникът е на празен ход.Битовете на данните се улавят на ръба на издигането и се предават на падащия ръб.
Всеки режим гарантира целостта на данните чрез прецизно подравняване на битовете на данни с преходи на часовника, предотвратяване на корупцията на данните и осигуряване на надежден обмен между главни и подчинени устройства.
За да се разбере протоколът SPI, е необходимо да се знае следните ключови термини, които определят взаимодействието на устройството:
CLK (сериен часовник): Това е синхронизираният сигнал, контролиран от главното устройство, който определя кога битовете на данни се вземат проби и изместват по време на комуникацията.Той задава ритъма за предаване на данни през SPI шината.
SSN (Slave Select): Този сигнал за активно-ниско управление, управляван от главния, избира активното подчинено устройство за комуникация.Когато този сигнал е нисък, това показва, че подчиненото устройство е готово да получава данни от или да изпраща данни до главния.
MOSI (Master Out, Slave In): Този канал за данни изпраща информация от главния до роба.Данните протичат през тази линия според сигналите на часовника, като се гарантира, че битовете се предават последователно от главния на един или повече роби.
Мисо (господар в, роб): Това е пътят на данните за изпращане на информация от роба обратно към Учителя.Той допълва линията MOSI, което позволява двупосочен обмен на данни в рамките на SPI.
CPOL (Полярност на часовника): Тази настройка определя дали линията на часовника е висока или ниска, когато не се случва предаване на данни.Той влияе върху стабилността на състоянието на празен ход и готовността за следващото предаване на данни.
CPHA (фаза на часовника): Това уточнява кога трябва да се вземат проби от данните - или на ръба на часовника в началото на цикъла или ръба, който се случва в средата на цикъла.Той е ключ за подравняване на битовете на данни точно с часовници.
Фигура 4: Конфигурация с множество робски селекти
Когато Master SPI устройство комуникира с множество роби, всеки роб има своя собствена линия за подбор (SS).Тази настройка предотвратява сблъсъците с данни и гарантира, че команди или данни, изпратени от главния, достигат само предвидения роб.Само една SS линия трябва да бъде активна в даден момент, за да се избегнат конфликтите на главния ред в, роб (MISO) линия, която може да корумпира данни.Ако не е необходима връщаща комуникация от роби, главният може да активира няколко SS линии за излъчване на команди или данни едновременно с няколко роби.
За системи, нуждаещи се от повече подчинени устройства, отколкото наличните I/O щифтове на главния, разширяване на I/O с помощта на хардуер като декодер или демултиплексер (например, 74HC (T) 238) се използва.Това позволява на един главен да управлява ефективно много роби, като декодира няколко контролни линии в множество SS линии.
Фигура 5: Конфигурация на веригата на маргаритка
Топологията на веригата на маргаритка свързва множество подчинени устройства последователно, използвайки една SS линия.Учителят изпраща данни до първия роб, който ги обработва и ги предава на следващия роб.Това продължава до последния роб, който може да изпраща данни обратно на господаря чрез линията Miso.Тази конфигурация опростява окабеляването и е полезна в приложения като последователно контролирани LED масиви, където всяко устройство се нуждае от данни, преминали през своите предшественици.
Този метод изисква прецизно време и обработка на данни, за да се гарантира правилно всеки подчинен да интерпретира и препраща данни.Master SPI трябва да управлява внимателно часовника и потока на данните, за да побере забавянето на разпространението и времето за настройка за всеки роб във веригата.
Програмирането за SPI включва свързване на микроконтролери с вградени SPI периферни устройства, за да се даде възможност за високоскоростен трансфер на данни.За потребителите на Arduino има два основни начина за внедряване на SPI комуникация:
Първият метод използва команди SHIFTIN () и SHIFTOUT ().Тези софтуерни команди позволяват гъвкавост при избора на пинове и могат да се използват на всякакви цифрови I/O пинове.Тази гъвкавост е полезна за различни хардуерни настройки.Въпреки това, тъй като този метод разчита на софтуера за обработка на бит манипулация и време, той работи с по-ниска скорост в сравнение с хардуерния SPI.
Вторият метод е по -ефективен и включва използването на SPI библиотеката, която директно има достъп до хардуера на Arduino в борда на SPI.Това води до много по -бързи валутни курсове.Този метод обаче ограничава използването на специфични SPI-проектирани пинове, дефинирани от архитектурата на микроконтролера.
При програмиране на SPI комуникация е важно да следвате спецификациите на свързаното устройство от неговия лист с данни.Това включва настройка на правилния битов ред (MSB или LSB първо) и точно конфигуриране на фазата на часовника (CPHA) и полярността (CPOL).Библиотеката на SPI в Arduino предоставя функции като SetBitorder (), SetDataMode () и SetClockDivider (), за да регулира тези параметри, като гарантира гладки и съвместими взаимодействия с различни SPI устройства.
За дъските на Arduino управлението на PIN Select Select (CS) е задължително.По -старите дъски, като Arduino UNO, изискват ръчен контрол на този щифт, за да стартират и завършват комуникационни сесии.В разлика, по -новите модели като Arduino Due предлагат автоматично CS контрол, което прави SPI операциите по -лесни и по -надеждни.
SPI протоколът се адаптира към различни оперативни нужди чрез различни конфигурации, включително стандартната настройка на 4-проводници, както и специализирани формати като 3-проводници и мулти-IO режими.
Фигура 6: Конфигурация с 3 проводници
Режимът с 3 проводници комбинира главния, роб в (MOSI) и Master In, Slave Out (MISO) линии в една двурекционна линия данни.Това намалява общия брой на необходимите пинове до три: комбинираната линия данни, линията на часовника (CLK) и линията за избор на подчинение (SS).Работейки в полудуплекс режим, тази настройка може да изпраща или получава данни във всеки даден момент, но не и двете едновременно.Докато намаляването на броя на щифтовете е полезно за устройства с ограничена наличност на GPIO, тази настройка също ограничава пропускателната способност на данните.Подходящ е за приложения, при които запазването на пространството и хардуерната простота са приоритети, а високоскоростното предаване на данни е по-малко рисковано.
Фигура 7: Конфигурации на мулти-II
Конфигурациите на мулти-II, включително двойни и Quad I/O режими, разширяват линиите на данни отвъд единичната линия, наблюдавана в традиционния SPI.Тези режими използват два или четири реда за предаване на данни, което позволява много по -бързи скорости на данни, като позволяват едновременния двупосочен поток от данни.Тази способност е особено изгодна във високоефективни среди, където скоростта се утаява.
ual i/o: Използва два реда данни, като ефективно удвоява скоростта на прехвърляне на данни в сравнение със стандартната настройка на едноредова линия.
Quad I/O: Използва четири линии на данни, като значително увеличава пропускателната способност и ефективността.Този режим е особено ефективен за операции за изпълнение на място (XIP) директно от не-променливи устройства за памет като Flash Storage, където данните могат да се предават едновременно и на четирите реда.
Тези подобрени I/O режими преодоляват празнината между традиционните паралелни интерфейси, които обикновено изискват повече пинове за Сравними скорости на данни и по-ефективни серийни настройки.Чрез увеличаване на Брой линии за данни, мулти-II конфигурации засилват производителността, докато Поддържане на баланс между броя на щифта и оперативната ефективност, което ги прави Подходящ за широк спектър от високоскоростни приложения за данни.
Изпълнението на транзакция за запис в SPI флаш памет включва прецизни командни последователности, за да се гарантира целостта на данните и ефективната комуникация между главния и подчиненото устройство.Операцията започва с главния, активиращ линията на Slave Select (SS), сигнализирайки за целевото подчинено устройство да започне комуникационна сесия.Тази стъпка е основна, тъй като подготвя конкретното подчинено устройство за получаване на данни.
След активиране на SS реда, главният изпраща команда за запис заедно с необходимите байтове за данни.Тази команда обикновено определя действието, което трябва да се извърши, като например „регистър на запис на състоянието“, последвано от байтовете на данните, определящи новото съдържание на регистъра.Прецизността в тази стъпка е динамична;Всяка грешка в командата или данните може да доведе до неправилни конфигурации или корупция на данните.По време на тази фаза линията MISO остава в състояние с висок импеданс, за да се предотврати изпращането на всякакви данни обратно в Учителя.Тази настройка опростява транзакцията, като се фокусира единствено върху изпращането на данни до роба.
След като предаването на данни приключи, главният деактивира линията SS, маркирайки края на транзакцията.Тази дезактивация казва на подчиненото устройство, че комуникационната сесия е приключила, което му позволява да се върне в режим на готовност и да обработва получените данни.
Извършването на четене на транзакция от SPI флаш памет включва стъпка по стъпка процес за точно извличане на данни от подчиненото устройство.Тази операция изисква изпращане на конкретна инструкция за четене до роба, последвана от последователно извличане на данни.Процесът започва с главния, активиращ линията Slave Select (SS).Това изолира и е насочено към конкретното подчинено устройство за комуникация, като гарантира, че команди са насочени изключително към предвидения роб.
Стъпка 1: Изпращане на инструкцията за четене
След като робът е избран, Учителят изпраща инструкция за четене.Тази команда инициира трансфера на данни от роба към Учителя.Прецизността в тази команда е от ключово значение, за да се гарантира, че робът разбира кои данни се изискват.
Стъпка 2: Извличане на данни
След като изпраща инструкцията, робът започва да предава исканите данни обратно на главния ред през главния в, роб на линията (MISO).Това предаване на данни се случва в няколко цикъла на часовника, контролирани от часовника на майстора.Учителят чете последователно байтовете на данните, като обикновено включва предварително определен брой байтове въз основа на изискванията на командата.
Фигура 8: Quad IO SPI транзакция
Quad IO SPI режим подобрява комуникацията на флаш паметта, като използва четири двупосочни линии за данни.Тази настройка значително повишава скоростите на пренос на данни в сравнение с единични или двойни SPI конфигурации.
Транзакцията започва, когато главното устройство изпраща команда „бързо четене“.Тази команда е специално оптимизирана, за да ускори процеса на четене, който е необходим за приложения, които изискват бърз достъп до големи количества данни, например при високопроизводителни изчислителни и усъвършенствани вградени системи.
След изпращането на командата, главният предава 24-битов адрес.Този адрес определя точното местоположение в флаш паметта, от която трябва да се прочете данни.След адреса се изпращат 8 бита за режим.Тези битове на режим конфигурират параметрите за четене на устройството на подчиненото устройство, коригирайки операцията, за да отговори на специфични нужди от производителност.
След като командата и параметрите са зададени, подчиненото устройство започва да предаде данни обратно на главния.Данните се изпращат в 4-битови единици (Nibbles) през четирите линии, като ефективно се утрои на пропускателната способност в сравнение със стандартните SPI режими.
Използването на четири I/O линии в Quad IO режим не само увеличава скоростта на пренос на данни, но също така повишава общата ефективност и производителност на интерфейса.Тази конфигурация значително намалява времето, необходимо за достъп и изпълнение на данни, което я прави идеален за усъвършенствани операции на флаш памет.
Инструментът за упражнения на SPI е безценен за управление на тези сложни транзакции.Той поддържа стабилен командващ език, който позволява плавни преходи между различни оперативни режими-като превключване от стандартна 4-проводница на Quad IO режим-без една транзакция.Тази гъвкавост улеснява ефективното тестване и отстраняване на грешки на SPI конфигурации, като гарантира, че системите могат да използват напълно възможностите на Quad IO технологията.
Протоколът на шината на SPI (сериен периферен интерфейс), макар и да не е стандартизиран в структурата на потока на данните, обикновено използва фактически формат, който осигурява съвместимост и оперативна съвместимост между устройства от различни производители.Тази гъвкавост прави SPI универсален избор за различни приложения, от просто събиране на данни от сензора до сложни задачи за памет и комуникация.
Повечето SPI устройства следват общ модел в техните процеси на обмен на данни, обикновено включващи тези стъпки:
• Фаза на команда
Главното устройство стартира транзакцията, като изпраща команда.Тази команда указва вида на операцията, която трябва да се извърши, като четене от или писане на подчиненото устройство.
• Адресна фаза
За операции, включващи конкретни местоположения на паметта или регистри, главният изпраща адрес.Този адрес казва на роба точно къде да чете от или да пише.
• Фаза на данните
В зависимост от командата, данните се изпращат от главния до роба или обратно.При операции за запис, главният изпраща данни, които да се съхраняват на определеното място в подчиненото устройство.В операциите за четене робът изпраща исканите данни обратно на Учителя.
Интеграция на сензора: Способността на SPI да обработва кратки изблици на високоскоростни данни го прави идеален за сензори, нуждаещи се от бързи актуализации на данни, като тези в автомобилни системи за безопасност.
Достъп до паметта: SPI се използва широко при операциите на флаш паметта, ефективно управлява предаването на данни до и от чиповете на паметта, особено в системите, където производителността и скоростта са рискови.
Комуникационни модули: устройства като модеми и мрежови адаптери използват SPI за надеждно предаване на данни, използвайки скоростта и ефективността му, за да осигурят безпроблемна комуникация.
Протоколът на серийния периферен интерфейс (SPI) предлага няколко ключови предимства, които го правят предпочитан избор за различни електронни приложения.Те включват високоскоростен трансфер на данни, прости хардуерни изисквания и ефективно управление на множество периферни устройства.
Предимства на SPI
|
|
Високи скорости на трансфер на данни |
SPI поддържа много по -висок трансфер на данни тарифи, отколкото стандартни асинхронни серийни комуникации.Това високоскоростно Възможност е необходима за приложения, нуждаещи се от бързи актуализации на данни или Обработка в реално време, като поточно аудио и видео устройства, високоскоростна Системи за събиране на данни и комуникация между микроконтролери и Периферни устройства като сензори и модули на паметта.
|
Прост хардуер |
Получаването на данни чрез SPI изисква минимални Хардуер, обикновено просто обикновен регистър на смяната.Тази простота намалява Сложност и разходи, което прави SPI идеален за системи с пространство и бюджет ограничения.Регистри за смяна улесняват директния трансфер на данни в и излизане от стандартни цифрови регистри, облекчаване на интегрирането на SPI в съществуващите Дигитални системи. |
Ефективно управление на множество Периферни устройства |
SPI е високоефективен при работа множество периферни устройства.За разлика от други протоколи, които се нуждаят от сложна шина Управление или допълнителна сигнализация За всяко устройство SPI използва Slave Select (SS) ред за управление на множество устройства.Всяко робско устройство в шината на SPI може да бъде индивидуално адресиран чрез собствената си SS линия, което позволява лесно разширяване на Включете повече периферни устройства без значителни промени в сърцевината Протокол за комуникация. |
Универсалност между приложенията |
Универсалността на SPI е очевидна в неговата Широкото приемане в различни области.От вградени системи в автомобилни и индустриални приложения към потребителската електроника и телекомуникации, SPI предоставя надежден и ефективен метод на Комуникация на къси разстояния между централен контролер и него периферни устройства.Способността му да работи на различни честоти на часовника и Конфигурациите (като различен брой линии на данни) допълнително подобряват своите адаптивност към конкретни изисквания на проекта.
|
Докато протоколът на серийния периферен интерфейс (SPI) предлага множество предимства, той също има определени ограничения, които могат да повлияят на неговата пригодност за конкретни приложения.Като се има предвид тези недостатъци е важно за проектирането на системи и избора на правилния протокол за комуникация.
Недостатъци на SPI |
|
Повишени изисквания за сигнална линия |
SPI изисква повече сигнални линии от По -прости методи за комуникация като I²C или UART.Типична SPI настройка се нуждае от Най -малко четири реда: Clock (CLK), Овладейте роб в (MOSI), господар в роб Out (miso) и подбор на роби (ss).Тази нужда от множество линии се увеличава Сложност на окабеляването, особено в системи с много периферни устройства.Това може да доведе към проблеми с целостта на сигнала и ограниченията на физическото оформление.
|
Предварително зададен комуникационен протокол |
SPI изисква добре дефиниран и Структуриран комуникационен протокол преди внедряването.Не поддържа ad hoc или предаване на данни в движение, ограничавайки гъвкавостта в динамиката Системи, при които комуникационните нужди могат да се променят след внедряване.Всеки транзакцията трябва да бъде изрично инициирана и контролирана от главното устройство, с предварително зададени команди и отговори, които могат да усложнят софтуера мащабируемост на режийни и системи.
|
Главно-контролирана комуникация |
В SPI настройка главното устройство контролира всички комуникации, без местна поддръжка за директно партньорство Комуникация между подчинените устройства.Този централизиран контрол може да причини неефективност и затруднения, особено в сложни системи, където многократно Устройствата трябва да си взаимодействат независимо, без да включват Учителя.
|
Управление на множество SS линии |
Работа с множество линии за избор на роби (SS) става тромав с увеличаването на броя на периферните устройства.Всяко подчинено устройство В шината SPI изисква уникална SS линия, контролирана от главния, усложняване на GPIO на главното устройство (вход/изход с общо предназначение) Конфигурация и софтуер.Управление на тези линии ефективно, особено Когато мащабирате системата, за да включите повече устройства, може да увеличи дизайна и оперативни режийни разходи. |
Гъвкавостта на SPI и високите скорости на трансфер на данни го правят идеален за различни приложения в индустриите, от сензорни мрежи до автомобилна електроника.Ето по -отблизо разглеждане как SPI се използва в различни сектори:
Фигура 9: Сензорни мрежи
SPI се установява в сензорни мрежи, особено в интензивни данни като метеорологични станции.Той дава възможност за бърз и ефективен обмен на данни между микроконтролери и сензори, които наблюдават температурата, влажността и атмосферното налягане, което позволява събиране и обработка на данни в реално време.
Фигура 10: устройства за памет
При съхранението на памет SPI се използва широко с флаш памет и EEPROM.Той поддържа високоскоростни четения на данни и пише, което позволява на вградените системи да извършват ефективни операции за съхранение на данни, което е динамично за приложения, изискващи чести актуализации на данни или извличане.
Фигура 11: Показване на модули
Технологии за показване като LCD и OLED панели използват SPI за получаване на данни от микроконтролер.Това позволява динамично актуализиране на съдържанието на дисплея, което е необходимо за устройства, които изискват взаимодействие на потребителите и визуална обратна връзка, като цифрови часовници, MP3 плейъри и интелигентни носими.
Фигура 12: Комуникационни модули
SPI подобрява комуникационните модули като Wi-Fi, Bluetooth и RF приемо-предаватели.Той дава възможност на тези устройства да обработват сложни потоци от данни, необходими за установяване и поддържане на безжични комуникационни връзки, които са неразделна част от съвременните взаимосвързани устройства.
Фигура 13: Контрол на двигателя
В приложенията за управление на двигателя SPI комуникира с двигателя на двигателя, за да регулира параметрите като скорост и посока.Това е важно за роботиката, индустриалната автоматизация и системите за превозни средства, където прецизният двигател контролиращо влияе пряко върху производителността и надеждността.
Фигура 14: Аудио интерфейси
За цифрови аудио системи SPI свързва микроконтролерите с аудио кодеци или цифрови до аналози преобразуватели (DACS), осигурявайки безпроблемно цифрово аудио предаване.
Фигура 15: Системи за индустриален контрол
SPI поддържа системите за промишлено управление чрез свързване на програмируеми логически контролери (PLCs) със сензори и задвижващи механизми.Това е динамично за мониторинг и контрол на индустриалните процеси в реално време, повишаване на оперативната ефективност и безопасност.
Фигура 16: Системи за събиране на данни
В системите за събиране на данни SPI интерфейси с аналогови-дигитални преобразуватели (ADCs) и цифрово-аналогови преобразуватели (DACS) за прецизно преобразуване на сигнала.Това е полезно за приложения, които изискват прецизно наблюдение и контрол на физическите процеси чрез цифрови системи.
Фигура 17: Автомобилна електроника
В автомобилните технологии SPI дава възможност за комуникация между микроконтролери и различни подсистеми за автомобили, включително сензори, задвижващи механизми и електронни контролни единици (ECU).Тази интеграция е необходима за управление на функции на двигателя, диагностика и информационни системи, допринасяйки за цялостната безопасност и функционалност на съвременните превозни средства.
Фигура 18: Вградени системи
Простотата и ефективността на SPI го правят идеален за вградени системи, където пространството и ефективността на мощността често са ограничения.Способността му да взаимодейства безпроблемно с различни периферни устройства поддържа широкото му използване в вградени приложения в множество индустрии.
За да се каже накратко, протоколът на серийния периферен интерфейс (SPI) се откроява като необходим инструмент в електронната и изчислителната индустрия, задвижван от високоскоростните си възможности за трансфер на данни и гъвкави опции за конфигуриране.От прости сензорни мрежи до сложни задачи за памет и комуникация, архитектурата на SPI се грижи за широк спектър от приложения, което го прави предпочитан избор за дизайнери, които търсят ефективни, мащабируеми и надеждни решения за комуникация на данни.Въпреки че е изправен пред предизвикателства като повишени изисквания за линия на сигналната линия и необходимостта от прецизни комуникации, контролирани от главно, предимствата на SPI, включително неговата простота в хардуерните изисквания и способността за ефективно управление на множество периферни устройства, значително надвишават тези ограничения.Тъй като електронните устройства продължават да се развиват към по -голяма сложност и по -високи изисквания за производителност, ролята на SPI е готова да се разшири, като допълнително се вгражда като опасен компонент в разработването на иновативни технологични решения в индустриите.Продължаващите подобрения в SPI конфигурациите, като Quad IO режим, подчертават адаптивността на протокола и потенциала да посрещне бъдещите технологични предизвикателства, като гарантират нейната постоянна релевантност и полезност при усъвършенстване на рамките на цифровата комуникация.
SPI протоколът работи в четири режима, които се отличават по настройките на полярността им на часовника (CPOL) и фазата на часовника (CPHA):
Режим 0 (CPOL = 0, CPHA = 0): Часовникът на празен ход на ниско и данните се улавят на нарастващия ръб на часовника и се разпространяват на падащия ръб.
Режим 1 (CPOL = 0, CPHA = 1): Часовникът на празен ход на ниско, но данните се улавят на падащия ръб и се разпространяват на ръба на издигането.
Режим 2 (CPOL = 1, CPHA = 0): Часовникът на празен ход на високо, като данните са заснети на падащия ръб и се разпространяват на ръба на издигането.
Режим 3 (CPOL = 1, CPHA = 1): Часовникът на празен ход на високо и данните се улавят на нарастващия ръб и се разпространяват на падащия ръб.
SPI интерфейсът обикновено се състои от четири основни линии:
Овладейте роб в (MOSI): Линията, използвана от главното устройство за изпращане на данни до роба.
Учителю в роб (мисо): Линията, над която робът изпраща данни обратно на Учителя.
Clock (SCK): Контролиран от главния, този ред синхронизира предаването на данни.
Slave Select (SS): Този ред, задвижван от главния, избира активното подчинено устройство.
Основната разлика между серийната комуникация (като UART) и SPI е в тяхната конфигурация и сложност.Серийната комуникация обикновено използва два проводника (предаване и получаване) и не изисква линия на часовника, тъй като синхронизацията на данни е вградена в потока от данни.За разлика от тях, SPI е структура, наподобяваща шина, с отделна линия на часовника (SCK) и различни линии за данни за изпращане и получаване (MOSI и MISO).Това прави SPI по -бързо, но изисква повече линии и внимателно управление на подчинените устройства с линията SS.
SPI комуникация използва четири проводника:
Mosi (овладейте роб в)
Мисо (майстор в роб)
SCK (сериен часовник)
SS (Slave Select)
За да свържете SPI устройства, следвайте тези стъпки:
Свържете MOSI на Учителя с Mosi на всеки роб.
Свържете мисото на господаря към мисото на всеки роб.
Свържете SCK на Учителя към SCK на всеки роб.
SS Pin на всеки подчинен трябва да бъде индивидуално свързан към уникален SS изход на главния.
Наземните линии трябва да са често срещани сред всички устройства, за да се гарантира целостта на сигнала.
Моля, изпратете запитване, ние ще отговорим незабавно.
на 2024/06/22
на 2024/06/20
на 1970/01/1 2937
на 1970/01/1 2501
на 1970/01/1 2089
на 0400/11/9 1893
на 1970/01/1 1763
на 1970/01/1 1713
на 1970/01/1 1655
на 1970/01/1 1553
на 1970/01/1 1538
на 1970/01/1 1512