<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 單片機(jī)外中斷匯編語言和C語言程序

          單片機(jī)外中斷匯編語言和C語言程序

          作者: 時間:2016-12-02 來源:網(wǎng)絡(luò) 收藏
          以下兩個程序效果相同,一個使用匯編語言,一個使用C語言,從仿真效果看,c語言程序運(yùn)行比較流暢。
          兩個外中斷跑馬燈匯編語言程序
          ORG 0000H
          LJMP MAIN
          ORG 0003H
          LJMP WZD0
          ORG 0013H
          LJMP WZD1
          ORG 0040H
          WZD0: MOV DPTR,#0220H
          MOV R3,#42D
          CB0: CLR A
          MOVC A,@A+DPTR
          MOV P1,A
          INC DPTR
          LCALL DELAY2
          DJNZ R3,CB0
          RETI
          WZD1: MOV DPTR,#0220H
          MOV R3,#42D
          CB1: CLR A
          MOVC A,@A+DPTR
          MOV P2,A
          INC DPTR
          LCALL DELAY1
          DJNZ R3,CB1
          RETI
          ORG 0150H
          MAIN: MOV P1,#00H
          MOV P2,#00H
          SETB EA
          SETB IT0
          SETB EX0
          CLR PX0
          SETB IT1
          SETB EX1
          SETB PX1
          ST: MOV DPTR,#0270H
          MOV R4,#17D
          DD: CLR A
          MOVC A,@A+DPTR
          MOV P0,A
          INC DPTR
          LCALL DELAY1
          DJNZ R4,DD
          SJMP ST
          DELAY1: MOV R7,#00H
          DD1: MOV R6,#00H
          DD2: MOV R5,#01H
          DJNZ R5,$
          DJNZ R6,DD2
          DJNZ R7,DD1
          RET
          DELAY2: MOV R7,#00H
          DDD1: MOV R6,#00H
          DJNZ R6,$
          DJNZ R7,DDD1
          RET
          ORG 0220H
          DB 0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80
          DB 0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01
          DB 0x18,0x24,0x42,0x81,0x00,0x81,0x42,0x24,0x18
          DB 0x18,0x24,0x42,0x81,0x00,0x81,0x42,0x24,0x18
          DB 0x18,0x00,0x3c,0x00,0x7e,0x00,0xff,0x00
          ORG 0270H
          DB 0xfe,0xfc,0xf8,0xe0,0xe0,0xc0,0x80,0x00
          DB 0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff, 0x00
          END

          兩個外中斷跑馬燈C語言程序
          #include
          int code yu[]={
          0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,
          0x00,0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01,
          0x00,0x18,0x24,0x42,0x81,0x00,0x81,0x42,0x24,0x18,
          0x00,0x18,0x24,0x42,0x81,0x00,0x81,0x42,0x24,0x18,
          0x00,0x18,0x00,0x3c,0x00,0x7e,0x00,0xff,0x00,0x00,
          0x00 };
          int code yu1[]={
          0xfe,0xfc,0xf8,0xe0,0xe0,0xc0,0x80,0x00,
          0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff,
          0x00};
          void delay(int ms)
          {
          while(ms--)
          {
          int i;
          for(i=0;i<120;i++);
          }
          }
          void ddd() interrupt 0
          {
          int k;
          for(k=0;k<47;k++)
          {
          P2=yu[k];
          delay(100);
          }
          }
          void dd() interrupt 1
          {
          int k;
          for(k=0;k<48;k++)
          {
          P1=yu[k];
          delay(300);
          }
          P1=0x00;
          }
          void main()
          {
          int n;
          IT0=0;
          EX0=1;
          PX0=1;
          IT1=0;
          EX1=1;
          PX1=0;
          EA=1;
          P1=0x00;
          P2=0x00;
          while(1)
          {
          for(n=0;n<17;n++)
          {
          P0=yu1[n];
          delay(100);
          }
          }


          評論


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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();