《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于I2C總線多步進電機實驗平臺的開發
基于I2C總線多步進電機實驗平臺的開發
2015年微型機與應用第12期
晏 亮,潘貞汝,常 華
(中國農業大學 信息與電氣工程學院,北京 100083)
摘要: 描述了基于I2C總線多步進電機平臺的設計,介紹了I2C總線通信協議的特點,給出了I2C總線在1片主MSP430G2553和8片從MSP430G2553之間數據傳輸程序流程圖和整個平臺的硬件結構框架,完成了基于I2C總線的單主多從通信,最終實現了對多路步進電機的控制。
Abstract:
Key words :

  摘  要: 描述了基于I2C總線步進電機平臺的設計,介紹了I2C總線通信協議的特點,給出了I2C總線在1片主MSP430G2553和8片從MSP430G2553之間數據傳輸程序流程圖和整個平臺的硬件結構框架,完成了基于I2C總線的單主多從通信,最終實現了對多路步進電機的控制。

  關鍵詞: I2C總線;MSP430G2553;單主多從;步進電機

0 引言

  I2C總線是兩線式串行總線,用于連接微控制器及其外圍設備,是微電子通信控制領域廣泛采用的一種總線標準。它是同步通信的一種特殊形式,具有接口線少、控制方式簡單、器件封裝形式小、通信速率較高等優點。本文介紹一種利用I2C總線協議,通過單主多從模式,利用1段音頻信號控制8個單片機實現不同方向、速率的轉動。

1 I2C總線技術

  1.1 I2C總線接口

  本文所用的芯片主要為TI公司的MSP430G2553芯片,其中的I2C模式是通過USCI_Bx模塊來進行配置的,本文主要應用了USCI_B0模塊[1]。在I2C模式中,USCI通過兩線式I2C串行總線提供了MSP430與I2C兼容器件的連接。外部器件串行依附在I2C總線上,通過2-線I2C接口為USCI模塊發送數據或從USCI接收數據。如圖1所示,I2C總線由時鐘線SCL和數據線SDA構成,在時鐘線SCL保持高電平期間,數據線SDA上的電平被拉低(即負跳變),為I2C的開始信號[2]。在時鐘線SCL保持高電平期間,數據線SDA被釋放,是I2C的終止信號。

  如圖2所示,進行數據傳送時,在SCL呈現高電平期間,SDA上的電平必須保持穩定,只有在SCL為低電平期間,才允許SDA上的電平改變狀態。

  關于傳輸速度,I2C總線在標準模式最高為100 kb/s,高速模式最高為400 kb/s。

  1.2 I2C總線數據傳輸

  I2C總線傳輸數據必須遵循規定的數據傳輸格式[2],主機給每個數據傳輸位產生一個時鐘脈沖,I2C模式對數據位進行操作。在主機設置好I2C為發送模式后,USCI模塊會檢測總線是否可用,產生START條件。本文中將音頻信號依據頻率分為8段,并且每段對應不同的從機地址,如此便可依據不同頻率將音頻信號發送給不同的從機。I2C模式支持7位和10位尋址模式[3],本文運用了7位尋址模式。如圖3所示,在7位尋址模式中,第一個字節是7位從機地址和R/W位。接收器在每個字節結束后發送ACK位。

003.jpg

  所有掛到I2C總線的外圍器件各自都有一個唯一確定的地址[2]。任何時刻總線上只有一個主控器件對總線實行控制權,分時實現點對點的數據傳送。I2C總線上所有外圍器件都有規范的器件地址,器件地址由7位組成,它和1位方向位(R/W)構成了I2C總線器件的尋址字節SLA,格式如圖4所示。

