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

📄 main.lst

📁 光电鼠标IC资料
💻 LST
📖 第 1 页 / 共 2 页
字号:
   1               		.file	"main.c"
   2               		.arch atmega88
   3               	__SREG__ = 0x3f
   4               	__SP_H__ = 0x3e
   5               	__SP_L__ = 0x3d
   6               	__tmp_reg__ = 0
   7               	__zero_reg__ = 1
   8               		.global __do_copy_data
   9               		.global __do_clear_bss
  17               	.Ltext0:
  18               	.global	init_buffer
  20               	init_buffer:
  21               	.LFB3:
  22               	.LM1:
  23               	/* prologue: frame size=0 */
  24               	/* prologue end (size=0) */
  25 0000 E0E0      		ldi r30,lo8(input)
  26 0002 F0E0      		ldi r31,hi8(input)
  27 0004 A0E0      		ldi r26,lo8(output)
  28 0006 B0E0      		ldi r27,hi8(output)
  29               	.L2:
  30               	.LM2:
  31 0008 1192      		st Z+,__zero_reg__
  32               	.LM3:
  33 000a 1D92      		st X+,__zero_reg__
  34               	.LM4:
  35 000c 80E0      		ldi r24,hi8(input+200)
  36 000e E030      		cpi r30,lo8(input+200)
  37 0010 F807      		cpc r31,r24
  38 0012 01F4      		brne .L2
  39               	.LM5:
  40               	/* #APP */
  41 0014 F894      		cli
  42               	.LM6:
  43               	/* #NOAPP */
  44 0016 80E0      		ldi r24,lo8(input+1)
  45 0018 90E0      		ldi r25,hi8(input+1)
  46 001a 9093 0000 		sts (input_write_ptr)+1,r25
  47 001e 8093 0000 		sts input_write_ptr,r24
  48               	.LM7:
  49 0022 20E0      		ldi r18,lo8(output)
  50 0024 30E0      		ldi r19,hi8(output)
  51 0026 3093 0000 		sts (output_read_ptr)+1,r19
  52 002a 2093 0000 		sts output_read_ptr,r18
  53               	.LM8:
  54 002e 0197      		sbiw r24,1
  55 0030 9093 0000 		sts (input_read_ptr)+1,r25
  56 0034 8093 0000 		sts input_read_ptr,r24
  57               	.LM9:
  58 0038 3093 0000 		sts (output_write_ptr)+1,r19
  59 003c 2093 0000 		sts output_write_ptr,r18
  60               	.LM10:
  61               	/* #APP */
  62 0040 7894      		sei
  63               	/* #NOAPP */
  64               	/* epilogue: frame size=0 */
  65 0042 0895      		ret
  66               	/* epilogue end (size=1) */
  67               	/* function init_buffer size 36 (35) */
  68               	.LFE3:
  70               	.global	read_key
  72               	read_key:
  73               	.LFB4:
  74               	.LM11:
  75               	/* prologue: frame size=0 */
  76               	/* prologue end (size=0) */
  77               	.LM12:
  78 0044 86B1      		in r24,38-0x20
  79               	.LVL0:
  80 0046 8095      		com r24
  81 0048 8170      		andi r24,lo8(1)
  82               	.LM13:
  83 004a 319B      		sbis 38-0x20,1
  84               	.LM14:
  85 004c 8260      		ori r24,lo8(2)
  86               	.L8:
  87               	.LM15:
  88 004e 329B      		sbis 38-0x20,2
  89               	.LM16:
  90 0050 8460      		ori r24,lo8(4)
  91               	.L10:
  92               	.LM17:
  93 0052 339B      		sbis 38-0x20,3
  94               	.LM18:
  95 0054 8860      		ori r24,lo8(8)
  96               	.L12:
  97               	.LM19:
  98 0056 349B      		sbis 38-0x20,4
  99               	.LM20:
 100 0058 8061      		ori r24,lo8(16)
 101               	.L14:
 102               	.LM21:
 103 005a 9927      		clr r25
 104               	.LVL1:
 105               	/* epilogue: frame size=0 */
 106 005c 0895      		ret
 107               	/* epilogue end (size=1) */
 108               	/* function read_key size 17 (16) */
 109               	.LFE4:
 111               	.global	main
 113               	main:
 114               	.LFB2:
 115               	.LM22:
 116               	/* prologue: frame size=0 */
 117               	/* prologue end (size=0) */
 118               	.LM23:
 119 005e 00D0      		rcall init_mcu
 120               	.LM24:
 121 0060 00D0      		rcall init_rf
 122               	.LM25:
 123 0062 00D0      		rcall init_buffer
 124               	.LM26:
 125 0064 00D0      		rcall init_protocol
 126               	.LM27:
 127 0066 00D0      		rcall init_freq
 128               	.LM28:
 129 0068 1092 0000 		sts call_state,__zero_reg__
 130 006c 00C0      		rjmp .L18
 131               	.L66:
 132               	.LM29:
 133 006e 8091 0000 		lds r24,call_state
 134 0072 8130      		cpi r24,lo8(1)
 135 0074 01F0      		breq .L20
 136 0076 8130      		cpi r24,lo8(1)
 137 0078 00F0      		brlo .L18
 138 007a 8230      		cpi r24,lo8(2)
 139 007c 01F0      		breq .L57
 140 007e 8330      		cpi r24,lo8(3)
 141 0080 01F4      		brne .L66
 142 0082 00C0      		rjmp .L22
 143               	.L18:
 144               	.LM30:
 145 0084 6CE0      		ldi r22,lo8(12)
 146 0086 82E0      		ldi r24,lo8(2)
 147 0088 00D0      		rcall sleep
 148               	.LM31:
 149 008a 80EF      		ldi r24,lo8(-16)
 150 008c 8093 0000 		sts call_status,r24
 151               	.LM32:
 152 0090 439A      		sbi 40-0x20,3
 153               	.LM33:
 154 0092 429A      		sbi 40-0x20,2
 155               	.LM34:
 156 0094 419A      		sbi 40-0x20,1
 157               	.LM35:
 158 0096 409A      		sbi 40-0x20,0
 159               	.LM36:
 160 0098 4F9B      		sbis 41-0x20,7
 161 009a 00C0      		rjmp .L66
 162               	.LM37:
 163 009c 81EF      		ldi r24,lo8(-15)
 164 009e 8093 0000 		sts call_status,r24
 165               	.LM38:
 166 00a2 81E0      		ldi r24,lo8(1)
 167 00a4 8093 0000 		sts call_state,r24
 168               	.L20:
 169               	.LM39:
 170 00a8 5E9A      		sbi 43-0x20,6
 171               	.LM40:
 172 00aa 64E0      		ldi r22,lo8(4)
 173 00ac 80E0      		ldi r24,lo8(setup_freq)
 174 00ae 90E0      		ldi r25,hi8(setup_freq)
 175 00b0 00D0      		rcall call_setup
 176 00b2 8093 0000 		sts call_status,r24
 177               	.LM41:
 178 00b6 5E98      		cbi 43-0x20,6
 179               	.LM42:
 180 00b8 833F      		cpi r24,lo8(-13)
 181 00ba 01F4      		brne .+2
 182 00bc 00C0      		rjmp .L65
 183               	.LM43:
 184 00be 00D0      		rcall init_buffer
 185               	.LM44:
 186 00c0 00D0      		rcall init_rf
 187               	.LM45:
 188 00c2 00D0      		rcall init_protocol
 189               	.LM46:
 190 00c4 00D0      		rcall init_codec
 191               	.LM47:
 192 00c6 00D0      		rcall start_codec
 193               	.LM48:
 194 00c8 88E1      		ldi r24,lo8(24)
 195 00ca 90E0      		ldi r25,hi8(24)
 196 00cc 28E0      		ldi r18,lo8(8)
 197               	/* #APP */
 198 00ce 0FB6      		in __tmp_reg__,__SREG__
 199 00d0 F894      		cli
 200 00d2 A895      		wdr
 201 00d4 8093 6000 		sts 96,r24
 202 00d8 0FBE      		out __SREG__,__tmp_reg__
 203 00da 2093 6000 		sts 96,r18
 204               	/* #NOAPP */
 205 00de 00C0      		rjmp .L64
 206               	.L57:
 207               	.LM49:
 208               	/* #APP */
 209 00e0 A895      		wdr
 210               	.LM50:
 211               	/* #NOAPP */
 212 00e2 00D0      		rcall audio_transfer
 213               	.LM51:
 214 00e4 2091 0000 		lds r18,signal_in+1
 215 00e8 2F71      		andi r18,lo8(31)
 216 00ea 2093 0000 		sts key_code,r18
 217               	.LM52:
 218 00ee 2223      		tst r18
 219 00f0 01F0      		breq .L26
 220               	.LM53:
 221 00f2 5E9A      		sbi 43-0x20,6
 222               	.LM54:
 223 00f4 822F      		mov r24,r18
 224 00f6 9927      		clr r25
 225 00f8 8071      		andi r24,lo8(16)
 226 00fa 9070      		andi r25,hi8(16)
 227 00fc 892B      		or r24,r25
 228 00fe 01F4      		brne .L28
 229 0100 00C0      		rjmp .L29
 230               	.L26:
 231               	.LM55:
 232 0102 5E98      		cbi 43-0x20,6
 233 0104 00C0      		rjmp .L29
 234               	.L28:
 235               	.LM56:
 236 0106 4398      		cbi 40-0x20,3
 237 0108 00C0      		rjmp .L30
 238               	.L29:
 239               	.LM57:
 240 010a 439A      		sbi 40-0x20,3
 241               	.L30:
 242               	.LM58:
 243 010c 822F      		mov r24,r18
 244 010e 9927      		clr r25
 245 0110 80FF      		sbrs r24,0
 246 0112 00C0      		rjmp .L31
 247               	.LM59:
 248 0114 4298      		cbi 40-0x20,2
 249 0116 00C0      		rjmp .L33
 250               	.L31:

⌨️ 快捷键说明

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