1 / 27

[0109] Lecture 14

[0109] Lecture 14. MSP430 Review MSP430 功能模組回顧 應用範例練習. MSP430 模組. MSP430 模組 UCS GPIO TimerA RTC, Real Time Clock ADC12. MSP430 模組. MSP430 模組 WDT, Watch Dog Timer MPY 硬體乘法器 USCI-UART USCI-SPI. MSP430 模組. UCS 設定系統的三個主要時脈 : MCLK 、 SMCLK 、 ACLK

Download Presentation

[0109] Lecture 14

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. [0109]Lecture 14 • MSP430 Review • MSP430 功能模組回顧 • 應用範例練習

  2. MSP430模組 • MSP430 模組 • UCS • GPIO • TimerA • RTC, Real Time Clock • ADC12

  3. MSP430模組 • MSP430 模組 • WDT, Watch Dog Timer • MPY 硬體乘法器 • USCI-UART • USCI-SPI

  4. MSP430模組 • UCS • 設定系統的三個主要時脈:MCLK、SMCLK、ACLK • 預設時脈數據為:MCLK = 1.045MHzSMCLK = 1.045MHzACLK = 32KHz

  5. MSP430模組 • GPIO • 一般的數位輸入或輸出 • 用作輸出時:PxDIR打開腳位輸出PxOUT控制輸出0或1 • 用作輸入時:PxIN顯示腳位輸入狀態PxREN設定是否接上 上拉/下拉電阻PxOUT在P2REN啟用時,用作設定上拉或是下拉電阻

  6. MSP430模組 • GPIO • 用作輸入時:PxIE設定各個腳位的中斷訊號回應與否PxIES設定各個腳位觸發中斷的相位變化,0 = 0 to 1;1 = 1 to 0.PxSEL設定腳位是用作I/O Port 抑或是其他功能 • 一個GPIOPortx擁有一個中斷向量

  7. MSP430模組 • TimerA • 做計時器使用時,依據選擇與設定的時脈來源,驅動16-bit暫存器TAR的計數 • 根據設定,能夠提供特定時間間隔的中斷事件觸發 • 除了TAR的溢位歸零外,還有若干個CCR暫存器亦提供中斷功能

  8. MSP430模組 • TimerA • 一個TimerA模組配備有兩個中斷向量,CCR0IFG獨佔一個中斷向量TIMER0_A0_VECTOR • TAIFG和其餘的CCRxIFG則分享一個中斷向量TIMER0_A1_VECTOR

  9. MSP430模組 • TimerA • 熟悉TimerA的Mode Control(MC)00=STOP01= Upmode10= Continuous11= Up/Down mode • 藉由MC設定,確實掌握TimerA的動作

  10. MSP430模組 • TimerA • 做PWM輸出使用時,大抵和做計時器時雷同,但不需設定中斷。 • 要先找到輸出PWM訊號的CCR模組,再針對其作設定 • 利用CCR模組中的OUTMODE0~7搭配TimerA的三種計數模式,掌握輸出波形(頻率、Duty cycle)

  11. MSP430模組 • RTC • Real Time Clock讓我們能夠輕易地配置一具時鐘日曆 • 選用HEXmode,並透過CCS寫入10進位的數值到相對應的暫存器中,即可設定時間日期 • 各項時間設定完成後,可以清除RTCHOLD bit為0,讓RTC開始運作

  12. MSP430模組 • RTC • RTC 模組擁有一個中斷向量 • 中斷訊號來源有RTCRDYIFG、RTCTEVIFG、RTCAIFG • RTCRDYIFG來自於模組每秒會可讀取一次,並發出RDY中斷讓我們更新時間資訊或產生秒中斷 • RTCTEVIFG來自於Interval TimeEvent,在RTCCTL1中可以選擇每分鐘、每整點

  13. MSP430模組 • RTC • RTCTEVIFG來自於Interval TimeEvent,在RTCCTL1中可以選擇每分鐘、每整點、每日00:00與每日12:00產生 • RTCAIFG來自於使用者設定的鬧鈴時間

  14. MSP430模組 • ADC12 • ADC12提供一個類比訊號轉12-bit數位訊號的模組 • 模組中總共有12個類比訊號channel可以接收類比訊號 • 總共有16個MEM窗口可以設定抓取類比通道中的轉換結果 • ADC12擁有一個中斷向量可使用

  15. MSP430模組 • ADC12 • ADC12IFG0~ADC12IFG15分別在MEM0~MEM15存入轉換結果後升起,進入ADC12 ISR中存取轉換結果

  16. MSP430模組 • WDT • 看門狗計時器,用來防止系統陷入死結而當機,看門狗計時器啟動時,在一定時間內沒有重置看門狗計時器,則會自動Reset • 看門狗計時器在設定時,需輸入密碼WDTPW,密碼輸入錯誤,也會導致系統重開機

  17. MSP430模組 • WDT • 看門狗計時器亦可設定為32-bit的計時器,可以提供特定時間間格中斷 • WDT在計時器模式時,提供一個WDT_VECTOR中斷向量可以使用 • WDT也支援HOLD暫停模式,以節省功耗 • WDT計數暫存器的值無法直接存取,僅能透過WDTCNTCL設值為1清除。

  18. 應用範例 • MIDIInstrument • 利用EVM上的蜂鳴器發出聲音 • 若提供給蜂鳴器的正電是PWM信號,則能夠有音高變化 • 利用TimerA產生所需的PWM訊號,使得蜂鳴器成為能夠演奏的樂器 • 使用LCD 顯示與Key pad控制

  19. 應用範例 • MIDIInstrument • 首先參考電路圖,找到蜂鳴器的腳位,以利配置功能選擇與相應的TA模組 • 由於要以Keypad控制,所以也要配置Port2的對應設定 • 設置D1、D2 作為指示燈號,使用LCD顯示訊息,所以也要設置LCD • 設置TA模組作為PWM輸出,但先不動作

  20. 應用範例 • MIDIInstrument • 由參考資料,我們知道:DO =[524Hz]RE = [587Hz]MI = [662Hz]FA = [701Hz]SOL = [787Hz]LA =[878Hz]SI = [1004Hz] • 我們要在Port2 ISR中執行PWM的輸出,由於只有5個按鍵,我們便配置C~G在Key1~Key5

  21. 應用範例 • MIDIInstrument • 選用適當的輸出模式,並計算特定PWM頻率所需要的參數設定 • 將各個音高的參數設定分別安排在5個按鍵的ISR中 • 思考電子琴的動作,安排Port2ISR要怎麼寫? • 加上LCD顯示與LED燈號,提供更多裝置反應

  22. 應用範例 • MIDIInstrument • 檢查是否所有相關設定都已安排妥當 • 編譯並燒錄程式,然後實際操作。 • 思考是否能夠配置完整的旋律,呈現音樂盒的功能?

  23. 應用範例 • MIDIInstrument • 本範例中使用到:系統時脈GPIOTimer ALCD Module

  24. 應用範例 • Reference Code • MIDI Instrument

  25. Exercise • 完成後,找到專案裡面的source file,以附檔形式寄到 kchu@ares.ee.nchu.edu.tw,並在主旨中註明姓名、系級與學號,source檔名稱請利於辨識。EX: • 主旨: 微處理機實習 LAB3 王大明 電機碩二 7101064123

  26. Appendixes • 附件 • LCD.h • 附件下載

  27. Appendixes • 附件 • Example Sets

More Related