004.jpg

  其中高4位(A6、A5、A4、A3)是I2C總線外圍接口器件固有地址編碼,器件出廠時已固化好。A0~A2是對從機分配的不同地址,本文中MSP430G2553的高4位為0100[1],一共可以掛接8個單片機。而最低位R/W為數據方向位,當R/W為0時,主機發送數據,當R/W為1時,主機接收數據。本文中主機只用于發送數據,故R/W位一直為0。本文中的8個從機地址分別為:40H、42H、44H、46H、48H、4AH、4CH和4EH。

  故總線上的數據傳輸過程[4]是:(1)主控制器發送開始信號S;(2)主控制器發送芯片尋址字節;(3)從器件發出應答信號ACK;(4)主控制器發送數據尋址字節;(5)發送者發送數據,接受者接收數據;(6)主控制器發送停止信號P終止數據傳輸。其流程圖如圖5所示。

005.jpg

2 I2C的系統硬件結構

006.jpg

  圖6是本文所研究平臺的整體框圖,在此系統中8個從機對應8種不同音符頻段,分別控制8個電機的轉速。系統的主要功能是通過PC由MATLAB對給定音頻進行編碼[5],產生單片機可用的曲譜編碼,然后通過串口將所產生的編碼發送給主MSP430G2553,主機在尋址時先判斷編碼范圍,然后通過I2C總線尋址相應的從機,并向被尋址的MSP430G2553發送相應的音頻編碼。從機將所接收到的音頻編碼作為定時器的定時周期,利用定時器產生相應的脈沖信號,從而驅動電機轉動。

007.jpg

  為實現單主多從單片機MSP430G2553之間的通信,將主機I2C總線上的SCL(P1.6)和SDA(P1.7)分別與從機的SCL(P1.6)和SDA(P1.7)相連接,并且在VCC與SCL、SDA兩個信號之間分別接上10 k?贅的上拉電阻,如圖7所示。由此從機的P1.6就成了時鐘接收端,P1.7為數據接收端。通過編程將主機發送的數據送入Buff,從機通過讀Buff中的數據將其實時轉換為頻率改變的方波,并通過P1.5口將其發送給電機驅動器,從而實現控制步進電機的功能。

3 I2C單主多從通信

  首先將USCI模塊初始化,使主機/從機可以進行接收/發送操作,初始化過程如下[6]:將USCI中軟件復位位UCSWRST置位來初始化所有的USCI寄存器,配置P1.6和P1.7分別為I2C的SCL端口和SDA端口,通過UCMST和UCMODEx選擇I2C模式和主機或從機模式。然后通過置位UCSEEL_2來選擇主機時鐘為SMCLK  (1 MHz),并將主時鐘12分頻為100 kHz作為主機中的SCL時鐘[1]。上述模塊初始化完成后,清除UCSWRST,釋放USCI,使能發送中斷。

  對于主發送模塊,初始化之后需要把從地址設置為7 bit,再將目標從地址寫入寄存器UCB0I2CSA中。本系統將所給的音頻信號按照頻率分為8段,每段對應不同的從機地址,使主機通過判斷與不同的從機地址相匹配。初始化完成后通過置位UCRT和UCTXSTT,使主機工作在發送模式并產生一個起始條件。當地址讀入UCB0I2CSA中后,硬件會自動識別并找到與之相對應的從機,一旦地址匹配則UCSTTIFG置位,主機進入LPM0模式并且觸發中斷,將要發送的數據寫入UCB0TXBUF中,當從機地址被應答時UCTXSTT位即刻清零。本文中將音頻信號裝入數組中,當所有數據發送完畢后產生一個STOP條件,并將UCB0TXIFG清零同時退出低功耗模式。圖8為主機發送模式流程圖。

008.jpg

  對于從接收模塊,由于要對主機中讀取的數據進行處理,本文中選用定時器A將其數據轉換為對應的脈沖波,從而達到控制電機的目的。因此需要先將定時器A初始化[7],為了不影響主機中SMCLK,本文使定時器A工作在ACLK時鐘下。隨后將其USCI模塊設置為I2C接收模式,并且無需設置USCI時鐘。一旦從設備中UCB0RXBUF接收到的新數據被讀走,從設備即發送一個應答信號給主設備,然后開始下一個數據的接收。定時器A將接收到的數據通過定時器中斷產生頻率改變的方波,并通過P1.5口輸出,從而控制步進電機依據音頻信號的不同頻率來變速轉動。圖9為從機接收模式流程圖。

