What is SPI? Basics for beginners!

  Рет қаралды 158,056

nandland

nandland

Күн бұрын

NEW! Buy my book, the best FPGA book for beginners: nandland.com/book-getting-sta...
SPI stands for Serial Peripheral Interface. It's a very common communication interface used on Microcontrollers and FPGAs. This video shows the basics of SPI including Clk, MOSI, MISO, and SS lines, and how each of them function.
Support my Patreon to keep me making great content! / nandland
Also get yourself an FPGA board, The Go Board, so you can try this out with a real FPGA!
www.nandland.com/goboard/intr...

Пікірлер: 82
@Intothefirenow
@Intothefirenow 2 жыл бұрын
MISO happy that you posted these chill informational videos. I like learning the basics through chill videos like these because it's not as intimidating as an in-depth textbook.
@pilover314159
@pilover314159 4 жыл бұрын
To you an all those who make educational content on youtube. Thank you for changing my life :)
@geoffwade8144
@geoffwade8144 3 жыл бұрын
You’re very smart, not because of what you know, but how clearly you can explain it. Thank you.
@joshhaughton1893
@joshhaughton1893 2 жыл бұрын
Excellent video. Covers a lot of high level information on the different types as well as pros and cons of each. Much appreciated.
@abdelrahmanyasser5720
@abdelrahmanyasser5720 4 жыл бұрын
it's very cool that you mention other interface protocols in the video really great the comparing between them ... best video ever about this topic
@JacklapottTv
@JacklapottTv 5 жыл бұрын
Yessssss, i was about to ask for a video about spi :D
@djredrover
@djredrover 2 жыл бұрын
Hey man, these tutorials are absolutely awesome as I am preparing for my ASIC SoC interview. I appreciate you. Btw, you should put a limiter or a a heavy compressor on your audio channel to get rid of that reoccurring tick sound throughout your videos. Cheers.
@10e999
@10e999 5 жыл бұрын
excellent. Of course, great SPI tutorial already exist on KZfaq, but they are targeted at firmware engineer, not FPGA engineer. I'm looking forward for the next episode.
@parthmaheshwari3673
@parthmaheshwari3673 Жыл бұрын
Excellent, so clear and concise!
@TurbineResearch
@TurbineResearch 3 жыл бұрын
Thank you . Very clean explanation
@MuhammadShahzad-dx5je
@MuhammadShahzad-dx5je 3 жыл бұрын
Thank you so much for such nice and simple explanation sir!
@mohameda.belakhoua9662
@mohameda.belakhoua9662 2 жыл бұрын
Your videos are great. Thank you!
@fpgamachine
@fpgamachine 2 жыл бұрын
Excellent video, thanks!
@MrDangerousBOB
@MrDangerousBOB Жыл бұрын
Thanks for the explaination! Just started as an embedded engineer and needed a quick refresher after reading our projects whitepaper (;
@carriersignal
@carriersignal 2 жыл бұрын
Thank you so much. This is a great video!
@724albert
@724albert 4 жыл бұрын
Thank you, very well explained
@paulmichael3694
@paulmichael3694 10 ай бұрын
Great video! Thank you!
@webtrafficking
@webtrafficking 2 жыл бұрын
pretty clear concept, thanks~
@nikhilbagde8354
@nikhilbagde8354 2 жыл бұрын
love your content brooo thanks soo much it is will always help
@learningexploration4608
@learningexploration4608 4 жыл бұрын
Super, good presentation
@khalidaboushhiwa
@khalidaboushhiwa Жыл бұрын
Thanks very much! clear and concise
@julles79
@julles79 4 жыл бұрын
Great explanation, please do one about I3C. Thanks!
@ahmadabdel9114
@ahmadabdel9114 Жыл бұрын
thank you for the video.
@freeelectron8261
@freeelectron8261 3 жыл бұрын
You sir have a gift for clear explanation! Can you write an FPGA eBook and do more advanced FPGA tutorials using different Pmod boards. Thanks for all your hard work creating these tutorials.
@Jarrod_C
@Jarrod_C 4 жыл бұрын
Thank you! I wish you had explained those 4 variants more into detail. I havent watched your future videos so maybe you explain it later.
@CMBoydon
@CMBoydon 5 жыл бұрын
He is alive!
@erbkgupta8679
@erbkgupta8679 4 жыл бұрын
Love THis!
@josephc6308
@josephc6308 5 жыл бұрын
Good job. May I ask for a video about DDR
@bhavanisana2256
@bhavanisana2256 4 жыл бұрын
Nice video
@coolwinder
@coolwinder 5 жыл бұрын
Keep up! :)
@BDCPT-amPhiHoang
@BDCPT-amPhiHoang 4 жыл бұрын
Hi nandland, i think your video is great. But can you explain why SPI have to split into 4 modes, like why do they have CPOL, CPHA?
@jiachenghao1074
@jiachenghao1074 3 жыл бұрын
how to configure the FPGA starting with qspi . Could you make a vedio to show where is the QSPI keycap,and how to find it in the board userguide. thank you.
@MaikonNascimentoEng
@MaikonNascimentoEng 5 жыл бұрын
Have u done anything with dynamic quantization ?
@i_am_ironman3380
@i_am_ironman3380 8 ай бұрын
Master Of Puppets lyrics © Creeping Death Music End of passion play, crumbling away I'm your source of self-destruction Veins that pump with fear, sucking darkest clear Leading on your death's construction Taste me, you will see More is all you need Dedicated to How I'm killing you Come crawling faster Obey your master Your life burns faster Obey your master, master Master of puppets, I'm pulling your strings Twisting your mind and smashing your dreams Blinded by me, you can't see a thing Just call my name, 'cause I'll hear you scream Master, master Just call my name, 'cause I'll hear you scream Master, master Needlework the way, never you betray Life of death becoming clearer Pain monopoly, ritual misery Chop your breakfast on a mirror Taste me, you will see More is all you need Dedicated to How I'm killing you Come crawling faster Obey your master Your life burns faster Obey your master, master Master of puppets, I'm pulling your strings Twisting your mind and smashing your dreams Blinded by me, you can't see a thing Just call my name, 'cause I'll hear you scream Master, master Just call my name, 'cause I'll hear you scream Master, master (master) Where's the dreams that I've been after? (Master, master) You promised only lies (Laughter, laughter) All I hear or see is laughter (Laughter, laughter) Laughing at my cries Fix me! Hell is worth all that, natural habitat Just a rhyme without a reason Never-ending maze, drift on numbered days Now your life is out of season I will occupy I will help you die I will run through you Now I rule you too Come crawling faster Obey your master Your life burns faster Obey your master, master Master of puppets, I'm pulling your strings Twisting your mind and smashing your dreams Blinded by me, you can't see a thing Just call my name, 'cause I'll hear you scream Master, master Just call my name, 'cause I'll hear you scream Master, master Source: Musixmatch Songwriters: James Alan Hetfield / Lars Ulrich / Kirk L. Hammett / Clifford Lee Burton Master Of Puppets lyrics © Creeping Death Music
@jumbo999614
@jumbo999614 4 жыл бұрын
Hi, I'm new to Arduino. I'm really confused about the different between hardware and software SPI. Does hardware SPI mean physically plug jumper wire on pin like mosi,miso, clk, clk, sda, etc. and other ends to Arduino's Input/output pins and no need to define them in the code? And software SPI is just define non existing hardware pins on the code? Right now I'm trying to get my TFT's built-in SD card to work. Both have pins labeled CLK/SCK and CS. How do you wire them? Are those shareable or something? Please help.
@phillipneal8194
@phillipneal8194 5 жыл бұрын
Thanks for the explanation of SPI. Will you have code for sending and receiving and how to sort out the data sent and received ?
@Nandland
@Nandland 5 жыл бұрын
github.com/nandland. Check out spi-master repository. Working on the videos for that now. Subscribe to my patreon www.patreon.com/nandland to get early access!
@sashac7757
@sashac7757 4 жыл бұрын
Thank you o=to much!! TT
@skylarutd
@skylarutd 3 жыл бұрын
Hey, pls can you tell me what happens if we go for multi master multi slave setup
@lakshminarayanaaithal1081
@lakshminarayanaaithal1081 5 жыл бұрын
Please do more videos on these type of interface like usart rs232
@Nandland
@Nandland 5 жыл бұрын
I did UART! kzfaq.info/get/bejne/jM5gfsegvce6l4k.html I will also do I2C eventually...
@anildhanawade9896
@anildhanawade9896 4 жыл бұрын
Why do we have a 4 modes in the SPI communication?
@naveenbodige4685
@naveenbodige4685 4 жыл бұрын
sir can you please send the simple verilog code for SPI
@fmm5322
@fmm5322 7 ай бұрын
I want to read the contents of the register in spi state machine.. I want to send the first address of the register. And read the specified no of bits on miso line.. How to do that in verilog
@zey2012
@zey2012 3 жыл бұрын
You should teach at our uni
@FridayParanormal
@FridayParanormal 3 жыл бұрын
You had to yawn! Other then that, great vid! Very informative good sir. Explains many things I had questions about. Thank you.
@erbilshops3029
@erbilshops3029 2 жыл бұрын
But can i send two functions from master to two slave and make them work together ?
@Jonathan-ru9zl
@Jonathan-ru9zl Жыл бұрын
Hi! How SPI master send to slave data request?
@Robbinsffxi
@Robbinsffxi 3 жыл бұрын
Question: Do the slaves ignore the clock signal when "Slave Select" is not triggered?
@braceyourselvesfortruth2492
@braceyourselvesfortruth2492 2 жыл бұрын
MISO horrrny! I love you long clock time!
@ranjanpal7217
@ranjanpal7217 3 жыл бұрын
Amazing Explanation. I have a query on this topic. In SPI there is no Acknowledgement bit. Can you please elaborate on this. Specifically does it mean that with SPI communication protocol our micro-controller (Raspberry Pi) wont be able to receive data at fixed sampling rate from the ADC (Ex. ADS1015)?
@Nandland
@Nandland 3 жыл бұрын
Sure it can. Have the RPi poll the ADC at whatever frequency you need. DMA is a good option for this if RPi supports over SPI
@ranjanpal7217
@ranjanpal7217 3 жыл бұрын
@@Nandland Thanks a lot the clarification..could plz suggest some links to understand how can I poll my Raspberry Pi with ADC?
@jianhaowu7368
@jianhaowu7368 2 жыл бұрын
4:54 a black box will kill it
@abutaymiyyahlectures
@abutaymiyyahlectures 3 жыл бұрын
anyone knows of any spi lcd interface explanation online, either in video or in text is fine
@jumbo999614
@jumbo999614 4 жыл бұрын
I have TFT LCD and SD card reader. Both use MOSI, MISI, and SCK. But arduino board has 1 pin for each. Can i share them between TFT & SD Card Reader by using column rail on breadboard?
@Nandland
@Nandland 4 жыл бұрын
Maybe. You need to have unique Chip-Selects, also the TFT LCD and SD Card reader need to both communicate using the same SPI Mode.
@mustafaemreyilmaz4180
@mustafaemreyilmaz4180 5 жыл бұрын
it is gonna be a little irrelevant but can we sample at both rising and falling edge ?
@Nandland
@Nandland 5 жыл бұрын
That's not built into any SPI modes. So what you would be doing is sampling just as the data was changing, which would cause metastability issues. Not recommended!
@bun_zees3245
@bun_zees3245 3 жыл бұрын
What about NRF24l01 , it works on SPI , and has a range of upto 1 km
@mattn.8941
@mattn.8941 3 жыл бұрын
What about it? I assume you're referring to the distances he mentioned. He meant the protocol isn't great for transmitting data over wires longer than one meter. Data being transmitted over RF has its own limits.
@BBRR442
@BBRR442 3 жыл бұрын
this guys eyes are intense
@babatundetaiwo2817
@babatundetaiwo2817 2 жыл бұрын
Can I send more than 8 bits on SPI?
@Nandland
@Nandland 2 жыл бұрын
Sure thing. Just send multiple bytes.
@cambo513
@cambo513 3 жыл бұрын
hallo meneer mestdagh
@robbethorrez6625
@robbethorrez6625 3 жыл бұрын
Dag Benji
@SiavashRaveh
@SiavashRaveh 4 жыл бұрын
Hi, you have sold this tutorial on udemy
@stevealemdar9052
@stevealemdar9052 4 жыл бұрын
is there any free lesson on udemy about digital design
@eminakgun4301
@eminakgun4301 5 жыл бұрын
Do what is I2C pls
@reemagulmuhammad8521
@reemagulmuhammad8521 2 жыл бұрын
1. Translate the logic to find the position of the first high in an 8 bit data item into program (Assembly or C language). The data must be read using interrupt driven SPI protocol. The data should be scanned from D7 to D0. Give the results for XX where XX is your Roll No. Table.1 SPI Registers and their bit allocation The vector address for SPI ISR is at 0018 Hex address of ROM Location whereas its Vector Name in WinAVR is SPI_STC_vect Help please.
@hekto_pyc9998
@hekto_pyc9998 5 жыл бұрын
С протоколами я знаком, а вот с плис нет. 👍🇷🇺
@johnfrancis923
@johnfrancis923 4 жыл бұрын
great explanation. but not explaining the modes.
@andrew_kopp
@andrew_kopp Жыл бұрын
Awesome tutorial! You should update the video to also include the new naming convention for SPI pins (SDI/SDO & COPI/CIPO)
@marco43974
@marco43974 Жыл бұрын
This "new" naming convention unofficial and confusing and should not be used (and will not). Let's keep politics away from SPI.
@poppatang4216
@poppatang4216 2 жыл бұрын
Sidebar: your favorite alternative to master/slave terminology? I like Captain/crew. Saying slave so often just gives me the heebie jeebies
@eldorado3523
@eldorado3523 Жыл бұрын
that's because of the political and social hell your country is in. It conditioned you like pavlov's dog. Words have or lack power depending on the context, it's not the word that should be powerful in of itself, and this is something people are too dumb to realize, instead trying to cushion themselves from everything, which just leads to more sensitivities.
@donepearce
@donepearce 2 жыл бұрын
The MISO MOSI nomenclature is OK, but not perfect. I would rather have seen MOSI SOMI. That keeps the transmitting device first and the receiving device second.
@BBRR442
@BBRR442 3 жыл бұрын
master and slave is racist
@marco43974
@marco43974 Жыл бұрын
In relation to people, devices on the SPI bus do not mind it.
SPI Master in FPGA, Verilog Code Example
12:20
nandland
Рет қаралды 41 М.
What is I2C, Basics for Beginners
18:30
nandland
Рет қаралды 162 М.
3M❤️ #thankyou #shorts
00:16
ウエスP -Mr Uekusa- Wes-P
Рет қаралды 15 МЛН
THE POLICE TAKES ME! feat @PANDAGIRLOFFICIAL #shorts
00:31
PANDA BOI
Рет қаралды 25 МЛН
Nutella bro sis family Challenge 😋
00:31
Mr. Clabik
Рет қаралды 13 МЛН
Мы никогда не были так напуганы!
00:15
Аришнев
Рет қаралды 6 МЛН
Basics of SPI communication | Different modes of SPI communication
8:06
Foolish Engineer
Рет қаралды 96 М.
EEVblog #499 - What is JTAG and Boundary Scan?
28:59
EEVblog
Рет қаралды 464 М.
SPI: The serial peripheral interface
33:00
Ben Eater
Рет қаралды 671 М.
EEVblog #496 - What Is An FPGA?
37:44
EEVblog
Рет қаралды 758 М.
PROTOCOLS: UART - I2C - SPI - Serial communications #001
11:58
Electronoobs
Рет қаралды 1,4 МЛН
SPI (Bit Banging)- IO from Scratch - Part 4
30:04
James Sharman
Рет қаралды 9 М.
Extracting Firmware from Embedded Devices (SPI NOR Flash) ⚡
18:41
Flashback Team
Рет қаралды 556 М.
Serial Peripheral Interface (SPI) Basics
17:42
Intermation
Рет қаралды 42 М.
Игровой Комп с Авито за 4500р
1:00
ЖЕЛЕЗНЫЙ КОРОЛЬ
Рет қаралды 2,3 МЛН
Samsung laughing on iPhone #techbyakram
0:12
Tech by Akram
Рет қаралды 333 М.
تجربة أغرب توصيلة شحن ضد القطع تماما
0:56
صدام العزي
Рет қаралды 53 МЛН
😱Хакер взломал зашифрованный ноутбук.
0:54
Последний Оплот Безопасности
Рет қаралды 742 М.