在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如果芯片不具有硬件I2C模塊怎么辦?

GReq_mcu168 ? 來源:互聯網 ? 作者:佚名 ? 2017-10-30 15:59 ? 次閱讀

關于Bit Bang 的解釋:Use software to control serial communication at general-purpose I/O pins,簡單來講就是使用軟件通過 IO 腳去實現 I2C 的時序從而使用 I2C 協議進行通信

這樣做的好處是可以突破硬件上的限制,例如芯片不具有硬件 I2C 模塊,或者硬件 I2C 模塊損壞,又或者使用硬件 I2C 模塊時布線非常麻煩。壞處是需要寫代碼模擬時序,根據不同的硬件平臺和不同的時鐘頻率,代碼中的部分參數是不一樣的。

二、代碼分析

以下代碼基于 STM32 系列 MCU

使用軟件模擬 I2C 的步驟如下:

1、設置 GPIO 管腳

設置兩個管腳作為 SCL 和 SDA,例如 GPIOA1 和 GPIOA2

2、SCL時鐘周期

3、附加設置

這里主要是使用宏定義模擬函數

4、I2C 啟動

5、I2C停止

6、發送 8 位數據,返回值為從響應 ACK 標志

7、接收 8 位數據

三、操作實例

以下代碼為通過調用上面的基本代碼來實現 I2C 通信

1、設置 DAC 寄存器的值

三個參數分比為從機地址,寄存器地址,8 位數據

2、讀取 DAC 寄存器的值

兩個參數分別為從機地址,寄存器地址,返回數據為 16 位。這是由于某些器件的硬件設計,采用 7 位表示寄存器地址,而每個寄存器包含 9 位數據。更常見的方式為 8 位寄存器地址,一個寄存器 8 位數據,這種方式的代碼僅返回 8 位數據,見代碼 2。

代碼 1,返回 16 位數據,不常見

代碼 2,返回 8 位數據

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴

原文標題:學會這個技術,再也不怕芯片不具有硬件I2C模塊了!

