Understanding I2C

  Переглядів 51,666

Rohde Schwarz

Rohde Schwarz

День тому

This video provides a brief technical overview of the I2C protocol and how it is used to transfer digital information.
Learn more about Rohde & Schwarz Oscilloscopes: rsna.us/6058gzlvA
Timeline:
00:00 Introduction
00:14 About I2C
01:00 Basic I2C topology
01:36 Overview of I2C frames
02:10 Start condition
02:51 Slave address
03:36 Aside: timing relationship between SDA and SCL
04:16 Read / write bit
04:51 Ack(knowledge) bit
05:32 Data byte(s)
06:06 Multiple data bytes
06:48 Stop condition
07:28 About “open drain”
08:14 Pull up resistor values
08:56 Modes / speeds
09:54 Summary

КОМЕНТАРІ: 53
@miguelcaldeirinha5316
@miguelcaldeirinha5316 28 днів тому
I am currently doing my master in eletronic Engineering and by far this is the best explanation i have found in the internet, very complete and easy to understand. Congrats
@ahmadjaradat3011
@ahmadjaradat3011 Місяць тому
Thank you! This is the best explanation I've found in YT.
@pauldenisowski
@pauldenisowski Місяць тому
Thanks - glad it was helpful! I have another serial protocol video coming in a few weeks
@sawekky2392
@sawekky2392 5 годин тому
I love this explanation. Thank you!
@salarbasiri5959
@salarbasiri5959 7 місяців тому
This is by far the best explaination
@pauldenisowski
@pauldenisowski 7 місяців тому
Thank you!
@Annie_EE
@Annie_EE Рік тому
This video saved me so much time - just the information I needed. Please make more!!!
@pauldenisowski
@pauldenisowski Рік тому
Thank you! There are already videos on UART and SPI, and some videos on automotive protocols are currently under development as well.
@andychess
@andychess 3 місяці тому
Super video. Just the right length and depth of content. Thank you!
@pauldenisowski
@pauldenisowski 3 місяці тому
Thank you!
@hklausen
@hklausen 9 місяців тому
Good presentation. It's all very clear.
@pauldenisowski
@pauldenisowski 9 місяців тому
Thanks for the feedback!
@user-ds4mk7nb8q
@user-ds4mk7nb8q 3 дні тому
Great explanation. Thanks!
@mevez3185
@mevez3185 13 днів тому
Excellent work. Thanks for your video
@VIKAS-2003
@VIKAS-2003 3 місяці тому
Best explanation... Thanks!!
@pauldenisowski
@pauldenisowski 2 місяці тому
Thanks you!
@eitantal726
@eitantal726 5 місяців тому
9:52 detail about modes & speed: Clock stretching. If it wants to, during transfer the slave is allowed to hold the clock line low. The master has to wait until the clock line is released. The slave can effectively slow down the speed
@pauldenisowski
@pauldenisowski 5 місяців тому
Yes - I originally had a few slides about clock stretching but took them out in the interest of time / brevity. Thanks!
@eitantal726
@eitantal726 5 місяців тому
7:47 note about open-drain terminology: Drain is actually plus (aka VDD). Source is ground (aka VSS). Open-drain means I can only connect to VSS, but not to VDD. so when he said a "logic that opens and closes a drain", he meant logic that can *open and close a source*.
@pauldenisowski
@pauldenisowski 5 місяців тому
Yes, that’s what I meant :). Thanks!
@mums2109
@mums2109 Місяць тому
Fantastic video!
@pauldenisowski
@pauldenisowski Місяць тому
Thank you!
@souzasilvestre
@souzasilvestre 4 місяці тому
best explanation in the web
@pauldenisowski
@pauldenisowski 3 місяці тому
Thanks!
@kvedavyas2010
@kvedavyas2010 4 місяці тому
Very good explanation.
@pauldenisowski
@pauldenisowski 3 місяці тому
Thanks for watching!
@neelakantannilakantanswami4031
@neelakantannilakantanswami4031 2 місяці тому
Thanks for the Video. This Video was very Useful. Can you post another i2c video Explaining about the Arbitration Process and Clock Stretching Concepts ?
@pauldenisowski
@pauldenisowski Місяць тому
I just had this discussion with someone at work yesterday and will probably do a follow-up deeper dive video later this year
@rodeliohernandez1647
@rodeliohernandez1647 2 місяці тому
Thank you .
@ZirJo
@ZirJo 3 місяці тому
Excellent! Thank you
@pauldenisowski
@pauldenisowski 3 місяці тому
Thanks for watching!
@arunbennett9248
@arunbennett9248 7 місяців тому
Can someone tell me how this ack bit works? As in the video it is set by the receiver. So, the sender send the data and the ack is set by the receiver at the end? If yes how it happens can anyone explain?
@andresbarrera515
@andresbarrera515 7 місяців тому
The sender sends the data, and the receiver responds to the received data with an ACK bit. Once the sender receives the ack bit, it continues sending the next byte, and waits again for the next ACK or NACK.
@kakani7598
@kakani7598 11 місяців тому
Thank you for the excellent video. Could you share your slide?
@pauldenisowski
@pauldenisowski 11 місяців тому
Thanks! We'll be publishing this same information in as a whitepaper / educational note as well.
@7073shea
@7073shea 5 місяців тому
Thank you!
@pauldenisowski
@pauldenisowski 3 місяці тому
Thanks for the feedback!
@kufirre
@kufirre 4 місяці тому
Very good video
@pauldenisowski
@pauldenisowski 3 місяці тому
Appreciate it!
@dylanbaird74
@dylanbaird74 5 місяців тому
dawg🐐🐐🐐🐐
@bramlemmens6984
@bramlemmens6984 3 місяці тому
legend
@pauldenisowski
@pauldenisowski 3 місяці тому
Thanks you for the support!
@ElectroWolf_Arts
@ElectroWolf_Arts 10 місяців тому
im confused , lets take the example of a 16x2 LCD display with I2C module , the LCD have VCC, GND,V0, A and K pins which are the power and light, and there is the D0-D7, RW, RS AND E for typing the characters so how on earth can the I2C deal with the RW , RS and E signals while the 8 bit DATA are occupied for the D0-D7
@shuyuanliu9797
@shuyuanliu9797 8 місяців тому
That's a good question. 16x2 LCDs with the HD44780 controller chip (which is very common) can be configured to use a "4-bit mode" where only D4-D7 are used. In this mode, each data or command byte to the LCD is entered by sending two "half-bytes" in succession. This way D4-D7, RW, RS, E (and backlight control) can fit into 8 bits provided by the I2C I/O expander module. AFAIK, the LCDs with the PCF8574 I2C I/O expander all work this way. Even if this 4-bit mode didn't exist, you could choose a different I/O expander that provides more than 8 outputs. The PCF8574 happens to have only 8 outputs, so it uses the simplest protocol and just expects to be told the state of the 8 pins as a byte from I2C. However, for many other I2C I/O expanders especially those with more than 8 I/O lines, instead of just transferring a "plain" byte like that in each I2C frame, it expects commands telling it which pins to set high/low, which pins to set as inputs/outputs, etc. so that they are not limited to 8 I/O lines. An example of this is the TCA9539, a 16-bit I/O expander.
@ElectroWolf_Arts
@ElectroWolf_Arts 8 місяців тому
@@shuyuanliu9797 thank god ,, sombody gived me a direct answer , its seems like 4 bit mode is the trick here , 00100000 to set that mode and since the D0-D3 are all zeros they can be ignored all the time ,now i can design the logic gate level circuit of that and compile it to FPGA ...... man you are a legend
@qwertz3813
@qwertz3813 11 місяців тому
Is not I2C multimaster?
@pauldenisowski
@pauldenisowski 11 місяців тому
Good question. Yes, I2C allows any node to be the master: whichever node initiates the start condition becomes the master (see slide 5). Many I2C systems are however operated such that only one node is ever the master, but the protocol does allow for multimaster operation.
@robertwatsonbath
@robertwatsonbath Рік тому
Nicely edited to remove the NXT reference. Thank you. You're welcome.
@brahmendrakumarpujala694
@brahmendrakumarpujala694 3 місяці тому
🎯 Key Takeaways for quick navigation: 00:00 🌐 *Overview of I2C Protocol* - Brief introduction to I2C protocol. - I2C developed by Philips in 1982. - Purpose: Short-distance data communication using a synchronous Master-Slave protocol. 01:12 🔄 *I2C Topology and Connection* - I2C topology involves a master connected to slave nodes. - Two shared lines: SDA (Serial Data) and SCL (Serial Clock). - Connection details: Shared pull-up resistors, dynamic addition/removal of devices. 01:40 📡 *I2C Frame Structure* - I2C frames initiated by start conditions. - Master sends slave address and read/write indication. - Frame ends with a stop condition, ensuring bus availability. 03:49 ⏰ *Timing Relationship in I2C* - SDA transitions only during the clock's low phase. - Ensures unambiguous start and stop conditions. - Crucial for preventing contention in data transmission. 05:02 🎭 *Read/Write Bit and Acknowledgment in I2C* - Read/write bit indicates the master's intention. - Acknowledge (ACK) bit confirms proper data reception. - NACK (Negative Acknowledge) signifies lack of acknowledgment. 06:00 📊 *Data Transmission and Byte Handling* - Data sent in 8-bit bytes, MSB first. - Each byte individually acknowledged. - Stop condition indicates the end of the frame. 07:38 🔗 *Role of Pull-Up Resistors in I2C* - Pull-up resistors maintain idle high state. - Open drain system ensures quick pull-down to ground. - Pull-up resistor values affect communication speed. 09:19 🚀 *I2C Bus Speed Modes* - Various modes with corresponding achievable speeds. - High-speed and Ultra-fast modes modify standard I2C behavior. - Practical data rate influenced by pull-up resistors and bus capacitance. 10:01 📝 *Summary of I2C Protocol* - I2C widely used for short-distance data exchange. - Master-slave communication through frames. - Pull-up resistors, open-drain, start/stop sequences are key elements. Made with HARPA AI
@Sdreaasmit
@Sdreaasmit 3 місяці тому
I am New 🤔
@beastcracker117
@beastcracker117 15 днів тому
Best video
@evertonf.dossantos4511
@evertonf.dossantos4511 4 місяці тому
Thank you! This is the best explanation I've found in YT.
@pauldenisowski
@pauldenisowski 3 місяці тому
Thank you - more to come!
Understanding SPMI
13:52
Rohde Schwarz
Переглядів 701
Understanding SPI
11:50
Rohde Schwarz
Переглядів 55 тис.
Surprise Gifts #couplegoals
00:21
Jay & Sharon
Переглядів 26 млн
КАК ГЛОТАЮТ ШПАГУ?😳
00:33
Masomka
Переглядів 2,2 млн
What is I2C, Basics for Beginners
18:30
nandland
Переглядів 158 тис.
Zig Master: Arrays
15:31
Dude the Builder
Переглядів 84
Understanding UART
6:11
Rohde Schwarz
Переглядів 162 тис.
REL #17 Vector and IQ constellation diagrams on an oscilloscope
49:01
Rudi’s Electronics Lab
Переглядів 6 тис.
I2C Part 1 - Using 2 Arduinos
25:51
DroneBot Workshop
Переглядів 398 тис.
CAN Bus: A Beginners Guide Part 1
37:36
Hardwire Electronics
Переглядів 270 тис.
I2C and SPI on a PCB Explained!
15:34
Altium Academy
Переглядів 132 тис.
SPI: The serial peripheral interface
33:00
Ben Eater
Переглядів 658 тис.
Solving I2C Address Conflicts - TCA9548A I2C Multiplexer
24:29
DroneBot Workshop
Переглядів 97 тис.
''Бесплатные умные'' домофоны для глупых людей. За чей счет банкет?
12:48
Вадим Шегалов.Оккультные игры элиты
Переглядів 35 тис.
Subscribe for more!! #procreate #logoanimation #roblox
0:11
Animations by danny
Переглядів 3,9 млн
С Какой Высоты Разобьётся NOKIA3310 ?!😳
0:43