Мазмұны:
- 1 -қадам: SERIAL VS. ПАРАЛДЫҚ БАЙЛАНЫС
- 2 -қадам:
- 3 -қадам:
- 4 -қадам: SPI БАЙЛАНЫСЫНА КІРІСПЕ
- 5 -қадам:
- 6 -қадам:
- 7 -қадам:
- 8 -қадам: SPI қалай жұмыс істейді
- 9 -қадам:
- 10 -қадам:
- 11 -қадам:
- 12 -қадам:
- 13 -қадам: SPI -дің артықшылықтары мен кемшіліктері
Бейне: SPI БАЙЛАНЫС ПРОТОКОЛЫНЫҢ НЕГІЗДЕРІ: 13 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:26
Микроконтроллерді сенсорға, дисплейге немесе басқа модульге қосқанда, сіз екі құрылғының бір -бірімен қалай сөйлесетіні туралы ойлайсыз ба? Олар нақты не дейді? Олар бір -бірін қалай түсінеді?
Электрондық құрылғылар арасындағы байланыс адамдар арасындағы байланысқа ұқсайды. Екі жақ бір тілде сөйлеуі керек. Электроникада бұл тілдер байланыс хаттамалары деп аталады. Бақытымызға орай, DIY электроникасының көптеген жобаларын жасау кезінде білуіміз керек бірнеше байланыс хаттамалары бар. Бұл мақалалар сериясында біз ең көп таралған үш протоколдың негіздерін талқылаймыз: сериялық перифериялық интерфейс (SPI), интегралды схема (I2C) және әмбебап асинхронды қабылдағыш/таратқыш (UART) арқылы басқарылатын байланыс. Алдымен біз электронды байланыс туралы негізгі түсініктерден бастаймыз, содан кейін SPI қалай жұмыс істейтінін егжей -тегжейлі түсіндіреміз. Келесі мақалада біз UART басқаратын байланысты талқылаймыз, ал үшінші мақалада I2C -ге енеміз. SPI, I2C және UART USB, ethernet, Bluetooth және WiFi сияқты протоколдарға қарағанда біршама баяу, бірақ олар әлдеқайда қарапайым және аппараттық және жүйелік ресурстарды аз пайдаланады. SPI, I2C және UART микроконтроллерлер мен микроконтроллерлер мен сенсорлар арасындағы байланыс үшін өте қолайлы, мұнда үлкен көлемдегі жоғары жылдамдықтағы деректерді беру қажет емес.
1 -қадам: SERIAL VS. ПАРАЛДЫҚ БАЙЛАНЫС
Электрондық құрылғылар бір -бірімен құрылғылар арасындағы физикалық байланысқан сымдар арқылы мәліметтердің биттерін жіберу арқылы сөйлеседі. Бит сөздегі әріпке ұқсайды, 26 әріптен басқа (ағылшын алфавитінде) бит екілік болып табылады және тек 1 немесе 0 болуы мүмкін. Биттер бір құрылғыдан екіншісіне кернеудің тез өзгеруі арқылы беріледі. 5 В жұмыс істейтін жүйеде 0 бит қысқа импульс ретінде 0 В, ал 1 бит 5 В қысқа импульс арқылы беріледі.
Деректердің биттері параллель немесе сериялық түрде берілуі мүмкін. Параллель байланыста деректердің биттері бір уақытта, әрқайсысы бөлек сым арқылы жіберіледі. Келесі диаграмма екілік («01000011)» С «әрпінің параллель берілуін көрсетеді:
2 -қадам:
Сериялық байланыста биттер бір сым арқылы бірінен соң бірі жіберіледі. Келесі диаграммада екілік («01000011)» С «әрпінің сериялық берілуі көрсетілген:
3 -қадам:
4 -қадам: SPI БАЙЛАНЫСЫНА КІРІСПЕ
SPI - бұл көптеген құрылғылар қолданатын ортақ байланыс хаттамасы. Мысалы, SD -карта модульдері, RFID картасын оқу модульдері және 2,4 ГГц сымсыз таратқыш/қабылдағыштар микроконтроллерлермен байланысу үшін SPI пайдаланады.
SPI -дің бірегей артықшылығы - бұл деректерді үзіліссіз беру мүмкіндігі. Биттердің кез келген санын үздіксіз ағынмен жіберуге немесе алуға болады. I2C және UART көмегімен деректер белгілі бір бит санына шектелген пакеттерде жіберіледі. Бастау және тоқтату шарттары әр пакеттің басы мен соңын анықтайды, сондықтан деректер беру кезінде үзіледі. SPI арқылы байланысатын құрылғылар шебер-құлдық қатынаста болады. Мастер - бұл басқарушы құрылғы (әдетте микроконтроллер), ал құл (әдетте сенсор, дисплей немесе жад микросхемасы) шеберден нұсқаулық алады. SPI -дің ең қарапайым конфигурациясы - бұл бір басты, бірыңғай қосалқы жүйе, бірақ бір мастер бірнеше құлды басқара алады (төменде толығырақ).
5 -қадам:
6 -қадам:
MOSI (Master Output/Slave Input) - Мастердің деректерді жіберушіге жіберетін сызығы.
MISO (Master Input/Slave Output) - Негізгі деректерді жіберушіге арналған жол.
SCLK (Clock) - Сағат сигналының сызығы.
SS/CS (Slave Select/Chip Select) - Деректерді жіберетін негізгі қызметшіге арналған жол
7 -қадам:
*Іс жүзінде құлдардың саны жүйенің жүктеме сыйымдылығымен шектеледі, бұл шебердің кернеу деңгейлері арасында дәл ауысу мүмкіндігін төмендетеді.
8 -қадам: SPI қалай жұмыс істейді
СААТ
Сағаттық сигнал мастерден биттердің іріктелуіне дейін мастерден биттердің шығуын синхрондайды. Әр сағаттық циклде бір бит деректер тасымалданады, сондықтан деректерді беру жылдамдығы сағат сигналының жиілігімен анықталады. SPI байланысы әрқашан мастерден басталады, өйткені мастер сағат сигналын конфигурациялайды және жасайды.
Құрылғыларда сағаттық сигнал бар кез келген байланыс протоколы синхронды деп аталады. SPI - синхронды байланыс протоколы. Сағат сигналын пайдаланбайтын асинхронды әдістер де бар. Мысалы, UART байланысында екі жақ мәліметтерді беру жылдамдығы мен уақытын белгілейтін алдын ала конфигурацияланған беру жылдамдығына орнатылады.
SPI -дегі сағаттық сигналды сағат полярлығы мен сағат фазасының қасиеттерін қолдана отырып өзгертуге болады. Бұл екі қасиет биттердің қашан шығарылатынын және олардың іріктелуін анықтау үшін бірге жұмыс істейді. Сағаттың полярлығын шебер циклдің биіктікке шығатын немесе түсетін жиегіндегі биттерді шығаруға мүмкіндік беретін етіп орната алады. Сағат фазасын шығыс пен іріктеу сағат циклінің бірінші жиегінде немесе екінші жиегінде, оның жоғарылауына немесе төмендеуіне қарамай, орнатуға болады.
ҚҰЛДЫ ТАҢДАУ
Мастер құлдың CS/SS желісін төмен кернеу деңгейіне орнату арқылы қай құлмен сөйлескісі келетінін таңдай алады. Бос, берілмейтін күйде құлды таңдау желісі жоғары кернеу деңгейінде сақталады. Мастерде бірнеше CS/SS түйреуіштері болуы мүмкін, бұл бірнеше құлдарды параллель қосуға мүмкіндік береді. Егер тек бір CS/SS түйреуіші болса, онда бірнеше құлдарды мастерге тізбектей жалғауға болады.
КӨП ҚҰЛДАР SPI
бір мастермен және жалғыз қызметшімен жұмыс істеуге орнатуға болады, және оны бір басты басқаратын бірнеше құлмен орнатуға болады. Бірнеше құлдарды шеберге қосудың екі әдісі бар. Егер шеберде бірнеше құлдарды таңдау түйреуіштері болса, онда құлдарды келесідей қатар қосуға болады:
9 -қадам:
10 -қадам:
MOSI және MISO
Мастер деректерді MOSI желісі бойынша біртіндеп жібереді. Мастер жіберген деректерді құл MOSI түйреуішінде алады. Қожайыннан құлға жіберілетін деректер әдетте ең маңызды битпен жіберіледі. Құл сонымен қатар деректерді MISO желісі арқылы серияға қайта жібере алады. Құлдан қожайынға жіберілген деректер әдетте біріншіден ең аз битпен жіберіледі. SPI ДЕРЕКТЕРІН ҚАДАМДАРЫ 1. Мастер сағат сигналын шығарады:
11 -қадам:
Егер бір ғана құл таңдайтын түйреуіш болса, онда құлдарды келесідей тізбектеуге болады:
12 -қадам:
MOSI және MISO
Мастер деректерді MOSI желісі бойынша біртіндеп жібереді. Мастер жіберген деректерді құл MOSI түйреуішінде алады. Қожайыннан құлға жіберілетін деректер әдетте ең маңызды битпен жіберіледі.
Құл сонымен қатар деректерді MISO желісі арқылы серияға қайта жібере алады. Құлдан қожайынға жіберілген деректер әдетте біріншіден ең аз битпен жіберіледі.
SPI ДЕРЕКТЕРІН ҚАДАМДАРЫ
*Ескертпе Суреттер Oboe тізімінде, сіз оңай ажырата аласыз
1. Мастер сағат сигналын шығарады:
2. Мастер SS/CS түйреуішін төмен кернеулі күйге ауыстырады, ол құлды қосады:
3. Мастер деректерді бірте -бірте MOSI желісі бойынша қосымшаға жібереді. Құл биттерді алған кезде оқиды:
4. Егер жауап қажет болса, қосымша деректерді MISO желісі бойынша мастерге бірте -бірте қайтарады. Мастер биттерді алған кезде оқиды:
13 -қадам: SPI -дің артықшылықтары мен кемшіліктері
SPI -ді қолданудың кейбір артықшылықтары мен кемшіліктері бар, және егер әр түрлі байланыс хаттамалары арасында таңдау болса, сіз өзіңіздің жобаңыздың талаптарына сәйкес SPI -ді қашан қолдану керектігін білуіңіз керек:
АРТЫҚШЫЛЫҚТАР
Бастау және тоқтату биттері жоқ, сондықтан деректерді үзіліссіз үздіксіз ағынмен жіберуге болады I2C сияқты күрделі адрестеу жүйесі жоқ I2C -тен жоғары деректерді беру жылдамдығы (екі есе дерлік) бөлек MISO және MOSI желілері, сондықтан деректерді бір уақытта жіберуге және алуға болады. уақыт
КЕМШІЛІКТЕР
Төрт сымды қолданады (I2C және UART екі қолданады) Деректердің сәтті қабылданғаны туралы растау жоқ (I2C -те бар) UART -те паритеттік бит сияқты қатені тексерудің ешқандай түрі тек бір шеберге ғана мүмкіндік береді Бұл мақала сізге жақсы түсінік берді деп үміттенемін. SPI бойынша. UART басқаратын байланыс туралы білу үшін осы серияның екінші бөлімін немесе I2C протоколы талқыланатын үшінші бөлімін жалғастырыңыз.
Егер сізде сұрақтар туындаса, түсініктеме бөлімінде сұраңыз, біз көмектесуге дайынбыз. Және міндетті түрде орындаңыз
Құрметпен: М. Жунайд
Ұсынылған:
Дәнекерлеу беттік элементтері - Дәнекерлеу негіздері: 9 қадам (суреттермен)
Дәнекерлеу беттік элементтері | Дәнекерлеу негіздері: Осы уақытқа дейін менің дәнекерлеу негіздері сериясында мен сізге практиканы бастау үшін дәнекерлеу туралы жеткілікті негіздерді талқыладым. Бұл нұсқаулықта мен талқылайтын нәрсе біршама жетілдірілген, бірақ бұл Surface Mount Compo -ны дәнекерлеудің кейбір негіздері
Кәсіби DSLR протоколының дизайны: 6 қадам
Кәсіби DSLR прототипі: Кәсіби DSLR: бұл бағдарламаның негізгі құралы болып табылады. PLA және Aluminio конструкциялары, 3 моторлы машиналар, джойстик пен ПХД -дің басқа да картотекалары. Қайта
RC5 кітапханасыз қашықтан басқару протоколының декодері: 4 қадам
Кітапханасыз RC5 қашықтан басқару протоколының декодері: rc5 кодын шешпес бұрын алдымен rc5 командасы деген не және оның құрылымы қандай екенін талқылаймыз. негізінен rc5 пәрмені теледидарларда, cd -плеерлерде, d2h, үй кинотеатры жүйелерінде қолданылатын қашықтан басқару пультінде қолданылады, оның ішінде 13 немесе 14 бит бар
Инфрақызыл NEC протоколының кодтаушы және декодтаушы тақтасы: 5 қадам
Инфрақызыл NEC протоколының кодтаушы және декодтаушы тақтасы: NEC IR сигналын қабылдайды және оны сериялық порттан жіберілетін байттарға түрлендіреді. Сериялық беру жылдамдығы екі әдепкі жылдамдықтан таңдалады. Әдепкі пайдалану режимі кадрлық байтпен командалық тізбекті жібереді
Pi бойынша алдын ала* SPI: таңқурай Pi көмегімен SPI 3 осьті акселерометрмен байланыс: 10 қадам
Pi-де алдын ала* SPI: Raspberry Pi көмегімен SPI 3 осьті акселерометрмен байланыс: Raspbian-ды баптау және bcm2835 SPI кітапханасы арқылы SPI құрылғысымен байланысу туралы қадамдық нұсқаулық (бит соқпайды!) Бұл әлі де өте алдын ала … Мен физикалық байланыстың жақсы суреттерін қосуым керек және кейбір ыңғайсыз кодпен жұмыс істеуім керек