《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 低成本ARM系列LM3S101微控制器的結(jié)構(gòu)與應(yīng)用
低成本ARM系列LM3S101微控制器的結(jié)構(gòu)與應(yīng)用
摘要: LM3S101是美國Luminary公司生產(chǎn)的,、基于ARMCortex-M內(nèi)核的32位微控制器芯片,它的銷售價格在1美元以下,,在構(gòu)建同等性價格比的應(yīng)用系統(tǒng)時成本很低,。廣州周立功單片機發(fā)展有限公司推出了以學習和評估該芯片為目的的開發(fā)套件EasyArm101,。該套件由H-JTAG調(diào)試器,、開發(fā)板,、KeilμVision開發(fā)工具包,、各類驅(qū)動程序庫,、文檔以及與實例程序配套的相關(guān)元器件等組成,。
Abstract:
Key words :

       LM3S101" title="LM3S101">LM3S101是美國Luminary公司生產(chǎn)的、基于ARM" title="ARM">ARMCortex-M內(nèi)核的32位微控制器" title="微控制器">微控制器芯片,,它的銷售價格在1美元以下,,在構(gòu)建同等性價格比的應(yīng)用系統(tǒng)時成本很低。廣州周立功單片機發(fā)展有限公司推出了以學習和評估該芯片為目的的開發(fā)套件EasyArm101" title="EasyArm101">EasyArm101。該套件由H-JTAG調(diào)試器,、開發(fā)板,、KeilμVision開發(fā)工具包、各類驅(qū)動程序庫,、文檔以及與實例程序配套的相關(guān)元器件等組成,。
1 LM3S101芯片的架構(gòu)與特點

1.1 架 構(gòu)

圖1是LM3S101 芯片電路圖和EasyArm101開發(fā)套件實物圖。



        LM3S101采用哈佛架構(gòu),、Thumb-2指令集,。芯片內(nèi)部集成了8 KB單周期的Flash ROM,2 KB單周期的SRAM,,2個32位定時器,,1個同步串行接口(SSI),1個遵循ARM FiRM規(guī)范的看門狗定時器,,1個UART,,2個模擬比較器以及18個GPIO等,時鐘頻率為20 MHz,。

1.2 應(yīng)用特點

◆存儲管理方式簡單,;

◆具有硬件位操作能力;

◆中斷響應(yīng)快捷,;

◆定時器與脈寬調(diào)制PWM功能,;

◆同步和異步串行接口。

2 開發(fā)環(huán)境和過程

2.1 開發(fā)環(huán)境

        支持LM3S101芯片開發(fā)的集成環(huán)境有好幾種,,本文以Keil μVision3 for ARM軟件為例來介紹開發(fā)環(huán)境,。該軟件集成了編譯器、鏈接器和調(diào)試器等,,其使用方式與Keil for C51相似,。針對LM3S系列控制器提供的函數(shù)庫名為Stellaris Drivet Library。

2.2 開發(fā)過程

① 開發(fā)軟件安裝:安裝KeilμVision3 for ARM軟件,。

② 調(diào)試器驅(qū)動安裝:將ULINK調(diào)試器連接到計算機,,選擇"自動搜索驅(qū)動"選項安裝。

③ 設(shè)置編譯器:選擇Project→"Components,,Environ-ment;Books"進入編譯器設(shè)置界面,,選擇RealView編譯器,。選中"Use RealView Complier"選項,其他選默認設(shè)置,。

④ 建立工程:選擇Project→"New Project",,輸入工程名,選擇對應(yīng)的MCU型號LM3S101,。按軟件提示復制相應(yīng)的啟動代碼,。該啟動代碼用匯編編寫,,它主要對堆棧和中斷向量進行初始化。接下來需將DriverLib.lib文件導入到工程,,該文件就是Stellaris Driver Library的二進制版本,,導入以后就可以在程序中調(diào)用庫函數(shù)。

⑤ 程序調(diào)試:應(yīng)用程序編寫完成后,,按F7編譯,。編譯通過以后,選擇Flash→Download菜單,,就可以將程序下載到LM3S101上,。

3 LM3S101應(yīng)用實例

3.1 直流電動機調(diào)速控制


        使用PWM控制直流電動機調(diào)速是通過調(diào)節(jié)輸出方波的占空比來實現(xiàn)的,這里采用定頻調(diào)寬法,,即方波的周期不變,,只改變方波寬度。當PWM輸出占窄比為50%時,,電機處于靜止狀態(tài),;當占空比小于50%時,電機反轉(zhuǎn),;當占空比大于50%時,,電機正轉(zhuǎn)。調(diào)節(jié)占空比就可以改變轉(zhuǎn)速,。按鍵KEY1和KEY2用來控制占空比進行調(diào)速實驗,,按下KEY1時占空比提高10%,按下KEY2時占空比降低10%,。

3.1.1 直流電動機調(diào)速原理

        直流電動機PWM調(diào)速控制原理圖如圖2所示,。其中,TA7291S是直流電動機驅(qū)動芯片,,工作電壓為4~20V,,最大輸出電流為0.4 A。



3.1.2 直流電動機調(diào)速程序設(shè)計

        程序流程圖如圖3所示,。初始化程序?qū)WM占空比設(shè)置為50%,,將PA5和PA4設(shè)置為上升沿中斷觸發(fā)方式。當中斷發(fā)生后,,由中斷服務(wù)程序修改占空比,,從而調(diào)節(jié)電機的轉(zhuǎn)速。



3.2 步進電機運行

          實驗使用四相步進電機,,采用單極單相激磁方法,。步進電機運行通過4個輸入控制信號CE、CD、SI和MO來控制,。其中,,CE是步進電機使能位,高電平使能,,低電平禁能,;CD用于控制電機轉(zhuǎn)向,低電平順時針轉(zhuǎn)動,,高電平逆時針轉(zhuǎn)動,;SI為轉(zhuǎn)動量控制端,每收到一個脈沖即轉(zhuǎn)動N個步進角,;N的值由端口MO設(shè)置,,低電平時N為1,高電平時N為10,。輸入控制信號由PA0~PA3進入,,激磁信號由PB0~PB3輸出。

3.2.1 步進電機運行控制原理 

        步進電動機運行控制電路原理如圖4所示,。其中TLP521-4為光隔芯片,,UNL2003為達林頓驅(qū)動器,用于進行步進電機驅(qū)動,。



3.2.2 步進電機運行控制程序設(shè)計

        程序流程圖如圖5所示,。主程序等待輸入控制信號觸發(fā)外部中斷,每次中斷轉(zhuǎn)動N個步距角,,其判斷過程由中斷服務(wù)程序?qū)崿F(xiàn),。



結(jié) 語

         LM3S101芯片性價比高,具有配套完善的軟件開發(fā)工具和豐富的驅(qū)動程序庫,,使用C語言編程,,兇此特別適合構(gòu)建32位的小嵌入式系統(tǒng)。本文介紹了使用開發(fā)套件EasyArm101進行直流電動機調(diào)速控制和步進電機運行控制的實例,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。