⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 led.ls1

📁 Example codes for ADuC842 CPU family
💻 LS1
📖 第 1 页 / 共 3 页
字号:
  00FB               230     DAC1    DATA    0FBH
  00DD               231     CCONV   BIT     0D8H.5
  00F2               232     ADCOFSH DATA    0F2H
  00D0               233     PSW     DATA    0D0H
  00C0               234     WDCON   DATA    0C0H
                     235     ?PR?_delay?LED       SEGMENT CODE 
                     236     ?DT?_delay?LED       SEGMENT DATA OVERLAYABLE 
                     237     ?PR?main?LED         SEGMENT CODE 
                     238     ?C_INITSEG           SEGMENT CODE 
                     239     ?DT?LED              SEGMENT DATA 
                     240             EXTRN   CODE (_SendByte)
                     241             EXTRN   CODE (ReadByte)
                     242             EXTRN   CODE (_DelayUs)
                     243             EXTRN   CODE (DelayUs2)
                     244             EXTRN   CODE (?C_STARTUP)
                     245             PUBLIC  s_data
                     246             PUBLIC  i
                     247             PUBLIC  c?
                     248             PUBLIC  napis
                     249             PUBLIC  main
                     250             PUBLIC  _delay
                     251     
----                 252             RSEG  ?DT?_delay?LED
0000                 253     ?_delay?BYTE:
0000                 254          length?040:   DS   2
                     255     
A51 MACRO ASSEMBLER  LED                                                                  12/19/2005 19:21:27 PAGE     5

----                 256             RSEG  ?DT?LED
0000                 257               napis:   DS   22
0016                 258                  c?:   DS   1
0017                 259                   i:   DS   2
0019                 260              s_data:   DS   2
                     261     
----                 262             RSEG  ?C_INITSEG
0000 16              263             DB      016H
0001 00       F      264             DB      napis
0002 20537075        265             DB  ' ' ,'S' ,'p' ,'u' ,'k' ,'i' ,' ' ,'j' ,'e' ,'s' 
0006 6B69206A                
000A 6573                    
000C 74206465        266             DB  't' ,' ' ,'d' ,'e' ,'b' ,'e' ,09CH,'c' ,'i' ,'a' 
0010 62659C63                
0014 6961                    
0016 6B20            267             DB  'k' ,' ' 
                     268     
                     269     
0018 02              270             DB      002H
0019 00       F      271             DB      i
001A 0000            272             DW      00000H
                     273     
001C 02              274             DB      002H
001D 00       F      275             DB      s_data
001E 0000            276             DW      00000H
                     277     
0020 01              278             DB      001H
0021 00       F      279             DB      c?
0022 00              280             DB      000H
                     281     
                     282     ; //#include <ADuC842.h>
                     283     ; #include <stdio.h>
                     284     ; #include <rs_usb.h>
                     285     ; 
                     286     ; 
                     287     ; sbit TEM = P2^0;
                     288     ; sbit ADXL_Y = P1^4;
                     289     ; 
                     290     ; unsigned char napis[22] = " Spuki jest debe渃iak ";
                     291     ; 
                     292     ; 
                     293     ; signed int i=0;
                     294     ; signed int s_data=0;
                     295     ; unsigned char c=0;
                     296     ; 
                     297     ; 
                     298     ; void delay(unsigned int length) { 
                     299     
----                 300             RSEG  ?PR?_delay?LED
0000                 301     _delay:
                     302             USING   0
                     303                             ; SOURCE LINE # 17
0000 8E00     F      304             MOV     length?040,R6
0002 8F00     F      305             MOV     length?040+01H,R7
0004                 306     ?C0001:
                     307     ;       while (length!=0) {
                     308                             ; SOURCE LINE # 18
0004 E500     F      309             MOV     A,length?040+01H
0006 4500     F      310             ORL     A,length?040
0008 601D            311             JZ      ?C0004
                     312     ;               i = ReadByte();
                     313                             ; SOURCE LINE # 19
000A 120000   F      314             LCALL   ReadByte
000D 8E00     F      315             MOV     i,R6
000F 8F00     F      316             MOV     i+01H,R7
                     317     ;               if (i>=0) c = i&0xFF;
A51 MACRO ASSEMBLER  LED                                                                  12/19/2005 19:21:27 PAGE     6

                     318                             ; SOURCE LINE # 20
0011 C3              319             CLR     C
0012 E500     F      320             MOV     A,i
0014 6480            321             XRL     A,#080H
0016 9480            322             SUBB    A,#080H
0018 4003            323             JC      ?C0003
001A EF              324             MOV     A,R7
001B F500     F      325             MOV     c?,A
001D                 326     ?C0003:
                     327     ;               length--;
                     328                             ; SOURCE LINE # 21
001D E500     F      329             MOV     A,length?040+01H
001F 1500     F      330             DEC     length?040+01H
0021 70E1            331             JNZ     ?C0001
0023 1500     F      332             DEC     length?040
0025                 333     ?C0008:
                     334     ;       }
                     335                             ; SOURCE LINE # 22
0025 80DD            336             SJMP    ?C0001
                     337     ; }
                     338                             ; SOURCE LINE # 23
0027                 339     ?C0004:
0027 22              340             RET     
                     341     ; END OF _delay
                     342     
                     343     ; 
                     344     ; 
                     345     ; //void delayms(unsigned char length) { while (length!=0) length--; }
                     346     ; /*
                     347     ; void Timer2_Int () interrupt 5
                     348     ; {
                     349     ;       LED = !LED;
                     350     ;       TF2 = 0;
                     351     ; }
                     352     ; */
                     353     ; 
                     354     ; 
                     355     ; void main (void)
                     356     
