在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,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>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 單片機(jī)電子琴設(shè)計

            單片機(jī)電子琴設(shè)計

            作者: 時間:2013-04-02 來源:網(wǎng)絡(luò) 收藏

            DK4A: MOV A,P3

            ANL A,#0FH

            XRL A,#0FH

            JNZ DK4A

            CLR TR0

            NOKEY4:

            LJMP WAIT

            DELY10MS:

            MOV R6,#10

            D1: MOV R7,#248

            DJNZ R7,$

            DJNZ R6,D1

            RET

            INT_T0:

            MOV TH0,STH0

            MOV TL0,STL0

            CPL P1.0

            RETI

            TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H

            DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H

            TABLE1: DW 64021,64103,64260,64400

            DW 64524,64580,64684,64777

            DW 64820,64898,64968,65030

            DW 65058,65110,65157,65178

            END

            7. C語言源程序

            #include AT89X51.H>

            unsigned char code table[]={0x3f,0x06,0x5b,0x4f,

            0x66,0x6d,0x7d,0x07,

            0x7f,0x6f,0x77,0x7c,

            0x39,0x5e,0x79,0x71};

            unsigned char temp;

            unsigned char key;

            unsigned char i,j;

            unsigned char STH0;

            unsigned char STL0;

            unsigned int code tab[]={64021,64103,64260,64400,

            64524,64580,64684,64777,

            64820,64898,64968,65030,

            65058,65110,65157,65178};

            void main(void)

            {

            TMOD=0x01;

            ET0=1;

            EA=1;

            while(1)

            {

            P3=0xff;

            P3_4=0;

            temp=P3;

            temp=temp 0x0f;

            if (temp!=0x0f)

            {

            for(i=50;i>0;i--)

            for(j=200;j>0;j--);

            temp=P3;

            temp=temp 0x0f;

            if (temp!=0x0f)

            {

            temp=P3;

            temp=temp 0x0f;

            switch(temp)

            {

            case 0x0e:

            key=0;

            break;

            case 0x0d:

            key=1;

            break;

            case 0x0b:

            key=2;

            break;

            case 0x07:

            key=3;

            break;

            }

            temp=P3;

            P1_0=~P1_0;

            P0=table[key];

            STH0=tab[key]/256;

            STL0=tab[key]%6;

            TR0=1;

            temp=temp 0x0f;

            while(temp!=0x0f)

            {

            temp=P3;

            temp=temp 0x0f;

            }

            TR0=0;

            }

            }

            P3=0xff;

            P3_5=0;

            temp=P3;

            temp=temp 0x0f;

            if (temp!=0x0f)

            {

            for(i=50;i>0;i--)

            for(j=200;j>0;j--);

            temp=P3;

            temp=temp 0x0f;

            if (temp!=0x0f)

            {

            temp=P3;

            temp=temp 0x0f;

            switch(temp)

            {

            case 0x0e:

            key=4;

            break;

            case 0x0d:

            key=5;

            break;

            case 0x0b:

            key=6;

            break;

            case 0x07:

            key=7;

            break;

            }

            temp=P3;

            P1_0=~P1_0;

            P0=table[key];

            STH0=tab[key]/256;

            STL0=tab[key]%6;

            TR0=1;

            temp=temp 0x0f;

            while(temp!=0x0f)

            {

            temp=P3;

            temp=temp 0x0f;

            }

            TR0=0;

            }

            }

            P3=0xff;

            P3_6=0;

            temp=P3;

            temp=temp 0x0f;

            if (temp!=0x0f)

            {

            for(i=50;i>0;i--)

            for(j=200;j>0;j--);

            temp=P3;

            temp=temp 0x0f;

            if (temp!=0x0f)

            {

            temp=P3;

            temp=temp 0x0f;

            switch(temp)

            {

            case 0x0e:

            key=8;

            break;

            case 0x0d:

            key=9;

            break;

            case 0x0b:

            key=10;

            break;

            case 0x07:

            key=11;

            break;

            }

            temp=P3;

            P1_0=~P1_0;

            P0=table[key];

            STH0=tab[key]/256;

            STL0=tab[key]%6;

            TR0=1;

            temp=temp 0x0f;

            while(temp!=0x0f)

            {

            temp=P3;

            temp=temp 0x0f;

            }

            TR0=0;

            }

            }

            P3=0xff;

            P3_7=0;

            temp=P3;

            temp=temp 0x0f;

            if (temp!=0x0f)

            {

            for(i=50;i>0;i--)

            for(j=200;j>0;j--);

            temp=P3;

            temp=temp 0x0f;

            if (temp!=0x0f)

            {

            temp=P3;

            temp=temp 0x0f;

            switch(temp)

            {

            case 0x0e:

            key=12;

            break;

            case 0x0d:

            key=13;

            break;

            case 0x0b:

            key=14;

            break;

            case 0x07:

            key=15;

            break;

            }

            temp=P3;

            P1_0=~P1_0;

            P0=table[key];

            STH0=tab[key]/256;

            STL0=tab[key]%6;

            TR0=1;

            temp=temp 0x0f;

            while(temp!=0x0f)

            {

            temp=P3;

            temp=temp 0x0f;

            }

            TR0=0;

            }

            }

            }

            }

            void t0(void) interrupt 1 using 0

            {

            TH0=STH0;

            TL0=STL0;

            P1_0=~P1_0;

            }


            上一頁 1 2 3 下一頁

            關(guān)鍵詞: 單片機(jī) 電子琴 AT89S51

            評論


            相關(guān)推薦

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

            關(guān)閉