新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > PIC單片機一個實用的按鍵處理程序

        PIC單片機一個實用的按鍵處理程序

        作者: 時間:2016-11-30 來源:網絡 收藏
        程序實現功能:adclass=0&app_id=0&c=news&cf=1001&ch=0&di=128&fv=17&is_app=0&jk=ef3913f3f2527a90&k=%B0%B4%BC%FC&k0=%B0%B4%BC%FC&kdi0=0&luki=1&n=10&p=baidu&q=98059059_cpr&rb=0&rs=1&seller_id=1&sid=907a52f2f31339ef&ssp2=1&stid=0&t=tpclicked3_hc&tu=u1831118&u=http%3A%2F%2Fwww%2E51hei%2Ecom%2Fmcu%2F2108%2Ehtml&urlid=0" id="1_nwl" mpid="1" target="_blank">按鍵調光,按鍵帶蜂鳴器響聲。

        #include
        __CONFIG(0X034);
        #define KEY RC5
        #define LED RC2
        int b;
        void key(unsigned *p)
        {
        static bit valid=0;
        static bit finish=0;
        if(valid==0)
        {
        if(KEY==0)
        {
        if(finish==0)
        {
        finish=1;

        RC0=1;//蜂鳴器接這里
        b=50;
        while(b--);
        RC0=0;

        if(*p>251)
        {
        *p=0x01;
        }
        else
        {
        *p+=50;

        }
        }
        }
        else
        {
        valid=0;
        finish=0;
        }
        }
        else
        {
        if(KEY==0)valid=1;
        }
        }
        void tiaoguang(unsigned PWM)
        {
        unsigned char PwmH;
        unsigned char PwmL;
        unsigned char i;
        for(i=0;i<20;i++)
        {
        PwmH=PWM;
        PwmL=255-PWM;
        LED=1;
        while(PwmH--);
        LED=0;
        while(PwmL--);
        }
        }
        void main()
        {
        unsigned char PWM=0;
        RC2=0;
        TRISC=0b00100000;
        while(1)
        {
        key(&PWM);
        tiaoguang(PWM);
        }

        }

        程序思路:設定PWM變量,每按一次,PWM增加50個單位,加到到250,歸零。


        關鍵詞: PIC單片機按鍵處

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 阳城县| 广州市| 绍兴县| 洛浦县| 沾化县| 宁波市| 长治市| 永新县| 怀仁县| 赣榆县| 绥滨县| 南充市| 通道| 吴堡县| 南雄市| 会理县| 新宁县| 北海市| 商河县| 包头市| 淮安市| 肃南| 兴业县| 江门市| 新巴尔虎左旗| 开化县| 云林县| 昭平县| 普洱| 云霄县| 洛南县| 余干县| 龙陵县| 岢岚县| 资兴市| 隆安县| 哈密市| 新乐市| 多伦县| 凤台县| 昆山市|