101 lines
3.5 KiB
Plaintext
101 lines
3.5 KiB
Plaintext
1 .file "adc.c"
|
|
2 __SP_H__ = 0x3e
|
|
3 __SP_L__ = 0x3d
|
|
4 __SREG__ = 0x3f
|
|
5 __tmp_reg__ = 0
|
|
6 __zero_reg__ = 1
|
|
7 .text
|
|
8 .global adc_init
|
|
10 adc_init:
|
|
11 /* prologue: function */
|
|
12 /* frame size = 0 */
|
|
13 /* stack size = 0 */
|
|
14 .L__stack_usage = 0
|
|
15 0000 80E4 ldi r24,lo8(64)
|
|
16 0002 87B9 out 0x7,r24
|
|
17 0004 83E0 ldi r24,lo8(3)
|
|
18 0006 86B9 out 0x6,r24
|
|
19 0008 379A sbi 0x6,7
|
|
20 000a 369A sbi 0x6,6
|
|
21 .L2:
|
|
22 000c 3699 sbic 0x6,6
|
|
23 000e 00C0 rjmp .L2
|
|
24 0010 84B1 in r24,0x4
|
|
25 0012 95B1 in r25,0x4+1
|
|
26 0014 0895 ret
|
|
28 .global adc_read_single
|
|
30 adc_read_single:
|
|
31 /* prologue: function */
|
|
32 /* frame size = 0 */
|
|
33 /* stack size = 0 */
|
|
34 .L__stack_usage = 0
|
|
35 0016 97B1 in r25,0x7
|
|
36 0018 8F71 andi r24,lo8(31)
|
|
37 001a 907E andi r25,lo8(-32)
|
|
38 001c 892B or r24,r25
|
|
39 001e 87B9 out 0x7,r24
|
|
40 0020 369A sbi 0x6,6
|
|
41 .L5:
|
|
42 0022 3699 sbic 0x6,6
|
|
43 0024 00C0 rjmp .L5
|
|
44 0026 24B1 in r18,0x4
|
|
45 0028 35B1 in r19,0x4+1
|
|
46 002a C901 movw r24,r18
|
|
47 002c 0895 ret
|
|
49 .global adc_read_avg
|
|
51 adc_read_avg:
|
|
52 002e FF92 push r15
|
|
53 0030 0F93 push r16
|
|
54 0032 1F93 push r17
|
|
55 0034 CF93 push r28
|
|
56 0036 DF93 push r29
|
|
57 /* prologue: function */
|
|
58 /* frame size = 0 */
|
|
59 /* stack size = 5 */
|
|
60 .L__stack_usage = 5
|
|
61 0038 082F mov r16,r24
|
|
62 003a 862F mov r24,r22
|
|
63 003c 6CE3 ldi r22,lo8(60)
|
|
64 003e 00D0 rcall __udivmodqi4
|
|
65 0040 F92E mov r15,r25
|
|
66 0042 10E0 ldi r17,0
|
|
67 0044 C0E0 ldi r28,0
|
|
68 0046 D0E0 ldi r29,0
|
|
69 0048 00C0 rjmp .L8
|
|
70 .L9:
|
|
71 004a 802F mov r24,r16
|
|
72 004c 00D0 rcall adc_read_single
|
|
73 004e C80F add r28,r24
|
|
74 0050 D91F adc r29,r25
|
|
75 0052 1F5F subi r17,lo8(-(1))
|
|
76 .L8:
|
|
77 0054 1F11 cpse r17,r15
|
|
78 0056 00C0 rjmp .L9
|
|
79 0058 612F mov r22,r17
|
|
80 005a CE01 movw r24,r28
|
|
81 005c 70E0 ldi r23,0
|
|
82 005e 00D0 rcall __udivmodhi4
|
|
83 0060 CB01 movw r24,r22
|
|
84 /* epilogue start */
|
|
85 0062 DF91 pop r29
|
|
86 0064 CF91 pop r28
|
|
87 0066 1F91 pop r17
|
|
88 0068 0F91 pop r16
|
|
89 006a FF90 pop r15
|
|
90 006c 0895 ret
|
|
92 .ident "GCC: (GNU) 4.7.2"
|
|
DEFINED SYMBOLS
|
|
*ABS*:0000000000000000 adc.c
|
|
/tmp/ccEsNr7S.s:2 *ABS*:000000000000003e __SP_H__
|
|
/tmp/ccEsNr7S.s:3 *ABS*:000000000000003d __SP_L__
|
|
/tmp/ccEsNr7S.s:4 *ABS*:000000000000003f __SREG__
|
|
/tmp/ccEsNr7S.s:5 *ABS*:0000000000000000 __tmp_reg__
|
|
/tmp/ccEsNr7S.s:6 *ABS*:0000000000000001 __zero_reg__
|
|
/tmp/ccEsNr7S.s:10 .text:0000000000000000 adc_init
|
|
/tmp/ccEsNr7S.s:30 .text:0000000000000016 adc_read_single
|
|
/tmp/ccEsNr7S.s:51 .text:000000000000002e adc_read_avg
|
|
|
|
UNDEFINED SYMBOLS
|
|
__udivmodqi4
|
|
__udivmodhi4
|