MSP430概述
MSP430是德州公司新開(kāi)發(fā)的一類具有16位總線的帶HLASH的單片機(jī),由于其性價(jià)比和集成度高,受到廣大技術(shù)開(kāi)發(fā)人員的青睞。
它采用16位的總線,外設(shè)和內(nèi)存統(tǒng)一編址,尋址范圍可達(dá)64K,還可以外擴(kuò)展存儲(chǔ)器。具有統(tǒng)一的中斷管理,具有豐富的片上外圍模塊,片內(nèi)有精密硬件乘法器、兩個(gè)16位定時(shí)器、一個(gè)14路的12位的模數(shù)轉(zhuǎn)換器、一個(gè)看門(mén)狗、6路P口、兩路USART通信端口、一個(gè)比較器、一個(gè)DCO內(nèi)部振蕩器和兩個(gè)外部時(shí)鐘,支持8M的時(shí)鐘。由于為HLASH型,則可以在線對(duì)單片機(jī)進(jìn)行調(diào)試和下載,且JTAG口直接和FET(FLASHEMULATIONTOOL)的相連,不須另外的仿真工具,方便實(shí)用,而且,可以在超低功耗模式下工作,對(duì)環(huán)境和人體的輻射小測(cè)量結(jié)果為100mw左右的功耗(電流為14mA左右),可靠性能好,加強(qiáng)電干擾運(yùn)行不受影響,適應(yīng)工業(yè)級(jí)的運(yùn)行環(huán)境ll,適合與做手柄之類的自動(dòng)控制的設(shè)備.MSP430系列單片機(jī)的主要優(yōu)點(diǎn)就是低功耗,所以在選擇MSP430系列單片機(jī)設(shè)計(jì)系統(tǒng)時(shí),除了要考慮外圍電路的低功耗以外,還要根據(jù)系統(tǒng)要求選擇合適的MSP430單片機(jī),但是我們?cè)瓌t是夠用就可以,不提倡資源的浪費(fèi)。
MSP430F149特性
①低電壓、超低功耗。工作電壓3.6V~1.8V ,正常工作模式280μA@1MHz,2.2V,待機(jī)模式1.6μA,RAM數(shù)據(jù)保存的掉電模式下0.1μA。五級(jí)節(jié)電模式。
②快速蘇醒,從待機(jī)模式下恢復(fù)工作,只需要不到6μS時(shí)間。
③16位精簡(jiǎn)指令集MCU,命令周期125nS。
④12位ADC,具有內(nèi)部參考電壓源,并且具有采樣、保持、自動(dòng)掃描等功能。具有12位的模數(shù)轉(zhuǎn)換器可以得到很高的精度,并且省去了使用專門(mén)的模數(shù)轉(zhuǎn)換器給設(shè)計(jì)電路板帶來(lái)的麻煩。
⑤2個(gè)16位計(jì)數(shù)器。具有捕獲、門(mén)限功能。
⑥具有片內(nèi)比較器。
⑦支持ISP(在線系統(tǒng)編程),方便開(kāi)發(fā)和項(xiàng)目升級(jí)。
⑧支持序列號(hào),熔絲位燒寫(xiě)。方便簡(jiǎn)單。
⑨雙串口
⑩支持超小型封裝:64P-QFP、64P-QFN。
MSP430F149引腳及功能
因?yàn)镸SP430F149的引腳較多所以在此只將用到的引腳做以下說(shuō)明。
P1.0/TACLK一普通數(shù)字I/O引腳/TImer-A,時(shí)鐘信號(hào)TACLK輸入。
P1.1/TA0--普通數(shù)字I/O引腳‘TImer-A,捕獲;CCIO輸入,比較:OUTO輸出。
P1.2/TA1--普通數(shù)字I/O引腳/TImer-A,捕獲;CCI1輸入,比較:OUT1輸出。
P1.3/TA2-普通數(shù)字I/O引腳,’Timer-A,捕獲;CCI2輸入,比較:OUT2輸出。
P1.4/SMCLK--普通數(shù)字I/O引腳/SMCLK信號(hào)輸入。
P1.5/TA0--普通數(shù)字IO引腳/Timer-A,比較:OUTO輸出。
P1.6/TA1--普通數(shù)字I/O引腳/Timer-A,比較:OUT1輸出。
P1.7/TA2-普通數(shù)字I/O引腳/Timer-A,比較:OUT2輸出。
P2.0/ACLK--普通數(shù)字I/O引腳/ACLK輸出。
P2.1/TAINCLK--普通數(shù)字I/O引腳/Timer-A,吋狆信號(hào)TAINCLK
P2.2/CAOUT/TAO--普通數(shù)字IO引腳/Timer-A:捕荻:CCIOB輸入比較器-A輸出。
P2.3/CAOTA1--普通數(shù)字I/O引腳Timer-A:比較:OUT1輸出/比較器-A輸出。P2:4/CA1/TA2--普通數(shù)字IO引腳/Timer-A:比較:OUT2輸出/比較器-A輸出。P2.5/Rosc一普通數(shù)字I/O引腳/定乂DOC杯稱頻率的外部屯阻輸入。P2.6/ADC12CLK--普通數(shù)字1O引腳/綾換吋紳-12位ADC。
P3.O/SETO--普通數(shù)字IO引腳/從岌送使能-USARTO/SPI方式。
P3.1S1M00--普通數(shù)字I/o引腳從輸入主輸出-USARTOISPI方式。P3.2SOMI0--普通數(shù)字I/O引腳從輸出/主輸入-USARTOISPI方式。
P33/UCLKO--普通數(shù)字I/O引腳外部吋狆輸入-USARTO/UART/SPI方式。
P3.4/UTXDO--普通數(shù)字I/O引腳/岌送數(shù)據(jù)輸出-USARTO/UART方式。
P3.5/URXDO--普通數(shù)字I/O引腳/接收數(shù)據(jù)輸出-USARTOUART方式。
RSTNMI--夏位輸入,非屏蔽中斷輸入端口,或引尋裝載程序后劫(FLASH器件)。
XIN--晶體振蕩器XT1的輸入端口,可以達(dá)接棕準(zhǔn)晶體。
XOUT--晶體振蕩器XT1的輸出端口。
XT2IN--晶體振蕩器XT2的輸入端口,只能達(dá)接棕準(zhǔn)晶體。
XT2OUT--XT2的輸出端口。
Vcc--屯源正端。
Vss--屯源灸端。
msp430無(wú)刷電機(jī)控制設(shè)計(jì)電路
1、系統(tǒng)總體功能介紹
本設(shè)計(jì)總體功能如圖4.1所示,以MSP430F149作為控制核心,通過(guò)專用驅(qū)動(dòng)芯片LM621連接逆變電路驅(qū)動(dòng)電機(jī)工作,按鍵實(shí)現(xiàn)加速誠(chéng)速功能,加速鍵按下一次轉(zhuǎn)速增加100轉(zhuǎn),減速鍵盤(pán)按下一次轉(zhuǎn)速減少100轉(zhuǎn),可調(diào)范圍在2000轉(zhuǎn)到4000轉(zhuǎn)之間,通過(guò)渦輪流量計(jì)測(cè)試實(shí)際流量信息反饋到單片機(jī)中實(shí)現(xiàn)高精度的電機(jī)轉(zhuǎn)速調(diào)節(jié),LCD1602實(shí)時(shí)顯示流量信息。圖4.2為系統(tǒng)總體軟件流程圖。
2、MSP430F149單片機(jī)最小系統(tǒng)
MSP430F149單片機(jī)最小系統(tǒng)由MSP430F149單片機(jī),晶振以及復(fù)位電路組成。兩個(gè)晶振分別接單片機(jī)的XIN1,XOUT1,XIN2xoUT2口,復(fù)位電路采用專用復(fù)位芯:片SP7085,與單片機(jī)RESET口連接,采用SPX1117M3-3.3為單片機(jī)供電3.3V。MSP430F149單片機(jī)最小系統(tǒng)硬件連接如圖4.3.
3、顯示模塊介紹
3.1顯示模塊硬件設(shè)計(jì)
本系統(tǒng)采用LCD1602液晶屏顯示,P4口接上拉電阻,LCD1602液晶屏的控制端接在P3口上面,P3.5--P3.7口。
3.2顯示模塊軟件設(shè)計(jì)
用LCD顯示一個(gè)字符時(shí)比較復(fù)雜,首先找到顯示屏上某個(gè)位置所對(duì)應(yīng)的RAM區(qū)的8個(gè)字節(jié),在有程序分別對(duì)這個(gè)8個(gè)字節(jié)置41”或置*o?,“1”表示點(diǎn)亮,“0”表示
不亮,這樣組合起來(lái)就能把一個(gè)字符點(diǎn)亮。但是有的控制器內(nèi)部自帶字符發(fā)生器,如LCD1602,顯示一個(gè)字符就非常容易了,把控制器的工作設(shè)定在文本方式,再根據(jù)字符顯示的位置,找到該位置找出顯示RAM所對(duì)應(yīng)的地址,設(shè)立光標(biāo),在把所需要的字符代碼送上去就可以了。顯示模塊軟件流程圖如圖4.5。
4、驅(qū)動(dòng)模塊介紹
4.1驅(qū)動(dòng)模塊硬件設(shè)計(jì)
本設(shè)計(jì)采用電機(jī)專用驅(qū)動(dòng)芯片LM621驅(qū)動(dòng)逆變電路實(shí)現(xiàn)電機(jī)的運(yùn)行。LM621的HS1,HS2,HS3與霍爾位置傳感器相連,接入位置信號(hào)以控制電機(jī)的電子換相,引腳11、12、13(灌電流輸出端),引腳14、15、16(抽電流輸出端)分別與逆變電路連接驅(qū)動(dòng)電機(jī),VCC2接+5V電源JINH接單片機(jī)P2.7口輸入PWM波,DIR接單片機(jī)P2.6口控制轉(zhuǎn)向,硬件連接圖如圖4.6。
4.2PWM控制軟件設(shè)計(jì)
PWM(脈沖寬度調(diào)制)是通過(guò)控制固定電壓的直流電源開(kāi)關(guān)頻率,改變負(fù)載兩端的電壓,從而達(dá)到控制要求的一種電壓調(diào)整方法。本次設(shè)計(jì)采用定頻調(diào)寬方式MSP430F149本身含有PWM產(chǎn)生模塊,利用MSP430F149單片機(jī)的TIMEA的模式7產(chǎn)生PWM波對(duì)電機(jī)進(jìn)行調(diào)速。根據(jù)電機(jī)參數(shù)設(shè)定調(diào)速范圍為2000轉(zhuǎn)~4000轉(zhuǎn),每次加速鍵(減速鍵)按下,電機(jī)轉(zhuǎn)速誠(chéng)少(增加)100轉(zhuǎn),調(diào)速等級(jí)分為20級(jí),經(jīng)計(jì)算,每次占空比改變0.025。
5、按鍵模塊介紹
5.1按鍵模塊硬件設(shè)計(jì)
本設(shè)計(jì)采用1*4矩陣鍵盤(pán)實(shí)現(xiàn)對(duì)整個(gè)系統(tǒng)的操作,四按鍵一端分別通過(guò)1k的電阻與單片機(jī)的P3.0,P3.1,P3.2,P3.3接口連接,另一端通過(guò)100k的電阻與+5V電源連接。按鍵模塊連接如圖4.8。
5.2按鍵模塊軟件設(shè)計(jì)
本系統(tǒng)使用最簡(jiǎn)單的1*4矩陣鍵盤(pán)實(shí)現(xiàn)對(duì)整個(gè)系統(tǒng)的操作。各鍵對(duì)應(yīng)的功能和鍵值加圭4.1
各鍵詳細(xì)功能如下:
BUTTON1:?jiǎn)?dòng)系統(tǒng)。單片機(jī)上電初始化后,首先掃描鍵盤(pán),若BUTTON1被按下,則啟動(dòng)系統(tǒng),否則將一直掃描鍵盤(pán),此時(shí)其他鍵沒(méi)有任何功能。BUTTON2和BUTTON4:通過(guò)按BUTTON4或BUTTON4,當(dāng)前位閃爍,此時(shí)通過(guò)BUTTON2和BUTTON4可對(duì)當(dāng)前位進(jìn)行+1/-1,若2S內(nèi)沒(méi)有操作,系統(tǒng)自動(dòng)確認(rèn)當(dāng)前輸入值。
BUTTON3:正反轉(zhuǎn),實(shí)現(xiàn)電機(jī)機(jī)的反轉(zhuǎn)。按鍵模塊子程序流程圖如圖4.9
6、限流電路設(shè)計(jì)
主回路中通過(guò)電動(dòng)機(jī)的電流最終是經(jīng)過(guò)電阻R4接地。因此,U=R4IM:其大小正比于電動(dòng)機(jī)的電流IMO而U{同數(shù)/模轉(zhuǎn)換器的輸出電壓UO分別送到LM324運(yùn)算放大器的兩個(gè)輸入端,一旦反饋電壓Uf大于來(lái)自數(shù)/模轉(zhuǎn)換器的給定信號(hào)Uo,則LM324運(yùn)算放大器輸出為低電平,通過(guò)非門(mén)變?yōu)楦唠娖捷斎氲絃M621的引腳17,使輸出關(guān)斷,從而截?cái)嗔酥绷鳠o(wú)刷電動(dòng)機(jī)定子繞組的所有電流通路,迫使電動(dòng)機(jī)電流下降,一旦電流下降到時(shí)Uq小于Uo,則LM324運(yùn)算放大器輸出回到高電平,通過(guò)非門(mén)變?yōu)榈碗娖?,接LM621的17腳,LM621正常工作。
7、速度反饋電路設(shè)計(jì)
渦輪流量計(jì)采用24V直流供電,輸出24V脈沖信號(hào)經(jīng)過(guò)電阻分壓變?yōu)?.3V脈沖信號(hào),與單片機(jī)P2.5口連接。電路硬件連接見(jiàn)圖4.11。渦輪流量計(jì)輸出的電壓脈沖信號(hào)與瞬時(shí)流量之間的計(jì)算公式為Q=3600xfk,通過(guò)采集流量反饋信號(hào)實(shí)現(xiàn)對(duì)流量的閉環(huán)精確控制。