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

📄 httpserv.lst

📁 单片机C语言程序设计实训100例--基于AVR+PROTEUS仿真
💻 LST
📖 第 1 页 / 共 4 页
字号:
GAS LISTING C:\DOCUME~1\PW\LOCALS~1\Temp/cc6jm71L.s 			page 1


   1               		.file	"httpserv.c"
   2               	__SREG__ = 0x3f
   3               	__SP_H__ = 0x3e
   4               	__SP_L__ = 0x3d
   5               	__CCP__  = 0x34
   6               	__tmp_reg__ = 0
   7               	__zero_reg__ = 1
   8               		.text
   9               		.type	eeprom_read_byte, @function
  10               	eeprom_read_byte:
  11               	/* prologue: function */
  12               	/* frame size = 0 */
  13 0000 9C01      		movw r18,r24
  14               	.L2:
  15 0002 E199      		sbic 60-32,1
  16 0004 00C0      		rjmp .L2
  17 0006 3FBB      		out (62)+1-32,r19
  18 0008 2EBB      		out 62-32,r18
  19               	/* #APP */
  20               	 ;  208 "c:/winavr-20090313/lib/gcc/../../avr/include/avr/eeprom.h" 1
  21               		/* START EEPROM READ CRITICAL SECTION */ 
  22 000a E09A      		sbi 28, 0 
  23 000c 8DB3      		in r24, 29 
  24               		/* END EEPROM READ CRITICAL SECTION */ 
  25               		
  26               	 ;  0 "" 2
  27               	/* epilogue start */
  28               	/* #NOAPP */
  29 000e 0895      		ret
  30               		.size	eeprom_read_byte, .-eeprom_read_byte
  31               		.type	eeprom_write_byte, @function
  32               	eeprom_write_byte:
  33               	/* prologue: function */
  34               	/* frame size = 0 */
  35 0010 9C01      		movw r18,r24
  36               	.L6:
  37 0012 E199      		sbic 60-32,1
  38 0014 00C0      		rjmp .L6
  39 0016 3FBB      		out (62)+1-32,r19
  40 0018 2EBB      		out 62-32,r18
  41 001a 6DBB      		out 61-32,r22
  42               	/* #APP */
  43               	 ;  315 "c:/winavr-20090313/lib/gcc/../../avr/include/avr/eeprom.h" 1
  44               		/* START EEPROM WRITE CRITICAL SECTION */
  45 001c 0FB6      		in	r0, 63		
  46 001e F894      		cli				
  47 0020 E29A      		sbi	28, 2	
  48 0022 E19A      		sbi	28, 1	
  49 0024 0FBE      		out	63, r0		
  50               		/* END EEPROM WRITE CRITICAL SECTION */
  51               	 ;  0 "" 2
  52               	/* epilogue start */
  53               	/* #NOAPP */
  54 0026 0895      		ret
  55               		.size	eeprom_write_byte, .-eeprom_write_byte
  56               		.type	External_Interrupt7_IRQ, @function
  57               	External_Interrupt7_IRQ:
GAS LISTING C:\DOCUME~1\PW\LOCALS~1\Temp/cc6jm71L.s 			page 2


  58               	/* prologue: function */
  59               	/* frame size = 0 */
  60 0028 E2E6      		ldi r30,lo8(98)
  61 002a F0E0      		ldi r31,hi8(98)
  62 002c 8081      		ld r24,Z
  63 002e 90E4      		ldi r25,lo8(64)
  64 0030 8927      		eor r24,r25
  65 0032 8083      		st Z,r24
  66               	/* epilogue start */
  67 0034 0895      		ret
  68               		.size	External_Interrupt7_IRQ, .-External_Interrupt7_IRQ
  69               		.data
  70               	.LC0:
  71 0000 7561 7274 		.string	"uart0"
  71      3000 
  72               	.LC1:
  73 0006 7700      		.string	"w"
  74               	.LC2:
  75 0008 0A0A 4E75 		.string	"\n\nNut/OS %s HTTP DEMO...\n"
  75      742F 4F53 
  75      2025 7320 
  75      4854 5450 
  75      2044 454D 
  76               	.LC3:
  77 0022 5265 6769 		.string	"Registering device failed\n"
  77      7374 6572 
  77      696E 6720 
  77      6465 7669 
  77      6365 2066 
  78               	.LC4:
  79 003d 436F 6E66 		.string	"Configure %s...\n"
  79      6967 7572 
  79      6520 2573 
  79      2E2E 2E0A 
  79      00
  80               	.LC5:
  81 004e 6574 6830 		.string	"eth0"
  81      00
  82               	.LC7:
  83 0053 696E 6974 		.string	"initial boot..."
  83      6961 6C20 
  83      626F 6F74 
  83      2E2E 2E00 
  84               	.LC8:
  85 0063 3139 322E 		.string	"192.168.1.100"
  85      3136 382E 
  85      312E 3130 
  85      3000 
  86               	.LC9:
  87 0071 3235 352E 		.string	"255.255.255.0"
  87      3235 352E 
  87      3235 352E 
  87      3000 
  88               	.LC10:
  89 007f 3139 322E 		.string	"192.168.1.1"
  89      3136 382E 
  89      312E 3100 
