顯示具有 MSP430 標籤的文章。 顯示所有文章
顯示具有 MSP430 標籤的文章。 顯示所有文章

2012年3月22日 星期四

MSP430初探 (2)

MSP430有多種規格,以launch pad而言只有20個pin,但是有的卻多達40個以上,有的可憐到只有14個,不管如何,大多可以分為下面幾種,這些pin為IO接口,大致上可以分為幾種,且每一種都是可以作為他用(或者說重複使用,只要沒人用就可以用作其他用途)
PxIN: input register,x表示第幾個register
PxOUT: output register
PxDIR : register方向
PxSEL : 第二功能選項
PxIE : interrupt功能 enable
PxIES : interrupt edge trigger
PxIFG : interrupt flag

一般可以先用PxOUT規定pin的輸入輸出,如之前介紹,下面談談PxIE跟PxIFG如何使用來處理中斷

P1DIR=~BIT3; //讓PIN3為輸入
P1SEL=BIT3;  //讓該pin為interrupt,不是作為一般的IO pin
P1IE=BIT3;  //enable該pin的interrupt功能
_EINT();  //啟動interrupt

//下面一行是表示該函數為處理P1的所有pin的interrupt sub-routine
#pragma vector=PORT1_VECTOR
__interrupt void P1_ISR(void){
//前面有__intterupt告訴compiler將他編譯為ISR
  //...process
  P1IFG=0;
}
在launchpad中,BIT3為按鈕的pin。因為一個ISR function不只處理一個pin,所以有可能事件會同時發生,利用P1IFG可以看到哪些事件發生了,另外最後把P1IFG=0,這可以解除事件發生的狀態,不然事件可能會被辨識為一直發生

2012年3月21日 星期三

MSP430初探 (1)

P1OUT是一個register,代表在板子上的P0~P8的pin
P1DIR表示輸出、輸入方向,如果0表示輸入,1表示輸出
BIT0~BIT7分別表示第0~7個bit為1
另外可以看到P1.0寫著LED,所以只要把P1OUT=BIT0,就表示要將Red LED打開;同理P1OUT=BIT6就可以將Green LED打開,要同時打開就P1OUT=BIT0|BIT6

2012年3月20日 星期二

新玩意~MSP430

就跟圖片一樣,不是單單只有晶片,是TI的MSP430 LaunchPad,直接跟公司訂購為4.3USD,台灣有好心人士可以買得140NTD一片的價格(郵資另計),如果在台灣不想等的朋友可以直接訂購會稍微比較快一點

內容物如官方網站寫的,不過比較讓我訝異的是,電晶體竟然要自己焊接~TI打算讓我們重拾DIY的感動嗎?

另外讓我訝異的是IDE大到1.2G,原來其中很多是其他晶片的內容,其實並不需要

參考資料:
http://www.ti.com.tw/news/newsdetail.asp?scid=TIA-10030
http://processors.wiki.ti.com/index.php/MSP430_LaunchPad_%28MSP-EXP430G2%29?DCMP=launchpad&HQS=Other+PR+launchpadwiki-prtw