亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

標題: IIC協議及STM32中IIC初始化結構體 [打印本頁]

作者: sane    時間: 2019-11-24 10:38
標題: IIC協議及STM32中IIC初始化結構體
IIC協議
分為   物理層(硬件)和協議層(軟件)   同步串行通訊方式
物理層(硬件):兩根總線 SDA(數據線)   SCL(時鐘線)
               每一個連接到總線的設備都有一個獨立的地址(7——10位),主機利用這個地址進行不同設備之間的通訊。
               上拉電阻一般接4.7K   實現高阻態  線與
               當設備空閑時,輸出高阻態。   高阻態表示邏輯1  地表示邏輯0
               電壓為:2-15v
               STM32使用時引腳配置為開漏輸出模式
               三種傳輸模式:標準模式  傳輸速率100kbps
                            快速模式  傳輸速率400kbps
                            高速模式  傳輸速率3.4mbps  但目前大多IIC設備不支持
                            只要滿足設備傳輸要求  可根據具體情況設置傳輸速率
                連接到總線的電容不能超過400pf限制。
協議層(軟件):起始和停止信號、數據有效性、響應、仲裁、時鐘同步和地址廣播的等
               主機寫從機讀信號傳輸過程:
                   起始信號  從機地址  讀寫方向R/nW(主機1讀0寫) 從機產生應答信號給主機   數據傳輸   從機產生應答信號  數據傳輸  判斷是否應答(應答則繼續傳輸數據非應答則停止傳輸) 主機發出停止信號
               主機讀從機寫信號傳輸過程:
                   起始信號  從機地址  讀寫方向R/nW(主機1讀0寫) 從機產生應答信號給主機   數據傳輸   主機產生應答信號  數據傳輸  判斷是否應答(應答則繼續傳輸數據非應答則停止傳輸) 主機發出停止信號
               復用信號傳輸數據,兩個起始信號,第一個發送要讀寫寄存器的地址,第二個發送要讀寫的數據
               當SCL為高電平時SDA線從高電平向低電平切換表示通訊起始
               當SCL為高電平時SDA線從低電平向高電平切換表示通訊結束
               SCL的每個時鐘周期傳輸一位數據,SCL高電平SDA數據有效,SCL低電平數據無效,此時SDA數據交換。
軟件模擬協議    硬件實現協議
1、初始化IIC相關的GPIO
2、配置IIC外設的工作模式
3、編寫IIC寫入EEPROM的BYTE write函數
4、編寫IIC讀取EEPROM的RANDOM read函數
5、使用page write 及set read函數并校驗
//IIC初始化結構體
typedef struct
{
  uint32_t I2C_ClockSpeed;          /*設置SCL時鐘頻率,此值要低于400000*/

  uint16_t I2C_Mode;                /*指定工作模式,可選IIC和SMBUS模式 */

  uint16_t I2C_DutyCycle;           /*指定時鐘占空比,可選low/hign = 2:1及16:9模式*/

  uint16_t I2C_OwnAddress1;         /*指定IIC設備地址*/

  uint16_t I2C_Ack;                 /*使能或關閉響應(一般都要使能)*/

  uint16_t I2C_AcknowledgedAddress; /*指定地址長度,可為7為及10為 */
}I2C_InitTypeDef;


//IO口作為輸出方式時,IO口的IDR寄存器有數據





歡迎光臨 (http://www.denmoz.com/bbs/) Powered by Discuz! X3.1