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

📄 main.lst

📁 这是一个用单片机来演奏音乐的程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
 309 00e9 04        		.byte	4
 310 00ea 12        		.byte	18
 311 00eb 04        		.byte	4
 312 00ec 14        		.byte	20
 313 00ed 06        		.byte	6
 314 00ee 16        		.byte	22
 315 00ef 02        		.byte	2
 316 00f0 14        		.byte	20
 317 00f1 0C        		.byte	12
 318 00f2 11        		.byte	17
 319 00f3 04        		.byte	4
 320 00f4 14        		.byte	20
 321 00f5 08        		.byte	8
 322 00f6 11        		.byte	17
 323 00f7 04        		.byte	4
 324 00f8 14        		.byte	20
 325 00f9 04        		.byte	4
 326 00fa 16        		.byte	22
 327 00fb 0C        		.byte	12
 328 00fc 19        		.byte	25
 329 00fd 04        		.byte	4
 330 00fe 19        		.byte	25
 331 00ff 04        		.byte	4
 332 0100 16        		.byte	22
 333 0101 04        		.byte	4
 334 0102 14        		.byte	20
 335 0103 04        		.byte	4
 336 0104 11        		.byte	17
 337 0105 04        		.byte	4
 338 0106 0F        		.byte	15
 339 0107 0F        		.byte	15
 340 0108 0F        		.byte	15
 341 0109 08        		.byte	8
 342 010a 11        		.byte	17
 343 010b 04        		.byte	4
 344 010c 12        		.byte	18
 345 010d 04        		.byte	4
 346 010e 14        		.byte	20
 347 010f 06        		.byte	6
 348 0110 14        		.byte	20
 349 0111 02        		.byte	2
 350 0112 16        		.byte	22
 351 0113 04        		.byte	4
 352 0114 14        		.byte	20
 353 0115 04        		.byte	4
 354 0116 11        		.byte	17
 355 0117 0C        		.byte	12
 356 0118 0F        		.byte	15
 357 0119 04        		.byte	4
 358 011a 0D        		.byte	13
 359 011b 06        		.byte	6
 360 011c 11        		.byte	17
 361 011d 02        		.byte	2
 362 011e 0F        		.byte	15
 363 011f 04        		.byte	4
 364 0120 0D        		.byte	13
 365 0121 04        		.byte	4
 366 0122 0A        		.byte	10
 367 0123 0C        		.byte	12
 368 0124 0A        		.byte	10
 369 0125 04        		.byte	4
 370 0126 08        		.byte	8
 371 0127 08        		.byte	8
 372 0128 0D        		.byte	13
 373 0129 04        		.byte	4
 374 012a 11        		.byte	17
 375 012b 04        		.byte	4
 376 012c 0F        		.byte	15
 377 012d 06        		.byte	6
 378 012e 0D        		.byte	13
 379 012f 02        		.byte	2
 380 0130 0A        		.byte	10
 381 0131 04        		.byte	4
 382 0132 0C        		.byte	12
 383 0133 04        		.byte	4
 384 0134 0D        		.byte	13
 385 0135 0F        		.byte	15
 386 0136 0D        		.byte	13
 387 0137 0F        		.byte	15
 388 0138 00        		.byte	0
 389 0139 00        		.byte	0
 390               	.global	g_aMusicTab
 391               		.data
 394               	g_aMusicTab:
 395 0000 0000      		.word	0
 396 0002 D11D      		.word	7633
 397 0004 341C      		.word	7220
 398 0006 921A      		.word	6802
 399 0008 1E19      		.word	6430
 400 000a AC17      		.word	6060
 401 000c 6216      		.word	5730
 402 000e 1D15      		.word	5405
 403 0010 EE13      		.word	5102
 404 0012 D312      		.word	4819
 405 0014 C111      		.word	4545
 406 0016 C310      		.word	4291
 407 0018 D00F      		.word	4048
 408 001a F00E      		.word	3824
 409 001c 1A0E      		.word	3610
 410 001e 840D      		.word	3460
 411 0020 8F0C      		.word	3215
 412 0022 DA0B      		.word	3034
 413 0024 310B      		.word	2865
 414 0026 8E0A      		.word	2702
 415 0028 F709      		.word	2551
 416 002a 6609      		.word	2406
 417 002c E008      		.word	2272
 418 002e 6108      		.word	2145
 419 0030 E807      		.word	2024
 420 0032 7807      		.word	1912
 421 0034 0B07      		.word	1803
 422 0036 A606      		.word	1702
 423 0038 4606      		.word	1606
 424 003a ED05      		.word	1517
 425 003c 9705      		.word	1431
 426 003e 4705      		.word	1351
 427 0040 FB04      		.word	1275
 428 0042 B404      		.word	1204
 429 0044 7004      		.word	1136
 430 0046 3004      		.word	1072
 431 0048 F403      		.word	1012
 432               		.text
 435               	.global	DelayMs
 437               	DelayMs:
   1:main.c        **** /*
   2:main.c        **** 	音乐测试程序
   3:main.c        **** 	main.c
   4:main.c        **** 	硬件:CA-M8
   5:main.c        **** 	时钟:外部4MHz
   6:main.c        **** 	
   7:main.c        **** 	芯艺 2005-01-09
   8:main.c        **** */
   9:main.c        **** 
  10:main.c        **** #include <avr/io.h>
  11:main.c        **** #include <avr/pgmspace.h>
  12:main.c        **** #include <avr/eeprom.h>
  13:main.c        **** #include <avr/signal.h>
  14:main.c        **** #include <avr/interrupt.h>
  15:main.c        **** #include <avr/delay.h>
  16:main.c        **** 
  17:main.c        **** #define uchar unsigned char
  18:main.c        **** #define uint unsigned int
  19:main.c        **** 
  20:main.c        ****   
  21:main.c        **** const uint g_aMusicTab[] ={0,7633,7220,6802,6430,6060,5730,5405,5102,4819,4545,4291,4048,
  22:main.c        **** 							3824,3610,3460,3215,3034,2865,2702,2551,2406,2272,2145,2024,
  23:main.c        **** 							1912,1803,1702,1606,1517,1431,1351,1275,1204,1136,1072,1012};
  24:main.c        **** 
  25:main.c        **** //万水千山总是情
  26:main.c        **** const uchar g_aMusic1[] PROGMEM = {	17,04,18,04,20,06,20,02,22,04,20,04,17,12,15,04,
  27:main.c        **** 									13,06,17,02,15,04,13,04,10,12,10,04,8,8,13,04 ,
  28:main.c        **** 									15,04,17,04,20,04,22,04,17,04,15,15,15,04,00,04 ,
  29:main.c        **** 									17,04,18,04,20,06,20,02,22,04,20,04,17,12,15,04,
  30:main.c        **** 									13,06,17,02,15,04,13,04,10,12,10,04,8,8,13,06 ,
  31:main.c        **** 									17,02,15,06,13,02,13,04,10,04,13,15,13,8,17,04 ,
  32:main.c        **** 									20,04,22,12,25,10,22,04,18,04,20,06,22,02,20,12 ,
  33:main.c        **** 									17,04,20,8,17,04,20,04,22,12,25,04,25,04,22,04 ,
  34:main.c        **** 									20,04,17,04,15,15,15, 8,17,04,18,04,20,06,20,02 ,
  35:main.c        **** 									22,04,20,04,17,12,15,04,13,06,17,02,15,04,13,04, 
  36:main.c        **** 									10,12,10,04,8,8,13,04,17,04,15,06,13,02,10,04,
  37:main.c        **** 									12,04,13,15,13,15,00,00  };
  38:main.c        **** 									
  39:main.c        **** 									
  40:main.c        **** const uchar g_aMusic2[] PROGMEM = { 20,02,00,01,20,01,22,04,20,04,25,04,24,04,00,04,
  41:main.c        **** 									20,02,00,01,20,01,22,04,20,04,27,04,25,04,00,04,
  42:main.c        **** 									20,02,00,01,20,01,32,04,29,04,25,04,24,04,22,04,
  43:main.c        **** 									30,02,00,01,30,01,29,04,25,04,27,04,25,04,00,04,
  44:main.c        **** 									20,02,00,01,20,01,22,04,20,04,25,04,24,04,00,04,
  45:main.c        **** 									20,02,00,01,20,01,22,04,20,04,27,04,25,04,00,04,
  46:main.c        **** 									20,02,00,01,20,01,32,04,29,04,25,04,24,04,22,04,
  47:main.c        **** 									30,02,00,01,30,01,29,04,25,04,27,04,25,04,00,04,
  48:main.c        **** 									00,00};
  49:main.c        **** void DelayMs(uint t)
  50:main.c        **** {
 439               	.LM1:
 440               	/* prologue: frame size=0 */
 441               	/* prologue end (size=0) */
  51:main.c        **** 	uint i;
  52:main.c        **** 	for(i=0;i<t;i++)
 443               	.LM2:
 444 0000 0097      		sbiw r24,0
 445 0002 41F0      		breq .L8
 446 0004 9C01      		movw r18,r24
 447               	.L6:
 448               	.LBB2:
 450               	.Ltext1:
   1:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** /* Copyright (c) 2002, Marek Michalkiewicz
   2:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****    All rights reserved.
   3:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 
   4:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****    Redistribution and use in source and binary forms, with or without
   5:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****    modification, are permitted provided that the following conditions are met:
   6:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 
   7:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****    * Redistributions of source code must retain the above copyright
   8:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****      notice, this list of conditions and the following disclaimer.
   9:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****    * Redistributions in binary form must reproduce the above copyright
  10:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****      notice, this list of conditions and the following disclaimer in
  11:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****      the documentation and/or other materials provided with the
  12:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****      distribution.
  13:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 
  14:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  15:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****   AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  16:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  17:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****   ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
  18:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  19:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  20:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****   SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  21:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  22:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****   CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  23:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****   ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  24:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****   POSSIBILITY OF SUCH DAMAGE. */
  25:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 
  26:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** /* $Id: delay.h,v 1.2.2.2 2004/02/13 21:43:37 joerg_wunsch Exp $ */
  27:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 
  28:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** /*
  29:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****    avr/delay.h - loops for small accurate delays
  30:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h ****  */
  31:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 
  32:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** #ifndef _AVR_DELAY_H_
  33:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** #define _AVR_DELAY_H_ 1
  34:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 
  35:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** #include <inttypes.h>
  36:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 
  37:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** /* 8-bit count, 3 cycles/loop */
  38:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** static __inline__ void
  39:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** _delay_loop_1(uint8_t __count)
  40:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** {
  41:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 	asm volatile (
  42:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 		"1: dec %0" "\n\t"
  43:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 		"brne 1b"
  44:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 		: "=r" (__count)
  45:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 		: "0" (__count)
  46:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 	);
  47:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** }
  48:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 
  49:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** /* 16-bit count, 4 cycles/loop */
  50:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** static __inline__ void
  51:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** _delay_loop_2(uint16_t __count)
  52:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** {
 452               	.LM3:
 453 0006 88EE      		ldi r24,lo8(1000)
 454 0008 93E0      		ldi r25,hi8(1000)
 455               	.LBB3:
  53:C:/WinAVR/bin/../lib/gcc/avr/3.4.1/../../../../avr/include/avr/delay.h **** 	asm volatile (
 457               	.LM4:
 458               	/* #APP */
 459 000a 0197      		1: sbiw r24,1
 460 000c F1F7      		brne 1b
 461               	/* #NOAPP */
 462               	.LBE3:

⌨️ 快捷键说明

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