在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            單片機(jī)通訊程序

            作者: 時間:2016-11-11 來源:網(wǎng)絡(luò) 收藏
            發(fā)送機(jī)發(fā)送按鍵信息,接收機(jī)把接受的信息用數(shù)碼管顯示出來

            本文引用地址:http://www.biyoush.com/article/201611/316785.htm

            發(fā)送機(jī)程序

            #include
            #define uchar unsigned char
            #define uint unsigned int
            void delay(uint);
            void SET_SYSTEM(void);
            uchar KEY_scan(void);


            void main()
            {
            uchar data i;
            delay(100);
            SET_SYSTEM();
            while(1)
            {
            i=KEY_scan();
            if(i)
            {
            TI=0;
            SBUF=i;
            while(!TI);
            }
            }
            }
            /*************************************************************************************/
            void delay(uint t) /* 延時子程序 */
            {
            uchar i;
            while(t--)
            {
            for(i=0;i<125;i++) {}; /* 12 MHz 晶振大約是 1 ms */
            }
            }
            /*************************************************************************************/
            uchar KEY_scan(void) /*鍵盤掃描程序 (獨立式)*/
            {
            uchar data key;

            P1=0xff;
            key=P1;
            if(key==0xff) return 0;
            else
            {
            delay(10);
            key=P1;
            if(key==0xff) return 0;
            else
            {
            switch(key)
            {
            case 0xfe: return 1;break;
            case 0xfd: return 2;break;
            case 0xfb: return 3;break;
            case 0xf7: return 4;break;
            case 0xef: return 5;break;
            case 0xdf: return 6;break;
            case 0xbf: return 7;break;
            case 0x7f: return 8;break;
            default : return 9;
            }
            }
            }
            }
            /*************************************************************************************/
            void SET_SYSTEM(void)
            {
            TMOD=0x20; /* 定時器1工作于方式2 */
            PCON=PCON&0x07;
            TH1=0xfe; /* 設(shè)置波特率 */
            TL1=0xfe;
            SCON=0x50;
            IE=0x00; /* 即 EA=0;關(guān)所有中斷 */
            TI=0;
            RI=0;
            TR1=1;
            }
            /*************************************************************************************/

            接收機(jī)程序

            #include
            #define uchar unsigned char
            #define uint unsigned int
            void delay(uint);
            void SET_SYSTEM(void);
            uchar KEY_scan(void);
            void LED_display(uchar ,uchar);
            uchar xdata IO_8155_order _at_ 0x2100;
            uchar xdata IO_8155_PA _at_ 0x2101;
            uchar xdata IO_8155_PB _at_ 0x2102;
            uchar xdata IO_8155_PC _at_ 0x2103;
            uchar data dt=0;
            uchar code dig_num[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; /*共陰級數(shù)碼管的段選碼*/
            void main()
            {
            delay(200);
            SET_SYSTEM();
            IO_8155_order=0x0d; /* 8155 初始化 */
            while(1)
            {
            LED_display(0,dt);
            P1=dt;
            }
            }
            /*************************************************************************************/
            void delay(uint t) /* 延時子程序 */
            {
            uchar i;
            while(t--)
            {
            for(i=0;i<125;i++) {}; /* 12 MHz 晶振大約是 1 ms */
            }
            }
            /*************************************************************************************/
            void LED_display(uchar d_bit,uchar digit) /* LED 數(shù)碼管顯示子程序*/
            { /*d_bit 表示位選碼,digit 表示要顯示的數(shù)字 */
            IO_8155_PC=d_bit; /* 位選碼輸出*/
            IO_8155_PA=dig_num[digit]; /* 段選碼輸出*/
            delay(10);
            }
            /*************************************************************************************/
            void SET_SYSTEM(void)
            {
            TMOD=0x20; /* 定時器1工作于方式2 */
            PCON=PCON&0x07;
            TH1=0xfe; /* 設(shè)置波特率 */
            TL1=0xfe;
            SCON=0x50;
            IE=0x90; /* 即 EA=1;ES=1;ET1=0;開了串行口中斷,關(guān)定時器1 的中斷 */
            TI=0;
            RI=0;
            TR1=1;
            }
            /*************************************************************************************/
            void RI_RI(void) interrupt 4
            {
            RI=0;
            dt=SBUF;
            }



            關(guān)鍵詞: 單片機(jī)通訊程

            評論


            技術(shù)專區(qū)

            關(guān)閉