009.jpg

4 結論

  本文介紹的I2C總線單主多從通信系統占用I/O資源少,功耗低,傳輸速率高,能夠以較高性能控制步進電機隨音樂轉動。從實驗結果來看,主從單片機可以通過該總線系統進行非常可靠的通信,進而可在各個領域取得廣泛應用。

參考文獻

  [1] MSP430x2xx Users′ guide[Z].2004.

  [2] 沈建華,楊艷琴,翟驍曙.MSP430系列16位超低功耗單片機原理與應用[M].北京:清華大學出版社,2004.

  [3] 賈朱紅,張曉冬.基于I2C總線的單主多從單片機之間的通信[J].微計算機信息,2009(8):101-102.

  [4] 鄧忠華,李霞,陳浩.I2C總線技術在單片機串行擴展中的應用[J].武漢理工大學學報(交通科學與工程版),2005(2):227-229,247.

  [5] 孫金中,馮炳軍.基于I2C總線控制的音頻處理電路設計[J].現代電子技術,2009(18):85-88.

  [6] 吳小平,李莉,何鑫,等.I2C總線及其數據通信編程[J].微計算機信息,2000(2):11-13.

  [7] 陳光建,賈金玲.基于單片機的I2C總線系統設計[J].儀器儀表學報,2006(S3):2465-2466,2472.


此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲国产网站| 欧美在线播放视频| 国内精品久久久久久久影视蜜臀| 欧美先锋影音| 欧美午夜精品久久久久久久| 欧美另类一区二区三区| 欧美激情va永久在线播放| 欧美fxxxxxx另类| 欧美www视频在线观看| 蜜桃av一区二区三区| 久久综合电影一区| 开心色5月久久精品| 久久综合九色99| 欧美91大片| 欧美经典一区二区| 欧美精品一区二区三区在线播放| 欧美激情一区二区三区不卡| 欧美精品色综合| 欧美日韩视频在线一区二区观看视频 | 理论片一区二区在线| 久久综合九色综合欧美狠狠| 免费日韩视频| 欧美精品乱人伦久久久久久| 欧美视频亚洲视频| 国产精品一区一区| 国内精品亚洲| 亚洲国产成人在线播放| 日韩一区二区电影网| 一区二区三区视频观看| 亚洲欧美日本伦理| 久久精品亚洲一区二区三区浴池| 亚洲国产一区视频| 一区二区高清| 亚洲资源av| 久久精品导航| 欧美gay视频| 欧美特黄视频| 国内精品视频一区| 亚洲日本中文字幕区| 国产精品99久久久久久有的能看| 午夜精品网站| 日韩亚洲欧美中文三级| 亚洲欧美日韩成人| 久久综合久色欧美综合狠狠| 欧美日韩国产精品一区二区亚洲| 国产精品视频免费一区| 韩国福利一区| 亚洲免费黄色| 亚洲欧美日韩精品一区二区 | 国产伦精品一区二区三| 在线国产欧美| 亚洲一区国产视频| 91久久在线播放| 亚洲欧美一区二区视频| 麻豆国产精品777777在线| 欧美视频在线观看免费网址| 国产日韩欧美一区| 亚洲精品国精品久久99热一| 午夜亚洲福利在线老司机| 亚洲美女一区| 欧美专区在线播放| 欧美日本网站| 狠狠色狠狠色综合日日tαg | 欧美一区二区三区视频免费播放| 免费成人高清在线视频| 国产精品入口福利| 91久久精品一区二区三区| 亚洲欧美日韩区| 在线亚洲+欧美+日本专区| 久久久久久久欧美精品| 国产精品99免费看| 亚洲国产日韩综合一区| 欧美一区永久视频免费观看| 亚洲一级黄色| 欧美激情bt| 狠狠色丁香婷婷综合影院| 亚洲在线免费| 一本到12不卡视频在线dvd| 久久久噜噜噜久噜久久| 国产精品多人| 亚洲毛片在线观看| 亚洲级视频在线观看免费1级| 香蕉久久夜色| 欧美日韩午夜视频在线观看| 在线观看不卡| 性欧美大战久久久久久久免费观看| 一区二区不卡在线视频 午夜欧美不卡在| 久久―日本道色综合久久| 国产精品久久久久aaaa九色| 亚洲剧情一区二区| 亚洲日本电影| 久久亚洲国产精品日日av夜夜| 国产精品卡一卡二卡三| 亚洲激情偷拍| 最新中文字幕一区二区三区| 久久色在线播放| 国产一级揄自揄精品视频| 亚洲综合精品| 亚洲一区二区3| 欧美日韩国产另类不卡| 最新国产乱人伦偷精品免费网站 | 亚洲欧洲日韩综合二区| 亚洲国产专区| 久久久青草婷婷精品综合日韩| 国产女人aaa级久久久级| 一本久久a久久精品亚洲| 日韩亚洲不卡在线| 欧美激情91| 亚洲精品国产品国语在线app | 久久久久久久高潮| 国产一区二区黄色| 欧美一区二区三区免费看| 欧美一区二区视频在线观看2020| 国产精品久久久久久久浪潮网站 | 国产精品99久久久久久有的能看| 欧美精品日韩一区| 亚洲人成艺术| 一区二区三区高清在线| 欧美精品一级| 99国产精品99久久久久久| 一区二区三区免费在线观看| 欧美精品一线| 99re6热只有精品免费观看| 一区二区三区欧美成人| 欧美日韩免费高清| 99在线热播精品免费99热| 亚洲午夜一区| 国产精品三级视频| 午夜欧美大尺度福利影院在线看 | 麻豆久久精品| 亚洲国产精品免费| 一本色道久久综合亚洲91| 欧美日韩国产成人精品| 在线亚洲精品| 欧美一区二区视频在线观看| 国产一区二区久久精品| 久久成人精品视频| 欧美成人嫩草网站| 日韩视频免费在线观看| 亚洲综合精品一区二区| 国产老肥熟一区二区三区| 久久国产视频网站| 欧美国产三级| 亚洲一级片在线观看| 久久狠狠亚洲综合| 影音先锋亚洲电影| 一区二区三区欧美亚洲| 国产精品男女猛烈高潮激情| 欧美一级专区| 欧美国产日韩亚洲一区| 一区二区三区黄色| 久久精品人人爽| 亚洲日本视频| 性色av香蕉一区二区| 激情综合自拍| 制服丝袜激情欧洲亚洲| 国产人妖伪娘一区91| 亚洲片区在线| 国产精品久久久久aaaa九色| 欧美专区中文字幕| 欧美日韩国产色综合一二三四 | 亚洲欧美在线网| 激情国产一区二区| 99在线观看免费视频精品观看| 国产精品激情电影| 亚洲国产精品久久| 国产精品a久久久久| 久久精品视频在线| 欧美午夜精彩| 亚洲国产精品久久久久婷婷884| 欧美日韩综合一区| 亚洲成在线观看| 欧美香蕉大胸在线视频观看| 亚洲第一精品久久忘忧草社区| 欧美日韩亚洲一区二区三区| 欧美一区二区三区在线视频| 欧美日本成人| 久久精品夜色噜噜亚洲a∨| 欧美日韩色婷婷| 亚洲国产精品久久精品怡红院| 国产精品户外野外| 亚洲精品国产精品久久清纯直播| 国产精品免费一区豆花| 亚洲乱码一区二区| 国产婷婷一区二区| 亚洲五月六月| 亚洲国产成人不卡| 久久国产精品久久国产精品| 日韩午夜精品视频| 蜜臀久久久99精品久久久久久 | 在线观看av不卡| 欧美在线观看网址综合| 日韩一级在线观看| 免费亚洲视频| 欧美一区二区视频在线观看| 国产精品成人一区二区三区吃奶 | 新67194成人永久网站| 亚洲精品免费在线| 看片网站欧美日韩| 欧美在线一级视频|