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

📄 sound.lis

📁 单片机开发资料光盘-双龙-686M.zip
💻 LIS
字号:
                         .module sound.c
                         .area text
 0000                   .dbfile E:\grc\licc\例子10.3.6\sound.c
 0000                   .dbfunc s delay _delay fI
                       ;              i -> R20
                       ;              j -> R22
                       ;              t -> R16
                         .even
 0000                 _delay::
 0000 00D0              rcall push_gset2
 0002                   .dbline 5{
                       ; #include <io8515.h>                /*预处理命令 */
                       ; #define uchar unsigned char
                       ; #define uint unsigned int
                       ; void delay(uchar t)
                       ; {
 0002                   .dbline 7
                       ;  uchar i,j;
                       ;   for (i=0;i<t;i++)
 0002 4427              clr R20
 0004 06C0              rjmp L5
 0006                 L2:
 0006                   .dbline 8
 0006 61E0              ldi R22,1
 0008 01C0              rjmp L9
 000A                 L6:
 000A                   .dbline 8
 000A                 L7:
 000A                   .dbline 8
 000A 6395              inc R22
 000C                 L9:
 000C                   .dbline 8
 000C 6639              cpi R22,150
 000E E8F3              brlo L6
 0010                 L3:
 0010                   .dbline 7
 0010 4395              inc R20
 0012                 L5:
 0012                   .dbline 7
 0012 4017              cp R20,R16
 0014 C0F3              brlo L2
 0016                   .dbline 9}
                       ;      for(j=1;j<150;j++);
                       ; }
 0016                 L1:
 0016 00D0              rcall pop_gset2
 0018 0895              ret
 001A                   .dbsym r i 20 c
 001A                   .dbsym r j 22 c
 001A                   .dbsym r t 16 c
 001A                   .dbfunc s sound_pc0 _sound_pc0 fI
                       ;              i -> R20,R21
                       ;              t -> R22
                         .even
 001A                 _sound_pc0::
 001A 00D0              rcall push_gset2
 001C 602F              mov R22,R16
 001E                   .dbline 11{
                       ; void sound_pc0(uchar t)
                       ; {
 001E                   .dbline 13
                       ;  uint i;
                       ;  DDRC=0xff;
 001E 8FEF              ldi R24,255
 0020 84BB              out 0x14,R24
 0022                   .dbline 14
                       ;  PORTC=0xff;
 0022 85BB              out 0x15,R24
 0024                   .dbline 15
                       ;  for (i=0;i<350-t*t;i++)           
 0024 4427              clr R20
 0026 5527              clr R21
 0028 08C0              rjmp L14
 002A                 L11:
 002A                   .dbline 16
 002A                   .dbline 17
 002A 81E0              ldi R24,1
 002C 25B2              in R2,0x15
 002E 2826              eor R2,R24
 0030 25BA              out 0x15,R2
 0032                   .dbline 18
 0032 062F              mov R16,R22
 0034 E5DF              rcall _delay
 0036                   .dbline 19
 0036                 L12:
 0036                   .dbline 15
 0036 4F5F              subi R20,255  ; offset = 1
 0038 5F4F              sbci R21,255
 003A                 L14:
 003A                   .dbline 15
 003A 262F              mov R18,R22
 003C 3327              clr R19
 003E 062F              mov R16,R22
 0040 1127              clr R17
 0042 00D0              rcall mpy16s
 0044 8EE5              ldi R24,94
 0046 91E0              ldi R25,1
 0048 801B              sub R24,R16
 004A 910B              sbc R25,R17
 004C 4817              cp R20,R24
 004E 5907              cpc R21,R25
 0050 60F3              brlo L11
 0052                   .dbline 20}
                       ;     {
                       ;      PORTC^=0x01;
                       ;      delay(t);
                       ;     }
                       ; }
 0052                 L10:
 0052 00D0              rcall pop_gset2
 0054 0895              ret
 0056                   .dbsym r i 20 i
 0056                   .dbsym r t 22 c
 0056                   .dbfunc s main _main fI
                       ;             dt -> R20
                         .even
 0056                 _main::
 0056                   .dbline 22{
                       ; void main (void)                    
                       ; {
 0056                   .dbline 24
                       ;  uchar dt;
                       ;  for(;;)
 0056                 L16:
 0056                   .dbline 25
                       ;     {
 0056                   .dbline 26
                       ;      for(dt=1;dt<14;dt++)               
 0056 41E0              ldi R20,1
 0058 03C0              rjmp L23
 005A                 L20:
 005A                   .dbline 27
 005A 042F              mov R16,R20
 005C DEDF              rcall _sound_pc0
 005E                 L21:
 005E                   .dbline 26
 005E 4395              inc R20
 0060                 L23:
 0060                   .dbline 26
 0060 4E30              cpi R20,14
 0062 D8F3              brlo L20
 0064                   .dbline 28
                       ;          sound_pc0(dt);
                       ;      }
 0064                   .dbline 24
 0064                   .dbline 24
 0064 F8CF              rjmp L16
 0066                 X0:
 0066                 L15:
 0066 0895              ret
 0068                   .dbline 25}
 0068                   .dbsym r dt 20 c

⌨️ 快捷键说明

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