洪嵐峰 發表於 2023-4-23 10:22:37

MSP430G2553

MSP430G2553製作保全系統

需要以下零件:

MSP430G2553微控制器開發板
門窗磁簧感應器
蜂鳴器
杜邦線等連接線



門窗磁簧感應器    MSP430G2553開發板
紅色線             P1.3
黑色線             GND
蜂鳴器正極         P1.2
蜂鳴器負極         GND
在連接完硬體後,您可以使用MSP430G2553的LaunchPad開發板和TI的Code Composer Studio集成開發環境來進行軟體開發。

以下是示範程式碼:


#include <msp430.h>

#define BEEP_ON() P1OUT |= BIT2
#define BEEP_OFF() P1OUT &= ~BIT2

void main(void)
{
    WDTCTL = WDTPW + WDTHOLD;   // 停用看門狗計時器
    P1DIR |= BIT2;              // 設置P1.2為輸出,控制蜂鳴器
    P1IE |= BIT3;               // 啟用P1.3中斷
    P1IES |= BIT3;              // 設置P1.3中斷觸發方式為下降沿觸發
    P1IFG &= ~BIT3;             // 清除P1.3中斷標誌

    __enable_interrupt();       // 啟用全域中斷

    while (1)
    {
        // 等待中斷發生
        __bis_SR_register(LPM0_bits + GIE);
    }
}

#pragma vector=PORT1_VECTOR
__interrupt void PORT1_ISR(void)
{
    // 檢查P1.3中斷是否為門窗磁簧感應器觸發
    if (P1IFG & BIT3)
    {
        // 發出警報聲
        BEEP_ON();
        __delay_cycles(1000000);
        BEEP_OFF();

        // 清除P1.3中斷標誌
        P1IFG &= ~BIT3;
    }
}
這段程式碼使用P1.3腳位作為門窗磁簧感應器的輸入,當門窗磁簧感應器被觸發時,P1.3會產生中斷。

程式碼會在中斷處理程序中控制蜂鳴器發出警報聲。
頁: [1]
查看完整版本: MSP430G2553