亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        STM32的IIC通信課堂教學(xué)方法的探討

        2018-10-31 10:29:46侯鳳云蔡曉龍
        科教導(dǎo)刊·電子版 2018年27期
        關(guān)鍵詞:課堂教學(xué)

        侯鳳云 蔡曉龍

        摘 要 隨著嵌入式系統(tǒng)主頻的提高,串行通信的地位逐步提高。STM32的同步串行口IIC通信效率高,占用資源少。本文介紹了STM32的IIC通信的教學(xué)方法,以24C02為從機,解析了STM32和24C02之間模擬IIC通信的實現(xiàn)過程。首先敘述了IIC通信基礎(chǔ),然后分析了STM32和24C02的接口電路設(shè)計,最后是軟件的實現(xiàn)。

        關(guān)鍵詞 STM32 IIC通信 課堂教學(xué)

        0引言

        IIC 即Inter-Integrated Circuit(集成電路總線),是由飛利浦半導(dǎo)體公司在八十年代初設(shè)計出來的一種簡單、雙向、二線制、同步串行總線。

        IIC是多向控制總線,也就是說多個芯片可以連接到同一總線結(jié)構(gòu)下,同時每個芯片都可以作為實時數(shù)據(jù)傳輸?shù)目刂圃?,簡化了信號傳輸總線接口。IIC總線是各種總線中使用信號線最少,并具有自動尋址、多主機時鐘同步和仲裁等功能的總線。使用IIC總線搭建計算機系統(tǒng)方便靈活,體積小,隨著嵌入式系統(tǒng)主頻的提高,IIC在嵌入式系統(tǒng)中得到了廣泛應(yīng)用。

        1 STM32的IIC通信基礎(chǔ)

        1.1 IIC總線結(jié)構(gòu)

        IIC總線一般有兩根信號線,數(shù)據(jù)線SDA和時鐘線SCL。IIC總線是多主機的總線,所有接到IIC總線上的設(shè)備數(shù)據(jù)線都接到總線的SDA上,各設(shè)備的時鐘線接到總線的SCL上,連接關(guān)系如圖1所示。

        多主機情況由總線仲裁功能解決,主機能夠控制信號的傳輸和時鐘頻率,任何時間點上只能有一個主機。每個連接到總線的器件可以通過唯一的地址和主機聯(lián)系,主機可以是發(fā)送器或接收器。一般情況下SDA、SCL接上拉電阻,實現(xiàn)電平的轉(zhuǎn)換以及提高驅(qū)動能力,當總線空閑時這兩條線路都是高電平。

        IIC時序是SCL和SDA兩根信號線上的電平變化順序,IIC正常通信時必須遵守一定的時序要求,時序信號如圖2所示。

        根據(jù)時序圖進行分析:總線空閑狀態(tài)時,SDA和SCL兩條信號線都處于高電平,即總線上所有的器件都釋放總線;啟動信號START,時鐘信號SCL保持高電平,數(shù)據(jù)信號SDA的電平被拉低(即負跳變)。啟動信號必須是跳變信號,而且在建立該信號前必修保證總線處于空閑狀態(tài);停止信號STOP,時鐘信號SCL保持高電平,數(shù)據(jù)線被釋放,使得SDA返回高電平(即正跳變),停止信號也必須是跳變信號;數(shù)據(jù)傳輸過程中,數(shù)據(jù)線SDA上的數(shù)據(jù)狀態(tài)在時鐘線SCL的高電平期間必須保持穩(wěn)定,只有在SCL線為低電平期間,SDA上的電平允許變化;應(yīng)答信號ACK,IIC總線的數(shù)據(jù)都是以字節(jié)(8位)的方式傳送的,發(fā)送器件每發(fā)送一個字節(jié)之后,在SCL的第9個脈沖期間釋放數(shù)據(jù)總線,由接收器發(fā)送一個ACK(把數(shù)據(jù)總線的電平拉低)來表示數(shù)據(jù)成功接收;無應(yīng)答信號NACK,在SCL的第9個脈沖期間發(fā)送器釋放數(shù)據(jù)總線,接收器不拉低數(shù)據(jù)總線表示一個NACK,NACK有兩種用途,一種表示接收器未成功接收數(shù)據(jù)字節(jié),另一種是當接收器是主機時,接收到最后一個字節(jié)后,發(fā)送一個NACK信號,通知發(fā)送器結(jié)束數(shù)據(jù)發(fā)送,主機發(fā)送停止信號STOP。

        2 IIC的接口電路設(shè)計

        以24C02為例介紹IIC的接口電路,24C02是一種256B的可電擦除EEPROM,通過IIC協(xié)議與STM32進行通信,讀寫方便,廣泛應(yīng)用于智能儀器、汽車電子、家用電器等場合。

        接口電路如圖3所示。24C02的A2、A1、A0為地址位,用于級聯(lián),由于電路中僅1片24C02,3個端口接地即可;WP為寫保護,接地時可進行讀、寫操作;24C02的SCL是時鐘線,SDA是信號線,分別接STM32的PB10、PB11端子,并且外接上拉電阻至3.3V電源。

        STM32的PB10、PB11也是硬件IIC接口,為了靈活選用端子、方便移植,這里采用模擬IIC方式通信。

        通過操作兩個I/O端口的高、低電平滿足時序要求,從而實現(xiàn)IIC通信,就是模擬IIC。下面介紹軟件的實現(xiàn)過程。

        3軟件實現(xiàn)

        3.1 IIC尋址方式

        圖3中24C02的地址以字節(jié)表示。地址字節(jié)的高7位表示從機地址,其中高4位屬于固定地址,由廠家統(tǒng)一規(guī)定;低3位為引腳設(shè)定地址,由外部引腳電平狀態(tài)來設(shè)定。圖3中的IIC設(shè)備是AT24C02,高4位由廠家規(guī)定為1010,低3位是000。

        地址字節(jié)的最低位(LSB)是讀/寫控制位,0表示主機向從機寫入信息,1表示主機由從機讀取信息。

        3.2 IIC通信流程

        IIC通信包括寫入和讀取兩個過程,以啟動信號START來掌控總線,以停止信號STOP來釋放總線;每次通信以START開始,以STOP結(jié)束。每個數(shù)據(jù)字節(jié)在傳送時都是高位(MSB)在前。注意編寫程序時,參考STM32用戶手冊中IIC通信要求的精確時序,可采用SysTick定時器。

        寫入的通信流程如下:

        (1)主機在檢測到總線空閑的狀況下,發(fā)出START信號。

        (2)發(fā)送一個地址字節(jié)(上述例子的地址是10100000),表示寫入,等待從機應(yīng)答信號ACK。

        (3)主機收到ACK后,發(fā)送要寫入的器件地址單元,等待從機應(yīng)答信號ACK。

        (4)主機收到ACK后,開始發(fā)送第一個數(shù)據(jù)字節(jié)。

        (5)從機收到數(shù)據(jù)字節(jié)后發(fā)送一個ACK表示繼續(xù)傳送數(shù)據(jù),發(fā)送NACK表示傳送數(shù)據(jù)結(jié)束。

        (6)主機發(fā)送全部數(shù)據(jù)后,發(fā)出STOP信號,結(jié)束通信并且釋放總線。

        讀取的通信流程如下:

        (1)主機在檢測到總線空閑的狀況下,發(fā)出START信號。

        (2)發(fā)送一個地址字節(jié)(上述例子的地址是1010000),等待從機應(yīng)答信號ACK。

        (3)主機收到ACK后,發(fā)送要讀取的器件地址單元,等待從機應(yīng)答信號ACK。

        (4)主機收到ACK后,啟動START信號,發(fā)送一個地址字節(jié)(上述例子的地址是10100001),表示接收,等待從機應(yīng)答信號ACK。

        (5)主機收到ACK后釋放數(shù)據(jù)總線,開始接收第一個數(shù)據(jù)字節(jié)。

        (6)主機收到數(shù)據(jù)后發(fā)送ACK表示繼續(xù)傳送數(shù)據(jù),發(fā)送NACK表示傳送數(shù)據(jù)結(jié)束。

        (7)主機接收全部數(shù)據(jù)后,發(fā)出STOP信號,結(jié)束通信并且釋放總線。

        根據(jù)上述IIC的通信流程和時序要求,進行程序的編寫,會用到下列函數(shù):啟動信號函數(shù)、停止信號函數(shù)、等待應(yīng)答函數(shù)、產(chǎn)生應(yīng)答函數(shù)、不產(chǎn)生應(yīng)答函數(shù)、發(fā)送字節(jié)函數(shù)、接收字節(jié)函數(shù)等,不一一列寫。

        4小結(jié)

        實現(xiàn)模擬IIC通信,重點是先理解IIC的通信時序,根據(jù)IIC通信器件要求設(shè)計硬件接口電路,然后弄清楚讀取和寫入的通信流程,完成程序的編寫。通過實驗?zāi)軌蜻M一步理解和掌握模擬IIC通信方法。

        猜你喜歡
        課堂教學(xué)
        取舍有道,方為有效課堂教學(xué)
        且行且思,讓批注式閱讀融入課堂教學(xué)
        讓課堂教學(xué)“活”起來
        對初中化學(xué)課堂教學(xué)的幾點思考
        散文百家(2014年11期)2014-08-21 07:17:04
        初中歷史課堂教學(xué)的導(dǎo)入法
        散文百家(2014年11期)2014-08-21 07:16:56
        把“三個倡導(dǎo)”融入課堂教學(xué)
        中國火炬(2014年4期)2014-07-24 14:22:19
        日本不卡视频一区二区| 国产超碰女人任你爽| 国产精品妇女一二三区| 日日噜噜噜夜夜爽爽狠狠| 中文字幕avdvd| 国产一区二区三区免费在线视频| 中文字幕一区二区三区6| 嗯啊好爽高潮了在线观看| 黄瓜视频在线观看| 无码日韩人妻AV一区免费| 亚洲欧美日韩精品久久亚洲区色播 | 日本久久大片中文字幕| 国产亚洲精品色婷婷97久久久| 国产无遮挡aaa片爽爽| 亚洲 卡通 欧美 制服 中文| 久久人人爽人人爽人人av | 国产女主播强伦视频网站| 三级日本理论在线观看| 蜜桃一区二区在线视频| 日本高清视频wwww色| 久久www免费人成人片| 麻豆久久五月国产综合| 亚洲国产一区中文字幕| 精品一区二区三区婷婷| 成人欧美一区二区三区黑人| 亚洲中文字幕成人无码| 国产成人久久综合热| 国产成人久久精品亚洲小说| 国产成人av区一区二区三| 无码熟妇人妻av在线影片最多| 一区二区三区在线 | 欧| 国产精品亚洲专区在线播放| 日本女u久久精品视频| 中文精品久久久久人妻不卡| 成年在线观看免费视频| 亚洲色偷拍一区二区三区| 一区二区三区在线乱码| 97成人精品国语自产拍| 天堂а√在线中文在线新版 | 日本人妻免费一区二区三区| av一区二区三区人妻少妇|