无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

CH32V103學(xué)習(xí)筆記之五——硬件IIC

2021-09-26 11:47 作者:修地球八級工  | 我要投稿

1、前言

????????距離上篇文章更新已經(jīng)過去一個半月了,期間并沒有在摸魚,而是探索了不少有實(shí)際意義的知識點(diǎn)。結(jié)合目前正著手移植的程序,重點(diǎn)解決了硬件IIC的連續(xù)讀寫和SPI DMA讀寫問題。現(xiàn)在將學(xué)習(xí)結(jié)果做些小結(jié)分享出來。

????????本篇文章主要總結(jié)硬件IIC的配置流程,結(jié)合使用IIC通信的OLED液晶屏和MPU6050模塊來說明硬件IIC的使用。

2、IIC的初始化流程

????????IIC作為嵌入式MCU一個常見外設(shè),配置流程和其他外設(shè)并沒有區(qū)別。使能外設(shè)IO時鐘、復(fù)用外設(shè)IO(必要時重映射IO),使能IIC時鐘、初始化IIC工作模式、使能IIC。

iic.c

iic.h

在使用IIC模塊之前,需要調(diào)用IIC初始化函數(shù)完成IIC的初始化。

3、使用IIC向從設(shè)備讀、寫一字節(jié)數(shù)據(jù)

????????為了能簡單明了說明IIC的通信時序,這里截取了某品牌M32F4參考手冊中IIC章節(jié)內(nèi)容,CH32V103參考手冊IIC章節(jié)沒有此說明圖表。

寫一字節(jié)數(shù)據(jù)配置流程

IIC主發(fā)送器傳輸時序圖

讀一字節(jié)數(shù)據(jù)配置流程

主接收器的傳輸序列圖

EV事件超時處理函數(shù)

5、中斷對IIC通訊的影響

????????先上一張邏輯分析儀抓的時序圖。在時序圖中可以看到,IIC在被中斷前會完成當(dāng)前字節(jié)的傳輸,并發(fā)送出ACK信號。再拉低SCL,釋放SDA,再中斷函數(shù)執(zhí)行完之后會繼續(xù)完成IIC通訊。

中斷對IIC通訊的影響

5、小結(jié)

??? ? 最開始接觸32位MCU的時候,能找到的關(guān)于IIC的資料,多以普通IO模擬IIC通訊時序?qū)崿F(xiàn)數(shù)據(jù)傳輸,介紹硬件IIC使用的資料沒有多少。流傳的原因無非是早年某品牌MCU IIC的硬件BUG容易造成程序卡死,造成很多人習(xí)慣了使用軟件模擬的IIC。CH32V103R8作為一種新架構(gòu)的MCU在設(shè)計(jì)IIC應(yīng)該是注意過此問題,經(jīng)過實(shí)際驗(yàn)證,硬件IIC和其他片內(nèi)外設(shè)一樣,并沒有什么問題,可以正常使用。

????????下一篇將介紹IIC連續(xù)讀寫數(shù)據(jù)與OLED液晶屏和MPU6050通訊。


CH32V103學(xué)習(xí)筆記之五——硬件IIC的評論 (共 條)

分享到微博請遵守國家法律
霍城县| 定州市| 南涧| 保靖县| 新野县| 卫辉市| 南漳县| 泰安市| 连南| 拉孜县| 华宁县| 隆昌县| 贺州市| 河南省| 三门县| 苏尼特左旗| 仙桃市| 贵溪市| 泸西县| 永修县| 航空| 中山市| 黑河市| 汽车| 延川县| 濮阳县| 黄骅市| 清新县| 眉山市| 靖远县| 寿宁县| 班玛县| 扬州市| 思茅市| 石家庄市| 湘阴县| 碌曲县| 鄂伦春自治旗| 遂昌县| 启东市| 韶山市|