How SPI & I2C Work - Communication Protocols | Embedded Systems Explained

Поділитися
Вставка
  • Опубліковано 26 гру 2024

КОМЕНТАРІ • 68

  • @TheFabytm
    @TheFabytm  4 роки тому +3

    What subject in the field of Embedded Systems are you interested in learning about next? :)
    How To Learn Embedded Systems Playlist: ua-cam.com/play/PLeAb9_hv082weQ10WcvFfLBlNcCYXlQ4q.html

  • @johnbabrick
    @johnbabrick Рік тому +3

    Very very helpful as I cram for a job interview to remind me of stuff I haven't used in many years. Very much appreciated.

    • @TheFabytm
      @TheFabytm  Рік тому

      Awesome, I’m glad you found it useful! Hope you did good on the interview!

  • @kevin2706
    @kevin2706 3 роки тому +2

    this channel is gold

  • @rostkgb
    @rostkgb 3 роки тому +5

    Good video. However, I am still sticking to master-slave notations

  • @ultimateaquatics9114
    @ultimateaquatics9114 2 роки тому +2

    Great job dude.
    Best series for embedded systems beginners.
    Keep up the good work 👏

    • @TheFabytm
      @TheFabytm  2 роки тому +1

      Thanks ! I’m really glad you enjoyed it! 😁

  • @jh-lp7cg
    @jh-lp7cg 3 роки тому +4

    Wait, they changed names why? Not sure what politics has to do with SPI and I2C?

    • @DAAI741
      @DAAI741 2 роки тому

      what's political about it

  • @sreramvempati8881
    @sreramvempati8881 4 роки тому +3

    Bro explanation superb but we want practical approach please make a video how spi , i2c, Uart works with different types of devices using hardware that will be really helpful

    • @TheFabytm
      @TheFabytm  4 роки тому +2

      The current plan is to first explain the theory behind the most important peripherals and then to create a project-course where everyone can follow and upload their progress!

  • @sho7-x3y
    @sho7-x3y Місяць тому

    Hello, thank you so much for the video ! It is great help for a beginner in Embedded System to clearly understand what is going on.
    I just have a question regarding the explanation you're giving at 3:00 : "when a controller send data to a peripheral, the peripheral needs to send data back at the same time" but you quickly follow by saying that the controller can send a little more clock signal in order to let the peripheral gather data and send them back.
    So do the peripheral needs to send data at the same or not ?
    I'm a little confused....

  • @MrBumbottum
    @MrBumbottum 4 роки тому +3

    Thanks for the video! Really good overview of the two protocols.

    • @TheFabytm
      @TheFabytm  4 роки тому

      I’m glad you found this informative! Stay tuned for more!

  • @MeghanaRPrakash
    @MeghanaRPrakash Рік тому

    Great explanation!!! When are you uploading videos of practical working of these?

  • @ViratKohli18_Lovers
    @ViratKohli18_Lovers 4 роки тому +2

    Please explain CAN, LIN, and flexray protocol

    • @TheFabytm
      @TheFabytm  4 роки тому

      CAN is coming up this Sunday, possibly also LIN!

  • @i-chunhuang8413
    @i-chunhuang8413 7 місяців тому

    Very clear and informative. Thanks so much for this video!

  • @AlexRyan
    @AlexRyan 4 роки тому +7

    These are very high quality and high value velocity videos and I very much appreciate the value offering.
    One suggestion to make them even better would be to start with a real world concrete example of how the technology being discussed is actually used. e.g. Where is SPI used?
    Why does it solve this problem better than other alternatives?
    Where is I2C used?
    Why does it solve this problem better than other alternatives?
    Going from the concrete to the abstract is very helpful for orienting a discussion.
    Even more helpful would be telling the story of why the technology was actually invented.
    i.e. What problem was the inventor trying to solve?
    Why were the other tools available at the time inadequate?
    How did this technology meet the need better than the alternatives?
    This information can be helpful not only in orienting for understanding, but also for motivating the student because it will be easier to imagine situations in which having this skill would be useful.
    This, in turn, would make it easier to choose a project to explore the development of the skill.

    • @TheFabytm
      @TheFabytm  4 роки тому

      Thank you so much for the advice, it’s great to hear from viewers what can be improved!
      I didn’t think of this idea but as you said, it goes really well with the current format, so going forward, I’ll include this information before going into the specifics of the topic I am talking about.

  • @emmanuelnoguez8212
    @emmanuelnoguez8212 4 роки тому +1

    Excellent video! and
    simply explained

    • @TheFabytm
      @TheFabytm  4 роки тому

      Thank you! More videos are on the way!

  • @vanessaingrid7582
    @vanessaingrid7582 3 роки тому +1

    @TheFabytm. Thanks for the detailed explanation. Please could you make a video on AXI interface?

    • @TheFabytm
      @TheFabytm  3 роки тому

      Unfortunately I’m not familiar with that Interface as I never used it.

  • @grantscott1686
    @grantscott1686 3 роки тому +1

    Great video! Been struggling to understand these two interface types and I think this helped a lot

    • @TheFabytm
      @TheFabytm  3 роки тому

      Thanks! I’m glad this helped you!

  • @specialrelativity8222
    @specialrelativity8222 Рік тому +1

    my two devices are not working simultaneously with spi.
    when i connect miso to both devices it doesn't work.
    any help??

    • @TheFabytm
      @TheFabytm  Рік тому

      Do you have separate chip select lines? If you do, are you activating them properly?

  • @deniselectron9424
    @deniselectron9424 4 роки тому +1

    great video, I'm following this serie. Good job

    • @TheFabytm
      @TheFabytm  4 роки тому

      Thank you, I’ll keep the videos coming!

  • @vasanth0x55tube
    @vasanth0x55tube 4 роки тому +6

    I3C is coming to replace both.

    • @DJPhilTBCollins
      @DJPhilTBCollins 4 роки тому +1

      Whoa, had no idea this was a thing. Thank you.

    • @TheFabytm
      @TheFabytm  4 роки тому +2

      You’re right, though it will take a bit until that point.

  • @nirupamajana6343
    @nirupamajana6343 4 роки тому +1

    Do you know to use code composer studio? Please show a demo on Adc using graphs in code composer studio. If possible please show a demo on Fft of a signal in code composer atudio

    • @TheFabytm
      @TheFabytm  4 роки тому

      I’ve use CCS but not the features you mentioned. Is there any way I could help you directly? I still have a bunch of topics lined up and this is a bit too specific for a video (perhaps a full CCS guide but that is still a long way out).

  • @Monotoba
    @Monotoba Рік тому

    It would have been nice if you had also covered device addressing for each bus type, otherwise you did a great job!

  • @vishnukumartr4356
    @vishnukumartr4356 4 роки тому +1

    Simply Explained🤩❤🥳

    • @TheFabytm
      @TheFabytm  4 роки тому

      Thank you! Check out the other videos in the series too, you might find them useful!

    • @vishnukumartr4356
      @vishnukumartr4356 4 роки тому

      @@TheFabytm Definitely Brother.

  • @sebastianospina4599
    @sebastianospina4599 4 роки тому +1

    Awesome video!! Thank you very much for doing this! BTW, I would like to propose the Knight/Padawan nomenclature

    • @TheFabytm
      @TheFabytm  4 роки тому

      Thanks!😁 that sounds like a good replacement for the current nomenclature:))

  • @bhanusashankreddy5013
    @bhanusashankreddy5013 3 роки тому +1

    Can u clearly explain why uart cant achieve speed as much as i2c why?

    • @TheFabytm
      @TheFabytm  3 роки тому

      Having no clock line means that there has to be a very accurate oscillator on both sides (otherwise, the receiver wouldn’t know when one bit ends and the next one starts). This limits the communication frequency, compared to I2C, which uses a dedicated clock line between the 2 partners communicating.

  • @Jonas_Meyer
    @Jonas_Meyer 4 роки тому +5

    Didn't know about the name changes of I2C/SPI. I will try remember them the next time im using spi or i2c. Btw great series hope you continoue with it.

    • @TheFabytm
      @TheFabytm  4 роки тому +2

      Yes, it happened recently! Stay tuned, there will be more videos on this series for sure!

    • @ulfrinn8783
      @ulfrinn8783 3 роки тому +6

      Nothing wrong with the old names, so don't worry about it too much.

    • @4144758
      @4144758 3 роки тому +4

      Use the old names in an interview or always lol. Engineers aren't woke

    • @DAAI741
      @DAAI741 2 роки тому

      @@4144758 nothing woke about using a better name

    • @4144758
      @4144758 2 роки тому +1

      @@DAAI741 master slave is clear and definite and causes none confusion

  • @Username-yv9pc
    @Username-yv9pc 3 роки тому +6

    Just name it master/slave, no need to call it differently when everyone uses master/slave. It makes it confusing. But good video btw

    • @DAAI741
      @DAAI741 2 роки тому +1

      controller/peripheral is pretty unambiguous. As that's language that has been used in various network topologies for a long time.

    • @4144758
      @4144758 2 роки тому +2

      @@DAAI741 peripheral is not as clear as slave in denoting the subservient relationship. Peripherals are also a class of input output devices to any computer hence confusion. A mouse is a peripheral but certainly not a slave to the computer

    • @DAAI741
      @DAAI741 2 роки тому

      @@4144758 Computer peripherals are called so because they serve the same role in the network as any other peripheral. We don't call them slave devices not because they're technically not, but because it's just weird to use slavery as your analogy for nodes on a network. All it's meant to describe is hierarchy. Parent/child, Leader/follower, hell, even Boss/laborer provide perfectly adequate metaphors that don't call back to violent subjugation of people. But why use a metaphor at all? Just call it as it is: a controller, and a peripheral

    • @4144758
      @4144758 2 роки тому

      @@DAAI741 no reason to muddy language just to fit your political agenda imo. Slavery around the world is usually total control and subjugation. Much unlike laborer, employee, child, or peripheral. Do what you want. I'm libertarian I don't care. This don't matter but the meddling in our schools etc does. It will unfortunately come to a head soon though and explode. Peaceful divorce God willing.

    • @DAAI741
      @DAAI741 2 роки тому

      @@4144758 How is a mouse not a slave to a computer? The computer, as the host, controls and mediates the communication. The data obtained by the mouse is processed by, and only useful to the computer.

  • @KevinJohnMulligan
    @KevinJohnMulligan 4 роки тому +1

    Major name changes that he mentioned
    Old name | New name
    ==================
    Master | Controller
    Slave | Peripheral
    SPI only
    ==================
    Slave select | Chip select

  • @lowrezable
    @lowrezable 6 місяців тому

    Peace bro ! Thank you so much !