GAS LISTING C:\DOCUME~1\PW\LOCALS~1\Temp/cc6jm71L.s 			page 3


  90               	.LC11:
  91 008b 4E6F 2044 		.string	"No DHCP..."
  91      4843 502E 
  91      2E2E 00
  92               	.LC12:
  93 0096 6861 7264 		.string	"hard coded gate..."
  93      2063 6F64 
  93      6564 2067 
  93      6174 652E 
  93      2E2E 00
  94               	.LC13:
  95 00a9 4F4B 0A00 		.string	"OK\n"
  96               	.LC14:
  97 00ad 6661 696C 		.string	"failed\n"
  97      6564 0A00 
  98               	.LC15:
  99 00b5 4950 3A20 		.string	"IP: %s ready\n"
  99      2573 2072 
  99      6561 6479 
  99      0A00 
 100               	.LC16:
 101 00c3 3132 3334 		.string	"123456"
 101      3536 00
 102 00ca 00        		.string	""
 103 00cb 00        		.string	""
 104 00cc 00        		.string	""
 105 00cd 00        		.string	""
 106 00ce 00        		.string	""
 107               	.LC17:
 108 00cf 3132 3334 		.string	"123456"
 108      3536 00
 109               	.LC18:
 110 00d6 6164 6D69 		.string	"admin"
 110      6E00 
 111               	.LC19:
 112 00dc 6367 692D 		.string	"cgi-bin/;user/cgi-bin/;admin/cgi-bin/"
 112      6269 6E2F 
 112      3B75 7365 
 112      722F 6367 
 112      692D 6269 
 113               	.LC20:
 114 0102 6D63 755F 		.string	"mcu_control.cgi"
 114      636F 6E74 
 114      726F 6C2E 
 114      6367 6900 
 115               	.LC21:
 116 0112 7365 7470 		.string	"setpassword.cgi"
 116      6173 7377 
 116      6F72 642E 
 116      6367 6900 
 117               	.LC6:
 118 0122 00        		.string	""
 119 0123 0698 3000 		.string	"\006\2300"
 120 0127 3500      		.string	"5"
 121               	.LC22:
 122 0129 6874 7470 		.string	"httpd0"
 122      6430 00
GAS LISTING C:\DOCUME~1\PW\LOCALS~1\Temp/cc6jm71L.s 			page 4


 123               		.text
 124               	.global	NutAppMain
 125               		.type	NutAppMain, @function
 126               	NutAppMain:
 127 0036 4F92      		push r4
 128 0038 5F92      		push r5
 129 003a 6F92      		push r6
 130 003c 7F92      		push r7
 131 003e 8F92      		push r8
 132 0040 9F92      		push r9
 133 0042 AF92      		push r10
 134 0044 BF92      		push r11
 135 0046 CF92      		push r12
 136 0048 DF92      		push r13
 137 004a EF92      		push r14
 138 004c FF92      		push r15
 139 004e 0F93      		push r16
 140 0050 1F93      		push r17
 141 0052 DF93      		push r29
 142 0054 CF93      		push r28
 143 0056 CDB7      		in r28,__SP_L__
 144 0058 DEB7      		in r29,__SP_H__
 145 005a 6297      		sbiw r28,18
 146 005c 0FB6      		in __tmp_reg__,__SREG__
 147 005e F894      		cli
 148 0060 DEBF      		out __SP_H__,r29
 149 0062 0FBE      		out __SREG__,__tmp_reg__
 150 0064 CDBF      		out __SP_L__,r28
 151               	/* prologue: function */
 152               	/* frame size = 18 */
 153 0066 80E0      		ldi r24,lo8(115200)
 154 0068 92EC      		ldi r25,hi8(115200)
 155 006a A1E0      		ldi r26,hlo8(115200)
 156 006c B0E0      		ldi r27,hhi8(115200)
 157 006e 8983      		std Y+1,r24
 158 0070 9A83      		std Y+2,r25
 159 0072 AB83      		std Y+3,r26
 160 0074 BC83      		std Y+4,r27
 161 0076 80E0      		ldi r24,lo8(devDebug0)
 162 0078 90E0      		ldi r25,hi8(devDebug0)
 163 007a 60E0      		ldi r22,lo8(0)
 164 007c 70E0      		ldi r23,hi8(0)
 165 007e 40E0      		ldi r20,lo8(0)
 166 0080 0E94 0000 		call NutRegisterDevice
 167 0084 4091 0000 		lds r20,__iob+2
 168 0088 5091 0000 		lds r21,(__iob+2)+1
 169 008c 80E0      		ldi r24,lo8(.LC0)
 170 008e 90E0      		ldi r25,hi8(.LC0)
 171 0090 60E0      		ldi r22,lo8(.LC1)
 172 0092 70E0      		ldi r23,hi8(.LC1)
 173 0094 0E94 0000 		call freopen
 174 0098 8091 0000 		lds r24,__iob+2
 175 009c 9091 0000 		lds r25,(__iob+2)+1
 176 00a0 0E94 0000 		call _fileno
 177 00a4 61E0      		ldi r22,lo8(257)
 178 00a6 71E0      		ldi r23,hi8(257)
 179 00a8 AE01      		movw r20,r28
