Hello guest, if you read this it means you are not registered. Click here to register in a few simple steps, you will enjoy all features of our Forum.
This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Difference between UART and SPI?
#1
Dudes, can anyone tell me what the difference between uart and spi is? I've read all of them internets and I'm still confused Sad
[-] The following 1 user Likes CurryCat's post:
  • Nigels
Reply
Login to remove this ad | Register Here
#2
To be simple: uart is a serial port on your flight controller usually it has 2 or 3 uarts to connect external devices like serial capable Rx, osd, gps or others. SPI is a communication protocol between the FCs main chip and it's other components mainly the gyro, or if it has, the on-board flash chip.
[-] The following 1 user Likes Multirotor Army's post:
  • Nigels
Reply
#3
In a nutshell, both are serial communication protocols, UART is from one device to another, and cannot have more than one device connected to it at a time. TX and RX on each side and TX of one connects to RX of the other and vice versa. SPI is serial peripheral interface, it's used to connect several peripherals to one "master" usually a micro controller in this case your flight controller. There are 4 wires, clock, MOSI, MISO and /CS. MOSI is master output slave input, so from the master to the slave, and MISO is from the slave to the master. /CS is chip select, when this signal is low (0V) then that specific peripheral has control over the bus and any data on the bus is for it and the master alone, it basically tells the other chips to not listen. Clock is used to synchronize the master and slaves. In UART there is no clock wire, so the baud rate (basically correlated to the time between each bit) is predetermined so both sides can decode the serial.
[-] The following 1 user Likes OverDischarged's post:
  • Nigels
Reply


Possibly Related Threads...
Thread Author Replies Views Last Post
  Question: PID in quad, error is difference between what? E.L.K. 5 1,042 11-Sep-2017, 08:02 AM
Last Post: E.L.K.
  Does Betaflight OSD use UART? Charpu5 1 1,626 22-Aug-2017, 10:56 PM
Last Post: Oscar


Login to remove this ad | Register Here