MSP430F5529 番外(三)一些問題解答及中斷系統(tǒng)說明
(3)MSP430F5529 不是自帶LCD Driver的,是通過SPI來控制外部的點陣液晶顯示的,并通過P7.6輸出PWM來控制液晶背光的。
但是由于,P7.6正好是TB0.4,即定時器TimerB0的4通道,因此使用TB0時,極有可能會更改其CCR0的值。導致輸出PWM波周期改變了。其結果就是導致液晶屏屏幕變暗。
(4)對于430而言,存在各種各樣的中斷。中斷有時候確實很方便,但是對于中斷使用,我覺得應該盡量少用尤其是中斷嵌套的情況,更應該避免發(fā)生。因為多中斷時,很可能出現一些難以控制和預料的意外。
當同時有多個中斷來的時候才有優(yōu)先級的考慮(優(yōu)先級順序可查看下面向量表)。

要中斷嵌套的話,就必須在中斷中打開總中斷。
實現中斷嵌套需要注意以下幾點:
1)430默認的是關閉中斷嵌套的,除非你在一個中斷程序中再次開總中斷EINT;
2)當進入中斷程序時,只要不在中斷中再次開中斷,則總中斷是關閉的,此時來中斷不管是比當前中斷的優(yōu)先級高還是低都不執(zhí)行;
3)若在中斷A中開了總中斷,則可以響應后來的中斷B(不管B的優(yōu)先級比A高還是低),B執(zhí)行完再繼續(xù)執(zhí)行A。注意:進入中斷B后總中斷同樣也會關閉,如果B中斷程序執(zhí)行時需響應中斷C,則此時也要開總中斷,若不需響應中斷,則不用開中斷,B執(zhí)行完后跳出中斷程序進入A程序時,總中斷會自動打開;
4)若在中斷中開了總中斷,后來的中斷同時有多個,則會按優(yōu)先級來執(zhí)行,即中斷優(yōu)先級只有在多個中斷同時到來時才起做用!中斷服務不執(zhí)行搶先原則。
5)對于單源中斷,只要響應中斷,系統(tǒng)硬件自動清中斷標志位,對于TA/TB定時器的比較/捕獲中斷,只要訪問TAIV/TBIV,標志位倍被自動清除;
(5)如何將數字轉化為對應的字符
大家以后經常會碰到如何將自己得到的一個整形或者浮點型數據顯示到LCD上面去,LCD只能識別ASCII碼,不能直接識別數字。因此,就要用到將數字轉化為ASCII碼的。(一位一位轉化)
a) 直接按照ASCII碼的規(guī)則,把十進制數加上0x30就得到了相應的ASCII碼;
b) 建一個字符數組CharCode[10]=“0123456789”,
則CharCode[i],就是十進制數字i對應的ASCII碼;
c) C語言中stdlib.h頭文件中定義的有將數值轉化為字符串的函數,可以調用,不過個人不推薦;
評論