GAS LISTING C:\DOCUME~1\PW\LOCALS~1\Temp/cc6jm71L.s 			page 5


 180 00aa 4F5F      		subi r20,lo8(-(1))
 181 00ac 5F4F      		sbci r21,hi8(-(1))
 182 00ae 0E94 0000 		call _ioctl
 183 00b2 68EC      		ldi r22,lo8(200)
 184 00b4 70E0      		ldi r23,hi8(200)
 185 00b6 80E0      		ldi r24,hlo8(200)
 186 00b8 90E0      		ldi r25,hhi8(200)
 187 00ba 0E94 0000 		call NutSleep
 188 00be 0E94 0000 		call NutVersionString
 189 00c2 00D0      		rcall .
 190 00c4 00D0      		rcall .
 191 00c6 20E0      		ldi r18,lo8(.LC2)
 192 00c8 30E0      		ldi r19,hi8(.LC2)
 193 00ca EDB7      		in r30,__SP_L__
 194 00cc FEB7      		in r31,__SP_H__
 195 00ce 3283      		std Z+2,r19
 196 00d0 2183      		std Z+1,r18
 197 00d2 9483      		std Z+4,r25
 198 00d4 8383      		std Z+3,r24
 199 00d6 0E94 0000 		call printf
 200 00da 0F90      		pop __tmp_reg__
 201 00dc 0F90      		pop __tmp_reg__
 202 00de 0F90      		pop __tmp_reg__
 203 00e0 0F90      		pop __tmp_reg__
 204 00e2 80E0      		ldi r24,lo8(devEth0)
 205 00e4 90E0      		ldi r25,hi8(devEth0)
 206 00e6 60E0      		ldi r22,lo8(0)
 207 00e8 70E0      		ldi r23,hi8(0)
 208 00ea 40E0      		ldi r20,lo8(0)
 209 00ec 0E94 0000 		call NutRegisterDevice
 210 00f0 892B      		or r24,r25
 211 00f2 01F0      		breq .L12
 212 00f4 80E0      		ldi r24,lo8(.LC3)
 213 00f6 90E0      		ldi r25,hi8(.LC3)
 214 00f8 0E94 0000 		call puts
 215               	.L12:
 216 00fc 00D0      		rcall .
 217 00fe 00D0      		rcall .
 218 0100 80E0      		ldi r24,lo8(.LC4)
 219 0102 90E0      		ldi r25,hi8(.LC4)
 220 0104 EDB7      		in r30,__SP_L__
 221 0106 FEB7      		in r31,__SP_H__
 222 0108 9283      		std Z+2,r25
 223 010a 8183      		std Z+1,r24
 224 010c 80E0      		ldi r24,lo8(.LC5)
 225 010e 90E0      		ldi r25,hi8(.LC5)
 226 0110 9483      		std Z+4,r25
 227 0112 8383      		std Z+3,r24
 228 0114 0E94 0000 		call printf
 229 0118 DE01      		movw r26,r28
 230 011a 1596      		adiw r26,5
 231 011c E0E0      		ldi r30,lo8(.LC6)
 232 011e F0E0      		ldi r31,hi8(.LC6)
 233 0120 87E0      		ldi r24,lo8(7)
 234               	.L13:
 235 0122 0190      		ld r0,Z+
 236 0124 0D92      		st X+,r0
