MSP430之學(xué)習(xí)札記
在MSP430的C語言中,支持3種形式的進(jìn)制類型,即十進(jìn)制(無前綴或后綴)、八進(jìn)制(添加前綴“0”)和十六進(jìn)制(添加前綴“0x”)。
令匠人郁悶的是,編譯器居然不支持二進(jìn)制的寫法!?這讓習(xí)慣于與二進(jìn)制打交道的匠人抓狂不已!嗚呼!吐血!
補(bǔ)充:后來和行家聊及此事,被告知C51里也不支持二進(jìn)制的寫法。看來是怪匠人自己平時用匯編多,而用C太少,少見多怪了。
在這一點(diǎn)上,還是飛思卡爾的編譯器做的更好,他們支持BIN格式
2.
IAR軟件自帶的編輯器,其默認(rèn)值為按一次TAB鍵對應(yīng)2個空格,這不符合匠人自己的習(xí)慣。特尋找出修改方法如下:
3.
如下:
asm
4.
經(jīng)過測試,當(dāng)VCC=3V,上拉電阻開通后,如果該IO口外接到低電平,則該IO口上的電流≈80uA 。也就是說,其內(nèi)部電阻≈37KΩ。
因此,在一些對靜態(tài)耗電要求更高的地方,可以考慮用外部電阻,并選用更大的阻值,以降低系統(tǒng)的功耗。
5.
點(diǎn)擊菜單“project”下的“Options”項(xiàng),進(jìn)入Category列表中C/C++ compiler界面的List標(biāo)簽,選擇生成LST文件并進(jìn)行相關(guān)設(shè)置,如下圖所示:
6.
當(dāng)一個IO口被設(shè)置為輸入口,且其輸入狀態(tài)為高電平時,不能對其進(jìn)行寫0操作,否則會改變其讀入的狀態(tài)。例如:
先執(zhí)行以下指令:
P1DIR = 0x7f;
P1REN = 0x80;
P1OUT = 0x00;
此時如果再去判別P1IN,發(fā)現(xiàn)讀進(jìn)來的P1.7口電平=0了。將上述第3行指令改成下面的形式:
P1OUT &= 0x80;
經(jīng)過這樣的操作,則P1.7口讀入電平=1。
7.
MSP430有一個活動模式(AM)和5個低功耗模式(LPM0~LPM4)。因此,和以往的思路所不同的是,MSP430官方建議我們平時讓系統(tǒng)處于待機(jī)狀態(tài)(某一種低功耗模式),而由中斷來喚醒并執(zhí)行相關(guān)功能。中斷完成后讓系統(tǒng)再次進(jìn)入低功耗待機(jī)模式。
評論