日韩欧美国产亚洲一区-国产一区二区欧美在线观看-国产日韩欧美高清视频在线-国产亚洲精品aaa在线播放-国产视频在线免费观看-国产欧美日韩综合在线视频-国产高清不卡视频在线播放-91最新视频在线观看-欧美日韩国产在线观看一区二区三区-国产欧美一区二区-亚洲国产综合第一页-超碰动漫-高清中文字幕-精品网站999www-欧美日韩国产在线资源-97资源免费视频总站-国产视频一区二区三区在线观看-久久久久成人网-超爱碰在线资源-99中文字幕一区二区-亚洲国产精品成人午夜在线观看-日韩欧美在线观看一区-91日韩欧美在线-国产v亚洲v日韩v欧美v天堂v-亚洲 免费 高清-国产成人91久久精品-五月天婷婷国产精品-国产99视频在线观看-97午夜视频-五月婷婷激情

STM32學(xué)習(xí)之I2C

I2C總線是由NXP(原PHILIPS)公司設(shè)計(jì),有十分簡潔的物理層定義,其特性如下:

  • 只要求兩條總線線路:一條串行數(shù)據(jù)線SDA,一條串行時(shí)鐘線SCL;
  • 每個(gè)連接到總線的器件都可以通過唯一的地址和一直存在的簡單的主機(jī)/從機(jī)關(guān)系軟件設(shè)定地址,主機(jī)可以作為主機(jī)發(fā)送器或主機(jī)接收器;
  • 它是一個(gè)真正的多主機(jī)總線,如果兩個(gè)或更多主機(jī)同時(shí)初始化,數(shù)據(jù)傳輸可以通過沖突檢測(cè)和仲裁防止數(shù)據(jù)被破壞;
  • 串行的8 位雙向數(shù)據(jù)傳輸位速率在標(biāo)準(zhǔn)模式下可達(dá)100kbit/s,快速模式下可達(dá)400kbit/s,高速模式下可達(dá)3.4Mbit/s;
  • 連接到相同總線的IC 數(shù)量只受到總線的最大電容400pF 限制。

其典型的接口連線如下:

STM32學(xué)習(xí)之I2C

 

I2C的協(xié)議很簡單:

 

數(shù)據(jù)的有效性

在傳輸數(shù)據(jù)的時(shí)候,SDA線必須在時(shí)鐘的高電平周期保持穩(wěn)定,SDA的高或低電平狀態(tài)只有在SCL 線的時(shí)鐘信號(hào)是低電平時(shí)才能改變 。

 

起始和停止條件

SCL 線是高電平時(shí),SDA 線從高電平向低電平切換,這個(gè)情況表示起始條件;

SCL 線是高電平時(shí),SDA 線由低電平向高電平切換,這個(gè)情況表示停止條件。

 

字節(jié)格式

發(fā)送到SDA 線上的每個(gè)字節(jié)必須為8 位,每次傳輸可以發(fā)送的字節(jié)數(shù)量不受限制。每個(gè)字節(jié)后必須處理一個(gè)響應(yīng)位。

 

應(yīng)答響應(yīng)

數(shù)據(jù)傳輸必須帶響應(yīng),相關(guān)的響應(yīng)時(shí)鐘脈沖由主機(jī)產(chǎn)生。在響應(yīng)的時(shí)鐘脈沖期間發(fā)送器釋放SDA 線(高)。

在響應(yīng)的時(shí)鐘脈沖期間,接收器必須將SDA 線拉低,使它在這個(gè)時(shí)鐘脈沖的高電平期間保持穩(wěn)定的低電平。

也就是說主器件發(fā)送完一字節(jié)數(shù)據(jù)后要接收一個(gè)應(yīng)答位(低電平),從器件接收完一個(gè)字節(jié)后要發(fā)送一個(gè)低電平。

 

尋址方式(7位地址方式)

 

第一個(gè)字節(jié)的頭7 位組成了從機(jī)地址,最低位(LSB)是第8 位,它決定了傳輸?shù)??普通的和帶重復(fù)開始條件的7位地址格式方向。第一個(gè)字節(jié)的最低位是

“0”,表示主機(jī)會(huì)寫信息到被選中的從機(jī);

“1”表示主機(jī)會(huì)向從機(jī)讀信息。

當(dāng)發(fā)送了一個(gè)地址后,系統(tǒng)中的每個(gè)器件都在起始條件后將頭7 位與它自己的地址比較,如果一樣,器件會(huì)判定它被主機(jī)尋址,至于是從機(jī)接收器還是從機(jī)發(fā)送器,都由R/W 位決定。

 

仲裁

 

I2C是所主機(jī)總線,每個(gè)設(shè)備都可以成為主機(jī),但任一時(shí)刻只能有一個(gè)主機(jī)。

 

stm32至少有一個(gè)I2C接口,提供多主機(jī)功能,可以實(shí)現(xiàn)所有I2C總線的時(shí)序、協(xié)議、仲裁和定時(shí)功能,支持標(biāo)準(zhǔn)和快速傳輸兩種模式,同時(shí)與SMBus 2.0兼容。

 

 