文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    I2C總線的基本用法 I2C總線硬件問題匯總

    一般情況下, i2c 設備焊接沒什么問題,按照設備手冊一步步來,基本上就順風順水能夠用起來。如果這么一個簡單的東西,有時候想要的結果死活不出來,反復的檢查問題的原因,查詢解決辦法,核查設備的數據手冊,甚至發送和接收的每一條命令與數據都知道是什么意思,仍然無法解決問題,那該
    的頭像 發表于 12-26 09:33 ?1431次閱讀
    <b class='flag-5'>I2C</b>總線的基本用法 <b class='flag-5'>I2C</b>總線<b class='flag-5'>硬件</b>問題匯總

    基于I2C總線的鍵盤顯示模塊設計

    介紹了利用P87LPC76X系列單片機設計的一個鍵盤顯示模塊,通過I2C總線與主控芯片相連,具有靈活、控制方便等特點。文中給出了部分硬件設計
    發表于 08-05 14:43 ?24次下載

    I2C總線接口模塊設計

    本實驗是基于EasyFPGA030的I2C總線接口模塊設計,用EasyFPGA030開發套件通過I2C協議實現對二線制I2C串行EEPROM的讀寫操作,先把數據寫入EEPROM,然后再
    發表于 11-02 17:01 ?41次下載

    模擬I2C總線多主節點通信原理及實現方法

    摘要 介紹模擬I2C總線的多主節點通信原理,并提出一種新的實現方法。這種采用延時接收比較來實現仲裁的方法,可使不具有I2C接口的普通微控制器(MCU)能夠實現模擬I2C總線的多
    發表于 06-18 17:57 ?5571次閱讀
    模擬<b class='flag-5'>I2C</b>總線多主節點通信原理及實現方法

    基于CPLD的I2C總線接口設計

    在電路設計中,I2C總線是比較常用的兩線式串行通信方式,大多數的CPU都擅長于并口操作,不具備直接操作I2C總線接口的能力。為了使不具I2C
    發表于 02-12 16:11 ?95次下載
    基于CPLD的<b class='flag-5'>I2C</b>總線接口設計

    Arduino教程之I2C模塊使用教程資料免費下載

    為什么叫I2C模塊?和一元硬幣差不多大小的一塊PCB上放了三個芯片,分管三個功能:時間計算、溫度偵測、數據存儲。這三個芯片都是通過I2C總線
    發表于 01-22 16:59 ?9次下載
    Arduino教程之<b class='flag-5'>I2C</b><b class='flag-5'>模塊</b>使用教程資料免費下載

    AT89S52單片機并行端口模擬I2C總線協議讀寫AT24C04的設計

    AT24C04是具有I2C總線接口的EEPROM.大小為512*8bit.單片機AT89S52本身不具有I2C總線結口,所以可編寫程序用并行
    發表于 08-14 14:34 ?2788次閱讀

    I2C總線設備的使用方法和硬件問題合集

    ,甚至發送和接收的每一條命令與數據都知道是什么意思,仍然無法解決問題,那該怎么辦呢?本文主要針對 i2c 設備,講解如何解決 i2c 設備主機與從機直接無法正常數據交互的問題,側重點是針對硬件
    發表于 11-25 11:35 ?7次下載
    <b class='flag-5'>I2C</b>總線設備的使用方法和<b class='flag-5'>硬件</b>問題合集

    8位PIC單片機上具有硬件協議加速功能的I2C通信

    本技術簡介討論了I2C模塊及其特性和基本功能。圖1給出了I2C模塊的簡化框圖。
    發表于 04-01 14:20 ?6次下載
    8位PIC單片機上<b class='flag-5'>具有</b><b class='flag-5'>硬件</b>協議加速功能的<b class='flag-5'>I2C</b>通信

    I2C”的那些坑

    ,核查設備的數據手冊,甚至發送和接收的每一條命令與數據都知道是什么意思,仍然無法解決問題,那該怎么辦呢? 本文主要針對 i2c 設備,講解如何解決 i2c 設備主機與從機直接無法正常數據交互
    發表于 11-06 10:05 ?8次下載
    “<b class='flag-5'>I2C</b>”的那些坑

    STM32的硬件I2C有BUG嗎?

    坊間一直流傳著一個傳說~STM32的硬件I2C設計有BUG,最好不要用,用軟件I2C比較靠譜。長久以來,為了不必要的麻煩,我也一直沒有用過硬件I2C
    發表于 12-04 14:51 ?26次下載
    STM32的<b class='flag-5'>硬件</b><b class='flag-5'>I2C</b>有BUG嗎?

    硬件I2C與模擬I2C

    硬件I2C對應芯片上的I2C外設,有相應I2C驅動電路,其所使用的I2C管腳也是專用的,因而效率
    發表于 12-28 19:14 ?81次下載
    <b class='flag-5'>硬件</b><b class='flag-5'>I2C</b>與模擬<b class='flag-5'>I2C</b>

    STM32F 單片機硬件I2C Busy標志導致的I2C卡死的處理辦法

    STM32F 單片機硬件I2C Busy標志導致的I2C卡死的處理辦法在調試多用戶表的時候,發現如果人為短接I2C的SDA或SLK腳后,
    發表于 12-28 19:24 ?26次下載
    STM32F 單片機<b class='flag-5'>硬件</b><b class='flag-5'>I2C</b> Busy標志導致的<b class='flag-5'>I2C</b>卡死的處理辦法

    I2C通信沒反應怎么辦

    硬件我們經常會遇到各種各樣的問題,一些通信接口也會出現,I2C自然也不例外。假如遇到I2C沒反應,那么可能會出現這種情況:“軟件工程師說,我軟件都已經配好了,但是就是讀寫不到數據,是不是硬件
    的頭像 發表于 05-04 11:30 ?3343次閱讀
    <b class='flag-5'>I2C</b>通信沒反應<b class='flag-5'>怎么辦</b>?

    I2C接口進入Busy狀態不能退出怎么辦

    電子發燒友網站提供《I2C接口進入Busy狀態不能退出怎么辦.pdf》資料免費下載
    發表于 08-02 10:03 ?3次下載
    <b class='flag-5'>I2C</b>接口進入Busy狀態不能退出<b class='flag-5'>怎么辦</b>
    主站蜘蛛池模板: 被啪漫画羞羞漫画 | 日本高清www | 噜噜啪啪 | 国模视频一区 | 国产资源在线播放 | 狠狠干天天爱 | 美日韩中文字幕 | 国产卡一卡2卡三卡免费视频 | 射菊吧 | 国语一区 | 亚洲一区二区三 | 天天都色 | 主人扒开腿揉捏花蒂调教cfh | 国产精品久久久久影视不卡 | 国产欧美亚洲精品第二区首页 | 久久天天躁狠狠躁狠狠躁 | 中国videos偷窥| 国产成视频| 中文字幕第13亚洲另类 | 国产免费人人看大香伊 | 在线婷婷 | 欧美激情一欧美吧 | 黄色网在线播放 | 日本黄色站| 免费一级毛片清高播放 | 国产亚洲一区二区三区啪 | 久久伊人色 | 夜夜爱夜夜做夜夜爽 | 黄色福利网 | 欲妇放荡叫床很浪的小说 | 日本三级理论片 | 久久天天躁夜夜躁狠狠躁2020 | 色噜噜噜噜 | 夜夜骑天天操 | 亚洲色图欧美激情 | 在线视频免费视频网站 | 久久综合爱| 天堂-bt种子 | 91网视频在线观看 | 天堂网色| 天天插天天干天天射 |