當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀] MSP430單片機(jī)具有豐富的外圍模塊,如MSP430F449就包含8組I/O端口、精密模擬比較器、硬件乘法器、串行通信可軟件選擇UART/SPI模式等。在實際的應(yīng)用中,USART接口具有極佳的通用性,出于擴(kuò)展接口的目的,往往通過

    MSP430單片機(jī)具有豐富的外圍模塊,如MSP430F449就包含8組I/O端口、精密模擬比較器、硬件乘法器、串行通信可軟件選擇UART/SPI模式等。在實際的應(yīng)用中,USART接口具有極佳的通用性,出于擴(kuò)展接口的目的,往往通過軟件模擬SPI,以獲得更多的SPI接口。本文就是通過軟件模擬實現(xiàn)了SPI通信,來驅(qū)動和控制數(shù)字電位器的。數(shù)字電化器也稱為數(shù)控電位器,是一種用數(shù)字信號控制阻值改變的器件。數(shù)字電位器與機(jī)械式電位器相比,具有可程控改變阻值、耐震動、噪聲小、壽命長、抗環(huán)境污染等優(yōu)點,因而在自動控制、智能儀器儀表、消費類電子產(chǎn)品等許多領(lǐng)域得到成功應(yīng)用。

1 SPI概述
    串行外圍設(shè)備接口SPI(Scrial Pcriphcral Intcrfacc)總線技術(shù)是一種同步串行接口,其硬件功能很強(qiáng),所以與SPI有關(guān)的軟件相當(dāng)簡單,使CPU有更多的時間處理其他事務(wù)。SPI總線上可以連接多個可作為主機(jī)的MCU,裝有SPI接口的輸出設(shè)備、輸入設(shè)備(如液晶驅(qū)動)以及A/D轉(zhuǎn)換等外設(shè),也可以簡單連接到單個TTL移位寄存器的芯片??偩€上允許連接多個設(shè)備,但在任一瞬間只允許一個設(shè)備作為主機(jī)。串行模塊工作在SPI模式,通過4線(SOMI、SIMO、SCK及STE)或者3線(SOMI、SIMO、SCK)同外界通信:
    SOMI——串行數(shù)據(jù)輸入(從出主入)。
    SIMO——串行數(shù)據(jù)輸出(主出從入)。
    SCK——串行移位時鐘。
    STE——從機(jī)模式發(fā)送/接收允許控制信號。
    數(shù)據(jù)的傳輸由SCK決定,數(shù)據(jù)可以在SCK的上升沿或者下降沿輸出。因為SPI接口定義具有很大的靈活性,因此導(dǎo)致各個廠商帶有SPI接口的芯片在工作時序上并不一致,所以使用時要注意芯片SPI接口工作時序的差別。

2 數(shù)字電位器構(gòu)成及應(yīng)用說明
    本文用到的是MCP4251數(shù)字電位器,該電位器是雙電阻網(wǎng)絡(luò)的,MCP4251器件框圖如圖1所示。


    利用該器件可以構(gòu)造一些線性的函數(shù),這些函數(shù)可以用抽頭和接線端B之間的電阻來表示。數(shù)學(xué)模型為:
   
    該器件支持SPI串行協(xié)議。該SPI以從模式工作,最多使用4個引腳。這些引腳是CS(片選)、SCK(串行時鐘)、SDI(串行數(shù)據(jù)輸入)、SDO(串行數(shù)據(jù)輸出)。圖2給出了典型的SPI接口。


    MCP4251的SPI模塊支持兩種標(biāo)準(zhǔn)的SPI模式,分別是模式00和11。SPI模式由SCK引腳的狀態(tài)決定。在模式00下,SCK空閑狀態(tài)=低電平,數(shù)據(jù)在SCK的上升沿從SDI引腳傳入,在SCK的下降沿從SDO引腳傳出。在模式11下,SCK空閑狀態(tài)=高電平,數(shù)據(jù)在SCK的上升沿從SDI引腳傳入,在SCK的下降沿從SDO引腳傳出。圖3給出了兩種模式下的SPI波形。


    在每種模式下,都有4個可能的命令。8位命令(遞增抽頭和遞減抽頭命令)中包含命令字節(jié),而16位命令(讀數(shù)據(jù)和寫數(shù)據(jù)命令)中包含命令字節(jié)和數(shù)據(jù)字節(jié)。命令字節(jié)中包含兩個數(shù)據(jù)位。圖4給出了通用SPI命令格式。



