新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 進制位(CY)與數據左、右移動

        進制位(CY)與數據左、右移動

        作者: 時間:2016-12-01 來源:網絡 收藏
        1、圖

        2、代碼
        3、小結

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


        代 碼

        #include
        sbit led=P2^0;
        sbit led2=P2^1;
        void DelayUs2x(unsigned char t)
        {
        while(--t);
        }
        void DelayMs(unsigned char t)
        {

        while(t--)
        {
        //大致延時1mS
        DelayUs2x(245);
        DelayUs2x(245);
        }
        }
        /*以下函數就是反轉掃描的精華*/
        unsigned char jpsm()//矩陣鍵盤反轉掃描
        {
        unsigned char i=0;//用于接收按鍵數值
        P0 = 0x0f;//檢測低4位
        if(0x0f != P0)//檢測按鍵是否按下
        {
        DelayMs(10);//去抖
        if(0x0f != P0)//在次判斷按鍵是否真的按下而不是其他干擾
        {
        i = P0;//把低4位賦值給i
        P0 = 0xf0;//檢測高4位
        DelayUs2x(5);//稍微延時。。這條語句可以去掉
        i = i | P0;//把低4位和高4位組合成完整的按鍵數值
        while( 0xf0 != P0 )//檢測按鍵是否松開
        {
        ;
        }
        return i;//返回按鍵數值
        }
        }
        return 0;//按鍵沒有按下返回0
        }

        void main()
        {
        unsigned char i=0xaa;
        while(1)
        {
        if(126 ==jpsm())//判斷按鍵1是否按下
        {
        /*i <<= 1;//注:在Keil編譯器中不管是左移還是右移,移出的數據都是放在CY中
        led = CY;*/
        i >>=1;
        led = CY;
        }
        }
        }


        小結
        1、什么是進制位
        答:就是保存進位的。



        關鍵詞: 進制位數

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 家居| 德惠市| 和静县| 全州县| 中西区| 嘉善县| 金溪县| 精河县| 河西区| 普定县| 肥乡县| 泗水县| 杭锦后旗| 莱西市| 周口市| 平阳县| 黄山市| 包头市| 河北省| 德阳市| 青州市| 葫芦岛市| 木里| 上犹县| 克拉玛依市| 上林县| 博爱县| 寿阳县| 阳江市| 澜沧| 南通市| 南川市| 区。| 托克托县| 会同县| 施秉县| 聂荣县| 横山县| 保定市| 平顺县| 寿阳县|