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

📄 4.lst

📁 16个单片机c语言实验程序
💻 LST
字号:
__start:
__text_start:
      2A E5CF      LDI	R28,0x5F
      2B E0D4      LDI	R29,4
      2C BFCD      OUT	0x3D,R28
      2D BFDE      OUT	0x3E,R29
      2E 51CE      SUBI	R28,0x1E
      2F 40D0      SBCI	R29,0
      30 EA0A      LDI	R16,0xAA
      31 8308      STD	Y+0,R16
      32 2400      CLR	R0
      33 E6E0      LDI	R30,0x60
      34 E0F0      LDI	R31,0
      35 E010      LDI	R17,0
      36 36E0      CPI	R30,0x60
      37 07F1      CPC	R31,R17
      38 F011      BEQ	0x003B
      39 9201      ST	R0,Z+
      3A CFFB      RJMP	0x0036
      3B 8300      STD	Z+0,R16
      3C E5E4      LDI	R30,0x54
      3D E0F0      LDI	R31,0
      3E E6A0      LDI	R26,0x60
      3F E0B0      LDI	R27,0
      40 E010      LDI	R17,0
      41 E000      LDI	R16,0
      42 BF0B      OUT	0x3B,R16
      43 35E4      CPI	R30,0x54
      44 07F1      CPC	R31,R17
      45 F021      BEQ	0x004A
      46 95C8      LPM
      47 9631      ADIW	R30,1
      48 920D      ST	R0,X+
      49 CFF9      RJMP	0x0043
      4A 940E 0063 CALL	_main
_exit:
      4C CFFF      RJMP	_exit
_s_ms:
  aa                   --> R20
  ms                   --> R16
      4D 934A      ST	R20,-Y
      4E 935A      ST	R21,-Y
FILE: D:\16实验程序\延时试验\4.c
(0001) #include "iom16v.h"  
(0002) #include <macros.h>
(0003) //延时函数
(0004) //在16MHz时产生1ms的延时
(0005) void s_ms(unsigned int ms)
(0006) {
(0007)     unsigned int aa;
(0008) 	for(;ms>=1;ms--)
      4F C00C      RJMP	0x005C
(0009) 	{
(0010) 	for(aa=0;aa<=17;aa++)
      50 2744      CLR	R20
      51 2755      CLR	R21
      52 C002      RJMP	0x0055
      53 5F4F      SUBI	R20,0xFF
      54 4F5F      SBCI	R21,0xFF
      55 E181      LDI	R24,0x11
      56 E090      LDI	R25,0
      57 1784      CP	R24,R20
      58 0795      CPC	R25,R21
      59 F7C8      BCC	0x0053
      5A 5001      SUBI	R16,1
      5B 4010      SBCI	R17,0
      5C 3001      CPI	R16,1
      5D E0E0      LDI	R30,0
      5E 071E      CPC	R17,R30
      5F F780      BCC	0x0050
      60 9159      LD	R21,Y+
      61 9149      LD	R20,Y+
      62 9508      RET
(0011) 	{;}
(0012) 	}
(0013) }	
(0014)  
(0015) main()
(0016)  {
(0017)  DDRD=0xff;
_main:
      63 EF8F      LDI	R24,0xFF
      64 BB81      OUT	0x11,R24
      65 C00A      RJMP	0x0070
(0018)  //在端口d产生500Hz的信号
(0019)  while(1)
(0020)    {
(0021)    PORTD=0xff;
      66 EF8F      LDI	R24,0xFF
      67 BB82      OUT	0x12,R24
(0022)    s_ms(50);
      68 E302      LDI	R16,0x32
      69 E010      LDI	R17,0
      6A DFE2      RCALL	_s_ms
(0023)    PORTD=0x00;
      6B 2422      CLR	R2
      6C BA22      OUT	0x12,R2
(0024)    s_ms(50);
FILE: <library>
      6D E302      LDI	R16,0x32
      6E E010      LDI	R17,0
      6F DFDD      RCALL	_s_ms
      70 CFF5      RJMP	0x0066
      71 9508      RET

⌨️ 快捷键说明

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