What is SPI? Basics for beginners!

  Переглядів 155,168

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.
@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
@pilover314159
@pilover314159 3 роки тому
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.
@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.
@JacklapottTv
@JacklapottTv 5 років тому
Yessssss, i was about to ask for a video about spi :D
@10e999
@10e999 5 років тому
excellent. Of course, great SPI tutorial already exist on UKposts, but they are targeted at firmware engineer, not FPGA engineer. I'm looking forward for the next episode.
@MuhammadShahzad-dx5je
@MuhammadShahzad-dx5je 2 роки тому
Thank you so much for such nice and simple explanation sir!
@paulmichael3694
@paulmichael3694 7 місяців тому
Great video! Thank you!
@TurbineResearch
@TurbineResearch 3 роки тому
Thank you . Very clean explanation
@parthmaheshwari3673
@parthmaheshwari3673 10 місяців тому
Excellent, so clear and concise!
@724albert
@724albert 4 роки тому
Thank you, very well explained
@julles79
@julles79 3 роки тому
Great explanation, please do one about I3C. Thanks!
@mohameda.belakhoua9662
@mohameda.belakhoua9662 2 роки тому
Your videos are great. Thank you!
@learningexploration4608
@learningexploration4608 4 роки тому
Super, good presentation
@fpgamachine
@fpgamachine 2 роки тому
Excellent video, thanks!
@webtrafficking
@webtrafficking 2 роки тому
pretty clear concept, thanks~
@carriersignal
@carriersignal 2 роки тому
Thank you so much. This is a great video!
@MrDangerousBOB
@MrDangerousBOB Рік тому
Thanks for the explaination! Just started as an embedded engineer and needed a quick refresher after reading our projects whitepaper (;
@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.
@khalidaboushhiwa
@khalidaboushhiwa Рік тому
Thanks very much! clear and concise
@nikhilbagde8354
@nikhilbagde8354 2 роки тому
love your content brooo thanks soo much it is will always help
@ahmadabdel9114
@ahmadabdel9114 Рік тому
thank you for the video.
@josephc6308
@josephc6308 5 років тому
Good job. May I ask for a video about DDR
@CMBoydon
@CMBoydon 5 років тому
He is alive!
@erbkgupta8679
@erbkgupta8679 4 роки тому
Love THis!
@bhavanisana2256
@bhavanisana2256 4 роки тому
Nice 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.
@coolwinder
@coolwinder 5 років тому
Keep up! :)
@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!
@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.
@BDCPT-amPhiHoang
@BDCPT-amPhiHoang 3 роки тому
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?
@MaikonNascimentoEng
@MaikonNascimentoEng 5 років тому
Have u done anything with dynamic quantization ?
@lakshminarayanaaithal1081
@lakshminarayanaaithal1081 5 років тому
Please do more videos on these type of interface like usart rs232
@Nandland
@Nandland 5 років тому
I did UART! ukposts.info/have/v-deo/jphhf5qmj5eHyIk.html I will also do I2C eventually...
@sashac7757
@sashac7757 3 роки тому
Thank you o=to much!! TT
@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?
@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.
@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.
@naveenbodige4685
@naveenbodige4685 4 роки тому
sir can you please send the simple verilog code for SPI
@skylarutd
@skylarutd 3 роки тому
Hey, pls can you tell me what happens if we go for multi master multi slave setup
@zey2012
@zey2012 3 роки тому
You should teach at our uni
@anildhanawade9896
@anildhanawade9896 4 роки тому
Why do we have a 4 modes in the SPI communication?
@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.
@braceyourselvesfortruth2492
@braceyourselvesfortruth2492 2 роки тому
MISO horrrny! I love you long clock time!
@fmm5322
@fmm5322 4 місяці тому
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
@Robbinsffxi
@Robbinsffxi 3 роки тому
Question: Do the slaves ignore the clock signal when "Slave Select" is not triggered?
@erbilshops3029
@erbilshops3029 2 роки тому
But can i send two functions from master to two slave and make them work together ?
@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.
@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!
@Jonathan-ru9zl
@Jonathan-ru9zl Рік тому
Hi! How SPI master send to slave data request?
@cambo513
@cambo513 3 роки тому
hallo meneer mestdagh
@robbethorrez6625
@robbethorrez6625 3 роки тому
Dag Benji
@abutaymiyyahlectures
@abutaymiyyahlectures 2 роки тому
anyone knows of any spi lcd interface explanation online, either in video or in text is fine
@BBRR442
@BBRR442 3 роки тому
this guys eyes are intense
@i_am_ironman3380
@i_am_ironman3380 5 місяців тому
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
@babatundetaiwo2817
@babatundetaiwo2817 2 роки тому
Can I send more than 8 bits on SPI?
@Nandland
@Nandland 2 роки тому
Sure thing. Just send multiple bytes.
@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
@jianhaowu7368
@jianhaowu7368 Рік тому
4:54 a black box will kill it
@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.
@hekto_pyc9998
@hekto_pyc9998 5 років тому
С протоколами я знаком, а вот с плис нет. 👍🇷🇺
@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.
@johnfrancis923
@johnfrancis923 4 роки тому
great explanation. but not explaining the modes.
@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.
@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: The serial peripheral interface
33:00
Ben Eater
Переглядів 656 тис.
SPI Master in FPGA, Verilog Code Example
12:20
nandland
Переглядів 40 тис.
Китайка и Хеликоптер😂😆
00:18
KITAYKA
Переглядів 1,1 млн
ТІНА КАРОЛЬ & SHUMEI - СТЕРВА ( ПРЕМ'ЄРА 2024)
03:20
MINHA IRMÃ MALVADA CONTRA O GADGET DE TREM DE DOMINÓ 😡 #ferramenta
00:40
Understanding SPI
11:50
Rohde Schwarz
Переглядів 52 тис.
Basics of UART Communication | UART Frame Structure | RS 232 Basics | Part1
10:27
I2C and SPI on a PCB Explained!
15:34
Altium Academy
Переглядів 131 тис.
PROTOCOLS: UART - I2C - SPI - Serial communications #001
11:58
Electronoobs
Переглядів 1,3 млн
Understanding I2C
10:58
Rohde Schwarz
Переглядів 48 тис.
Basics of SPI communication | Different modes of SPI communication
8:06
Foolish Engineer
Переглядів 88 тис.
The Cheapest Microcontroller? Getting started with the 10 cent Puya PY32.
21:36
EEVblog #499 - What is JTAG and Boundary Scan?
28:59
EEVblog
Переглядів 455 тис.
If you do wire soldering with paste, soldering can be done very easily
0:26
Tech Electronics BD
Переглядів 2,3 млн
Как должен стоять ПК?
1:00
CompShop Shorts
Переглядів 294 тис.
Секретная функция ютуба 😱🐍 #shorts
0:14
Владислав Шудейко
Переглядів 827 тис.
iphone X Convert To Iphone 11Pro #iphonex #iphone11pro #shorts
0:13
Technical Mobile
Переглядів 5 млн