久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: Stm32 I2c分析 [打印本頁]

作者: vvhhbc    時間: 2016-4-18 15:05
標(biāo)題: Stm32 I2c分析
許多將STM32微控器應(yīng)用到實(shí)際項(xiàng)目中的開發(fā)人員發(fā)現(xiàn),I2c接口存在工作不穩(wěn)定的現(xiàn)象,比如經(jīng)常出現(xiàn)傳輸失敗或陷入死循環(huán),原因在于:stm32的硬件i2c時序不能被中斷!
根據(jù)ST所給出的建議對i2c接口中斷優(yōu)先級進(jìn)行修改使用,確實(shí)可以避免這個問題.
但若將i2c總線接口的中斷優(yōu)先級改至最高,那便意味著使用了i2c中斷的潛入系統(tǒng)中,其余的中斷服務(wù)將有可能被i2c中斷所嵌套,這種霸道的處理方式很顯然無法適用于所有的i2c總線應(yīng)用場合.
而若使用i2c的DMA模式,則會顯著提升應(yīng)用程序的開發(fā)難度,同時i2c接口的靈活性大大降低!
I2c外設(shè):
某些軟件事件必須在發(fā)送當(dāng)前字節(jié)之前處理
問題描述:
如果沒有在傳輸當(dāng)前字節(jié)之前處理EV7,EV7_1,EV6_1,EV2,EV8和EV3事件,有可能產(chǎn)生問題,如收到一個額外字節(jié),兩次讀到相同的數(shù)據(jù)或丟失數(shù)據(jù).
暫時解決辦法:
當(dāng)不能再傳輸當(dāng)前字節(jié)之前和改變ACK控制位送出相應(yīng)脈沖之前,處理EV7,EV7_1,EV6_1,EV2,EV8和EV3事件時,建議如下操作:
①使用i2c的DMA模式,除非作為主設(shè)備時只接受一個字節(jié).
②使用i2c的中斷并把它的優(yōu)先級設(shè)置最高,使得他不能被中斷.
但是,
使用I/O來模擬i2c總線時序是一種很常見的做法.
但是相對于硬件i2c,在實(shí)時性和傳輸速度上會帶來無法避免的下降,但i2c總線本身就不是一種速度很快的總線(最高400khz),同時也不需要具備很高的實(shí)時性能.相比之下,使用stm32的I/O口模擬i2c時序完全可以滿足大部分場合的需求,并且移植性更佳,因此許多開發(fā)人員更傾向于使用模擬i2c總線接口.

24c04,100KHZ(2.5v) 和400KHZ(5v)兼容
頁面寫周期典型值為2ms





歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 午夜精品在线 | 中文字幕丰满人伦在线 | 亚洲欧美中文字幕 | 免费三级网站 | 在线免费毛片 | 四虎看片 | 日本免费在线观看 | 一级免费片 | 黄色一级视频 | 精产国产伦理一二三区 | 毛片视频免费观看 | 午夜专区 | 放几个免费的毛片出来看 | 国产欧美一区二区精品性色超碰 | 久久久91| 在线观看av免费 | 人成在线 | 国产美女自拍视频 | 日本69视频| 黄色一级片免费看 | 中文字幕日本 | 天天天天操 | 国产一区不卡 | 亚洲男人在线 | 亚洲伊人av | 青草视频在线观看免费 | 免费毛片网 | 青青国产 | 国产精品www | 亚洲国产精品久久久久久 | 91狠狠综合 | 欧美高清视频在线观看mv | 中文字幕在线一区二区三区 | 成年免费视频黄网站在线观看 | 黄色成人在线 | 久操福利视频 | 成人小视频在线观看 | 久久91精品 | 亚洲欧美高清 | 一级特黄毛片 | 国产无限资源 |