新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 51單片機中斷方式(已消抖)

        51單片機中斷方式(已消抖)

        作者: 時間:2016-11-18 來源:網絡 收藏
        #include
        #define uint unsigned int
        #define uchar unsigned char
        uchar flag,p;
        sbit l5=P0^4;
        sbit beep=P3^4;
        uchar scan_key(void)
        {
        uchar temp;
        temp=P0;
        return temp;
        }
        void delay(uint k)
        {
        uint i,j;
        for(i=0;i{
        for(j=0;j<121;j++)
        {;}
        }
        }
        void init() interrupt 0
        {
        EX0=0;
        delay(1);
        if(l5==0) //s1是外部中斷對應的IO口
        {
        beep=~beep;
        }
        while(!l5);
        EX0=1;//開外部中斷
        }
        void main(void)
        {
        TMOD=0x01;
        EX0=1; //開外部中斷 0
        IT0=0; //設置成 低電平觸發方式
        EA=1;
        p=0;
        beep=0;
        while(1)
        {
        delay(3);
        }
        }


        評論


        技術專區

        關閉
        主站蜘蛛池模板: 绥棱县| 古田县| 大庆市| 四川省| 昌邑市| 左贡县| 合作市| 天长市| 弋阳县| 西峡县| 德州市| 宾阳县| 平武县| 邹城市| 郁南县| 萨嘎县| 大埔县| 蒙城县| 静海县| 会宁县| 宜良县| 丽江市| 三明市| 清水县| 中方县| 香港 | 吉林市| 高要市| 邳州市| 大关县| 嘉定区| 中西区| 沛县| 德昌县| 成安县| 高碑店市| 尉氏县| 大新县| 雷山县| 聂荣县| 长宁县|