GAS LISTING C:\DOCUME~1\PW\LOCALS~1\Temp/cc6jm71L.s 			page 6


 237 0126 8150      		subi r24,lo8(-(-1))
 238 0128 01F4      		brne .L13
 239 012a 0F90      		pop __tmp_reg__
 240 012c 0F90      		pop __tmp_reg__
 241 012e 0F90      		pop __tmp_reg__
 242 0130 0F90      		pop __tmp_reg__
 243 0132 80E0      		ldi r24,lo8(.LC7)
 244 0134 90E0      		ldi r25,hi8(.LC7)
 245 0136 0E94 0000 		call puts
 246 013a F5E0      		ldi r31,lo8(5)
 247 013c 4F2E      		mov r4,r31
 248 013e 512C      		mov r5,__zero_reg__
 249 0140 4C0E      		add r4,r28
 250 0142 5D1E      		adc r5,r29
 251 0144 80E0      		ldi r24,lo8(.LC5)
 252 0146 90E0      		ldi r25,hi8(.LC5)
 253 0148 B201      		movw r22,r4
 254 014a 20E6      		ldi r18,lo8(60000)
 255 014c 3AEE      		ldi r19,hi8(60000)
 256 014e 40E0      		ldi r20,hlo8(60000)
 257 0150 50E0      		ldi r21,hhi8(60000)
 258 0152 0E94 0000 		call NutDhcpIfConfig
 259 0156 892B      		or r24,r25
 260 0158 01F4      		brne .+2
 261 015a 00C0      		rjmp .L14
 262 015c 80E0      		ldi r24,lo8(.LC8)
 263 015e 90E0      		ldi r25,hi8(.LC8)
 264 0160 0E94 0000 		call inet_addr
 265 0164 5B01      		movw r10,r22
 266 0166 6C01      		movw r12,r24
 267 0168 80E0      		ldi r24,lo8(.LC9)
 268 016a 90E0      		ldi r25,hi8(.LC9)
 269 016c 0E94 0000 		call inet_addr
 270 0170 7B01      		movw r14,r22
 271 0172 8C01      		movw r16,r24
 272 0174 80E0      		ldi r24,lo8(.LC10)
 273 0176 90E0      		ldi r25,hi8(.LC10)
 274 0178 0E94 0000 		call inet_addr
 275 017c 3B01      		movw r6,r22
 276 017e 4C01      		movw r8,r24
 277 0180 80E0      		ldi r24,lo8(.LC11)
 278 0182 90E0      		ldi r25,hi8(.LC11)
 279 0184 0E94 0000 		call puts
 280 0188 80E0      		ldi r24,lo8(.LC5)
 281 018a 90E0      		ldi r25,hi8(.LC5)
 282 018c B201      		movw r22,r4
 283 018e A601      		movw r20,r12
 284 0190 9501      		movw r18,r10
 285 0192 0E94 0000 		call NutNetIfConfig
 286 0196 892B      		or r24,r25
 287 0198 01F4      		brne .L15
 288 019a 6114      		cp r6,__zero_reg__
 289 019c 7104      		cpc r7,__zero_reg__
 290 019e 8104      		cpc r8,__zero_reg__
 291 01a0 9104      		cpc r9,__zero_reg__
 292 01a2 01F0      		breq .L16
 293 01a4 00D0      		rcall .
GAS LISTING C:\DOCUME~1\PW\LOCALS~1\Temp/cc6jm71L.s 			page 7


 294 01a6 80E0      		ldi r24,lo8(.LC12)
 295 01a8 90E0      		ldi r25,hi8(.LC12)
 296 01aa EDB7      		in r30,__SP_L__
 297 01ac FEB7      		in r31,__SP_H__
 298 01ae 9283      		std Z+2,r25
 299 01b0 8183      		std Z+1,r24
 300 01b2 0E94 0000 		call printf
 301 01b6 0F90      		pop __tmp_reg__
 302 01b8 0F90      		pop __tmp_reg__
 303 01ba 60E0      		ldi r22,lo8(0)
 304 01bc 70E0      		ldi r23,hi8(0)
 305 01be 80E0      		ldi r24,hlo8(0)
 306 01c0 90E0      		ldi r25,hhi8(0)
 307 01c2 20E0      		ldi r18,lo8(0)
 308 01c4 30E0      		ldi r19,hi8(0)
 309 01c6 40E0      		ldi r20,hlo8(0)
 310 01c8 50E0      		ldi r21,hhi8(0)
 311 01ca 8401      		movw r16,r8
 312 01cc 7301      		movw r14,r6

⌨️ 快捷键说明

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