本實(shí)驗(yàn)直接操作寄存器實(shí)現(xiàn)對(duì)I2C總線結(jié)構(gòu)的EEPROM AT24c02的寫入和讀取。AT24c02相關(guān)操作詳見?單片機(jī)讀取EEPROM(AT24C02)。

 

庫函數(shù)實(shí)現(xiàn)使用stm32的兩個(gè)I2C模擬I2C設(shè)備間的數(shù)據(jù)收發(fā),并通過串口查看數(shù)據(jù)交換情況。

 

直接操作寄存器

 

首先需要配置I2C接口的時(shí)鐘,相關(guān)寄存器如下:

 

I2C_CR2寄存器低五位:

FREQ[5:0]:I2C模塊時(shí)鐘頻率 ,必須設(shè)置正確的輸入時(shí)鐘頻率以產(chǎn)生正確的時(shí)序,允許的范圍在2~36MHz之間:

000000:禁用 ??? ? 000001:禁用 ? ? ? 000010:2MHz ??? ? … ??? ? 100100:36MHz ??? ? 大于100100:禁用。

 

用于設(shè)置I2C設(shè)備的輸入時(shí)鐘,本例使用的是PLCK1總線上的時(shí)鐘所以為36Mhz;

 

時(shí)鐘控制寄存器(I2C_CCR)低12位:

CCR[11:0]:快速/標(biāo)準(zhǔn)模式下的時(shí)鐘控制分頻系數(shù)(主模式),該分頻系數(shù)用于設(shè)置主模式下的SCL時(shí)鐘。

在I2C標(biāo)準(zhǔn)模式或SMBus模式下:

Thigh = CCR ×TPCLK1

Tlow = CCR ×TPCLK1

 

時(shí)鐘周期為 T = Thigh + Tlow;

 

例如:在標(biāo)準(zhǔn)模式下,F(xiàn)REQR = 36 即36Mhz,產(chǎn)生200kHz的SCL的頻率

 

時(shí)鐘控制分頻系數(shù) ?= Freqr /2/f ? ?f 為想得到的頻率

 

配置好時(shí)鐘,還需要配置本機(jī)地址,I2C支持7位地址和10位地址,這里用的是7位地址:

自身地址寄存器1(I2C_OAR1)[7:1]:接口地址,地址的7~1位

暫無評(píng)論,快來搶沙發(fā)吧!

發(fā)表評(píng)論

您的電子郵箱地址不會(huì)被公開。 必填項(xiàng)已用 * 標(biāo)記

主站蜘蛛池模板: 永久中文字幕 | 最近中文字幕国语免费高清6 | 国产在线理论片 | 91尤物在线播放 | 99色婷婷 | 久久99精品国产一区二区三区 | 欧美在线观看视频一区二区 | 精品国精品自拍自在线 | 精品国产一区二区三区在线观看 | 久久成熟 | 久久久久久久久久久免费 | 精品夜夜嗨av一区二区三区 | 久久国产福利 | 日韩区视频 | 亚洲国产综合在线 | 久久超| 亚洲一区av | 久草精品在线播放 | 久久精品99国产精品酒店日本 | 黄色动态图xx | 国产一级特黄毛片在线毛片 | 欧洲精品视频一区二区 | 国产精品一区二区三区免费视频 | 三级av黄色| 日韩成人看片 | 青草草在线视频 | 国产手机视频在线播放 | 性色av一区二区三区在线观看 | 日韩av免费大片 | 中文 一区二区 | 97看片吧 | 久久黄色影视 | 激情久久综合 | 99久久99久久精品国产片 | 日韩黄色大片在线观看 | 欧美成人高清 | 亚洲精品国产高清 | 日韩成人免费在线 | 久久综合久久综合这里只有精品 | 久久五月婷婷丁香社区 | 99免费在线播放99久久免费 | 91中文字幕在线播放 | 久久色亚洲 | 亚州av免费 | 69国产精品视频 | 亚洲美女精品区人人人人 | www.成人久久| 久久综合狠狠综合 | 日韩大片在线观看 | 国产专区一 | 91精品在线观看视频 | 欧美另类老妇 | 国内精品久久久久影院日本资源 | 国产视频一区在线播放 | 在线视频日韩精品 | 国产成人精品999在线观看 | 91av久久 | 亚洲精品中文在线 | 国产在线国偷精品产拍免费yy | 激情xxxx| 国产又粗又猛又爽又黄的视频先 | 51久久夜色精品国产麻豆 | 成人午夜免费剧场 | 色搞搞 | 超碰在线网 | 免费高清在线一区 | 欧美日韩1区2区 | 二区在线播放 | 日日夜夜天天操 | 91麻豆精品国产午夜天堂 | av电影在线免费 | 韩日成人av| 五月婷婷视频在线观看 | 亚洲春色奇米影视 | 成人毛片一区二区三区 | 日韩中出在线 | 国产精品久久久久久久久久尿 | 久久久国产电影 | 国内毛片毛片 | 免费a网址| 综合久久久久久久 | av片在线观看免费 | 欧美激情综合色综合啪啪五月 | 天天干天天看 | 久久高清片 | 17videosex性欧美|