3 MSP430軟件模擬SPI串口的實現(xiàn)
    本文采用MSP430F449單片機(jī)的I/O口模擬SPI通信,選用SCK下降沿輸出、上升沿輸入的SPI三線接口類型。定義單片機(jī)MSP430F449的P3.4端口為輸出MOSI,P3.5端口為時鐘信號SCK,P3.7端口為片選輸入CS,P4.0端口為輸入MISO。在P3.5下降沿時,輸出數(shù)據(jù)data的高位,然后把P3.5的電壓拉高,data中的數(shù)據(jù)依次右移1位,再將P3.5的電平拉低,再次輸出data的高位,實際這時輸出的是原來data中的次高位,data如此重復(fù)有移8次就完成了1個寧符的輸出。實現(xiàn)該功能的代碼如下:
   
   
    同理,把P3.5的輸出電平拉高,制造時鐘的上升沿,檢測輸入引腳P4.0的電平,將其記入data中,再將P3.5的輸出電平拉低,這時就接收好1個字符位了,然后將data接收到的字符位右移1位,準(zhǔn)備繼續(xù)接收字符下一位,如此重復(fù)8次后就收到1個完整的字符,代碼如下:
   
    如果是選用SCK下降沿輸入、上升滑輸出的SPI接口類型,只需要把上面接收和發(fā)送程序中SCK的上升沿和下降沿交換即可滿足時序要求。模擬串口通信的代碼簡單,靈活性強(qiáng),可以在具體的SPI讀寫程序中實現(xiàn)其硬件接口的功能。1個SPI的時鐘周期就是執(zhí)行上述模擬串口指令所需要的時間,因此其串口速率主要由系統(tǒng)時鐘來決定,提高系統(tǒng)時鐘頻率能夠進(jìn)一步提高SPI串口的傳輸速率。

4 MSP430模擬SPI驅(qū)動數(shù)字電位器實例
    圖5為芯片與單片機(jī)連接的引腳連接圖。片選CS在低電平時有效。按照時序圖和引腳連接圖,首先需要定義MSP430F449的I/O端口,P3.4為MOSI,P3.5為SCK,P3.7為CS,P4.0為MISO。


    由于使用MSP430F449的I/O模擬串口通信,沒有使用中斷函數(shù),只需要調(diào)用一個子函數(shù)就能實現(xiàn)其功能,因此在操作上相比硬件而言更加簡單。下面給出了寫數(shù)據(jù)命令和遞增命令的子函數(shù)。

    在主程序中進(jìn)行初始化及調(diào)用兩個子函數(shù):
   
   
    此程序通過MSP430開發(fā)工具IAR Embedded Workbench編譯、運行,并下載程序運行。由于此程序是控制電阻網(wǎng)絡(luò)1的,通過萬用表來測電阻網(wǎng)絡(luò)1的抽頭和B端之間的電阻變化情況,可以看到電阻呈增長變化。由此可以看出程序是可執(zhí)行的,而且達(dá)到了預(yù)期的效果。然后在兩端加上電壓,可以發(fā)現(xiàn)所分的電壓也呈現(xiàn)增長趨勢,實現(xiàn)了良好的分壓功能。表1為電壓表顯示的部分讀數(shù)。



結(jié)語
    本文描述了MSP430F449單片機(jī)模擬SPI通信接口的實現(xiàn),并用模擬SPI接口與電位器之間實現(xiàn)了很好的通信,給出了在IAR編譯環(huán)境下編寫的控制程序,控制電位器抽頭的移動規(guī)律。實驗表明系統(tǒng)能夠很好地實現(xiàn)電位器的分壓功能。利用數(shù)字電位器可以模擬一些線性函數(shù)的變化趨勢,建立數(shù)學(xué)模型來模擬現(xiàn)實生活中的一些物理量的變化情況。此外該功能函數(shù)的結(jié)構(gòu)簡單,可靠性高,該方法同樣適用于其他類型單片機(jī)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