当前位置:网站首页>SPI and IIC communication protocol
SPI and IIC communication protocol
2022-07-05 02:53:00 【NaCl fish wulala】
One 、IIC
3.I2C agreement
I2C There are three status signals : Start signal 、 End signal and answer signal
Start signal :SCL For high voltage ,SDA Jump from high level to low level , Indicates the start of communication .
End signal :SCL For high voltage ,SDA Jump from low level to high level , End communication .
Answer signal : Receiving data IC After receiving a byte of data , Send data to IC To emit a specific low-level pulse , Indicates that data has been received .
In the process of data transmission ,SCL The clock is controlled by the main device ,SCL Read data when it is high SDA The data of ,SCL When it's low , Main equipment changes SDA The data of is ready to be transmitted to the next bit . Data is transmitted from high order , When transmitting 8 Behind you , The master device will release SDA Bus . If the data is received correctly from the device , Then the slave device will be pulled down SDA Bus , Then a reply signal is generated . If the slave device makes an error , Do not lower SDA Bus , Because of the pull-up resistance ,SDA The level of will become high , It is a non reply signal . Data transmission always starts with a start signal , Terminate the transmission with an end signal , Multiple bytes of data can be transmitted in the middle .
Two 、SPI
MOSI: Main device data output , Input data from the device .
SCK: Clock signal , It is controlled by the master .
NSS(CS): Select the signal from the device , Controlled by the main equipment . When NSS For low level, select slave device .
As follows, the master device communicates with multiple slave devices , among SCK,MOSI,MISO It's connected ,NSS Receive different IO Pin control . If the master device wants to communicate with the slave device, first pull down the corresponding slave device NSS Pin enable . Default state IO1,IO2,IO3 All high level , When master and slave devices 1 When communication , Pull it down IO1 Pin enable slave device 1. And slave devices 2,3 Do not enable , No response .
2.SPI Sequence diagram
Every time the transmission starts , The master device first pulls down the chip selection signal line of the slave device NSS, Select the slave device to be transmitted .SCK The clock line transmits one bit of data after sending a clock cycle .MOSI Main out from in , The data is controlled and sent by the main device , Receive from the device .MISO The data of is sent by the slave device , The main device receives . therefore SPI Transmitting a byte is equivalent to exchanging a byte between the master device and the slave device .
SPI There are only master mode and slave mode , There is no saying about reading and writing , Because essentially every time SPI It's the master-slave device exchanging data . in other words , If you send a data, you will receive a data ; If you want to receive a data, you must also send a data first .
According to the clock polarity (CPOL) And phase (CPHA) Different ,SPI There are four working modes .
Clock polarity (CPOL) Defines the clock idle state level :
CPOL=0 Low level when the clock is idle
CPOL=1 High level when the clock is idle
Clock phase (CPHA) Define the data collection time .
CPHA=0: At the first jump edge of the clock ( A rising or falling edge ) Data sampling .
CPHA=1: At the second jump edge of the clock ( A rising or falling edge ) Data sampling .
边栏推荐
- TCP security of network security foundation
- The perfect car for successful people: BMW X7! Superior performance, excellent comfort and safety
- Elk log analysis system
- Scientific research: are women better than men?
- There is a question about whether the parallelism can be set for Flink SQL CDC. If the parallelism is greater than 1, will there be a sequence problem?
- LeetCode 314. Binary tree vertical order traversal - Binary Tree Series Question 6
- Avoid material "minefields"! Play with super high conversion rate
- Pytest (4) - test case execution sequence
- Good documentation
- 【LeetCode】106. Construct binary tree from middle order and post order traversal sequence (wrong question 2)
猜你喜欢
Linux Installation redis
1. Five layer network model
Pytest (5) - assertion
Watch the online press conference of tdengine community heroes and listen to TD hero talk about the legend of developers
College Students' innovation project management system
Apache build web host
8. Commodity management - commodity classification
【LeetCode】98. Verify the binary search tree (2 brushes of wrong questions)
丸子百度小程序详细配置教程,审核通过。
Hmi-31- [motion mode] solve the problem of picture display of music module
随机推荐
There is a question about whether the parallelism can be set for Flink SQL CDC. If the parallelism is greater than 1, will there be a sequence problem?
2021 Li Hongyi machine learning (2): pytorch
【LeetCode】501. Mode in binary search tree (2 wrong questions)
GFS分布式文件系统
Zabbix
Spark SQL learning bullet 2
spoon插入更新oracle数据库,插了一部分提示报错Assertion botch: negative time
this+闭包+作用域 面试题
【LeetCode】404. Sum of left leaves (2 brushes of wrong questions)
TCP security of network security foundation
Sqoop installation
Asp+access campus network goods trading platform
2.常见的请求方法
2021 Li Hongyi machine learning (3): what if neural network training fails
Privatization lightweight continuous integration deployment scheme -- 01 environment configuration (Part 1)
为什么腾讯阿里等互联网大厂诞生的好产品越来越少?
低度酒赛道进入洗牌期,新品牌如何破局三大难题?
[daily problem insight] Li Kou - the 280th weekly match (I really didn't know it could be so simple to solve other people's problems)
tuple and point
Design and implementation of high availability website architecture