📄 pran.lst
字号:
559 01ac 9F93 push r25
560 01ae AF93 push r26
561 01b0 BF93 push r27
562 01b2 EF93 push r30
563 01b4 FF93 push r31
564 /* prologue end (size=17) */
151:pran.c **** int i;
152:pran.c ****
153:pran.c **** // Timer/Counter1 Clock source: T1 Falling Edge
154:pran.c **** // Timer/Counter1 Mode: Normal
155:pran.c **** // Timer/Counter1 Output: A: Disconnected, B: Disconnected
156:pran.c **** timer_count++;
566 .LM73:
567 .LBB3:
568 01b6 2091 0000 lds r18,timer_count
569 01ba 3091 0000 lds r19,(timer_count)+1
570 01be 2F5F subi r18,lo8(-(1))
571 01c0 3F4F sbci r19,hi8(-(1))
572 01c2 3093 0000 sts (timer_count)+1,r19
573 01c6 2093 0000 sts timer_count,r18
157:pran.c ****
158:pran.c **** if(ontime != 0) {
575 .LM74:
576 01ca 8091 0000 lds r24,ontime
577 01ce 9091 0000 lds r25,(ontime)+1
578 01d2 892B or r24,r25
579 01d4 01F0 breq .L23
159:pran.c **** PORTD = 0x0; //switch off the buzzer
581 .LM75:
582 01d6 12BA out 50-0x20,__zero_reg__
160:pran.c **** offtime++;
584 .LM76:
585 01d8 8091 0000 lds r24,offtime
586 01dc 9091 0000 lds r25,(offtime)+1
587 01e0 0196 adiw r24,1
588 01e2 9093 0000 sts (offtime)+1,r25
589 01e6 8093 0000 sts offtime,r24
590 .L23:
161:pran.c **** }
162:pran.c ****
163:pran.c **** if(timer_count == 120) {
592 .LM77:
593 01ea 2837 cpi r18,120
594 01ec 3105 cpc r19,__zero_reg__
595 01ee 01F4 brne .L24
164:pran.c **** count--;
597 .LM78:
598 01f0 8091 0000 lds r24,count
599 01f4 9091 0000 lds r25,(count)+1
600 01f8 0197 sbiw r24,1
601 01fa 9093 0000 sts (count)+1,r25
602 01fe 8093 0000 sts count,r24
165:pran.c **** if(count == 0) {
604 .LM79:
605 0202 0097 sbiw r24,0
606 0204 01F4 brne .L25
166:pran.c **** decode_count(count);
608 .LM80:
609 0206 00D0 rcall decode_count
167:pran.c **** PORTD = 0x10;
611 .LM81:
612 0208 80E1 ldi r24,lo8(16)
613 020a 82BB out 50-0x20,r24
168:pran.c **** for(i=0 ; i<200 ; i++)
615 .LM82:
616 020c 27EC ldi r18,lo8(199)
617 020e 30E0 ldi r19,hi8(199)
618 .L31:
620 .Ltext1:
1:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** /* Copyright (c) 2002, Marek Michalkiewicz
2:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** Copyright (c) 2004,2005 Joerg Wunsch
3:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** All rights reserved.
4:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
5:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** Redistribution and use in source and binary forms, with or without
6:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** modification, are permitted provided that the following conditions are met:
7:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
8:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** * Redistributions of source code must retain the above copyright
9:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** notice, this list of conditions and the following disclaimer.
10:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
11:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** * Redistributions in binary form must reproduce the above copyright
12:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** notice, this list of conditions and the following disclaimer in
13:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** the documentation and/or other materials provided with the
14:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** distribution.
15:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
16:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** * Neither the name of the copyright holders nor the names of
17:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** contributors may be used to endorse or promote products derived
18:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** from this software without specific prior written permission.
19:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
20:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
24:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
30:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** POSSIBILITY OF SUCH DAMAGE. */
31:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
32:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** /* $Id: delay.h,v 1.1.2.1 2005/12/12 23:19:49 joerg_wunsch Exp $ */
33:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
34:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** #ifndef _UTIL_DELAY_H_
35:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** #define _UTIL_DELAY_H_ 1
36:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
37:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** #include <inttypes.h>
38:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
39:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** /** \defgroup util_delay <util/delay.h>: Busy-wait delay loops
40:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** \code
41:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** #define F_CPU 1000000UL // 1 MHz
42:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** //#define F_CPU 14.7456E6
43:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** #include <util/delay.h>
44:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** \endcode
45:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
46:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** \note As an alternative method, it is possible to pass the
47:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** F_CPU macro down to the compiler from the Makefile.
48:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** Obviously, in that case, no \c \#define statement should be
49:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** used.
50:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
51:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** The functions in this header file implement simple delay loops
52:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** that perform a busy-waiting. They are typically used to
53:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** facilitate short delays in the program execution. They are
54:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** implemented as count-down loops with a well-known CPU cycle
55:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** count per loop iteration. As such, no other processing can
56:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** occur simultaneously. It should be kept in mind that the
57:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** functions described here do not disable interrupts.
58:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
59:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** In general, for long delays, the use of hardware timers is
60:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** much preferrable, as they free the CPU, and allow for
61:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** concurrent processing of other events while the timer is
62:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** running. However, in particular for very short delays, the
63:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** overhead of setting up a hardware timer is too much compared
64:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** to the overall delay time.
65:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
66:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** Two inline functions are provided for the actual delay algorithms.
67:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
68:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** Two wrapper functions allow the specification of microsecond, and
69:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** millisecond delays directly, using the application-supplied macro
70:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** F_CPU as the CPU clock frequency (in Hertz). These functions
71:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** operate on double typed arguments, however when optimization is
72:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** turned on, the entire floating-point calculation will be done at
73:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** compile-time.
74:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
75:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** \note When using _delay_us() and _delay_ms(), the expressions
76:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** passed as arguments to these functions shall be compile-time
77:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** constants, otherwise the floating-point calculations to setup the
78:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** loops will be done at run-time, thereby drastically increasing
79:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** both the resulting code size, as well as the time required to
80:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** setup the loops.
81:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** */
82:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
83:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** #if !defined(__DOXYGEN__)
84:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** static inline void _delay_loop_1(uint8_t __count) __attribute__((always_inline));
85:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** static inline void _delay_loop_2(uint16_t __count) __attribute__((always_inline));
86:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** static inline void _delay_us(double __us) __attribute__((always_inline));
87:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** static inline void _delay_ms(double __ms) __attribute__((always_inline));
88:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** #endif
89:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
90:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** /** \ingroup util_delay
91:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
92:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** Delay loop using an 8-bit counter \c __count, so up to 256
93:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** iterations are possible. (The value 256 would have to be passed
94:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** as 0.) The loop executes three CPU cycles per iteration, not
95:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** including the overhead the compiler needs to setup the counter
96:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** register.
97:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
98:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** Thus, at a CPU speed of 1 MHz, delays of up to 768 microseconds
99:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** can be achieved.
100:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** */
101:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** void
102:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** _delay_loop_1(uint8_t __count)
103:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** {
104:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** __asm__ volatile (
105:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** "1: dec %0" "\n\t"
106:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** "brne 1b"
107:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** : "=r" (__count)
108:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** : "0" (__count)
109:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** );
110:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** }
111:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
112:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** /** \ingroup util_delay
113:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
114:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** Delay loop using a 16-bit counter \c __count, so up to 65536
115:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** iterations are possible. (The value 65536 would have to be
116:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** passed as 0.) The loop executes four CPU cycles per iteration,
117:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** not including the overhead the compiler requires to setup the
118:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** counter register pair.
119:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h ****
120:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** Thus, at a CPU speed of 1 MHz, delays of up to about 262.1
121:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** milliseconds can be achieved.
122:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** */
123:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** void
124:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** _delay_loop_2(uint16_t __count)
125:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** {
622 .LM83:
623 .LBB4:
624 0210 80E3 ldi r24,lo8(30000)
625 0212 95E7 ldi r25,hi8(30000)
126:D:/DATABA~1/AUTHOR~7/AUG-08/KAPAL/FROMAU~1/KAPAL-II/WINAVR/WINAVR/avr/include/util/delay.h **** nds can be achieved.
627 .LM84:
628 /* #APP */
629 0214 0197 1: sbiw r24,1
630 0216 01F4 brne 1b
632 .Ltext2:
634 .LM85:
635 /* #NOAPP */
636 0218 2150 subi r18,lo8(-(-1))
637 021a 3040 sbci r19,hi8(-(-1))
638 021c 37FF sbrs r19,7
639 021e 00C0 rjmp .L31
640 .L32:
169:pran.c **** _delay_loop_2(30000);
170:pran.c **** for(;;)
171:pran.c **** PORTD = 0x0;
642 .LM86:
643 .LBE4:
644 0220 12BA out 50-0x20,__zero_reg__
646 .LM87:
647 0222 00C0 rjmp .L32
648 .L25:
172:pran.c **** }
173:pran.c **** decode_count(count);
650 .LM88:
651 0224 8091 0000 lds r24,count
652 0228 9091 0000 lds r25,(count)+1
653 022c 00D0 rcall decode_count
174:pran.c **** timer_count = 0;
655 .LM89:
656 022e 1092 0000 sts (timer_count)+1,__zero_reg__
657 0232 1092 0000 sts timer_count,__zero_reg__
658 .L24:
175:pran.c **** }
176:pran.c ****
177:pran.c **** OCR1A = 0x1e84;
660 .LM90:
661 0236 84E8 ldi r24,lo8(7812)
662 0238 9EE1 ldi r25,hi8(7812)
663 023a 9BBD out (74)+1-0x20,r25
664 023c 8ABD out 74-0x20,r24
178:pran.c **** TCNT1 = 0xe17c;
666 .LM91:
667 023e 8CE7 ldi r24,lo8(-7812)
668 0240 91EE ldi r25,hi8(-7812)
669 0242 9DBD out (76)+1-0x20,r25
670 0244 8CBD out 76-0x20,r24
179:pran.c **** TCCR1B = 0x04;
672 .LM92:
673 0246 84E0 ldi r24,lo8(4)
674 0248 8EBD out 78-0x20,r24
180:pran.c **** TIMSK = 0x14;
676 .LM93:
677 024a 84E1 ldi r24,lo8(20)
678 024c 89BF out 89-0x20,r24
181:pran.c **** }
680 .LM94:
681 .LBE3:
682 /* epilogue: frame size=0 */
683 024e FF91 pop r31
684 0250 EF91 pop r30
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -