引言
在很多嵌入式控制系統(tǒng)中,系統(tǒng)既要完成大量的信息采集和復雜的算法,又要實現(xiàn)精確的控制功能。采用運行有嵌入式Linux操作系統(tǒng)的ARM9微控制器完成信號采集及實現(xiàn)上層控制算法,并向DSP芯片發(fā)送上層算法得到控制參數(shù),DSP芯片根據(jù)獲得的參數(shù)和下層控制算法實現(xiàn)精確、可靠的閉環(huán)控制。
本文以Samsung公司的ARM9芯片S3C2440和TI公司的DSP芯片TMS320F28015為例,分析了I2C通信接口的原理及特點,提出了基于I2C總線的多機通信接口設(shè)計方法。測試結(jié)果驗證了該系統(tǒng)的可行性及可靠性,對嵌入式系統(tǒng)設(shè)計具有一定的借鑒價值。
1 多機系統(tǒng)組成
該多機控制系統(tǒng)以ARM9微控制器s3c2440為核心,采用I2C總線掛載多個DSP芯片TMS320F28015作為協(xié)控制器,構(gòu)成整個控制系統(tǒng)的核心。
1.1 S3C2440及TMS320F28015簡介
Samsung公司的處理器S3C2440是內(nèi)部集成了ARM公司ARM920T處理器內(nèi)核的32位微控制器,資源豐富,帶獨立的16 KB的指令Cache和16 KB數(shù)據(jù)Cache,最高主頻可達400 MHz.它擁有130個通用I/O、24個外部中斷源以及豐富的外部接口能實現(xiàn)各種功能,包括支持多主功能的I2C總線接口、3路URAT、2路SPI、攝像頭接口等。
TMS320F28015(以下簡稱F28015)是TI公司的32位處理器,它具有強大的控制和信號處理能力,能夠?qū)崿F(xiàn)復雜的控制算法。片上整合了Flash存儲器、I2C總線模塊、快速的A/D轉(zhuǎn)換器、增強的CAN總線模塊、事件管理器、正交編碼電路接口及多通道緩沖串口等外設(shè),此種整合能夠方便地實現(xiàn)功能的擴展。同時,快速的中斷響應使它能夠保護關(guān)鍵的寄存器并快速(更小的中斷延時)地響應外部異步事件。
1.2 I2C總線接口
I2C總線是一種用于IC器件之間連接的串行總線,采用SDA(數(shù)據(jù)線)和SCL(時鐘線)兩線連接每個帶有I2C總線接口的器件或模塊。串行的8位雙向數(shù)據(jù)傳輸率在標準模式下可達100 kb/s,快速模式下可達400 kb/s.多個微控制器可以通過I2C總線接口非常方便地連接在一起構(gòu)成系統(tǒng),并根據(jù)地址識別每個器件。這種總線結(jié)構(gòu)的連線和連接引腳少,器件間總線簡單,結(jié)構(gòu)緊湊。因此其構(gòu)成系統(tǒng)的成本較低,并且在總線上增加器件不會影響系統(tǒng)的正常工作,所有的I2C總線器件共用一套總線,因此其系統(tǒng)修改和可擴展性好。
總線必須由主機(通常為微控制器)控制,主機產(chǎn)生串行時鐘( SCL) 控制總線的數(shù)據(jù)傳輸,并產(chǎn)生起始和停止條件。SDA 線上的數(shù)據(jù)狀態(tài)僅在SCL為低電平的期間才能改變,SCL為高電平的期間,SDA 狀態(tài)的改變被用來表示起始和停止條件。I2C總線起始和停止時序如圖1所示。
圖1 I2C總線起始和停止時序
1.3 硬件電路
S3C2440和F28015自身均集成了I2C總線模塊,支持多主設(shè)備I2C總線串行接口,可以方便地掛接到I2C總線上。因此,兩者之間的I2C總線接口電路的設(shè)計變得十分簡單,只要將兩者的對應引腳I2C_CLK(對應I2C總線中的SCL線)和I2C_SDA(對應I2C總線中的DATA線)連接起來即可。S3C2440和TMS320F28015的硬件接口電路如圖2所示。
圖2 S3C2440和TMS320F28015的硬件接口
電路S3C2440的PA55和PA56引腳分別對應I2C_SDA和I2C_CLK,而F28015的GPIO32和GPIO33也可以分別復用為I2C_SDA和I2C_CLK.考慮到阻抗不匹配等因素會影響總線數(shù)據(jù)傳輸效果,因此在將兩塊芯片的I2C_DATA和I2C_CLK引腳直連時,在直連線路上各串聯(lián)一個小電阻。
I2C_SDA和I2C_CLK是雙向電路,必須都通過一個電流源或上拉電阻連接到正電源電壓上。由于S3C2440和F28015的輸出高電平均為3.3 V,所以在硬件設(shè)計時將I2C_SDA和I2C_CLK總線通過上拉電阻連接到了3.3 V的VCC電源上。
2 ARM和DSP通信軟件設(shè)計
運行Linux操作系統(tǒng)的ARM微控制器作為主控制器,在數(shù)據(jù)管理及多任務調(diào)度等方面有顯著優(yōu)勢,可以很好地組織外圍器件采集的數(shù)據(jù);主要實現(xiàn)對系統(tǒng)的整體控制,并通過總線設(shè)備驅(qū)動程序控制I2C總線模塊,通過主機尋址實現(xiàn)向I2C總線上掛載的下層DSP的數(shù)據(jù)收發(fā)。為保證數(shù)據(jù)通信的實時性,F(xiàn)28015通過中斷響應的方式實現(xiàn)數(shù)據(jù)接收和發(fā)送。
2.1 ARM9平臺的嵌入式Linux的I2C總線驅(qū)動設(shè)計
2.1.1 I2C總線讀寫時序
ARM9微控制器作為主機向從機DSP寫數(shù)據(jù),首先向從機發(fā)送啟動信號,然后發(fā)送7位從機地址和1位寫標志位,再等待從機的應答信號。在收到應答信號后,主機發(fā)送數(shù)據(jù)給從機,再次等待應答信號。當主機收到應答信號之后再次發(fā)送數(shù)據(jù)。之后,主機等待從機的應答信號,如此直到數(shù)據(jù)發(fā)送完成,主機發(fā)送停止信號。I2C總線寫數(shù)據(jù)幀格式如圖3所示。
上一篇:基于ARM Cortex-A8的城軌能饋式供電系統(tǒng)綜合監(jiān)控
下一篇:Cortex-M0的RFID讀卡器電路設(shè)計方案
推薦閱讀
史海拾趣
作為一家具有高度責任感的企業(yè),DiCon長期以來一直致力于為國防工業(yè)提供高質(zhì)量的光纖通信產(chǎn)品。公司的首批產(chǎn)品之一FDDI交換機在許多海軍艦艇上部署了30多年,為國家的安全穩(wěn)定做出了重要貢獻。這一里程碑事件不僅彰顯了DiCon在光纖通信技術(shù)領(lǐng)域的實力,也進一步提升了公司的品牌形象和市場地位。
隨著科技的不斷進步和市場環(huán)境的變化,F(xiàn)airchild公司也面臨著轉(zhuǎn)型和創(chuàng)新的挑戰(zhàn)。為了保持競爭力和市場地位,F(xiàn)airchild公司不斷加大對新技術(shù)和新產(chǎn)品的研發(fā)投入。同時,公司也積極尋求與其他企業(yè)和研究機構(gòu)的合作,共同推動半導體技術(shù)的創(chuàng)新和發(fā)展。通過這些努力,F(xiàn)airchild公司成功實現(xiàn)了從傳統(tǒng)半導體制造商向創(chuàng)新型科技企業(yè)的轉(zhuǎn)型。
以上五個故事簡要概述了Fairchild公司在電子行業(yè)發(fā)展的歷程和成就。作為半導體行業(yè)的領(lǐng)軍企業(yè)之一,F(xiàn)airchild公司憑借其卓越的技術(shù)實力、創(chuàng)新能力和市場洞察力,為電子行業(yè)的發(fā)展做出了重要貢獻。
為了進一步提升公司的競爭力,Dynachip Corp積極尋求國際合作機會。他們與國際知名的半導體企業(yè)建立了戰(zhàn)略合作關(guān)系,共同研發(fā)新技術(shù)、新產(chǎn)品。同時,他們還積極開拓國際市場,將產(chǎn)品銷往全球各地。這些國際合作和市場拓展的努力使Dynachip Corp在國際市場上樹立了良好的品牌形象。
為了進一步提升公司的競爭力,Dynachip Corp積極尋求國際合作機會。他們與國際知名的半導體企業(yè)建立了戰(zhàn)略合作關(guān)系,共同研發(fā)新技術(shù)、新產(chǎn)品。同時,他們還積極開拓國際市場,將產(chǎn)品銷往全球各地。這些國際合作和市場拓展的努力使Dynachip Corp在國際市場上樹立了良好的品牌形象。
在電子行業(yè)的激烈競爭中,Bogen Communications Inc公司憑借一項革命性的技術(shù)創(chuàng)新,迅速嶄露頭角。該公司研發(fā)出一種新型的音頻處理芯片,極大地提升了通信設(shè)備的音質(zhì)和性能。這一創(chuàng)新不僅贏得了市場的廣泛認可,還為公司帶來了大量的訂單和合作伙伴。隨著技術(shù)的不斷完善和市場的擴大,Bogen Communications Inc逐漸成為了音頻通信領(lǐng)域的領(lǐng)導者。
RFID射頻快報編者按 本文以Microchip MCRF355和MCRF360無源標簽為例,比較詳細的介紹了無源標簽的結(jié)構(gòu)工藝與通訊原理。 無源RFID標簽本身不帶電池,依靠讀卡器發(fā)送的電磁能量工作。由于它結(jié)構(gòu)簡單、經(jīng)濟實用,因而獲得廣泛的應用。無源RFID標簽由RF ...… 查看全部問答∨ |
|
剛學單片機沒有多久,遇到了問題,請朋友們幫忙 謝謝 下面是我寫的程序,想簡單實現(xiàn) 數(shù)碼管顯示01234567 76543210; #include void delay(unsigned int cnt) { while(--cnt); } void main() { & ...… 查看全部問答∨ |
|
北京時間2011年3月11日下午14時46分左右,日本東北地區(qū)宮城縣北部發(fā)生里氏8.8級特大地震。震中位于日本本州島仙臺港以東130公里處。此地震對日本國宮城縣、巖手縣、櫪木縣、福島縣、茨城縣、山形縣等地造成強烈傷害。由于宮城縣、巖手縣、櫪木縣 ...… 查看全部問答∨ |
|
我在做一個邏輯信號分析儀,想問一下,待測的邏輯信號輸入FPGA時用不用添加保護措施,比如光隔什么的,加上光隔會不會影響信號的速度呢。探針該怎么和FPGA連接呢,求指教。 [ 本帖最后由 白丁 于 2012-2-19 13:05 編輯 ]… 查看全部問答∨ |
|
有幸申請到,我完全新手如何去開始學習Helper2416?! 有幸申請到Helper2416開發(fā)板,我真的是完全新手,就玩過一段時間的STM32F1和UCOS III,其他的一概不知,看到各位大神們一會RAW-OS,一會Lunix,一會Makefile,一會SD卡啟動,一會NAND啟動的,看手冊也是暈乎乎的,開發(fā)板拿回來一天多了,也就測試通 ...… 查看全部問答∨ |
設(shè)計資源 培訓 開發(fā)板 精華推薦
- Microchip 升級數(shù)字信號控制器(DSC)產(chǎn)品線 推出PWM 分辨率和 ADC 速度業(yè)界領(lǐng)先的新器件
- 意法半導體STM32MP23x:突破成本限制的工業(yè)AI應用核心
- 意法半導體推出用于匹配遠距離無線微控制器STM32WL33的集成的匹配濾波芯片
- ESP32開發(fā)板連接TFT顯示屏ST7789跳坑記
- 如何讓ESP32支持analogWrite函數(shù)
- LGVL配合FreeType為可變字體設(shè)置字重-ESP32篇
- 使用樹莓派進行 ESP32 Jtag 調(diào)試
- ESP32怎么在SPIFFS里面存儲html,css,js文件,以及網(wǎng)頁和arduino的通訊
- ESP32 freeRTOS使用測試
- ARXML 規(guī)則下 ECU 總線通訊與 ADTF 測試方案
- 日產(chǎn)在歐洲推出第三代e-POWER技術(shù)
- 福特CEO更看好Waymo激光雷達方案:比特斯拉純視覺自動駕駛路線可靠
- 智元機器人兩大核心產(chǎn)品啟動規(guī)?;a(chǎn)
- 固態(tài)電池2026量產(chǎn)豪賭,真相還是泡沫?
- 100億元!湖北“下注”人形機器人產(chǎn)業(yè)
- 海外磷酸鐵鋰電池產(chǎn)能從0到1
- 基于多傳感器數(shù)據(jù)的自動駕駛仿真確定性驗證
- 國芯科技發(fā)布全球首款48V安全氣囊芯片,引領(lǐng)智能汽車新紀元
- 亞馬遜全球部署100萬臺機器人
- 下資料 看視頻 抽大獎!泰克汽車電子測試解決方案
- 發(fā)帖贏好禮 | MPS 工程師為您解決DC-DC設(shè)計難題
- 免費體驗業(yè)界最快編譯速度&最好性能 Quartus II v15.0網(wǎng)頁版下載有禮!
- 英飛凌BMS解決方案,為電動汽車和儲能系統(tǒng)保駕護航!
- 已結(jié)束|Maxim IO-Link通信協(xié)議設(shè)計方案詳解,5大優(yōu)勢助你輕松聯(lián)網(wǎng)!
- 下載有禮:數(shù)據(jù)中心養(yǎng)生秘籍《福祿克數(shù)據(jù)中心解決方案》等你帶回家!
- 閱讀并了解是德科技汽車電子、物聯(lián)網(wǎng)(IOT) 精彩專題,答題贏好禮!
- 免費申請測評:超小型 Linux 開發(fā)套件:Quantum Tiny Linux(帶 SoM 和擴展板)
- 中興事件震蕩后的反思與應對:鑒往知來 打破芯片困局
- 人工智能、汽車電子驅(qū)動 半導體進入發(fā)展新階段
- 金屬材料變革將影響中國半導體設(shè)備的研發(fā)方向
- 云思創(chuàng)智獲數(shù)千萬元A輪融資 關(guān)注多模態(tài)機器學習
- 老用戶福音 四款榮耀老產(chǎn)品即將升級安卓8.0
- 三星憑芯片悶聲發(fā)大財,蘋果都做不到,這方面可以吊打同行
- 英特爾:安全問題是自動駕駛領(lǐng)域不可撼動的基石
- 宏碁、華碩行銷轉(zhuǎn)向通路商變主角
- 北京Q1智能電視產(chǎn)量大幅增長4.1倍
- “風米價格戰(zhàn)”持續(xù)升級:專家稱AI電視無意義?
- 關(guān)于信號傳輸協(xié)議中的Blanking(空白)
- EDA教學之友
- embedded vb 如何把它編譯的程序,轉(zhuǎn)成cab阿。在線等
- 有關(guān)STEVAL-MKI129V3的問題
- lora數(shù)據(jù)的解析以及數(shù)據(jù)傳輸?shù)皆破脚_
- 誰設(shè)計的PCB,有才呀!
- 在linux 的內(nèi)核態(tài)中能訪問 tty 終端嗎?
- 美資閃存公司Sr. AE職位(服務器環(huán)境的底層軟件開發(fā)背景)
- 【可視化家庭環(huán)境分析儀】+ADI煙霧傳感器賞析
- 新手提問--想學ARM但是不知道先學ARM7或ARM9好還是先學STM32好--有51和avr經(jīng)驗