新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 凌陽16位單片機之外部中斷

        凌陽16位單片機之外部中斷

        作者: 時間:2016-11-20 來源:網絡 收藏
        實現功能:利用外部中斷來控制8個發光二極管的點亮與熄滅,利用鍵盤產生外部中斷觸發信號。

        實驗現象:當按S20鍵時,D8~D11四個發光二極管點亮,當按S21鍵時,D4~D7四個發光二極管點亮。

        本文引用地址:http://www.104case.com/article/201611/318712.htm

        #include "SPCE061A.H"
        unsigned int output=0;
        void IRQ3(void)__attribute__((ISR));
        void IRQ3()
        {
        unsigned int delay;
        *P_IOA_Data = 0x00ff;
        if(*P_INT_Ctrl & C_IRQ3_EXT1)
        {
        *P_IOA_Data = 0x000f;
        delay = 0x7fff;
        while(delay--);
        *P_INT_Clear = C_IRQ3_EXT1;
        }
        else if(*P_INT_Ctrl & C_IRQ3_EXT2)
        {
        *P_IOA_Data = 0x00f0;
        delay = 0x7fff;
        while(delay--);
        *P_INT_Clear = C_IRQ3_EXT2;
        }
        else
        {
        *P_INT_Clear = C_IRQ3_KEY;
        }
        }
        int main()
        {
        asm("INT OFF");
        *P_IOA_Dir = 0x00ff;
        *P_IOA_Attrib = 0x00ff;
        *P_IOA_Data = 0x0000;

        *P_IOB_Dir = 0x0000;
        *P_IOB_Attrib = 0x0000;
        *P_IOB_Data = 0x0008+0x0004;

        *P_INT_Ctrl = C_IRQ3_EXT1 + C_IRQ3_EXT2;
        asm("INT IRQ");
        while(1)
        {
        *P_Watchdog_Clear = 0x0001;
        }
        }


        評論


        技術專區

        關閉
        主站蜘蛛池模板: 壶关县| 砀山县| 岳池县| 南阳市| 邵阳市| 墨江| 武宣县| 阳原县| 汕尾市| 华池县| 盖州市| 樟树市| 洛阳市| 东平县| 泸州市| 木里| 修文县| 江陵县| 牙克石市| 平原县| 呼玛县| 舟山市| 阜城县| 河池市| 三江| 三亚市| 长泰县| 石河子市| 璧山县| 营口市| 英山县| 宝坻区| 耒阳市| 黔西| 临朐县| 德格县| 甘谷县| 平遥县| 新河县| 湘西| 呈贡县|