----                 357             RSEG  ?PR?main?LED
0000                 358     main:
                     359             USING   0
                     360                             ; SOURCE LINE # 36
                     361     ; {     
                     362                             ; SOURCE LINE # 37
                     363     ;       DelayUs(0x01); DelayUs2();
                     364                             ; SOURCE LINE # 38
0000 7F01            365             MOV     R7,#01H
0002 120000   F      366             LCALL   _DelayUs
0005 120000   F      367             LCALL   DelayUs2
                     368     ;       TxD_USB = 1; // Wysoki stan na linii nadawczej
                     369                             ; SOURCE LINE # 39
0008 D2B4            370             SETB    TxD_USB
                     371     ;       P1 = 11101111; // Port P1.4 jako Analog Input;
                     372                             ; SOURCE LINE # 40
000A 7590B7          373             MOV     P1,#0B7H
                     374     ;       PLLCON = 0x01; //PLL Clock config
                     375                             ; SOURCE LINE # 41
000D 75D701          376             MOV     PLLCON,#01H
                     377     ; 
                     378     ;       //Timer2 config
                     379     ; //    ET2 = 1;
                     380     ; //    TH2 = 0x00;     TL2 = 0x00; 
                     381     ; //    RCAP2H = 0xF0; RCAP2L = 0x00;
                     382     ;     EA = 0;
                     383                             ; SOURCE LINE # 47
A51 MACRO ASSEMBLER  LED                                                                  12/19/2005 19:21:27 PAGE     7

0010 C2AF            384             CLR     EA
                     385     ; //    T2CON = 0x04;
                     386     ;       napis[0] = 0xFF;
                     387                             ; SOURCE LINE # 49
0012 7500FF   F      388             MOV     napis,#0FFH
                     389     ;       napis[21] = 0x00;
                     390                             ; SOURCE LINE # 50
0015 E4              391             CLR     A
0016 F500     F      392             MOV     napis+015H,A
0018                 393     ?C0005:
                     394     ; 
                     395     ;       while(1) {
                     396                             ; SOURCE LINE # 52
                     397     ;               s_data = c;
                     398                             ; SOURCE LINE # 53
0018 750000   F      399             MOV     s_data,#00H
001B 850000   F      400             MOV     s_data+01H,c?
                     401     ;               SendByte(s_data >> 8);
                     402                             ; SOURCE LINE # 54
001E E500     F      403             MOV     A,s_data
0020 FF              404             MOV     R7,A
0021 33              405             RLC     A
0022 95E0            406             SUBB    A,ACC
0024 120000   F      407             LCALL   _SendByte
                     408     ;               SendByte(c);
                     409                             ; SOURCE LINE # 55
0027 AF00     F      410             MOV     R7,c?
0029 120000   F      411             LCALL   _SendByte
                     412     ;               SendByte(P0);
                     413                             ; SOURCE LINE # 56
002C AF80            414             MOV     R7,P0
002E 120000   F      415             LCALL   _SendByte
                     416     ;               SendByte(P1);
                     417                             ; SOURCE LINE # 57
0031 AF90            418             MOV     R7,P1
0033 120000   F      419             LCALL   _SendByte
                     420     ;               SendByte(P2);
                     421                             ; SOURCE LINE # 58
0036 AFA0            422             MOV     R7,P2
0038 120000   F      423             LCALL   _SendByte
                     424     ;               SendByte(P3);
                     425                             ; SOURCE LINE # 59
003B AFB0            426             MOV     R7,P3
003D 120000   F      427             LCALL   _SendByte
                     428     ;               delay(0x03FF);
                     429                             ; SOURCE LINE # 60
0040 7FFF            430             MOV     R7,#0FFH
0042 7E03            431             MOV     R6,#03H
0044 120000   F      432             LCALL   _delay
                     433     ;       }
                     434                             ; SOURCE LINE # 61
0047 80CF            435             SJMP    ?C0005
                     436     ; END OF main
                     437     
                     438             END
A51 MACRO ASSEMBLER  LED                                                                  12/19/2005 19:21:27 PAGE     8

SYMBOL TABLE LISTING
------ ----- -------


N A M E             T Y P E  V A L U E   ATTRIBUTES

?C0001 . . . . . .  C ADDR   0004H   R   SEG=?PR?_DELAY?LED
?C0003 . . . . . .  C ADDR   001DH   R   SEG=?PR?_DELAY?LED
?C0004 . . . . . .  C ADDR   0027H   R   SEG=?PR?_DELAY?LED
?C0005 . . . . . .  C ADDR   0018H   R   SEG=?PR?MAIN?LED
?C0008 . . . . . .  C ADDR   0025H   R   SEG=?PR?_DELAY?LED
?C_INITSEG . . . .  C SEG    0023H       REL=UNIT
?C_STARTUP . . . .  C ADDR   -----       EXT
?DT?LED. . . . . .  D SEG    001BH       REL=UNIT
?DT?_DELAY?LED . .  D SEG    0002H       REL=UNIT
?PR?MAIN?LED . . .  C SEG    0049H       REL=UNIT
?PR?_DELAY?LED . .  C SEG    0028H       REL=UNIT
?_DELAY?BYTE . . .  D ADDR   0000H   R   SEG=?DT?_DELAY?LED
AC . . . . . . . .  B ADDR   00D0H.6 A   
ACC. . . . . . . .  D ADDR   00E0H   A   
ADCCON1. . . . . .  D ADDR   00EFH   A   
ADCCON2. . . . . .  D ADDR   00D8H   A   
ADCCON3. . . . . .  D ADDR   00F5H   A   
ADCDATA. . . . . .  D ADDR   00D9H   A   

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -