delete compiled files
parent
b76b9fbbf7
commit
d1bbac33f9
@ -1,96 +0,0 @@
|
|||||||
1 .file "DS3231.c"
|
|
||||||
2 __SP_H__ = 0x3e
|
|
||||||
3 __SP_L__ = 0x3d
|
|
||||||
4 __SREG__ = 0x3f
|
|
||||||
5 __RAMPZ__ = 0x3b
|
|
||||||
6 __tmp_reg__ = 0
|
|
||||||
7 __zero_reg__ = 1
|
|
||||||
8 .text
|
|
||||||
9 .Ltext0:
|
|
||||||
10 .cfi_sections .debug_frame
|
|
||||||
11 .global DS3231_init
|
|
||||||
13 DS3231_init:
|
|
||||||
14 .LFB0:
|
|
||||||
15 .file 1 "src/DS3231.c"
|
|
||||||
1:src/DS3231.c **** #include "i2c.h"
|
|
||||||
2:src/DS3231.c **** #include "DS3231.h"
|
|
||||||
3:src/DS3231.c **** #include "pinout.h"
|
|
||||||
4:src/DS3231.c **** #include <avr/io.h>
|
|
||||||
5:src/DS3231.c ****
|
|
||||||
6:src/DS3231.c ****
|
|
||||||
7:src/DS3231.c ****
|
|
||||||
8:src/DS3231.c **** void DS3231_init(void){
|
|
||||||
16 .loc 1 8 0
|
|
||||||
17 .cfi_startproc
|
|
||||||
18 /* prologue: function */
|
|
||||||
19 /* frame size = 0 */
|
|
||||||
20 /* stack size = 0 */
|
|
||||||
21 .L__stack_usage = 0
|
|
||||||
22 0000 0895 ret
|
|
||||||
23 .cfi_endproc
|
|
||||||
24 .LFE0:
|
|
||||||
26 .global DS3231_seconds
|
|
||||||
28 DS3231_seconds:
|
|
||||||
29 .LFB1:
|
|
||||||
9:src/DS3231.c **** //i2c_start(DS3231_ADDRESS);
|
|
||||||
10:src/DS3231.c **** }
|
|
||||||
11:src/DS3231.c ****
|
|
||||||
12:src/DS3231.c ****
|
|
||||||
13:src/DS3231.c ****
|
|
||||||
14:src/DS3231.c **** int DS3231_seconds(void){
|
|
||||||
30 .loc 1 14 0
|
|
||||||
31 .cfi_startproc
|
|
||||||
32 /* prologue: function */
|
|
||||||
33 /* frame size = 0 */
|
|
||||||
34 /* stack size = 0 */
|
|
||||||
35 .L__stack_usage = 0
|
|
||||||
15:src/DS3231.c ****
|
|
||||||
16:src/DS3231.c **** char ret = i2c_start(DS3231_ADDRESS+I2C_WRITE);
|
|
||||||
36 .loc 1 16 0
|
|
||||||
37 0002 88E6 ldi r24,lo8(104)
|
|
||||||
38 0004 0E94 0000 call i2c_start
|
|
||||||
39 .LVL0:
|
|
||||||
17:src/DS3231.c **** /*
|
|
||||||
18:src/DS3231.c **** USART_Transmit_String(" Return ");
|
|
||||||
19:src/DS3231.c **** //putchar(ret);
|
|
||||||
20:src/DS3231.c **** USART_Transmit_String("\n");
|
|
||||||
21:src/DS3231.c **** */
|
|
||||||
22:src/DS3231.c **** /*
|
|
||||||
23:src/DS3231.c **** if(ret){ //failed
|
|
||||||
24:src/DS3231.c **** PORTB |= STATUS_LED_B;
|
|
||||||
25:src/DS3231.c **** i2c_stop();
|
|
||||||
26:src/DS3231.c **** }else{
|
|
||||||
27:src/DS3231.c **** // issuing start condition ok, device accessible
|
|
||||||
28:src/DS3231.c **** i2c_write(0x05); // write address = 5
|
|
||||||
29:src/DS3231.c **** i2c_write(0x75); // ret=0 -> Ok, ret=1 -> no ACK
|
|
||||||
30:src/DS3231.c **** i2c_stop();
|
|
||||||
31:src/DS3231.c ****
|
|
||||||
32:src/DS3231.c **** i2c_start_wait(DS3231_ADDRESS+I2C_WRITE); // set device address and write mode
|
|
||||||
33:src/DS3231.c **** i2c_write(REG_SECONDS); // write address = 5
|
|
||||||
34:src/DS3231.c **** i2c_rep_start(DS3231_ADDRESS+I2C_READ); // set device address and read mode
|
|
||||||
35:src/DS3231.c **** ret = i2c_readNak(); // read one byte
|
|
||||||
36:src/DS3231.c **** i2c_stop();
|
|
||||||
37:src/DS3231.c **** }
|
|
||||||
38:src/DS3231.c ****
|
|
||||||
39:src/DS3231.c **** return ret;
|
|
||||||
40:src/DS3231.c **** */
|
|
||||||
41:src/DS3231.c **** }
|
|
||||||
40 .loc 1 41 0
|
|
||||||
41 0008 0895 ret
|
|
||||||
42 .cfi_endproc
|
|
||||||
43 .LFE1:
|
|
||||||
45 .Letext0:
|
|
||||||
46 .file 2 "inc/i2c.h"
|
|
||||||
DEFINED SYMBOLS
|
|
||||||
*ABS*:00000000 DS3231.c
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccV7Y02n.s:2 *ABS*:0000003e __SP_H__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccV7Y02n.s:3 *ABS*:0000003d __SP_L__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccV7Y02n.s:4 *ABS*:0000003f __SREG__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccV7Y02n.s:5 *ABS*:0000003b __RAMPZ__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccV7Y02n.s:6 *ABS*:00000000 __tmp_reg__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccV7Y02n.s:7 *ABS*:00000001 __zero_reg__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccV7Y02n.s:13 .text:00000000 DS3231_init
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccV7Y02n.s:28 .text:00000002 DS3231_seconds
|
|
||||||
|
|
||||||
UNDEFINED SYMBOLS
|
|
||||||
i2c_start
|
|
||||||
Binary file not shown.
Binary file not shown.
@ -1,114 +0,0 @@
|
|||||||
1 .file "adc.c"
|
|
||||||
2 __SP_H__ = 0x3e
|
|
||||||
3 __SP_L__ = 0x3d
|
|
||||||
4 __SREG__ = 0x3f
|
|
||||||
5 __RAMPZ__ = 0x3b
|
|
||||||
6 __tmp_reg__ = 0
|
|
||||||
7 __zero_reg__ = 1
|
|
||||||
8 .text
|
|
||||||
9 .Ltext0:
|
|
||||||
10 .cfi_sections .debug_frame
|
|
||||||
11 .global adc_setup
|
|
||||||
13 adc_setup:
|
|
||||||
14 .LFB0:
|
|
||||||
15 .file 1 "src/adc.c"
|
|
||||||
1:src/adc.c **** #include "adc.h"
|
|
||||||
2:src/adc.c **** #include "pinout.h"
|
|
||||||
3:src/adc.c **** #include <avr/io.h>
|
|
||||||
4:src/adc.c ****
|
|
||||||
5:src/adc.c **** void adc_setup(void){
|
|
||||||
16 .loc 1 5 0
|
|
||||||
17 .cfi_startproc
|
|
||||||
18 /* prologue: function */
|
|
||||||
19 /* frame size = 0 */
|
|
||||||
20 /* stack size = 0 */
|
|
||||||
21 .L__stack_usage = 0
|
|
||||||
6:src/adc.c **** ADMUX = (1 << REFS0); //Versorgungsspannung definieren
|
|
||||||
22 .loc 1 6 0
|
|
||||||
23 0000 80E4 ldi r24,lo8(64)
|
|
||||||
24 0002 8093 7C00 sts 124,r24
|
|
||||||
7:src/adc.c **** ADCSRA|= (1 << ADEN) //enable bit für adc
|
|
||||||
25 .loc 1 7 0
|
|
||||||
26 0006 EAE7 ldi r30,lo8(122)
|
|
||||||
27 0008 F0E0 ldi r31,0
|
|
||||||
28 000a 8081 ld r24,Z
|
|
||||||
29 000c 8368 ori r24,lo8(-125)
|
|
||||||
30 000e 8083 st Z,r24
|
|
||||||
31 0010 0895 ret
|
|
||||||
32 .cfi_endproc
|
|
||||||
33 .LFE0:
|
|
||||||
35 .global adc_read
|
|
||||||
37 adc_read:
|
|
||||||
38 .LFB1:
|
|
||||||
8:src/adc.c **** | (1 << ADPS0) //setze Prescaler für Abtastfrequenz
|
|
||||||
9:src/adc.c **** | (1 << ADPS1) //setze Prescaler für Abtastfrequenz
|
|
||||||
10:src/adc.c **** | (0 << ADPS2); //setze Prescaler für Abtastfrequenz
|
|
||||||
11:src/adc.c **** }
|
|
||||||
12:src/adc.c ****
|
|
||||||
13:src/adc.c ****
|
|
||||||
14:src/adc.c ****
|
|
||||||
15:src/adc.c **** int adc_read(unsigned char adc_pin) {
|
|
||||||
39 .loc 1 15 0
|
|
||||||
40 .cfi_startproc
|
|
||||||
41 .LVL0:
|
|
||||||
42 /* prologue: function */
|
|
||||||
43 /* frame size = 0 */
|
|
||||||
44 /* stack size = 0 */
|
|
||||||
45 .L__stack_usage = 0
|
|
||||||
16:src/adc.c **** ADMUX &= 0b11110000; //Alte Port-Select Flags löschen
|
|
||||||
46 .loc 1 16 0
|
|
||||||
47 0012 9091 7C00 lds r25,124
|
|
||||||
48 0016 907F andi r25,lo8(-16)
|
|
||||||
49 0018 9093 7C00 sts 124,r25
|
|
||||||
17:src/adc.c **** ADMUX|=adc_pin; //Neuen Eingang setzen
|
|
||||||
50 .loc 1 17 0
|
|
||||||
51 001c 9091 7C00 lds r25,124
|
|
||||||
52 0020 982B or r25,r24
|
|
||||||
53 0022 9093 7C00 sts 124,r25
|
|
||||||
18:src/adc.c **** ADCSRA |= (1 << ADSC); // eine Wandlung "single conversion"
|
|
||||||
54 .loc 1 18 0
|
|
||||||
55 0026 8091 7A00 lds r24,122
|
|
||||||
56 .LVL1:
|
|
||||||
57 002a 8064 ori r24,lo8(64)
|
|
||||||
58 002c 8093 7A00 sts 122,r24
|
|
||||||
59 .L4:
|
|
||||||
19:src/adc.c **** while (ADCSRA & (1 << ADSC) ) { // auf Abschluss der Konvertierung warten
|
|
||||||
60 .loc 1 19 0 discriminator 1
|
|
||||||
61 0030 8091 7A00 lds r24,122
|
|
||||||
62 0034 86FD sbrc r24,6
|
|
||||||
63 0036 00C0 rjmp .L4
|
|
||||||
20:src/adc.c **** }
|
|
||||||
21:src/adc.c **** int ADCresult = ADCL;
|
|
||||||
64 .loc 1 21 0
|
|
||||||
65 0038 2091 7800 lds r18,120
|
|
||||||
66 .LVL2:
|
|
||||||
22:src/adc.c **** ADCresult += (ADCH << 8);
|
|
||||||
67 .loc 1 22 0
|
|
||||||
68 003c 8091 7900 lds r24,121
|
|
||||||
69 .LVL3:
|
|
||||||
70 0040 90E0 ldi r25,0
|
|
||||||
71 0042 982F mov r25,r24
|
|
||||||
72 0044 8827 clr r24
|
|
||||||
73 .LVL4:
|
|
||||||
23:src/adc.c **** return ADCresult;
|
|
||||||
24:src/adc.c **** }
|
|
||||||
74 .loc 1 24 0
|
|
||||||
75 0046 820F add r24,r18
|
|
||||||
76 0048 911D adc r25,__zero_reg__
|
|
||||||
77 004a 0895 ret
|
|
||||||
78 .cfi_endproc
|
|
||||||
79 .LFE1:
|
|
||||||
81 .Letext0:
|
|
||||||
82 .file 2 "/usr/local/CrossPack-AVR-20131216/avr/include/stdint.h"
|
|
||||||
DEFINED SYMBOLS
|
|
||||||
*ABS*:00000000 adc.c
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccQrSfzE.s:2 *ABS*:0000003e __SP_H__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccQrSfzE.s:3 *ABS*:0000003d __SP_L__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccQrSfzE.s:4 *ABS*:0000003f __SREG__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccQrSfzE.s:5 *ABS*:0000003b __RAMPZ__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccQrSfzE.s:6 *ABS*:00000000 __tmp_reg__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccQrSfzE.s:7 *ABS*:00000001 __zero_reg__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccQrSfzE.s:13 .text:00000000 adc_setup
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccQrSfzE.s:37 .text:00000012 adc_read
|
|
||||||
|
|
||||||
NO UNDEFINED SYMBOLS
|
|
||||||
Binary file not shown.
@ -1,185 +0,0 @@
|
|||||||
1 .file "i2c.c"
|
|
||||||
2 __SP_H__ = 0x3e
|
|
||||||
3 __SP_L__ = 0x3d
|
|
||||||
4 __SREG__ = 0x3f
|
|
||||||
5 __RAMPZ__ = 0x3b
|
|
||||||
6 __tmp_reg__ = 0
|
|
||||||
7 __zero_reg__ = 1
|
|
||||||
8 .text
|
|
||||||
9 .Ltext0:
|
|
||||||
10 .cfi_sections .debug_frame
|
|
||||||
11 .global i2c_init
|
|
||||||
13 i2c_init:
|
|
||||||
14 .LFB0:
|
|
||||||
15 .file 1 "src/i2c.c"
|
|
||||||
1:src/i2c.c **** #include "i2c.h"
|
|
||||||
2:src/i2c.c **** #include "pinout.h"
|
|
||||||
3:src/i2c.c **** #include <util/twi.h>
|
|
||||||
4:src/i2c.c **** #include <avr/io.h>
|
|
||||||
5:src/i2c.c ****
|
|
||||||
6:src/i2c.c ****
|
|
||||||
7:src/i2c.c **** void i2c_init(void)
|
|
||||||
8:src/i2c.c **** {
|
|
||||||
16 .loc 1 8 0
|
|
||||||
17 .cfi_startproc
|
|
||||||
18 /* prologue: function */
|
|
||||||
19 /* frame size = 0 */
|
|
||||||
20 /* stack size = 0 */
|
|
||||||
21 .L__stack_usage = 0
|
|
||||||
9:src/i2c.c **** /* initialize TWI clock: 100 kHz clock, TWPS = 0 => prescaler = 1 */
|
|
||||||
10:src/i2c.c ****
|
|
||||||
11:src/i2c.c **** TWSR = 1; /* no prescaler */
|
|
||||||
22 .loc 1 11 0
|
|
||||||
23 0000 81E0 ldi r24,lo8(1)
|
|
||||||
24 0002 8093 B900 sts 185,r24
|
|
||||||
12:src/i2c.c **** TWBR = ((F_CPU/SCL_CLOCK)-16)/2; /* must be > 10 for stable operation */
|
|
||||||
25 .loc 1 12 0
|
|
||||||
26 0006 8BE4 ldi r24,lo8(75)
|
|
||||||
27 0008 8093 B800 sts 184,r24
|
|
||||||
28 000c 0895 ret
|
|
||||||
29 .cfi_endproc
|
|
||||||
30 .LFE0:
|
|
||||||
32 .global i2c_start
|
|
||||||
34 i2c_start:
|
|
||||||
35 .LFB1:
|
|
||||||
13:src/i2c.c ****
|
|
||||||
14:src/i2c.c **** }
|
|
||||||
15:src/i2c.c ****
|
|
||||||
16:src/i2c.c ****
|
|
||||||
17:src/i2c.c **** unsigned char i2c_start(unsigned char address){
|
|
||||||
36 .loc 1 17 0
|
|
||||||
37 .cfi_startproc
|
|
||||||
38 .LVL0:
|
|
||||||
39 /* prologue: function */
|
|
||||||
40 /* frame size = 0 */
|
|
||||||
41 /* stack size = 0 */
|
|
||||||
42 .L__stack_usage = 0
|
|
||||||
18:src/i2c.c **** char DATA = 0b10011000;
|
|
||||||
19:src/i2c.c **** //Send START condition
|
|
||||||
20:src/i2c.c **** TWCR = (1<<TWINT)|
|
|
||||||
43 .loc 1 20 0
|
|
||||||
44 000e 94EA ldi r25,lo8(-92)
|
|
||||||
45 0010 9093 BC00 sts 188,r25
|
|
||||||
46 .L4:
|
|
||||||
21:src/i2c.c **** (1<<TWSTA)|
|
|
||||||
22:src/i2c.c **** (1<<TWEN);
|
|
||||||
23:src/i2c.c ****
|
|
||||||
24:src/i2c.c **** //Wait for TWINT Flag set. This indicates that the START condition has been transmitted.
|
|
||||||
25:src/i2c.c **** while (!(TWCR &(1<<TWINT)));
|
|
||||||
47 .loc 1 25 0 discriminator 1
|
|
||||||
48 0014 9091 BC00 lds r25,188
|
|
||||||
49 0018 97FF sbrs r25,7
|
|
||||||
50 001a 00C0 rjmp .L4
|
|
||||||
26:src/i2c.c ****
|
|
||||||
27:src/i2c.c **** //Check value of TWI Status Register. Mask prescaler bits. If status different from START go to ER
|
|
||||||
28:src/i2c.c **** if ((TWSR & 0xF8) != TW_START){
|
|
||||||
51 .loc 1 28 0
|
|
||||||
52 001c 9091 B900 lds r25,185
|
|
||||||
29:src/i2c.c **** //ERROR();
|
|
||||||
30:src/i2c.c **** }
|
|
||||||
31:src/i2c.c ****
|
|
||||||
32:src/i2c.c **** //Load SLA_W into TWDR Register. Clear TWINT bit in TWCR to start transmission of address.
|
|
||||||
33:src/i2c.c **** TWDR = address + I2C_WRITE;
|
|
||||||
53 .loc 1 33 0
|
|
||||||
54 0020 8093 BB00 sts 187,r24
|
|
||||||
34:src/i2c.c **** TWCR = (1<<TWINT) |
|
|
||||||
55 .loc 1 34 0
|
|
||||||
56 0024 84E8 ldi r24,lo8(-124)
|
|
||||||
57 .LVL1:
|
|
||||||
58 0026 8093 BC00 sts 188,r24
|
|
||||||
59 .LVL2:
|
|
||||||
60 .L6:
|
|
||||||
35:src/i2c.c **** (1<<TWEN);
|
|
||||||
36:src/i2c.c ****
|
|
||||||
37:src/i2c.c **** //Wait for TWINT Flag set. This indicates that the SLA+W has been transmitted, and ACK/NACK has be
|
|
||||||
38:src/i2c.c **** while (!(TWCR & (1<<TWINT)));
|
|
||||||
61 .loc 1 38 0 discriminator 1
|
|
||||||
62 002a 8091 BC00 lds r24,188
|
|
||||||
63 002e 87FF sbrs r24,7
|
|
||||||
64 0030 00C0 rjmp .L6
|
|
||||||
39:src/i2c.c ****
|
|
||||||
40:src/i2c.c **** //Check value of TWI Status Register. Mask prescaler bits. If status different from MT_SLA_ACK go
|
|
||||||
41:src/i2c.c **** if ((TWSR & 0xF8) != TW_MT_SLA_ACK){
|
|
||||||
65 .loc 1 41 0
|
|
||||||
66 0032 8091 B900 lds r24,185
|
|
||||||
42:src/i2c.c **** // ERROR();
|
|
||||||
43:src/i2c.c **** }
|
|
||||||
44:src/i2c.c ****
|
|
||||||
45:src/i2c.c **** //Load DATA into TWDR Register. Clear TWINT bit in TWCR to start transmission of data.
|
|
||||||
46:src/i2c.c **** TWDR = DATA;
|
|
||||||
67 .loc 1 46 0
|
|
||||||
68 0036 88E9 ldi r24,lo8(-104)
|
|
||||||
69 0038 8093 BB00 sts 187,r24
|
|
||||||
47:src/i2c.c **** TWCR = (1<<TWINT) |
|
|
||||||
70 .loc 1 47 0
|
|
||||||
71 003c 84E8 ldi r24,lo8(-124)
|
|
||||||
72 003e 8093 BC00 sts 188,r24
|
|
||||||
73 .L8:
|
|
||||||
48:src/i2c.c **** (1<<TWEN);
|
|
||||||
49:src/i2c.c ****
|
|
||||||
50:src/i2c.c **** //Wait for TWINT Flag set. This indicates that the DATA has been transmitted, and ACK/NACK has bee
|
|
||||||
51:src/i2c.c **** while (!(TWCR &(1<<TWINT)));
|
|
||||||
74 .loc 1 51 0 discriminator 1
|
|
||||||
75 0042 8091 BC00 lds r24,188
|
|
||||||
76 0046 87FF sbrs r24,7
|
|
||||||
77 0048 00C0 rjmp .L8
|
|
||||||
52:src/i2c.c ****
|
|
||||||
53:src/i2c.c **** //Check value of TWI Status Register. Mask prescaler bits. If status different from MT_DATA_ACK go
|
|
||||||
54:src/i2c.c **** if ((TWSR & 0xF8) != TW_MT_DATA_ACK){
|
|
||||||
78 .loc 1 54 0
|
|
||||||
79 004a 8091 B900 lds r24,185
|
|
||||||
55:src/i2c.c **** // ERROR();
|
|
||||||
56:src/i2c.c **** }
|
|
||||||
57:src/i2c.c ****
|
|
||||||
58:src/i2c.c **** //Transmit STOP condition
|
|
||||||
59:src/i2c.c **** TWCR = (1<<TWINT)|
|
|
||||||
80 .loc 1 59 0
|
|
||||||
81 004e 84E9 ldi r24,lo8(-108)
|
|
||||||
82 0050 8093 BC00 sts 188,r24
|
|
||||||
60:src/i2c.c **** (1<<TWEN) |
|
|
||||||
61:src/i2c.c **** (1<<TWSTO);
|
|
||||||
62:src/i2c.c ****
|
|
||||||
63:src/i2c.c ****
|
|
||||||
64:src/i2c.c **** /*
|
|
||||||
65:src/i2c.c **** TWCR = _BV(TWINT) | _BV(TWSTA) | _BV(TWEN);
|
|
||||||
66:src/i2c.c **** while (!(TWCR & (1<<TWINT)));
|
|
||||||
67:src/i2c.c **** if ((TWSR & 0xF8) != TW_START)
|
|
||||||
68:src/i2c.c **** return 1;
|
|
||||||
69:src/i2c.c **** //ERROR(); //Fehlerbehandlung
|
|
||||||
70:src/i2c.c **** TWDR = address + I2C_WRITE;
|
|
||||||
71:src/i2c.c **** TWCR = (1<<TWINT) | (1<<TWEN);
|
|
||||||
72:src/i2c.c **** while (!(TWCR & (1<<TWINT)));
|
|
||||||
73:src/i2c.c **** if ((TWSR & 0xF8) != TW_MT_SLA_ACK)
|
|
||||||
74:src/i2c.c **** //ERROR();
|
|
||||||
75:src/i2c.c **** return 2;
|
|
||||||
76:src/i2c.c ****
|
|
||||||
77:src/i2c.c **** TWDR = address;
|
|
||||||
78:src/i2c.c **** TWCR = (1<<TWINT) | (1<<TWEN);
|
|
||||||
79:src/i2c.c **** while (!(TWCR & (1<<TWINT)));
|
|
||||||
80:src/i2c.c **** if ((TWSR & 0xF8) != TW_MT_DATA_ACK)
|
|
||||||
81:src/i2c.c **** return 3;
|
|
||||||
82:src/i2c.c **** //ERROR();
|
|
||||||
83:src/i2c.c **** TWCR = (1<<TWINT)|(1<<TWEN)|
|
|
||||||
84:src/i2c.c **** (1<<TWSTO);
|
|
||||||
85:src/i2c.c **** */
|
|
||||||
86:src/i2c.c **** return 0;
|
|
||||||
87:src/i2c.c **** }
|
|
||||||
83 .loc 1 87 0
|
|
||||||
84 0054 80E0 ldi r24,0
|
|
||||||
85 0056 0895 ret
|
|
||||||
86 .cfi_endproc
|
|
||||||
87 .LFE1:
|
|
||||||
89 .Letext0:
|
|
||||||
90 .file 2 "/usr/local/CrossPack-AVR-20131216/avr/include/stdint.h"
|
|
||||||
DEFINED SYMBOLS
|
|
||||||
*ABS*:00000000 i2c.c
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccKg5qqS.s:2 *ABS*:0000003e __SP_H__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccKg5qqS.s:3 *ABS*:0000003d __SP_L__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccKg5qqS.s:4 *ABS*:0000003f __SREG__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccKg5qqS.s:5 *ABS*:0000003b __RAMPZ__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccKg5qqS.s:6 *ABS*:00000000 __tmp_reg__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccKg5qqS.s:7 *ABS*:00000001 __zero_reg__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccKg5qqS.s:13 .text:00000000 i2c_init
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccKg5qqS.s:34 .text:0000000e i2c_start
|
|
||||||
|
|
||||||
NO UNDEFINED SYMBOLS
|
|
||||||
Binary file not shown.
@ -1 +0,0 @@
|
|||||||
:00000001FF
|
|
||||||
@ -1,88 +0,0 @@
|
|||||||
:100000000C9446000C94D8010C94E5010C94650006
|
|
||||||
:100010000C9465000C9465000C9465000C946500CC
|
|
||||||
:100020000C9465000C9465000C9465000C946500BC
|
|
||||||
:100030000C9465000C9465000C9465000C949A0176
|
|
||||||
:100040000C9465000C9465000C9465000C9465009C
|
|
||||||
:100050000C94EF010C9465000C9465000C94650001
|
|
||||||
:100060000C9465000C9465000C9465000C9465007C
|
|
||||||
:100070000C9465000C9465000C9465000C9465006C
|
|
||||||
:100080000C9465000C9465000C94650011241FBE4F
|
|
||||||
:10009000CFEFD0E4DEBFCDBF11E0A0E0B1E0E2E100
|
|
||||||
:1000A000F5E000E00BBF02C007900D92A834B10745
|
|
||||||
:1000B000D9F721E0A8E4B1E001C01D92AE34B20747
|
|
||||||
:1000C000E1F70E941F020C9487020C94000010922A
|
|
||||||
:1000D000000110920101109202011092030110928E
|
|
||||||
:1000E0000401109205010895FC01E150FF4F808149
|
|
||||||
:1000F0008F5F808308954298E0E0F1E081918EBDAA
|
|
||||||
:100100000DB407FEFDCF81E0E630F807B9F7429A5B
|
|
||||||
:10011000089591ED980F9A3040F4DB01A050BF4F45
|
|
||||||
:10012000E82FF0E0E35FFE4F0BC090EA980F9A31A2
|
|
||||||
:1001300050F4DB01A050BF4FE82FF0E0EE53FF4F2B
|
|
||||||
:1001400080818C9308959FEB980F9A3140F4DB01E6
|
|
||||||
:10015000A050BF4FE82FF0E0EE51FF4FF1CF8032BB
|
|
||||||
:1001600029F4FB01E050FF4F108208958D3229F4ED
|
|
||||||
:10017000FB01E050FF4F80E2808308950F931F93AF
|
|
||||||
:10018000CF93DF938C01C0E0D0E0BE01F8018191F4
|
|
||||||
:100190008F010E9489002196C630D105B1F7DF9109
|
|
||||||
:1001A000CF911F910F910C947B009FE9980F99318B
|
|
||||||
:1001B00040F4DB01A050BF4FE82FF0E0EE53FF4FBB
|
|
||||||
:1001C0000BC09EEB980F993148F4DB01A050BF4F54
|
|
||||||
:1001D000E82FF0E0EE51FF4F80818C93089561503D
|
|
||||||
:1001E0007F4F835C9E4FFC018081FB0180830895DB
|
|
||||||
:1001F000089588E60E940401089581E08093B90083
|
|
||||||
:100200008BE48093B800089594EA9093BC00909199
|
|
||||||
:10021000BC0097FFFCCF9091B9008093BB0084E8AD
|
|
||||||
:100220008093BC008091BC0087FFFCCF8091B90017
|
|
||||||
:1002300088E98093BB0084E88093BC008091BC0077
|
|
||||||
:1002400087FFFCCF8091B90084E98093BC0080E0F7
|
|
||||||
:10025000089580E480937C00EAE7F0E08081836881
|
|
||||||
:100260008083089590917C00907F90937C00909182
|
|
||||||
:100270007C00982B90937C0080917A00806480931E
|
|
||||||
:100280007A0080917A0086FDFCCF209178008091E1
|
|
||||||
:10029000790090E0982F8827820F911D08951A9B6E
|
|
||||||
:1002A00005C0479A82B18C7F82B908954798119A08
|
|
||||||
:1002B000089586B1089582E081B983EA84B98CE912
|
|
||||||
:1002C00087B980EA8AB983E58CBD81E08DBD88B1AC
|
|
||||||
:1002D000887F88B9429A5D9A43988DB383608DBBBD
|
|
||||||
:1002E000E9E6F0E080818B608083E8E6F0E08081E1
|
|
||||||
:1002F0008460808380E88093B00083E88093B100BD
|
|
||||||
:10030000809106018093B30010928000E1E8F0E054
|
|
||||||
:1003100010828081856080838FEF90E090938900C8
|
|
||||||
:1003200080938800EFE6F0E080818162808378949A
|
|
||||||
:100330000C9467001F920F920FB60F9211248F93A7
|
|
||||||
:100340009F9385B192E0892785B986EE99EF9093C6
|
|
||||||
:100350008500809384008091480190914901019625
|
|
||||||
:1003600090934901809348010B97DCF0109249016A
|
|
||||||
:100370001092480180914A0190914B01019690930F
|
|
||||||
:100380004B0180934A0185B191E0892785B980911D
|
|
||||||
:100390004A0190914B01409724F010924B0110922A
|
|
||||||
:1003A0004A019F918F910F900FBE0F901F9018954B
|
|
||||||
:1003B0001F920F920FB60F9211248F9389B18F91D4
|
|
||||||
:1003C0000F900FBE0F901F9018951F920F920FB6AF
|
|
||||||
:1003D0000F9211240F900FBE0F901F9018951F922F
|
|
||||||
:1003E0000F920FB60F9211240F900FBE0F901F9017
|
|
||||||
:1003F00018958093B30008959093C5008093C4002E
|
|
||||||
:1004000088E08093C10086E08093C20008959091B7
|
|
||||||
:10041000C00095FFFCCF8093C6000895CF93DF9373
|
|
||||||
:10042000EC018991882319F00E940702FACFDF912D
|
|
||||||
:10043000CF9108950E94070280E090E00895CF9345
|
|
||||||
:10044000DF9300D000D000D0CDB7DEB70E945B01B3
|
|
||||||
:100450000E944F0186B1FE01319620E030E0E0902D
|
|
||||||
:100460004A01F0904B010091080110910901C90166
|
|
||||||
:100470008E0D9F1DB8010E945F02865F9E4FDC01BA
|
|
||||||
:100480008C9181932F5F3F4F803271F4C9018E0DA3
|
|
||||||
:100490009F1DB8010E945F02865F9E4FDC018C9118
|
|
||||||
:1004A000803211F4449A03C088B1807E88B9263026
|
|
||||||
:1004B0003105A9F6CE0101960E94BE00C9CF97FB77
|
|
||||||
:1004C000072E16F4009407D077FD09D00E9473021E
|
|
||||||
:1004D00007FC05D03EF4909581959F4F0895709547
|
|
||||||
:1004E00061957F4F0895AA1BBB1B51E107C0AA1F4E
|
|
||||||
:1004F000BB1FA617B70710F0A61BB70B881F991FC5
|
|
||||||
:100500005A95A9F780959095BC01CD010895F8946E
|
|
||||||
:02051000FFCF1B
|
|
||||||
:10051200E6E6E6E6E6E67D00160046526F686520EE
|
|
||||||
:1005220020576569686E61636874656E20202020BB
|
|
||||||
:10053200012000BEF4E0E6F8B8DCB40446BCD09E6C
|
|
||||||
:10054200A4E4BA3EA07CF0C4C4D6B676E6DE06EADF
|
|
||||||
:080552006E367CFC0EFE7E00FB
|
|
||||||
:00000001FF
|
|
||||||
@ -1,832 +0,0 @@
|
|||||||
1 .file "main.c"
|
|
||||||
2 __SP_H__ = 0x3e
|
|
||||||
3 __SP_L__ = 0x3d
|
|
||||||
4 __SREG__ = 0x3f
|
|
||||||
5 __RAMPZ__ = 0x3b
|
|
||||||
6 __tmp_reg__ = 0
|
|
||||||
7 __zero_reg__ = 1
|
|
||||||
8 .text
|
|
||||||
9 .Ltext0:
|
|
||||||
10 .cfi_sections .debug_frame
|
|
||||||
11 .global check_dip_switches
|
|
||||||
13 check_dip_switches:
|
|
||||||
14 .LFB11:
|
|
||||||
15 .file 1 "src/main.c"
|
|
||||||
1:src/main.c **** //#define F_CPU 16000000L
|
|
||||||
2:src/main.c ****
|
|
||||||
3:src/main.c **** #include <avr/io.h>
|
|
||||||
4:src/main.c **** #include <util/delay.h>
|
|
||||||
5:src/main.c **** #include <avr/interrupt.h> //interrupts
|
|
||||||
6:src/main.c **** #include <stdlib.h>
|
|
||||||
7:src/main.c **** #include "pinout.h"
|
|
||||||
8:src/main.c **** #include "print.h"
|
|
||||||
9:src/main.c **** #include "adc.h"
|
|
||||||
10:src/main.c **** #include "uart.h"
|
|
||||||
11:src/main.c **** #include "i2c.h"
|
|
||||||
12:src/main.c **** #include "DS3231.h"
|
|
||||||
13:src/main.c ****
|
|
||||||
14:src/main.c ****
|
|
||||||
15:src/main.c **** /*README
|
|
||||||
16:src/main.c **** DIP1 aktiviert Röhren-Schaltregler
|
|
||||||
17:src/main.c **** */
|
|
||||||
18:src/main.c ****
|
|
||||||
19:src/main.c **** volatile int counter = 0;
|
|
||||||
20:src/main.c **** char text[22] = {'F','R','o','h','e',' ',' ','W','e','i','h','n','a','c','h','t','e', 'n', ' ',' ',
|
|
||||||
21:src/main.c **** //char text[18] = {'1','2','3','4','5','6','7','8','9','t','s','c','a','f','e',' ', ' ', ' '};
|
|
||||||
22:src/main.c **** int offset = 0;
|
|
||||||
23:src/main.c **** int animationtimer = 0;
|
|
||||||
24:src/main.c **** int stringlength = 22;
|
|
||||||
25:src/main.c **** int duty = 125;
|
|
||||||
26:src/main.c ****
|
|
||||||
27:src/main.c ****
|
|
||||||
28:src/main.c **** void check_dip_switches(void);
|
|
||||||
29:src/main.c **** void check_buttons(void);
|
|
||||||
30:src/main.c **** void setup(void);
|
|
||||||
31:src/main.c **** void set_PWM_duty(int dutycycle);
|
|
||||||
32:src/main.c ****
|
|
||||||
33:src/main.c **** int main(void){
|
|
||||||
34:src/main.c **** setup();
|
|
||||||
35:src/main.c ****
|
|
||||||
36:src/main.c **** while(1){
|
|
||||||
37:src/main.c **** //putchar('c');
|
|
||||||
38:src/main.c **** //_delay_ms(50);
|
|
||||||
39:src/main.c ****
|
|
||||||
40:src/main.c **** check_dip_switches();
|
|
||||||
41:src/main.c **** check_buttons();
|
|
||||||
42:src/main.c ****
|
|
||||||
43:src/main.c ****
|
|
||||||
44:src/main.c ****
|
|
||||||
45:src/main.c **** char current_section[6];
|
|
||||||
46:src/main.c **** for(int i = 0; i < 6; i++){
|
|
||||||
47:src/main.c **** current_section[i] = text[(i+offset)%stringlength];
|
|
||||||
48:src/main.c **** if(text[(i+offset)%stringlength] == ' ' && text[(i+1+offset)%stringlength] == ' '){
|
|
||||||
49:src/main.c **** PORTC |= DOT;
|
|
||||||
50:src/main.c **** }else{
|
|
||||||
51:src/main.c **** PORTC &= ~DOT;
|
|
||||||
52:src/main.c **** }
|
|
||||||
53:src/main.c **** }
|
|
||||||
54:src/main.c ****
|
|
||||||
55:src/main.c ****
|
|
||||||
56:src/main.c ****
|
|
||||||
57:src/main.c **** //for(int i = 0; i < 6; i++){}
|
|
||||||
58:src/main.c **** //char test_word[6] = {'0','0','0','0','0', (char)i};
|
|
||||||
59:src/main.c **** print_String(current_section);
|
|
||||||
60:src/main.c **** //i2c_start(0b00101010);
|
|
||||||
61:src/main.c **** // current_e
|
|
||||||
62:src/main.c ****
|
|
||||||
63:src/main.c ****
|
|
||||||
64:src/main.c ****
|
|
||||||
65:src/main.c **** /*
|
|
||||||
66:src/main.c **** for(int i = 0; i < 6; i++)
|
|
||||||
67:src/main.c **** SR_Buffer[i] = i;
|
|
||||||
68:src/main.c ****
|
|
||||||
69:src/main.c **** print_SR_Buffer();
|
|
||||||
70:src/main.c **** */
|
|
||||||
71:src/main.c **** //putchar((i2c_start(0x68))+48);
|
|
||||||
72:src/main.c **** //i2c_write(0b00101010);
|
|
||||||
73:src/main.c **** }
|
|
||||||
74:src/main.c **** }
|
|
||||||
75:src/main.c ****
|
|
||||||
76:src/main.c **** void check_dip_switches() {
|
|
||||||
16 .loc 1 76 0
|
|
||||||
17 .cfi_startproc
|
|
||||||
18 /* prologue: function */
|
|
||||||
19 /* frame size = 0 */
|
|
||||||
20 /* stack size = 0 */
|
|
||||||
21 .L__stack_usage = 0
|
|
||||||
77:src/main.c **** if (PINB & DIP_1) {
|
|
||||||
22 .loc 1 77 0
|
|
||||||
23 0000 1A9B sbis 0x3,2
|
|
||||||
24 0002 00C0 rjmp .L2
|
|
||||||
78:src/main.c **** PORTC |= ENABLE_TUBE_PSU;
|
|
||||||
25 .loc 1 78 0
|
|
||||||
26 0004 479A sbi 0x8,7
|
|
||||||
79:src/main.c **** PORTA &= ~ENABLE_TUBE_SUPPLY;
|
|
||||||
27 .loc 1 79 0
|
|
||||||
28 0006 82B1 in r24,0x2
|
|
||||||
29 0008 8C7F andi r24,lo8(-4)
|
|
||||||
30 000a 82B9 out 0x2,r24
|
|
||||||
31 000c 0895 ret
|
|
||||||
32 .L2:
|
|
||||||
80:src/main.c **** // PORTB |= STATUS_LED_B;
|
|
||||||
81:src/main.c **** } else {
|
|
||||||
82:src/main.c **** PORTC &= ~(ENABLE_TUBE_PSU);
|
|
||||||
33 .loc 1 82 0
|
|
||||||
34 000e 4798 cbi 0x8,7
|
|
||||||
83:src/main.c **** PORTA |= (ENABLE_TUBE_SUPPLY);
|
|
||||||
35 .loc 1 83 0
|
|
||||||
36 0010 119A sbi 0x2,1
|
|
||||||
37 0012 0895 ret
|
|
||||||
38 .cfi_endproc
|
|
||||||
39 .LFE11:
|
|
||||||
41 .global check_buttons
|
|
||||||
43 check_buttons:
|
|
||||||
44 .LFB12:
|
|
||||||
84:src/main.c **** // PORTB &= ~STATUS_LED_B;
|
|
||||||
85:src/main.c **** }
|
|
||||||
86:src/main.c **** }
|
|
||||||
87:src/main.c ****
|
|
||||||
88:src/main.c **** void check_buttons(){
|
|
||||||
45 .loc 1 88 0
|
|
||||||
46 .cfi_startproc
|
|
||||||
47 /* prologue: function */
|
|
||||||
48 /* frame size = 0 */
|
|
||||||
49 /* stack size = 0 */
|
|
||||||
50 .L__stack_usage = 0
|
|
||||||
89:src/main.c **** if((PINC & BUTTON_A)){
|
|
||||||
51 .loc 1 89 0
|
|
||||||
52 0014 86B1 in r24,0x6
|
|
||||||
53 0016 0895 ret
|
|
||||||
54 .cfi_endproc
|
|
||||||
55 .LFE12:
|
|
||||||
57 .global setup
|
|
||||||
59 setup:
|
|
||||||
60 .LFB13:
|
|
||||||
90:src/main.c **** // PORTB &= ~STATUS_LED_C;
|
|
||||||
91:src/main.c **** }
|
|
||||||
92:src/main.c **** };
|
|
||||||
93:src/main.c ****
|
|
||||||
94:src/main.c **** void setup(){
|
|
||||||
61 .loc 1 94 0
|
|
||||||
62 .cfi_startproc
|
|
||||||
63 /* prologue: function */
|
|
||||||
64 /* frame size = 0 */
|
|
||||||
65 /* stack size = 0 */
|
|
||||||
66 .L__stack_usage = 0
|
|
||||||
95:src/main.c ****
|
|
||||||
96:src/main.c **** DDRA = ENABLE_TUBE_SUPPLY;
|
|
||||||
67 .loc 1 96 0
|
|
||||||
68 0018 82E0 ldi r24,lo8(2)
|
|
||||||
69 001a 81B9 out 0x1,r24
|
|
||||||
97:src/main.c ****
|
|
||||||
98:src/main.c **** DDRB = STATUS_LED_B
|
|
||||||
70 .loc 1 98 0
|
|
||||||
71 001c 83EA ldi r24,lo8(-93)
|
|
||||||
72 001e 84B9 out 0x4,r24
|
|
||||||
99:src/main.c **** | STATUS_LED_C
|
|
||||||
100:src/main.c **** | MOSI
|
|
||||||
101:src/main.c **** | CLK;
|
|
||||||
102:src/main.c ****
|
|
||||||
103:src/main.c **** DDRC = LATCH_SR
|
|
||||||
73 .loc 1 103 0
|
|
||||||
74 0020 8CE9 ldi r24,lo8(-100)
|
|
||||||
75 0022 87B9 out 0x7,r24
|
|
||||||
104:src/main.c **** | ENABLE_SR
|
|
||||||
105:src/main.c **** | DOT
|
|
||||||
106:src/main.c **** | ENABLE_TUBE_PSU;
|
|
||||||
107:src/main.c ****
|
|
||||||
108:src/main.c **** DDRD = RESET_SR
|
|
||||||
76 .loc 1 108 0
|
|
||||||
77 0024 80EA ldi r24,lo8(-96)
|
|
||||||
78 0026 8AB9 out 0xa,r24
|
|
||||||
109:src/main.c **** | TUBE_LED;
|
|
||||||
110:src/main.c ****
|
|
||||||
111:src/main.c ****
|
|
||||||
112:src/main.c **** //--------------------------
|
|
||||||
113:src/main.c **** // SPI
|
|
||||||
114:src/main.c **** //--------------------------
|
|
||||||
115:src/main.c **** SPCR = (1 << SPE) | //enable SPI
|
|
||||||
79 .loc 1 115 0
|
|
||||||
80 0028 83E5 ldi r24,lo8(83)
|
|
||||||
81 002a 8CBD out 0x2c,r24
|
|
||||||
116:src/main.c **** (1 << MSTR) | //SPI als Master starten
|
|
||||||
117:src/main.c **** (1 << SPR0) | //clock-prescaler LSB
|
|
||||||
118:src/main.c **** (1 << SPR1) | //clock-prescaler MSB
|
|
||||||
119:src/main.c **** (0 << SPIE) | //complete transfer/ recive interrupt
|
|
||||||
120:src/main.c **** (0 << CPOL) |
|
|
||||||
121:src/main.c **** (0 << CPHA) |
|
|
||||||
122:src/main.c **** (0 << DORD); //MSB first = 0
|
|
||||||
123:src/main.c **** SPSR = (1 << SPI2X);// | //clock- prescaler double speed
|
|
||||||
82 .loc 1 123 0
|
|
||||||
83 002c 81E0 ldi r24,lo8(1)
|
|
||||||
84 002e 8DBD out 0x2d,r24
|
|
||||||
124:src/main.c ****
|
|
||||||
125:src/main.c **** PORTC &= ~LATCH_SR; //latch low, sonst startet SPI nicht
|
|
||||||
85 .loc 1 125 0
|
|
||||||
86 0030 88B1 in r24,0x8
|
|
||||||
87 0032 887F andi r24,lo8(-8)
|
|
||||||
88 0034 88B9 out 0x8,r24
|
|
||||||
126:src/main.c **** PORTC |= LATCH_SR;
|
|
||||||
89 .loc 1 126 0
|
|
||||||
90 0036 429A sbi 0x8,2
|
|
||||||
127:src/main.c **** PORTD |= RESET_SR; //Setzte Reset auf HIGH (active LOW)
|
|
||||||
91 .loc 1 127 0
|
|
||||||
92 0038 5D9A sbi 0xb,5
|
|
||||||
128:src/main.c **** PORTC &= ~(ENABLE_SR); //Aktiviert Shiftregister (active LOW)
|
|
||||||
93 .loc 1 128 0
|
|
||||||
94 003a 4398 cbi 0x8,3
|
|
||||||
129:src/main.c ****
|
|
||||||
130:src/main.c ****
|
|
||||||
131:src/main.c ****
|
|
||||||
132:src/main.c **** //--------------------------
|
|
||||||
133:src/main.c **** // Externe Interrupts
|
|
||||||
134:src/main.c **** //--------------------------
|
|
||||||
135:src/main.c **** //External Interrupt Mask Register
|
|
||||||
136:src/main.c ****
|
|
||||||
137:src/main.c **** EIMSK |= (1 << INT0) | //Aktiviere Interrupt INT0
|
|
||||||
95 .loc 1 137 0
|
|
||||||
96 003c 8DB3 in r24,0x1d
|
|
||||||
97 003e 8360 ori r24,lo8(3)
|
|
||||||
98 0040 8DBB out 0x1d,r24
|
|
||||||
138:src/main.c **** (1 << INT1); //Aktiviere Interrupt INT1
|
|
||||||
139:src/main.c ****
|
|
||||||
140:src/main.c **** //External Interrupt Control Register A
|
|
||||||
141:src/main.c **** EICRA |= (0 << ISC10) | //Interrupt bei jedem Pegelwechsel auf INT1
|
|
||||||
99 .loc 1 141 0
|
|
||||||
100 0042 E9E6 ldi r30,lo8(105)
|
|
||||||
101 0044 F0E0 ldi r31,0
|
|
||||||
102 0046 8081 ld r24,Z
|
|
||||||
103 0048 8B60 ori r24,lo8(11)
|
|
||||||
104 004a 8083 st Z,r24
|
|
||||||
142:src/main.c **** (1 << ISC11) |
|
|
||||||
143:src/main.c **** (1 << ISC00) | //Interrupt bei jedem Pegelwechsel auf INT0
|
|
||||||
144:src/main.c **** (1 << ISC01);
|
|
||||||
145:src/main.c **** //Pin Change Interrupt Control Register
|
|
||||||
146:src/main.c **** PCICR |= (1 << PCIE2); //Enabled PCINT16-23 als mögliche Signalquelle für Interrupt
|
|
||||||
105 .loc 1 146 0
|
|
||||||
106 004c E8E6 ldi r30,lo8(104)
|
|
||||||
107 004e F0E0 ldi r31,0
|
|
||||||
108 0050 8081 ld r24,Z
|
|
||||||
109 0052 8460 ori r24,lo8(4)
|
|
||||||
110 0054 8083 st Z,r24
|
|
||||||
147:src/main.c ****
|
|
||||||
148:src/main.c **** //Pin Change Mask Register 2
|
|
||||||
149:src/main.c **** //PCMSK2 |= (1 << PCINT18) | //PCINT18 als Signalquelle wählen
|
|
||||||
150:src/main.c **** // (1 << PCINT19); //PCINT19 als Signalquelle wählen
|
|
||||||
151:src/main.c ****
|
|
||||||
152:src/main.c ****
|
|
||||||
153:src/main.c **** //--------------------------
|
|
||||||
154:src/main.c **** // Timer + Zeitinterrupts
|
|
||||||
155:src/main.c **** //--------------------------
|
|
||||||
156:src/main.c ****
|
|
||||||
157:src/main.c **** //PWM-Timer
|
|
||||||
158:src/main.c **** //OC2A set when upcounting, clear when down counting
|
|
||||||
159:src/main.c **** TCCR2A = (1<<COM1A1)
|
|
||||||
111 .loc 1 159 0
|
|
||||||
112 0056 80E8 ldi r24,lo8(-128)
|
|
||||||
113 0058 8093 B000 sts 176,r24
|
|
||||||
160:src/main.c **** | (0<<COM1A0);
|
|
||||||
161:src/main.c ****
|
|
||||||
162:src/main.c **** TCCR2B=(1<<WGM20) //Wave form generartion mode
|
|
||||||
114 .loc 1 162 0
|
|
||||||
115 005c 83E8 ldi r24,lo8(-125)
|
|
||||||
116 005e 8093 B100 sts 177,r24
|
|
||||||
163:src/main.c **** |(1<<WGM21) // Wave form generation mode
|
|
||||||
164:src/main.c **** |(1<<COM2A1); //Compare Output Mode
|
|
||||||
165:src/main.c ****
|
|
||||||
166:src/main.c **** OCR2A = duty; // Compare value 125
|
|
||||||
117 .loc 1 166 0
|
|
||||||
118 0062 8091 0000 lds r24,duty
|
|
||||||
119 0066 8093 B300 sts 179,r24
|
|
||||||
167:src/main.c ****
|
|
||||||
168:src/main.c ****
|
|
||||||
169:src/main.c ****
|
|
||||||
170:src/main.c ****
|
|
||||||
171:src/main.c ****
|
|
||||||
172:src/main.c ****
|
|
||||||
173:src/main.c **** //Timer/Counter control Register A&B
|
|
||||||
174:src/main.c **** //set normal-Mode and waveform
|
|
||||||
175:src/main.c **** TCCR1A = (0 << WGM01) |
|
|
||||||
120 .loc 1 175 0
|
|
||||||
121 006a 1092 8000 sts 128,__zero_reg__
|
|
||||||
176:src/main.c **** (0 << WGM00);
|
|
||||||
177:src/main.c **** TCCR1B = (0 << WGM02);
|
|
||||||
122 .loc 1 177 0
|
|
||||||
123 006e E1E8 ldi r30,lo8(-127)
|
|
||||||
124 0070 F0E0 ldi r31,0
|
|
||||||
125 0072 1082 st Z,__zero_reg__
|
|
||||||
178:src/main.c ****
|
|
||||||
179:src/main.c ****
|
|
||||||
180:src/main.c **** //Prescaler von 1024
|
|
||||||
181:src/main.c **** TCCR1B |= (1 << CS02) |
|
|
||||||
126 .loc 1 181 0
|
|
||||||
127 0074 8081 ld r24,Z
|
|
||||||
128 0076 8560 ori r24,lo8(5)
|
|
||||||
129 0078 8083 st Z,r24
|
|
||||||
182:src/main.c **** (0 << CS01) |
|
|
||||||
183:src/main.c **** (1 << CS00) ;
|
|
||||||
184:src/main.c ****
|
|
||||||
185:src/main.c ****
|
|
||||||
186:src/main.c **** //Output compare Regsiter (Setzt Zeit bei der Interrupt auslösen soll)
|
|
||||||
187:src/main.c **** OCR1A = (1 << 7) | //MSB
|
|
||||||
130 .loc 1 187 0
|
|
||||||
131 007a 8FEF ldi r24,lo8(-1)
|
|
||||||
132 007c 90E0 ldi r25,0
|
|
||||||
133 007e 9093 8900 sts 136+1,r25
|
|
||||||
134 0082 8093 8800 sts 136,r24
|
|
||||||
188:src/main.c **** (1 << 6) |
|
|
||||||
189:src/main.c **** (1 << 5) |
|
|
||||||
190:src/main.c **** (1 << 4) |
|
|
||||||
191:src/main.c **** (1 << 3) |
|
|
||||||
192:src/main.c **** (1 << 2) |
|
|
||||||
193:src/main.c **** (1 << 1) |
|
|
||||||
194:src/main.c **** (1 << 0) ; //LSB
|
|
||||||
195:src/main.c ****
|
|
||||||
196:src/main.c **** //TIMSK1 |= (1 << OCIE0A); //Interruptvector hinzufügen
|
|
||||||
197:src/main.c **** TIMSK1 |= (1 << ICIE1) | //Interrupt Counter Enabled)
|
|
||||||
135 .loc 1 197 0
|
|
||||||
136 0086 EFE6 ldi r30,lo8(111)
|
|
||||||
137 0088 F0E0 ldi r31,0
|
|
||||||
138 008a 8081 ld r24,Z
|
|
||||||
139 008c 8162 ori r24,lo8(33)
|
|
||||||
140 008e 8083 st Z,r24
|
|
||||||
198:src/main.c **** (1 << TOIE1); //Timer Overflow Enabled
|
|
||||||
199:src/main.c ****
|
|
||||||
200:src/main.c ****
|
|
||||||
201:src/main.c **** sei(); //Enable Interrupts
|
|
||||||
141 .loc 1 201 0
|
|
||||||
142 /* #APP */
|
|
||||||
143 ; 201 "src/main.c" 1
|
|
||||||
144 0090 7894 sei
|
|
||||||
145 ; 0 "" 2
|
|
||||||
202:src/main.c **** //adc_setup();
|
|
||||||
203:src/main.c **** //i2c_init();
|
|
||||||
204:src/main.c **** //USART_Init(MYUBRR);
|
|
||||||
205:src/main.c **** clear_SR_Buffer();
|
|
||||||
146 .loc 1 205 0
|
|
||||||
147 /* #NOAPP */
|
|
||||||
148 0092 0C94 0000 jmp clear_SR_Buffer
|
|
||||||
149 .LVL0:
|
|
||||||
150 .cfi_endproc
|
|
||||||
151 .LFE13:
|
|
||||||
153 .section .text.startup,"ax",@progbits
|
|
||||||
154 .global main
|
|
||||||
156 main:
|
|
||||||
157 .LFB10:
|
|
||||||
33:src/main.c **** int main(void){
|
|
||||||
158 .loc 1 33 0
|
|
||||||
159 .cfi_startproc
|
|
||||||
160 0000 CF93 push r28
|
|
||||||
161 .LCFI0:
|
|
||||||
162 .cfi_def_cfa_offset 3
|
|
||||||
163 .cfi_offset 28, -2
|
|
||||||
164 0002 DF93 push r29
|
|
||||||
165 .LCFI1:
|
|
||||||
166 .cfi_def_cfa_offset 4
|
|
||||||
167 .cfi_offset 29, -3
|
|
||||||
168 0004 00D0 rcall .
|
|
||||||
169 0006 00D0 rcall .
|
|
||||||
170 0008 00D0 rcall .
|
|
||||||
171 .LCFI2:
|
|
||||||
172 .cfi_def_cfa_offset 10
|
|
||||||
173 000a CDB7 in r28,__SP_L__
|
|
||||||
174 000c DEB7 in r29,__SP_H__
|
|
||||||
175 .LCFI3:
|
|
||||||
176 .cfi_def_cfa_register 28
|
|
||||||
177 /* prologue: function */
|
|
||||||
178 /* frame size = 6 */
|
|
||||||
179 /* stack size = 8 */
|
|
||||||
180 .L__stack_usage = 8
|
|
||||||
34:src/main.c **** setup();
|
|
||||||
181 .loc 1 34 0
|
|
||||||
182 000e 0E94 0000 call setup
|
|
||||||
183 .LVL1:
|
|
||||||
184 .L12:
|
|
||||||
185 .LBB6:
|
|
||||||
40:src/main.c **** check_dip_switches();
|
|
||||||
186 .loc 1 40 0
|
|
||||||
187 0012 0E94 0000 call check_dip_switches
|
|
||||||
188 .LVL2:
|
|
||||||
189 .LBB7:
|
|
||||||
190 .LBB8:
|
|
||||||
89:src/main.c **** if((PINC & BUTTON_A)){
|
|
||||||
191 .loc 1 89 0
|
|
||||||
192 0016 86B1 in r24,0x6
|
|
||||||
193 .LVL3:
|
|
||||||
194 0018 FE01 movw r30,r28
|
|
||||||
195 001a 3196 adiw r30,1
|
|
||||||
196 001c 20E0 ldi r18,0
|
|
||||||
197 001e 30E0 ldi r19,0
|
|
||||||
198 .LVL4:
|
|
||||||
199 .L11:
|
|
||||||
200 .LBE8:
|
|
||||||
201 .LBE7:
|
|
||||||
202 .LBB9:
|
|
||||||
47:src/main.c **** current_section[i] = text[(i+offset)%stringlength];
|
|
||||||
203 .loc 1 47 0
|
|
||||||
204 0020 E090 0000 lds r14,offset
|
|
||||||
205 0024 F090 0000 lds r15,offset+1
|
|
||||||
206 0028 0091 0000 lds r16,stringlength
|
|
||||||
207 002c 1091 0000 lds r17,stringlength+1
|
|
||||||
208 0030 C901 movw r24,r18
|
|
||||||
209 0032 8E0D add r24,r14
|
|
||||||
210 0034 9F1D adc r25,r15
|
|
||||||
211 0036 B801 movw r22,r16
|
|
||||||
212 0038 0E94 0000 call __divmodhi4
|
|
||||||
213 003c 8050 subi r24,lo8(-(text))
|
|
||||||
214 003e 9040 sbci r25,hi8(-(text))
|
|
||||||
215 0040 DC01 movw r26,r24
|
|
||||||
216 0042 8C91 ld r24,X
|
|
||||||
217 0044 8193 st Z+,r24
|
|
||||||
218 0046 2F5F subi r18,-1
|
|
||||||
219 0048 3F4F sbci r19,-1
|
|
||||||
220 .LVL5:
|
|
||||||
48:src/main.c **** if(text[(i+offset)%stringlength] == ' ' && text[(i+1+offset)%stringlength] == ' '){
|
|
||||||
221 .loc 1 48 0
|
|
||||||
222 004a 8032 cpi r24,lo8(32)
|
|
||||||
223 004c 01F4 brne .L8
|
|
||||||
48:src/main.c **** if(text[(i+offset)%stringlength] == ' ' && text[(i+1+offset)%stringlength] == ' '){
|
|
||||||
224 .loc 1 48 0 is_stmt 0 discriminator 1
|
|
||||||
225 004e C901 movw r24,r18
|
|
||||||
226 0050 8E0D add r24,r14
|
|
||||||
227 0052 9F1D adc r25,r15
|
|
||||||
228 0054 B801 movw r22,r16
|
|
||||||
229 0056 0E94 0000 call __divmodhi4
|
|
||||||
230 005a 8050 subi r24,lo8(-(text))
|
|
||||||
231 005c 9040 sbci r25,hi8(-(text))
|
|
||||||
232 005e DC01 movw r26,r24
|
|
||||||
233 0060 8C91 ld r24,X
|
|
||||||
234 0062 8032 cpi r24,lo8(32)
|
|
||||||
235 0064 01F4 brne .L8
|
|
||||||
49:src/main.c **** PORTC |= DOT;
|
|
||||||
236 .loc 1 49 0 is_stmt 1
|
|
||||||
237 0066 449A sbi 0x8,4
|
|
||||||
238 0068 00C0 rjmp .L9
|
|
||||||
239 .L8:
|
|
||||||
51:src/main.c **** PORTC &= ~DOT;
|
|
||||||
240 .loc 1 51 0
|
|
||||||
241 006a 88B1 in r24,0x8
|
|
||||||
242 006c 807E andi r24,lo8(-32)
|
|
||||||
243 006e 88B9 out 0x8,r24
|
|
||||||
244 .L9:
|
|
||||||
245 .LVL6:
|
|
||||||
46:src/main.c **** for(int i = 0; i < 6; i++){
|
|
||||||
246 .loc 1 46 0
|
|
||||||
247 0070 2630 cpi r18,6
|
|
||||||
248 0072 3105 cpc r19,__zero_reg__
|
|
||||||
249 0074 01F4 brne .L11
|
|
||||||
250 .LBE9:
|
|
||||||
59:src/main.c **** print_String(current_section);
|
|
||||||
251 .loc 1 59 0
|
|
||||||
252 0076 CE01 movw r24,r28
|
|
||||||
253 0078 0196 adiw r24,1
|
|
||||||
254 007a 0E94 0000 call print_String
|
|
||||||
255 .LVL7:
|
|
||||||
256 .LBE6:
|
|
||||||
73:src/main.c **** }
|
|
||||||
257 .loc 1 73 0
|
|
||||||
258 007e 00C0 rjmp .L12
|
|
||||||
259 .cfi_endproc
|
|
||||||
260 .LFE10:
|
|
||||||
262 .text
|
|
||||||
263 .global __vector_15
|
|
||||||
265 __vector_15:
|
|
||||||
266 .LFB14:
|
|
||||||
206:src/main.c ****
|
|
||||||
207:src/main.c ****
|
|
||||||
208:src/main.c ****
|
|
||||||
209:src/main.c **** }
|
|
||||||
210:src/main.c **** //Timer 1 Interrupt
|
|
||||||
211:src/main.c **** ISR (TIMER1_OVF_vect) // Timer1 ISR
|
|
||||||
212:src/main.c **** {
|
|
||||||
267 .loc 1 212 0
|
|
||||||
268 .cfi_startproc
|
|
||||||
269 0096 1F92 push r1
|
|
||||||
270 .LCFI4:
|
|
||||||
271 .cfi_def_cfa_offset 3
|
|
||||||
272 .cfi_offset 1, -2
|
|
||||||
273 0098 0F92 push r0
|
|
||||||
274 .LCFI5:
|
|
||||||
275 .cfi_def_cfa_offset 4
|
|
||||||
276 .cfi_offset 0, -3
|
|
||||||
277 009a 0FB6 in r0,__SREG__
|
|
||||||
278 009c 0F92 push r0
|
|
||||||
279 009e 1124 clr __zero_reg__
|
|
||||||
280 00a0 8F93 push r24
|
|
||||||
281 .LCFI6:
|
|
||||||
282 .cfi_def_cfa_offset 5
|
|
||||||
283 .cfi_offset 24, -4
|
|
||||||
284 00a2 9F93 push r25
|
|
||||||
285 .LCFI7:
|
|
||||||
286 .cfi_def_cfa_offset 6
|
|
||||||
287 .cfi_offset 25, -5
|
|
||||||
288 /* prologue: Signal */
|
|
||||||
289 /* frame size = 0 */
|
|
||||||
290 /* stack size = 5 */
|
|
||||||
291 .L__stack_usage = 5
|
|
||||||
213:src/main.c **** //PORTD ^=TUBE_LED;
|
|
||||||
214:src/main.c **** PORTB ^=STATUS_LED_C;
|
|
||||||
292 .loc 1 214 0
|
|
||||||
293 00a4 85B1 in r24,0x5
|
|
||||||
294 00a6 92E0 ldi r25,lo8(2)
|
|
||||||
295 00a8 8927 eor r24,r25
|
|
||||||
296 00aa 85B9 out 0x5,r24
|
|
||||||
215:src/main.c **** TCNT1 = 63974; //63974; // for 1 sec at 16 MHz
|
|
||||||
297 .loc 1 215 0
|
|
||||||
298 00ac 86EE ldi r24,lo8(-26)
|
|
||||||
299 00ae 99EF ldi r25,lo8(-7)
|
|
||||||
300 00b0 9093 8500 sts 132+1,r25
|
|
||||||
301 00b4 8093 8400 sts 132,r24
|
|
||||||
216:src/main.c **** animationtimer ++;
|
|
||||||
302 .loc 1 216 0
|
|
||||||
303 00b8 8091 0000 lds r24,animationtimer
|
|
||||||
304 00bc 9091 0000 lds r25,animationtimer+1
|
|
||||||
305 00c0 0196 adiw r24,1
|
|
||||||
306 00c2 9093 0000 sts animationtimer+1,r25
|
|
||||||
307 00c6 8093 0000 sts animationtimer,r24
|
|
||||||
217:src/main.c **** if(animationtimer > 10){
|
|
||||||
308 .loc 1 217 0
|
|
||||||
309 00ca 0B97 sbiw r24,11
|
|
||||||
310 00cc 04F0 brlt .L13
|
|
||||||
218:src/main.c **** animationtimer= 0;
|
|
||||||
311 .loc 1 218 0
|
|
||||||
312 00ce 1092 0000 sts animationtimer+1,__zero_reg__
|
|
||||||
313 00d2 1092 0000 sts animationtimer,__zero_reg__
|
|
||||||
219:src/main.c **** offset++;
|
|
||||||
314 .loc 1 219 0
|
|
||||||
315 00d6 8091 0000 lds r24,offset
|
|
||||||
316 00da 9091 0000 lds r25,offset+1
|
|
||||||
317 00de 0196 adiw r24,1
|
|
||||||
318 00e0 9093 0000 sts offset+1,r25
|
|
||||||
319 00e4 8093 0000 sts offset,r24
|
|
||||||
220:src/main.c **** PORTB ^= STATUS_LED_B;
|
|
||||||
320 .loc 1 220 0
|
|
||||||
321 00e8 85B1 in r24,0x5
|
|
||||||
322 00ea 91E0 ldi r25,lo8(1)
|
|
||||||
323 00ec 8927 eor r24,r25
|
|
||||||
324 00ee 85B9 out 0x5,r24
|
|
||||||
221:src/main.c **** if(offset > 15){
|
|
||||||
325 .loc 1 221 0
|
|
||||||
326 00f0 8091 0000 lds r24,offset
|
|
||||||
327 00f4 9091 0000 lds r25,offset+1
|
|
||||||
328 00f8 4097 sbiw r24,16
|
|
||||||
329 00fa 04F0 brlt .L13
|
|
||||||
222:src/main.c **** offset = 0;
|
|
||||||
330 .loc 1 222 0
|
|
||||||
331 00fc 1092 0000 sts offset+1,__zero_reg__
|
|
||||||
332 0100 1092 0000 sts offset,__zero_reg__
|
|
||||||
333 .L13:
|
|
||||||
334 /* epilogue start */
|
|
||||||
223:src/main.c **** }
|
|
||||||
224:src/main.c **** }
|
|
||||||
225:src/main.c **** }
|
|
||||||
335 .loc 1 225 0
|
|
||||||
336 0104 9F91 pop r25
|
|
||||||
337 0106 8F91 pop r24
|
|
||||||
338 0108 0F90 pop r0
|
|
||||||
339 010a 0FBE out __SREG__,r0
|
|
||||||
340 010c 0F90 pop r0
|
|
||||||
341 010e 1F90 pop r1
|
|
||||||
342 0110 1895 reti
|
|
||||||
343 .cfi_endproc
|
|
||||||
344 .LFE14:
|
|
||||||
346 .global __vector_1
|
|
||||||
348 __vector_1:
|
|
||||||
349 .LFB15:
|
|
||||||
226:src/main.c ****
|
|
||||||
227:src/main.c **** //Encoder rotate
|
|
||||||
228:src/main.c **** ISR(INT0_vect) {
|
|
||||||
350 .loc 1 228 0
|
|
||||||
351 .cfi_startproc
|
|
||||||
352 0112 1F92 push r1
|
|
||||||
353 .LCFI8:
|
|
||||||
354 .cfi_def_cfa_offset 3
|
|
||||||
355 .cfi_offset 1, -2
|
|
||||||
356 0114 0F92 push r0
|
|
||||||
357 .LCFI9:
|
|
||||||
358 .cfi_def_cfa_offset 4
|
|
||||||
359 .cfi_offset 0, -3
|
|
||||||
360 0116 0FB6 in r0,__SREG__
|
|
||||||
361 0118 0F92 push r0
|
|
||||||
362 011a 1124 clr __zero_reg__
|
|
||||||
363 011c 8F93 push r24
|
|
||||||
364 .LCFI10:
|
|
||||||
365 .cfi_def_cfa_offset 5
|
|
||||||
366 .cfi_offset 24, -4
|
|
||||||
367 /* prologue: Signal */
|
|
||||||
368 /* frame size = 0 */
|
|
||||||
369 /* stack size = 4 */
|
|
||||||
370 .L__stack_usage = 4
|
|
||||||
229:src/main.c **** if (PIND & ENCODER_B) {
|
|
||||||
371 .loc 1 229 0
|
|
||||||
372 011e 89B1 in r24,0x9
|
|
||||||
373 /* epilogue start */
|
|
||||||
230:src/main.c **** // set_PWM_duty(duty--);
|
|
||||||
231:src/main.c **** } else {
|
|
||||||
232:src/main.c **** // set_PWM_duty(duty++);
|
|
||||||
233:src/main.c **** }
|
|
||||||
234:src/main.c **** }
|
|
||||||
374 .loc 1 234 0
|
|
||||||
375 0120 8F91 pop r24
|
|
||||||
376 0122 0F90 pop r0
|
|
||||||
377 0124 0FBE out __SREG__,r0
|
|
||||||
378 0126 0F90 pop r0
|
|
||||||
379 0128 1F90 pop r1
|
|
||||||
380 012a 1895 reti
|
|
||||||
381 .cfi_endproc
|
|
||||||
382 .LFE15:
|
|
||||||
384 .global __vector_2
|
|
||||||
386 __vector_2:
|
|
||||||
387 .LFB16:
|
|
||||||
235:src/main.c ****
|
|
||||||
236:src/main.c **** //Encoder Button
|
|
||||||
237:src/main.c **** ISR(INT1_vect) {
|
|
||||||
388 .loc 1 237 0
|
|
||||||
389 .cfi_startproc
|
|
||||||
390 012c 1F92 push r1
|
|
||||||
391 .LCFI11:
|
|
||||||
392 .cfi_def_cfa_offset 3
|
|
||||||
393 .cfi_offset 1, -2
|
|
||||||
394 012e 0F92 push r0
|
|
||||||
395 .LCFI12:
|
|
||||||
396 .cfi_def_cfa_offset 4
|
|
||||||
397 .cfi_offset 0, -3
|
|
||||||
398 0130 0FB6 in r0,__SREG__
|
|
||||||
399 0132 0F92 push r0
|
|
||||||
400 0134 1124 clr __zero_reg__
|
|
||||||
401 /* prologue: Signal */
|
|
||||||
402 /* frame size = 0 */
|
|
||||||
403 /* stack size = 3 */
|
|
||||||
404 .L__stack_usage = 3
|
|
||||||
405 /* epilogue start */
|
|
||||||
238:src/main.c ****
|
|
||||||
239:src/main.c **** }
|
|
||||||
406 .loc 1 239 0
|
|
||||||
407 0136 0F90 pop r0
|
|
||||||
408 0138 0FBE out __SREG__,r0
|
|
||||||
409 013a 0F90 pop r0
|
|
||||||
410 013c 1F90 pop r1
|
|
||||||
411 013e 1895 reti
|
|
||||||
412 .cfi_endproc
|
|
||||||
413 .LFE16:
|
|
||||||
415 .global __vector_20
|
|
||||||
417 __vector_20:
|
|
||||||
418 .LFB17:
|
|
||||||
240:src/main.c ****
|
|
||||||
241:src/main.c ****
|
|
||||||
242:src/main.c **** ISR (USART0_RX_vect){
|
|
||||||
419 .loc 1 242 0
|
|
||||||
420 .cfi_startproc
|
|
||||||
421 0140 1F92 push r1
|
|
||||||
422 .LCFI13:
|
|
||||||
423 .cfi_def_cfa_offset 3
|
|
||||||
424 .cfi_offset 1, -2
|
|
||||||
425 0142 0F92 push r0
|
|
||||||
426 .LCFI14:
|
|
||||||
427 .cfi_def_cfa_offset 4
|
|
||||||
428 .cfi_offset 0, -3
|
|
||||||
429 0144 0FB6 in r0,__SREG__
|
|
||||||
430 0146 0F92 push r0
|
|
||||||
431 0148 1124 clr __zero_reg__
|
|
||||||
432 /* prologue: Signal */
|
|
||||||
433 /* frame size = 0 */
|
|
||||||
434 /* stack size = 3 */
|
|
||||||
435 .L__stack_usage = 3
|
|
||||||
436 /* epilogue start */
|
|
||||||
243:src/main.c **** /*
|
|
||||||
244:src/main.c **** //while ( !(UCSR0A & (1<<RXC0)) ){}; //RXC = Recive complete
|
|
||||||
245:src/main.c **** char uart_Buffer[500];
|
|
||||||
246:src/main.c **** char time_string[6];
|
|
||||||
247:src/main.c **** char sat_string[2];
|
|
||||||
248:src/main.c **** sat_string[0]='1';
|
|
||||||
249:src/main.c **** sat_string[1]= '1';
|
|
||||||
250:src/main.c ****
|
|
||||||
251:src/main.c **** for(int k = 0; k < 6; k++){
|
|
||||||
252:src/main.c **** time_string[k] = '8';
|
|
||||||
253:src/main.c **** }
|
|
||||||
254:src/main.c **** int i = 0;
|
|
||||||
255:src/main.c ****
|
|
||||||
256:src/main.c **** while(UDR0 != '\r' && i < 500){
|
|
||||||
257:src/main.c **** uart_Buffer[i] = UDR0;
|
|
||||||
258:src/main.c **** i++;
|
|
||||||
259:src/main.c **** PORTB ^=STATUS_LED_B;
|
|
||||||
260:src/main.c ****
|
|
||||||
261:src/main.c ****
|
|
||||||
262:src/main.c **** }
|
|
||||||
263:src/main.c ****
|
|
||||||
264:src/main.c **** for(int j = 0; j < 500; j++){
|
|
||||||
265:src/main.c ****
|
|
||||||
266:src/main.c **** //if(uart_Buffer[j] == '$'){
|
|
||||||
267:src/main.c **** if(uart_Buffer[j+1] == 'G'){
|
|
||||||
268:src/main.c **** if(uart_Buffer[j+2] == 'P'){
|
|
||||||
269:src/main.c **** if(uart_Buffer[j+3] == 'Z'){
|
|
||||||
270:src/main.c **** if(uart_Buffer[j+4] == 'D'){
|
|
||||||
271:src/main.c **** if(uart_Buffer[j+5] == 'A'){
|
|
||||||
272:src/main.c **** //j++;
|
|
||||||
273:src/main.c ****
|
|
||||||
274:src/main.c **** sat_string[0] = uart_Buffer[1];
|
|
||||||
275:src/main.c **** sat_string[1] = uart_Buffer[100];
|
|
||||||
276:src/main.c ****
|
|
||||||
277:src/main.c **** //time_string[0] = uart_Buffer[j+36];
|
|
||||||
278:src/main.c **** //time_string[1] = uart_Buffer[j+37];
|
|
||||||
279:src/main.c **** //time_string[2] = uart_Buffer[j+8];
|
|
||||||
280:src/main.c **** //time_string[3] = uart_Buffer[j+9];
|
|
||||||
281:src/main.c **** //time_string[5] = uart_Buffer[j+10];
|
|
||||||
282:src/main.c **** //time_string[6] = uart_Buffer[j+11];
|
|
||||||
283:src/main.c **** }
|
|
||||||
284:src/main.c **** }
|
|
||||||
285:src/main.c **** }
|
|
||||||
286:src/main.c **** }
|
|
||||||
287:src/main.c **** }
|
|
||||||
288:src/main.c **** // }
|
|
||||||
289:src/main.c ****
|
|
||||||
290:src/main.c **** }
|
|
||||||
291:src/main.c ****
|
|
||||||
292:src/main.c ****
|
|
||||||
293:src/main.c **** print_String(sat_string);
|
|
||||||
294:src/main.c ****
|
|
||||||
295:src/main.c **** */
|
|
||||||
296:src/main.c **** }
|
|
||||||
437 .loc 1 296 0
|
|
||||||
438 014a 0F90 pop r0
|
|
||||||
439 014c 0FBE out __SREG__,r0
|
|
||||||
440 014e 0F90 pop r0
|
|
||||||
441 0150 1F90 pop r1
|
|
||||||
442 0152 1895 reti
|
|
||||||
443 .cfi_endproc
|
|
||||||
444 .LFE17:
|
|
||||||
446 .global set_PWM_duty
|
|
||||||
448 set_PWM_duty:
|
|
||||||
449 .LFB18:
|
|
||||||
297:src/main.c ****
|
|
||||||
298:src/main.c **** void set_PWM_duty(int dutycycle){
|
|
||||||
450 .loc 1 298 0
|
|
||||||
451 .cfi_startproc
|
|
||||||
452 .LVL8:
|
|
||||||
453 /* prologue: function */
|
|
||||||
454 /* frame size = 0 */
|
|
||||||
455 /* stack size = 0 */
|
|
||||||
456 .L__stack_usage = 0
|
|
||||||
299:src/main.c **** OCR2A = dutycycle;
|
|
||||||
457 .loc 1 299 0
|
|
||||||
458 0154 8093 B300 sts 179,r24
|
|
||||||
459 0158 0895 ret
|
|
||||||
460 .cfi_endproc
|
|
||||||
461 .LFE18:
|
|
||||||
463 .global duty
|
|
||||||
464 .data
|
|
||||||
467 duty:
|
|
||||||
468 0000 7D00 .word 125
|
|
||||||
469 .global stringlength
|
|
||||||
472 stringlength:
|
|
||||||
473 0002 1600 .word 22
|
|
||||||
474 .global animationtimer
|
|
||||||
475 .section .bss
|
|
||||||
478 animationtimer:
|
|
||||||
479 0000 0000 .zero 2
|
|
||||||
480 .global offset
|
|
||||||
483 offset:
|
|
||||||
484 0002 0000 .zero 2
|
|
||||||
485 .global text
|
|
||||||
486 .data
|
|
||||||
489 text:
|
|
||||||
490 0004 46 .byte 70
|
|
||||||
491 0005 52 .byte 82
|
|
||||||
492 0006 6F .byte 111
|
|
||||||
493 0007 68 .byte 104
|
|
||||||
494 0008 65 .byte 101
|
|
||||||
495 0009 20 .byte 32
|
|
||||||
496 000a 20 .byte 32
|
|
||||||
497 000b 57 .byte 87
|
|
||||||
498 000c 65 .byte 101
|
|
||||||
499 000d 69 .byte 105
|
|
||||||
500 000e 68 .byte 104
|
|
||||||
501 000f 6E .byte 110
|
|
||||||
502 0010 61 .byte 97
|
|
||||||
503 0011 63 .byte 99
|
|
||||||
504 0012 68 .byte 104
|
|
||||||
505 0013 74 .byte 116
|
|
||||||
506 0014 65 .byte 101
|
|
||||||
507 0015 6E .byte 110
|
|
||||||
508 0016 20 .byte 32
|
|
||||||
509 0017 20 .byte 32
|
|
||||||
510 0018 20 .byte 32
|
|
||||||
511 0019 20 .byte 32
|
|
||||||
512 .global counter
|
|
||||||
513 .section .bss
|
|
||||||
516 counter:
|
|
||||||
517 0004 0000 .zero 2
|
|
||||||
518 .text
|
|
||||||
519 .Letext0:
|
|
||||||
520 .file 2 "/usr/local/CrossPack-AVR-20131216/avr/include/stdint.h"
|
|
||||||
521 .file 3 "inc/print.h"
|
|
||||||
DEFINED SYMBOLS
|
|
||||||
*ABS*:00000000 main.c
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:2 *ABS*:0000003e __SP_H__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:3 *ABS*:0000003d __SP_L__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:4 *ABS*:0000003f __SREG__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:5 *ABS*:0000003b __RAMPZ__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:6 *ABS*:00000000 __tmp_reg__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:7 *ABS*:00000001 __zero_reg__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:13 .text:00000000 check_dip_switches
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:43 .text:00000014 check_buttons
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:59 .text:00000018 setup
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:467 .data:00000000 duty
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:156 .text.startup:00000000 main
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:483 .bss:00000002 offset
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:472 .data:00000002 stringlength
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:489 .data:00000004 text
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:265 .text:00000096 __vector_15
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:478 .bss:00000000 animationtimer
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:348 .text:00000112 __vector_1
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:386 .text:0000012c __vector_2
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:417 .text:00000140 __vector_20
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:448 .text:00000154 set_PWM_duty
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccBTFpTE.s:516 .bss:00000004 counter
|
|
||||||
|
|
||||||
UNDEFINED SYMBOLS
|
|
||||||
clear_SR_Buffer
|
|
||||||
__divmodhi4
|
|
||||||
print_String
|
|
||||||
__do_copy_data
|
|
||||||
__do_clear_bss
|
|
||||||
@ -1,700 +0,0 @@
|
|||||||
Archive member included because of file (symbol)
|
|
||||||
|
|
||||||
/usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
build/main.o (__divmodhi4)
|
|
||||||
/usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
/usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o (exit)
|
|
||||||
/usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
build/print.o (__do_copy_data)
|
|
||||||
/usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
build/main.o (__do_clear_bss)
|
|
||||||
/usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
/usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o) (__udivmodhi4)
|
|
||||||
|
|
||||||
Memory Configuration
|
|
||||||
|
|
||||||
Name Origin Length Attributes
|
|
||||||
text 0x00000000 0x00020000 xr
|
|
||||||
data 0x00800100 0x0000ff00 rw !x
|
|
||||||
eeprom 0x00810000 0x00010000 rw !x
|
|
||||||
fuse 0x00820000 0x00000400 rw !x
|
|
||||||
lock 0x00830000 0x00000400 rw !x
|
|
||||||
signature 0x00840000 0x00000400 rw !x
|
|
||||||
user_signatures 0x00850000 0x00000400 rw !x
|
|
||||||
*default* 0x00000000 0xffffffff
|
|
||||||
|
|
||||||
Linker script and memory map
|
|
||||||
|
|
||||||
Address of section .data set to 0x800100
|
|
||||||
LOAD /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
LOAD build/print.o
|
|
||||||
LOAD build/DS3231.o
|
|
||||||
LOAD build/i2c.o
|
|
||||||
LOAD build/adc.o
|
|
||||||
LOAD build/main.o
|
|
||||||
LOAD build/uart.o
|
|
||||||
LOAD /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/libm.a
|
|
||||||
START GROUP
|
|
||||||
LOAD /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a
|
|
||||||
LOAD /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/libm.a
|
|
||||||
LOAD /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/libc.a
|
|
||||||
END GROUP
|
|
||||||
|
|
||||||
.hash
|
|
||||||
*(.hash)
|
|
||||||
|
|
||||||
.dynsym
|
|
||||||
*(.dynsym)
|
|
||||||
|
|
||||||
.dynstr
|
|
||||||
*(.dynstr)
|
|
||||||
|
|
||||||
.gnu.version
|
|
||||||
*(.gnu.version)
|
|
||||||
|
|
||||||
.gnu.version_d
|
|
||||||
*(.gnu.version_d)
|
|
||||||
|
|
||||||
.gnu.version_r
|
|
||||||
*(.gnu.version_r)
|
|
||||||
|
|
||||||
.rel.init
|
|
||||||
*(.rel.init)
|
|
||||||
|
|
||||||
.rela.init
|
|
||||||
*(.rela.init)
|
|
||||||
|
|
||||||
.rel.text
|
|
||||||
*(.rel.text)
|
|
||||||
*(.rel.text.*)
|
|
||||||
*(.rel.gnu.linkonce.t*)
|
|
||||||
|
|
||||||
.rela.text
|
|
||||||
*(.rela.text)
|
|
||||||
*(.rela.text.*)
|
|
||||||
*(.rela.gnu.linkonce.t*)
|
|
||||||
|
|
||||||
.rel.fini
|
|
||||||
*(.rel.fini)
|
|
||||||
|
|
||||||
.rela.fini
|
|
||||||
*(.rela.fini)
|
|
||||||
|
|
||||||
.rel.rodata
|
|
||||||
*(.rel.rodata)
|
|
||||||
*(.rel.rodata.*)
|
|
||||||
*(.rel.gnu.linkonce.r*)
|
|
||||||
|
|
||||||
.rela.rodata
|
|
||||||
*(.rela.rodata)
|
|
||||||
*(.rela.rodata.*)
|
|
||||||
*(.rela.gnu.linkonce.r*)
|
|
||||||
|
|
||||||
.rel.data
|
|
||||||
*(.rel.data)
|
|
||||||
*(.rel.data.*)
|
|
||||||
*(.rel.gnu.linkonce.d*)
|
|
||||||
|
|
||||||
.rela.data
|
|
||||||
*(.rela.data)
|
|
||||||
*(.rela.data.*)
|
|
||||||
*(.rela.gnu.linkonce.d*)
|
|
||||||
|
|
||||||
.rel.ctors
|
|
||||||
*(.rel.ctors)
|
|
||||||
|
|
||||||
.rela.ctors
|
|
||||||
*(.rela.ctors)
|
|
||||||
|
|
||||||
.rel.dtors
|
|
||||||
*(.rel.dtors)
|
|
||||||
|
|
||||||
.rela.dtors
|
|
||||||
*(.rela.dtors)
|
|
||||||
|
|
||||||
.rel.got
|
|
||||||
*(.rel.got)
|
|
||||||
|
|
||||||
.rela.got
|
|
||||||
*(.rela.got)
|
|
||||||
|
|
||||||
.rel.bss
|
|
||||||
*(.rel.bss)
|
|
||||||
|
|
||||||
.rela.bss
|
|
||||||
*(.rela.bss)
|
|
||||||
|
|
||||||
.rel.plt
|
|
||||||
*(.rel.plt)
|
|
||||||
|
|
||||||
.rela.plt
|
|
||||||
*(.rela.plt)
|
|
||||||
|
|
||||||
.text 0x00000000 0x512
|
|
||||||
*(.vectors)
|
|
||||||
.vectors 0x00000000 0x8c /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
0x00000000 __vectors
|
|
||||||
0x00000000 __vector_default
|
|
||||||
*(.vectors)
|
|
||||||
*(.progmem.gcc*)
|
|
||||||
0x0000008c . = ALIGN (0x2)
|
|
||||||
0x0000008c __trampolines_start = .
|
|
||||||
*(.trampolines)
|
|
||||||
.trampolines 0x0000008c 0x0 linker stubs
|
|
||||||
*(.trampolines*)
|
|
||||||
0x0000008c __trampolines_end = .
|
|
||||||
*(.progmem*)
|
|
||||||
0x0000008c . = ALIGN (0x2)
|
|
||||||
*(.jumptables)
|
|
||||||
*(.jumptables*)
|
|
||||||
*(.lowtext)
|
|
||||||
*(.lowtext*)
|
|
||||||
0x0000008c __ctors_start = .
|
|
||||||
*(.ctors)
|
|
||||||
0x0000008c __ctors_end = .
|
|
||||||
0x0000008c __dtors_start = .
|
|
||||||
*(.dtors)
|
|
||||||
0x0000008c __dtors_end = .
|
|
||||||
SORT(*)(.ctors)
|
|
||||||
SORT(*)(.dtors)
|
|
||||||
*(.init0)
|
|
||||||
.init0 0x0000008c 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
0x0000008c __init
|
|
||||||
*(.init0)
|
|
||||||
*(.init1)
|
|
||||||
*(.init1)
|
|
||||||
*(.init2)
|
|
||||||
.init2 0x0000008c 0xc /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
*(.init2)
|
|
||||||
*(.init3)
|
|
||||||
*(.init3)
|
|
||||||
*(.init4)
|
|
||||||
.init4 0x00000098 0x1a /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
0x00000098 __do_copy_data
|
|
||||||
.init4 0x000000b2 0x10 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
0x000000b2 __do_clear_bss
|
|
||||||
*(.init4)
|
|
||||||
*(.init5)
|
|
||||||
*(.init5)
|
|
||||||
*(.init6)
|
|
||||||
*(.init6)
|
|
||||||
*(.init7)
|
|
||||||
*(.init7)
|
|
||||||
*(.init8)
|
|
||||||
*(.init8)
|
|
||||||
*(.init9)
|
|
||||||
.init9 0x000000c2 0x8 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
*(.init9)
|
|
||||||
*(.text)
|
|
||||||
.text 0x000000ca 0x4 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
0x000000ca __vector_18
|
|
||||||
0x000000ca __vector_28
|
|
||||||
0x000000ca __vector_32
|
|
||||||
0x000000ca __vector_34
|
|
||||||
0x000000ca __vector_24
|
|
||||||
0x000000ca __vector_12
|
|
||||||
0x000000ca __bad_interrupt
|
|
||||||
0x000000ca __vector_6
|
|
||||||
0x000000ca __vector_31
|
|
||||||
0x000000ca __vector_3
|
|
||||||
0x000000ca __vector_23
|
|
||||||
0x000000ca __vector_30
|
|
||||||
0x000000ca __vector_25
|
|
||||||
0x000000ca __vector_11
|
|
||||||
0x000000ca __vector_13
|
|
||||||
0x000000ca __vector_17
|
|
||||||
0x000000ca __vector_19
|
|
||||||
0x000000ca __vector_7
|
|
||||||
0x000000ca __vector_27
|
|
||||||
0x000000ca __vector_5
|
|
||||||
0x000000ca __vector_33
|
|
||||||
0x000000ca __vector_4
|
|
||||||
0x000000ca __vector_9
|
|
||||||
0x000000ca __vector_21
|
|
||||||
0x000000ca __vector_29
|
|
||||||
0x000000ca __vector_8
|
|
||||||
0x000000ca __vector_26
|
|
||||||
0x000000ca __vector_14
|
|
||||||
0x000000ca __vector_10
|
|
||||||
0x000000ca __vector_16
|
|
||||||
0x000000ca __vector_22
|
|
||||||
.text 0x000000ce 0x122 build/print.o
|
|
||||||
0x000000ce clear_SR_Buffer
|
|
||||||
0x000000e8 add_Decimal_Point_to_SR_Buffer
|
|
||||||
0x000000f6 print_SR_Buffer
|
|
||||||
0x00000112 add_ASCII_to_SR_Buffer
|
|
||||||
0x0000017c print_String
|
|
||||||
0x000001aa add_Character_to_SR_Buffer
|
|
||||||
0x000001de add_Number_to_SR_Buffer
|
|
||||||
.text 0x000001f0 0xa build/DS3231.o
|
|
||||||
0x000001f0 DS3231_init
|
|
||||||
0x000001f2 DS3231_seconds
|
|
||||||
.text 0x000001fa 0x58 build/i2c.o
|
|
||||||
0x000001fa i2c_init
|
|
||||||
0x00000208 i2c_start
|
|
||||||
.text 0x00000252 0x4c build/adc.o
|
|
||||||
0x00000252 adc_setup
|
|
||||||
0x00000264 adc_read
|
|
||||||
.text 0x0000029e 0x15a build/main.o
|
|
||||||
0x0000029e check_dip_switches
|
|
||||||
0x000002b2 check_buttons
|
|
||||||
0x000002b6 setup
|
|
||||||
0x00000334 __vector_15
|
|
||||||
0x000003b0 __vector_1
|
|
||||||
0x000003ca __vector_2
|
|
||||||
0x000003de __vector_20
|
|
||||||
0x000003f2 set_PWM_duty
|
|
||||||
.text 0x000003f8 0x46 build/uart.o
|
|
||||||
0x000003f8 USART_Init
|
|
||||||
0x0000040e USART_Transmit
|
|
||||||
0x0000041c uart_puts
|
|
||||||
0x00000434 putchar
|
|
||||||
.text 0x0000043e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
.text 0x0000043e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
.text 0x0000043e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
.text 0x0000043e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
.text 0x0000043e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
0x0000043e . = ALIGN (0x2)
|
|
||||||
*(.text.*)
|
|
||||||
.text.startup 0x0000043e 0x80 build/main.o
|
|
||||||
0x0000043e main
|
|
||||||
.text.libgcc.mul
|
|
||||||
0x000004be 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
.text.libgcc.div
|
|
||||||
0x000004be 0x28 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
0x000004be __divmodhi4
|
|
||||||
0x000004be _div
|
|
||||||
.text.libgcc 0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
.text.libgcc.prologue
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
.text.libgcc.builtins
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
.text.libgcc.fmul
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
.text.libgcc.fixed
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
.text.libgcc.mul
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
.text.libgcc.div
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
.text.libgcc 0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
.text.libgcc.prologue
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
.text.libgcc.builtins
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
.text.libgcc.fmul
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
.text.libgcc.fixed
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
.text.libgcc.mul
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
.text.libgcc.div
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
.text.libgcc 0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
.text.libgcc.prologue
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
.text.libgcc.builtins
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
.text.libgcc.fmul
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
.text.libgcc.fixed
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
.text.libgcc.mul
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
.text.libgcc.div
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
.text.libgcc 0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
.text.libgcc.prologue
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
.text.libgcc.builtins
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
.text.libgcc.fmul
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
.text.libgcc.fixed
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
.text.libgcc.mul
|
|
||||||
0x000004e6 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
.text.libgcc.div
|
|
||||||
0x000004e6 0x28 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
0x000004e6 __udivmodhi4
|
|
||||||
.text.libgcc 0x0000050e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
.text.libgcc.prologue
|
|
||||||
0x0000050e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
.text.libgcc.builtins
|
|
||||||
0x0000050e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
.text.libgcc.fmul
|
|
||||||
0x0000050e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
.text.libgcc.fixed
|
|
||||||
0x0000050e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
0x0000050e . = ALIGN (0x2)
|
|
||||||
*(.fini9)
|
|
||||||
.fini9 0x0000050e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
0x0000050e exit
|
|
||||||
0x0000050e _exit
|
|
||||||
*(.fini9)
|
|
||||||
*(.fini8)
|
|
||||||
*(.fini8)
|
|
||||||
*(.fini7)
|
|
||||||
*(.fini7)
|
|
||||||
*(.fini6)
|
|
||||||
*(.fini6)
|
|
||||||
*(.fini5)
|
|
||||||
*(.fini5)
|
|
||||||
*(.fini4)
|
|
||||||
*(.fini4)
|
|
||||||
*(.fini3)
|
|
||||||
*(.fini3)
|
|
||||||
*(.fini2)
|
|
||||||
*(.fini2)
|
|
||||||
*(.fini1)
|
|
||||||
*(.fini1)
|
|
||||||
*(.fini0)
|
|
||||||
.fini0 0x0000050e 0x4 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
*(.fini0)
|
|
||||||
0x00000512 _etext = .
|
|
||||||
|
|
||||||
.data 0x00800100 0x48 load address 0x00000512
|
|
||||||
0x00800100 PROVIDE (__data_start, .)
|
|
||||||
*(.data)
|
|
||||||
.data 0x00800100 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
.data 0x00800100 0x6 build/print.o
|
|
||||||
0x00800100 SR_Buffer
|
|
||||||
.data 0x00800106 0x0 build/DS3231.o
|
|
||||||
.data 0x00800106 0x0 build/i2c.o
|
|
||||||
.data 0x00800106 0x0 build/adc.o
|
|
||||||
.data 0x00800106 0x1a build/main.o
|
|
||||||
0x00800106 duty
|
|
||||||
0x00800108 stringlength
|
|
||||||
0x0080010a text
|
|
||||||
.data 0x00800120 0x0 build/uart.o
|
|
||||||
.data 0x00800120 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
.data 0x00800120 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
.data 0x00800120 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
.data 0x00800120 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
.data 0x00800120 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
*(.data*)
|
|
||||||
*(.rodata)
|
|
||||||
.rodata 0x00800120 0x27 build/print.o
|
|
||||||
0x00800120 dot
|
|
||||||
0x00800121 minus
|
|
||||||
0x00800122 blank
|
|
||||||
0x00800123 character_Font
|
|
||||||
0x0080013d number_Font
|
|
||||||
*(.rodata*)
|
|
||||||
*(.gnu.linkonce.d*)
|
|
||||||
0x00800148 . = ALIGN (0x2)
|
|
||||||
*fill* 0x00800147 0x1
|
|
||||||
0x00800148 _edata = .
|
|
||||||
0x00800148 PROVIDE (__data_end, .)
|
|
||||||
|
|
||||||
.bss 0x00800148 0x6
|
|
||||||
0x00800148 PROVIDE (__bss_start, .)
|
|
||||||
*(.bss)
|
|
||||||
.bss 0x00800148 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
.bss 0x00800148 0x0 build/print.o
|
|
||||||
.bss 0x00800148 0x0 build/DS3231.o
|
|
||||||
.bss 0x00800148 0x0 build/i2c.o
|
|
||||||
.bss 0x00800148 0x0 build/adc.o
|
|
||||||
.bss 0x00800148 0x6 build/main.o
|
|
||||||
0x00800148 animationtimer
|
|
||||||
0x0080014a offset
|
|
||||||
0x0080014c counter
|
|
||||||
.bss 0x0080014e 0x0 build/uart.o
|
|
||||||
.bss 0x0080014e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
.bss 0x0080014e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
.bss 0x0080014e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
.bss 0x0080014e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
.bss 0x0080014e 0x0 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
*(.bss*)
|
|
||||||
*(COMMON)
|
|
||||||
0x0080014e PROVIDE (__bss_end, .)
|
|
||||||
0x00000512 __data_load_start = LOADADDR (.data)
|
|
||||||
0x0000055a __data_load_end = (__data_load_start + SIZEOF (.data))
|
|
||||||
|
|
||||||
.noinit 0x0080014e 0x0
|
|
||||||
0x0080014e PROVIDE (__noinit_start, .)
|
|
||||||
*(.noinit*)
|
|
||||||
0x0080014e PROVIDE (__noinit_end, .)
|
|
||||||
0x0080014e _end = .
|
|
||||||
0x0080014e PROVIDE (__heap_start, .)
|
|
||||||
|
|
||||||
.eeprom 0x00810000 0x0
|
|
||||||
*(.eeprom*)
|
|
||||||
0x00810000 __eeprom_end = .
|
|
||||||
|
|
||||||
.fuse
|
|
||||||
*(.fuse)
|
|
||||||
*(.lfuse)
|
|
||||||
*(.hfuse)
|
|
||||||
*(.efuse)
|
|
||||||
|
|
||||||
.lock
|
|
||||||
*(.lock*)
|
|
||||||
|
|
||||||
.signature
|
|
||||||
*(.signature*)
|
|
||||||
|
|
||||||
.user_signatures
|
|
||||||
*(.user_signatures*)
|
|
||||||
|
|
||||||
.stab
|
|
||||||
*(.stab)
|
|
||||||
|
|
||||||
.stabstr
|
|
||||||
*(.stabstr)
|
|
||||||
|
|
||||||
.stab.excl
|
|
||||||
*(.stab.excl)
|
|
||||||
|
|
||||||
.stab.exclstr
|
|
||||||
*(.stab.exclstr)
|
|
||||||
|
|
||||||
.stab.index
|
|
||||||
*(.stab.index)
|
|
||||||
|
|
||||||
.stab.indexstr
|
|
||||||
*(.stab.indexstr)
|
|
||||||
|
|
||||||
.comment 0x00000000 0x11
|
|
||||||
*(.comment)
|
|
||||||
.comment 0x00000000 0x11 build/print.o
|
|
||||||
0x12 (size before relaxing)
|
|
||||||
.comment 0x00000000 0x12 build/DS3231.o
|
|
||||||
.comment 0x00000000 0x12 build/i2c.o
|
|
||||||
.comment 0x00000000 0x12 build/adc.o
|
|
||||||
.comment 0x00000000 0x12 build/main.o
|
|
||||||
.comment 0x00000000 0x12 build/uart.o
|
|
||||||
|
|
||||||
.debug
|
|
||||||
*(.debug)
|
|
||||||
|
|
||||||
.line
|
|
||||||
*(.line)
|
|
||||||
|
|
||||||
.debug_srcinfo
|
|
||||||
*(.debug_srcinfo)
|
|
||||||
|
|
||||||
.debug_sfnames
|
|
||||||
*(.debug_sfnames)
|
|
||||||
|
|
||||||
.debug_aranges 0x00000000 0x168
|
|
||||||
*(.debug_aranges)
|
|
||||||
.debug_aranges
|
|
||||||
0x00000000 0x20 build/print.o
|
|
||||||
.debug_aranges
|
|
||||||
0x00000020 0x20 build/DS3231.o
|
|
||||||
.debug_aranges
|
|
||||||
0x00000040 0x20 build/i2c.o
|
|
||||||
.debug_aranges
|
|
||||||
0x00000060 0x20 build/adc.o
|
|
||||||
.debug_aranges
|
|
||||||
0x00000080 0x28 build/main.o
|
|
||||||
.debug_aranges
|
|
||||||
0x000000a8 0x20 build/uart.o
|
|
||||||
.debug_aranges
|
|
||||||
0x000000c8 0x20 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
.debug_aranges
|
|
||||||
0x000000e8 0x20 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
.debug_aranges
|
|
||||||
0x00000108 0x20 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
.debug_aranges
|
|
||||||
0x00000128 0x20 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
.debug_aranges
|
|
||||||
0x00000148 0x20 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
|
|
||||||
.debug_pubnames
|
|
||||||
*(.debug_pubnames)
|
|
||||||
|
|
||||||
.debug_info 0x00000000 0xce0
|
|
||||||
*(.debug_info)
|
|
||||||
.debug_info 0x00000000 0x2e9 build/print.o
|
|
||||||
.debug_info 0x000002e9 0xc9 build/DS3231.o
|
|
||||||
.debug_info 0x000003b2 0xc1 build/i2c.o
|
|
||||||
.debug_info 0x00000473 0xb8 build/adc.o
|
|
||||||
.debug_info 0x0000052b 0x2a5 build/main.o
|
|
||||||
.debug_info 0x000007d0 0x155 build/uart.o
|
|
||||||
.debug_info 0x00000925 0xbf /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
.debug_info 0x000009e4 0xbf /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
.debug_info 0x00000aa3 0xbf /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
.debug_info 0x00000b62 0xbf /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
.debug_info 0x00000c21 0xbf /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
*(.gnu.linkonce.wi.*)
|
|
||||||
|
|
||||||
.debug_abbrev 0x00000000 0x5e8
|
|
||||||
*(.debug_abbrev)
|
|
||||||
.debug_abbrev 0x00000000 0x133 build/print.o
|
|
||||||
.debug_abbrev 0x00000133 0x9c build/DS3231.o
|
|
||||||
.debug_abbrev 0x000001cf 0x89 build/i2c.o
|
|
||||||
.debug_abbrev 0x00000258 0x87 build/adc.o
|
|
||||||
.debug_abbrev 0x000002df 0x1af build/main.o
|
|
||||||
.debug_abbrev 0x0000048e 0xf6 build/uart.o
|
|
||||||
.debug_abbrev 0x00000584 0x14 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
.debug_abbrev 0x00000598 0x14 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
.debug_abbrev 0x000005ac 0x14 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
.debug_abbrev 0x000005c0 0x14 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
.debug_abbrev 0x000005d4 0x14 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
|
|
||||||
.debug_line 0x00000000 0x54e
|
|
||||||
*(.debug_line)
|
|
||||||
.debug_line 0x00000000 0xa5 build/print.o
|
|
||||||
.debug_line 0x000000a5 0x49 build/DS3231.o
|
|
||||||
.debug_line 0x000000ee 0x8c build/i2c.o
|
|
||||||
.debug_line 0x0000017a 0x7c build/adc.o
|
|
||||||
.debug_line 0x000001f6 0xe7 build/main.o
|
|
||||||
.debug_line 0x000002dd 0x85 build/uart.o
|
|
||||||
.debug_line 0x00000362 0x69 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
.debug_line 0x000003cb 0x58 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
.debug_line 0x00000423 0x63 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
.debug_line 0x00000486 0x5e /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
.debug_line 0x000004e4 0x6a /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
|
|
||||||
.debug_frame 0x00000000 0x294
|
|
||||||
*(.debug_frame)
|
|
||||||
.debug_frame 0x00000000 0x9c build/print.o
|
|
||||||
.debug_frame 0x0000009c 0x34 build/DS3231.o
|
|
||||||
.debug_frame 0x000000d0 0x34 build/i2c.o
|
|
||||||
.debug_frame 0x00000104 0x34 build/adc.o
|
|
||||||
.debug_frame 0x00000138 0xfc build/main.o
|
|
||||||
.debug_frame 0x00000234 0x60 build/uart.o
|
|
||||||
|
|
||||||
.debug_str 0x00000000 0x352
|
|
||||||
*(.debug_str)
|
|
||||||
.debug_str 0x00000000 0x1d8 build/print.o
|
|
||||||
0x21b (size before relaxing)
|
|
||||||
.debug_str 0x000001d8 0x32 build/DS3231.o
|
|
||||||
0x144 (size before relaxing)
|
|
||||||
.debug_str 0x0000020a 0x20 build/i2c.o
|
|
||||||
0x144 (size before relaxing)
|
|
||||||
.debug_str 0x0000022a 0x2f build/adc.o
|
|
||||||
0x144 (size before relaxing)
|
|
||||||
.debug_str 0x00000259 0xb8 build/main.o
|
|
||||||
0x20a (size before relaxing)
|
|
||||||
.debug_str 0x00000311 0x41 build/uart.o
|
|
||||||
0x15b (size before relaxing)
|
|
||||||
|
|
||||||
.debug_loc 0x00000000 0x598
|
|
||||||
*(.debug_loc)
|
|
||||||
.debug_loc 0x00000000 0x2c9 build/print.o
|
|
||||||
.debug_loc 0x000002c9 0x2d build/i2c.o
|
|
||||||
.debug_loc 0x000002f6 0x51 build/adc.o
|
|
||||||
.debug_loc 0x00000347 0x16c build/main.o
|
|
||||||
.debug_loc 0x000004b3 0xe5 build/uart.o
|
|
||||||
|
|
||||||
.debug_macinfo
|
|
||||||
*(.debug_macinfo)
|
|
||||||
|
|
||||||
.debug_pubtypes
|
|
||||||
*(.debug_pubtypes)
|
|
||||||
|
|
||||||
.debug_ranges 0x00000000 0x18
|
|
||||||
*(.debug_ranges)
|
|
||||||
.debug_ranges 0x00000000 0x18 build/main.o
|
|
||||||
|
|
||||||
.debug_macro
|
|
||||||
*(.debug_macro)
|
|
||||||
OUTPUT(main.elf elf32-avr)
|
|
||||||
LOAD linker stubs
|
|
||||||
|
|
||||||
Cross Reference Table
|
|
||||||
|
|
||||||
Symbol File
|
|
||||||
DS3231_init build/DS3231.o
|
|
||||||
DS3231_seconds build/DS3231.o
|
|
||||||
SR_Buffer build/print.o
|
|
||||||
USART_Init build/uart.o
|
|
||||||
USART_Transmit build/uart.o
|
|
||||||
__bad_interrupt /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__bss_end /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
__bss_start /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
__data_end /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
__data_load_start /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
__data_start /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
__divmodhi4 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
build/main.o
|
|
||||||
__do_clear_bss /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_clear_bss.o)
|
|
||||||
build/main.o
|
|
||||||
__do_copy_data /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_copy_data.o)
|
|
||||||
build/main.o
|
|
||||||
build/print.o
|
|
||||||
__heap_end /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__init /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__stack /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__udivmodhi4 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_udivmodhi4.o)
|
|
||||||
/usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
__vector_1 build/main.o
|
|
||||||
/usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_10 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_11 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_12 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_13 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_14 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_15 build/main.o
|
|
||||||
/usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_16 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_17 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_18 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_19 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_2 build/main.o
|
|
||||||
/usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_20 build/main.o
|
|
||||||
/usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_21 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_22 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_23 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_24 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_25 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_26 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_27 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_28 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_29 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_3 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_30 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_31 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_32 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_33 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_34 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_4 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_5 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_6 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_7 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_8 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_9 /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vector_default /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
__vectors /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
_div /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_divmodhi4.o)
|
|
||||||
_exit /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
adc_read build/adc.o
|
|
||||||
adc_setup build/adc.o
|
|
||||||
add_ASCII_to_SR_Buffer build/print.o
|
|
||||||
add_Character_to_SR_Buffer build/print.o
|
|
||||||
add_Decimal_Point_to_SR_Buffer build/print.o
|
|
||||||
add_Number_to_SR_Buffer build/print.o
|
|
||||||
animationtimer build/main.o
|
|
||||||
blank build/print.o
|
|
||||||
character_Font build/print.o
|
|
||||||
check_buttons build/main.o
|
|
||||||
check_dip_switches build/main.o
|
|
||||||
clear_SR_Buffer build/print.o
|
|
||||||
build/main.o
|
|
||||||
counter build/main.o
|
|
||||||
dot build/print.o
|
|
||||||
duty build/main.o
|
|
||||||
exit /usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/avr51/libgcc.a(_exit.o)
|
|
||||||
/usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
i2c_init build/i2c.o
|
|
||||||
i2c_start build/i2c.o
|
|
||||||
build/DS3231.o
|
|
||||||
main build/main.o
|
|
||||||
/usr/local/CrossPack-AVR-20131216/lib/gcc/avr/4.8.1/../../../../avr/lib/avr51/crtm1284.o
|
|
||||||
minus build/print.o
|
|
||||||
number_Font build/print.o
|
|
||||||
offset build/main.o
|
|
||||||
print_SR_Buffer build/print.o
|
|
||||||
print_String build/print.o
|
|
||||||
build/main.o
|
|
||||||
putchar build/uart.o
|
|
||||||
set_PWM_duty build/main.o
|
|
||||||
setup build/main.o
|
|
||||||
stringlength build/main.o
|
|
||||||
text build/main.o
|
|
||||||
uart_puts build/uart.o
|
|
||||||
Binary file not shown.
@ -1,542 +0,0 @@
|
|||||||
1 .file "print.c"
|
|
||||||
2 __SP_H__ = 0x3e
|
|
||||||
3 __SP_L__ = 0x3d
|
|
||||||
4 __SREG__ = 0x3f
|
|
||||||
5 __RAMPZ__ = 0x3b
|
|
||||||
6 __tmp_reg__ = 0
|
|
||||||
7 __zero_reg__ = 1
|
|
||||||
8 .text
|
|
||||||
9 .Ltext0:
|
|
||||||
10 .cfi_sections .debug_frame
|
|
||||||
11 .global clear_SR_Buffer
|
|
||||||
13 clear_SR_Buffer:
|
|
||||||
14 .LFB10:
|
|
||||||
15 .file 1 "src/print.c"
|
|
||||||
1:src/print.c **** #include "pinout.h"
|
|
||||||
2:src/print.c **** #include "print.h"
|
|
||||||
3:src/print.c **** #include <stdlib.h>
|
|
||||||
4:src/print.c **** #include <avr/io.h>
|
|
||||||
5:src/print.c **** #include <util/delay.h>
|
|
||||||
6:src/print.c ****
|
|
||||||
7:src/print.c **** const unsigned char number_Font[10] = { 0b11011110, //0
|
|
||||||
8:src/print.c **** 0b00000110, //1
|
|
||||||
9:src/print.c **** 0b11101010, //2
|
|
||||||
10:src/print.c **** 0b01101110, //3
|
|
||||||
11:src/print.c **** 0b00110110, //4
|
|
||||||
12:src/print.c **** 0b01111100, //5
|
|
||||||
13:src/print.c **** 0b11111100, //6
|
|
||||||
14:src/print.c **** 0b00001110, //7
|
|
||||||
15:src/print.c **** 0b11111110, //8
|
|
||||||
16:src/print.c **** 0b01111110 //9
|
|
||||||
17:src/print.c **** };
|
|
||||||
18:src/print.c **** const unsigned char character_Font[26] = {0b10111110, //A
|
|
||||||
19:src/print.c **** 0b11110100, //b
|
|
||||||
20:src/print.c **** 0b11100000, //c
|
|
||||||
21:src/print.c **** 0b11100110, //d
|
|
||||||
22:src/print.c **** 0b11111000, //e
|
|
||||||
23:src/print.c **** 0b10111000, //F
|
|
||||||
24:src/print.c **** 0b11011100, //G
|
|
||||||
25:src/print.c **** 0b10110100, //h
|
|
||||||
26:src/print.c **** 0b00000100, //i
|
|
||||||
27:src/print.c **** 0b01000110, //J
|
|
||||||
28:src/print.c **** 0b10111100, //K
|
|
||||||
29:src/print.c **** 0b11010000, //L
|
|
||||||
30:src/print.c **** 0b10011110, //M
|
|
||||||
31:src/print.c **** 0b10100100, //n
|
|
||||||
32:src/print.c **** 0b11100100, //o
|
|
||||||
33:src/print.c **** 0b10111010, //P
|
|
||||||
34:src/print.c **** 0b00111110, //q
|
|
||||||
35:src/print.c **** 0b10100000, //r
|
|
||||||
36:src/print.c **** 0b01111100, //S
|
|
||||||
37:src/print.c **** 0b11110000, //t
|
|
||||||
38:src/print.c **** 0b11000100, //u
|
|
||||||
39:src/print.c **** 0b11000100, //v
|
|
||||||
40:src/print.c **** 0b11010110, //W
|
|
||||||
41:src/print.c **** 0b10110110, //X
|
|
||||||
42:src/print.c **** 0b01110110, //Y
|
|
||||||
43:src/print.c **** 0b11100110 //Z
|
|
||||||
44:src/print.c **** };
|
|
||||||
45:src/print.c **** const unsigned char blank = 0b00000000; //zeigt nichts an
|
|
||||||
46:src/print.c **** const unsigned char minus = 0b00100000; //zeigt '-' an
|
|
||||||
47:src/print.c **** const unsigned char dot = 0b00000001; //aktiviert Dezimalpunkt
|
|
||||||
48:src/print.c **** unsigned char SR_Buffer[6] = {0b11100110,
|
|
||||||
49:src/print.c **** 0b11100110,
|
|
||||||
50:src/print.c **** 0b11100110,
|
|
||||||
51:src/print.c **** 0b11100110,
|
|
||||||
52:src/print.c **** 0b11100110,
|
|
||||||
53:src/print.c **** 0b11100110,
|
|
||||||
54:src/print.c **** 0b11100110,
|
|
||||||
55:src/print.c **** 0b11100110};
|
|
||||||
56:src/print.c ****
|
|
||||||
57:src/print.c ****
|
|
||||||
58:src/print.c ****
|
|
||||||
59:src/print.c **** void clear_SR_Buffer() {
|
|
||||||
16 .loc 1 59 0
|
|
||||||
17 .cfi_startproc
|
|
||||||
18 /* prologue: function */
|
|
||||||
19 /* frame size = 0 */
|
|
||||||
20 /* stack size = 0 */
|
|
||||||
21 .L__stack_usage = 0
|
|
||||||
22 .LVL0:
|
|
||||||
23 .LBB2:
|
|
||||||
60:src/print.c **** for (char i = 0; i < 6; i++) {
|
|
||||||
61:src/print.c **** SR_Buffer[i] = blank;
|
|
||||||
24 .loc 1 61 0
|
|
||||||
25 0000 1092 0000 sts SR_Buffer,__zero_reg__
|
|
||||||
26 .LVL1:
|
|
||||||
27 0004 1092 0000 sts SR_Buffer+1,__zero_reg__
|
|
||||||
28 .LVL2:
|
|
||||||
29 0008 1092 0000 sts SR_Buffer+2,__zero_reg__
|
|
||||||
30 .LVL3:
|
|
||||||
31 000c 1092 0000 sts SR_Buffer+3,__zero_reg__
|
|
||||||
32 .LVL4:
|
|
||||||
33 0010 1092 0000 sts SR_Buffer+4,__zero_reg__
|
|
||||||
34 .LVL5:
|
|
||||||
35 0014 1092 0000 sts SR_Buffer+5,__zero_reg__
|
|
||||||
36 .LVL6:
|
|
||||||
37 0018 0895 ret
|
|
||||||
38 .LBE2:
|
|
||||||
39 .cfi_endproc
|
|
||||||
40 .LFE10:
|
|
||||||
42 .global add_Decimal_Point_to_SR_Buffer
|
|
||||||
44 add_Decimal_Point_to_SR_Buffer:
|
|
||||||
45 .LFB11:
|
|
||||||
62:src/print.c **** }
|
|
||||||
63:src/print.c **** }
|
|
||||||
64:src/print.c ****
|
|
||||||
65:src/print.c **** void add_Decimal_Point_to_SR_Buffer(int pos){
|
|
||||||
46 .loc 1 65 0
|
|
||||||
47 .cfi_startproc
|
|
||||||
48 .LVL7:
|
|
||||||
49 /* prologue: function */
|
|
||||||
50 /* frame size = 0 */
|
|
||||||
51 /* stack size = 0 */
|
|
||||||
52 .L__stack_usage = 0
|
|
||||||
66:src/print.c **** SR_Buffer[pos-1] += dot;
|
|
||||||
53 .loc 1 66 0
|
|
||||||
54 001a FC01 movw r30,r24
|
|
||||||
55 001c E050 subi r30,lo8(-(SR_Buffer-1))
|
|
||||||
56 001e F040 sbci r31,hi8(-(SR_Buffer-1))
|
|
||||||
57 0020 8081 ld r24,Z
|
|
||||||
58 .LVL8:
|
|
||||||
59 0022 8F5F subi r24,lo8(-(1))
|
|
||||||
60 0024 8083 st Z,r24
|
|
||||||
61 0026 0895 ret
|
|
||||||
62 .cfi_endproc
|
|
||||||
63 .LFE11:
|
|
||||||
65 .global print_SR_Buffer
|
|
||||||
67 print_SR_Buffer:
|
|
||||||
68 .LFB12:
|
|
||||||
67:src/print.c **** }
|
|
||||||
68:src/print.c ****
|
|
||||||
69:src/print.c **** void print_SR_Buffer() {
|
|
||||||
69 .loc 1 69 0
|
|
||||||
70 .cfi_startproc
|
|
||||||
71 /* prologue: function */
|
|
||||||
72 /* frame size = 0 */
|
|
||||||
73 /* stack size = 0 */
|
|
||||||
74 .L__stack_usage = 0
|
|
||||||
70:src/print.c **** PORTC &= ~(LATCH_SR);
|
|
||||||
75 .loc 1 70 0
|
|
||||||
76 0028 4298 cbi 0x8,2
|
|
||||||
77 .LVL9:
|
|
||||||
78 002a E0E0 ldi r30,lo8(SR_Buffer)
|
|
||||||
79 002c F0E0 ldi r31,hi8(SR_Buffer)
|
|
||||||
80 .LVL10:
|
|
||||||
81 .L7:
|
|
||||||
82 .LBB3:
|
|
||||||
71:src/print.c ****
|
|
||||||
72:src/print.c **** for (int i = 0; i < 6; i++) {
|
|
||||||
73:src/print.c **** SPDR = SR_Buffer[i];
|
|
||||||
83 .loc 1 73 0
|
|
||||||
84 002e 8191 ld r24,Z+
|
|
||||||
85 .LVL11:
|
|
||||||
86 0030 8EBD out 0x2e,r24
|
|
||||||
87 .L5:
|
|
||||||
74:src/print.c **** //SPDR = 0b11100110;
|
|
||||||
75:src/print.c **** //_delay_us(100);
|
|
||||||
76:src/print.c **** while (!(SPSR & (1 << SPIF))); //warten auf transferabschluss
|
|
||||||
88 .loc 1 76 0 discriminator 1
|
|
||||||
89 0032 0DB4 in __tmp_reg__,0x2d
|
|
||||||
90 0034 07FE sbrs __tmp_reg__,7
|
|
||||||
91 0036 00C0 rjmp .L5
|
|
||||||
92 .LVL12:
|
|
||||||
72:src/print.c **** for (int i = 0; i < 6; i++) {
|
|
||||||
93 .loc 1 72 0
|
|
||||||
94 0038 80E0 ldi r24,hi8(SR_Buffer+6)
|
|
||||||
95 003a E030 cpi r30,lo8(SR_Buffer+6)
|
|
||||||
96 003c F807 cpc r31,r24
|
|
||||||
97 003e 01F4 brne .L7
|
|
||||||
98 .LBE3:
|
|
||||||
77:src/print.c **** }
|
|
||||||
78:src/print.c **** PORTC |= LATCH_SR;
|
|
||||||
99 .loc 1 78 0
|
|
||||||
100 0040 429A sbi 0x8,2
|
|
||||||
101 0042 0895 ret
|
|
||||||
102 .cfi_endproc
|
|
||||||
103 .LFE12:
|
|
||||||
105 .global add_ASCII_to_SR_Buffer
|
|
||||||
107 add_ASCII_to_SR_Buffer:
|
|
||||||
108 .LFB14:
|
|
||||||
79:src/print.c **** //_delay_ms(1);
|
|
||||||
80:src/print.c **** //PORTC &= ~(LATCH_SR);
|
|
||||||
81:src/print.c **** }
|
|
||||||
82:src/print.c ****
|
|
||||||
83:src/print.c **** void print_String(char* string){
|
|
||||||
84:src/print.c **** for(int i = 0; i < 6; i++){
|
|
||||||
85:src/print.c **** add_ASCII_to_SR_Buffer(string[i],i);
|
|
||||||
86:src/print.c **** }
|
|
||||||
87:src/print.c **** print_SR_Buffer();
|
|
||||||
88:src/print.c **** }
|
|
||||||
89:src/print.c ****
|
|
||||||
90:src/print.c ****
|
|
||||||
91:src/print.c **** void add_ASCII_to_SR_Buffer(unsigned char character, int pos) {
|
|
||||||
109 .loc 1 91 0
|
|
||||||
110 .cfi_startproc
|
|
||||||
111 .LVL13:
|
|
||||||
112 /* prologue: function */
|
|
||||||
113 /* frame size = 0 */
|
|
||||||
114 /* stack size = 0 */
|
|
||||||
115 .L__stack_usage = 0
|
|
||||||
92:src/print.c **** int ascii_offset = 0;
|
|
||||||
93:src/print.c ****
|
|
||||||
94:src/print.c **** if((character > 46) && (character < 57)){ //Char ist Zahl
|
|
||||||
116 .loc 1 94 0
|
|
||||||
117 0044 91ED ldi r25,lo8(-47)
|
|
||||||
118 0046 980F add r25,r24
|
|
||||||
119 0048 9A30 cpi r25,lo8(10)
|
|
||||||
120 004a 00F4 brsh .L10
|
|
||||||
121 .LVL14:
|
|
||||||
95:src/print.c **** ascii_offset = 48;
|
|
||||||
96:src/print.c **** SR_Buffer[pos] = number_Font[character - ascii_offset]; //Zieht ASCII-Offset ab, sodass Zahl mit F
|
|
||||||
122 .loc 1 96 0
|
|
||||||
123 004c DB01 movw r26,r22
|
|
||||||
124 004e A050 subi r26,lo8(-(SR_Buffer))
|
|
||||||
125 0050 B040 sbci r27,hi8(-(SR_Buffer))
|
|
||||||
126 0052 E82F mov r30,r24
|
|
||||||
127 0054 F0E0 ldi r31,0
|
|
||||||
128 0056 E050 subi r30,lo8(-(number_Font-48))
|
|
||||||
129 0058 F040 sbci r31,hi8(-(number_Font-48))
|
|
||||||
130 005a 00C0 rjmp .L15
|
|
||||||
131 .LVL15:
|
|
||||||
132 .L10:
|
|
||||||
97:src/print.c **** }else if (character > 95 && character < 122) { //Buchstabe ist kleiner Buchstabe
|
|
||||||
133 .loc 1 97 0
|
|
||||||
134 005c 90EA ldi r25,lo8(-96)
|
|
||||||
135 005e 980F add r25,r24
|
|
||||||
136 0060 9A31 cpi r25,lo8(26)
|
|
||||||
137 0062 00F4 brsh .L12
|
|
||||||
138 .LVL16:
|
|
||||||
98:src/print.c **** ascii_offset = 97;
|
|
||||||
99:src/print.c **** SR_Buffer[pos] = character_Font[character - ascii_offset]; //Zieht ASCII-Offset ab, sodass Buch
|
|
||||||
139 .loc 1 99 0
|
|
||||||
140 0064 DB01 movw r26,r22
|
|
||||||
141 0066 A050 subi r26,lo8(-(SR_Buffer))
|
|
||||||
142 0068 B040 sbci r27,hi8(-(SR_Buffer))
|
|
||||||
143 006a E82F mov r30,r24
|
|
||||||
144 006c F0E0 ldi r31,0
|
|
||||||
145 006e E050 subi r30,lo8(-(character_Font-97))
|
|
||||||
146 0070 F040 sbci r31,hi8(-(character_Font-97))
|
|
||||||
147 .LVL17:
|
|
||||||
148 .L15:
|
|
||||||
149 0072 8081 ld r24,Z
|
|
||||||
150 .LVL18:
|
|
||||||
151 0074 8C93 st X,r24
|
|
||||||
152 0076 0895 ret
|
|
||||||
153 .LVL19:
|
|
||||||
154 .L12:
|
|
||||||
100:src/print.c **** } else if (character > 64 && character < 91){ //Buchstabe groß Buchstabe
|
|
||||||
155 .loc 1 100 0
|
|
||||||
156 0078 9FEB ldi r25,lo8(-65)
|
|
||||||
157 007a 980F add r25,r24
|
|
||||||
158 007c 9A31 cpi r25,lo8(26)
|
|
||||||
159 007e 00F4 brsh .L13
|
|
||||||
160 .LVL20:
|
|
||||||
101:src/print.c **** ascii_offset = 65;
|
|
||||||
102:src/print.c **** SR_Buffer[pos] = character_Font[character - ascii_offset]; //Zieht ASCII-Offset ab, sodass Buch
|
|
||||||
161 .loc 1 102 0
|
|
||||||
162 0080 DB01 movw r26,r22
|
|
||||||
163 0082 A050 subi r26,lo8(-(SR_Buffer))
|
|
||||||
164 0084 B040 sbci r27,hi8(-(SR_Buffer))
|
|
||||||
165 0086 E82F mov r30,r24
|
|
||||||
166 0088 F0E0 ldi r31,0
|
|
||||||
167 008a E050 subi r30,lo8(-(character_Font-65))
|
|
||||||
168 008c F040 sbci r31,hi8(-(character_Font-65))
|
|
||||||
169 008e 00C0 rjmp .L15
|
|
||||||
170 .LVL21:
|
|
||||||
171 .L13:
|
|
||||||
103:src/print.c **** } else if (character == 32){ //Charakter ist Blank ' '
|
|
||||||
172 .loc 1 103 0
|
|
||||||
173 0090 8032 cpi r24,lo8(32)
|
|
||||||
174 0092 01F4 brne .L14
|
|
||||||
104:src/print.c **** SR_Buffer[pos] = blank;
|
|
||||||
175 .loc 1 104 0
|
|
||||||
176 0094 FB01 movw r30,r22
|
|
||||||
177 0096 E050 subi r30,lo8(-(SR_Buffer))
|
|
||||||
178 0098 F040 sbci r31,hi8(-(SR_Buffer))
|
|
||||||
179 009a 1082 st Z,__zero_reg__
|
|
||||||
180 009c 0895 ret
|
|
||||||
181 .L14:
|
|
||||||
105:src/print.c **** } else if (character == 45){ //Charakter ist Minus -
|
|
||||||
182 .loc 1 105 0
|
|
||||||
183 009e 8D32 cpi r24,lo8(45)
|
|
||||||
184 00a0 01F4 brne .L9
|
|
||||||
106:src/print.c **** SR_Buffer[pos] = minus;
|
|
||||||
185 .loc 1 106 0
|
|
||||||
186 00a2 FB01 movw r30,r22
|
|
||||||
187 00a4 E050 subi r30,lo8(-(SR_Buffer))
|
|
||||||
188 00a6 F040 sbci r31,hi8(-(SR_Buffer))
|
|
||||||
189 00a8 80E2 ldi r24,lo8(32)
|
|
||||||
190 .LVL22:
|
|
||||||
191 00aa 8083 st Z,r24
|
|
||||||
192 .L9:
|
|
||||||
193 00ac 0895 ret
|
|
||||||
194 .cfi_endproc
|
|
||||||
195 .LFE14:
|
|
||||||
197 .global print_String
|
|
||||||
199 print_String:
|
|
||||||
200 .LFB13:
|
|
||||||
83:src/print.c **** void print_String(char* string){
|
|
||||||
201 .loc 1 83 0
|
|
||||||
202 .cfi_startproc
|
|
||||||
203 .LVL23:
|
|
||||||
204 00ae 0F93 push r16
|
|
||||||
205 .LCFI0:
|
|
||||||
206 .cfi_def_cfa_offset 3
|
|
||||||
207 .cfi_offset 16, -2
|
|
||||||
208 00b0 1F93 push r17
|
|
||||||
209 .LCFI1:
|
|
||||||
210 .cfi_def_cfa_offset 4
|
|
||||||
211 .cfi_offset 17, -3
|
|
||||||
212 00b2 CF93 push r28
|
|
||||||
213 .LCFI2:
|
|
||||||
214 .cfi_def_cfa_offset 5
|
|
||||||
215 .cfi_offset 28, -4
|
|
||||||
216 00b4 DF93 push r29
|
|
||||||
217 .LCFI3:
|
|
||||||
218 .cfi_def_cfa_offset 6
|
|
||||||
219 .cfi_offset 29, -5
|
|
||||||
220 /* prologue: function */
|
|
||||||
221 /* frame size = 0 */
|
|
||||||
222 /* stack size = 4 */
|
|
||||||
223 .L__stack_usage = 4
|
|
||||||
224 00b6 8C01 movw r16,r24
|
|
||||||
225 .LVL24:
|
|
||||||
226 .LBB4:
|
|
||||||
84:src/print.c **** for(int i = 0; i < 6; i++){
|
|
||||||
227 .loc 1 84 0
|
|
||||||
228 00b8 C0E0 ldi r28,0
|
|
||||||
229 00ba D0E0 ldi r29,0
|
|
||||||
230 .LVL25:
|
|
||||||
231 .L18:
|
|
||||||
85:src/print.c **** add_ASCII_to_SR_Buffer(string[i],i);
|
|
||||||
232 .loc 1 85 0 discriminator 2
|
|
||||||
233 00bc BE01 movw r22,r28
|
|
||||||
234 00be F801 movw r30,r16
|
|
||||||
235 00c0 8191 ld r24,Z+
|
|
||||||
236 00c2 8F01 movw r16,r30
|
|
||||||
237 00c4 0E94 0000 call add_ASCII_to_SR_Buffer
|
|
||||||
238 .LVL26:
|
|
||||||
84:src/print.c **** for(int i = 0; i < 6; i++){
|
|
||||||
239 .loc 1 84 0 discriminator 2
|
|
||||||
240 00c8 2196 adiw r28,1
|
|
||||||
241 .LVL27:
|
|
||||||
242 00ca C630 cpi r28,6
|
|
||||||
243 00cc D105 cpc r29,__zero_reg__
|
|
||||||
244 00ce 01F4 brne .L18
|
|
||||||
245 /* epilogue start */
|
|
||||||
246 .LBE4:
|
|
||||||
88:src/print.c **** }
|
|
||||||
247 .loc 1 88 0
|
|
||||||
248 00d0 DF91 pop r29
|
|
||||||
249 00d2 CF91 pop r28
|
|
||||||
250 .LVL28:
|
|
||||||
251 00d4 1F91 pop r17
|
|
||||||
252 00d6 0F91 pop r16
|
|
||||||
87:src/print.c **** print_SR_Buffer();
|
|
||||||
253 .loc 1 87 0
|
|
||||||
254 00d8 0C94 0000 jmp print_SR_Buffer
|
|
||||||
255 .LVL29:
|
|
||||||
256 .cfi_endproc
|
|
||||||
257 .LFE13:
|
|
||||||
259 .global add_Character_to_SR_Buffer
|
|
||||||
261 add_Character_to_SR_Buffer:
|
|
||||||
262 .LFB15:
|
|
||||||
107:src/print.c **** }
|
|
||||||
108:src/print.c ****
|
|
||||||
109:src/print.c **** }
|
|
||||||
110:src/print.c ****
|
|
||||||
111:src/print.c **** void add_Character_to_SR_Buffer(unsigned char character, int pos) {
|
|
||||||
263 .loc 1 111 0
|
|
||||||
264 .cfi_startproc
|
|
||||||
265 .LVL30:
|
|
||||||
266 /* prologue: function */
|
|
||||||
267 /* frame size = 0 */
|
|
||||||
268 /* stack size = 0 */
|
|
||||||
269 .L__stack_usage = 0
|
|
||||||
112:src/print.c **** int ascii_offset = 0;
|
|
||||||
113:src/print.c ****
|
|
||||||
114:src/print.c **** if (character > 96 && character < 122) { //Buchstabe ist kleiner Buchstabe
|
|
||||||
270 .loc 1 114 0
|
|
||||||
271 00dc 9FE9 ldi r25,lo8(-97)
|
|
||||||
272 00de 980F add r25,r24
|
|
||||||
273 00e0 9931 cpi r25,lo8(25)
|
|
||||||
274 00e2 00F4 brsh .L20
|
|
||||||
275 .LVL31:
|
|
||||||
115:src/print.c **** ascii_offset = 97;
|
|
||||||
116:src/print.c **** SR_Buffer[pos] = character_Font[character - ascii_offset]; //Zieht ASCII-Offset ab, sodass Buch
|
|
||||||
276 .loc 1 116 0
|
|
||||||
277 00e4 DB01 movw r26,r22
|
|
||||||
278 00e6 A050 subi r26,lo8(-(SR_Buffer))
|
|
||||||
279 00e8 B040 sbci r27,hi8(-(SR_Buffer))
|
|
||||||
280 00ea E82F mov r30,r24
|
|
||||||
281 00ec F0E0 ldi r31,0
|
|
||||||
282 00ee E050 subi r30,lo8(-(character_Font-97))
|
|
||||||
283 00f0 F040 sbci r31,hi8(-(character_Font-97))
|
|
||||||
284 00f2 00C0 rjmp .L22
|
|
||||||
285 .LVL32:
|
|
||||||
286 .L20:
|
|
||||||
117:src/print.c **** } else if (character > 65 && character < 91){ //Buchstabe groß Buchstabe
|
|
||||||
287 .loc 1 117 0
|
|
||||||
288 00f4 9EEB ldi r25,lo8(-66)
|
|
||||||
289 00f6 980F add r25,r24
|
|
||||||
290 00f8 9931 cpi r25,lo8(25)
|
|
||||||
291 00fa 00F4 brsh .L19
|
|
||||||
292 .LVL33:
|
|
||||||
118:src/print.c **** ascii_offset = 65;
|
|
||||||
119:src/print.c **** SR_Buffer[pos] = character_Font[character - ascii_offset]; //Zieht ASCII-Offset ab, sodass Buch
|
|
||||||
293 .loc 1 119 0
|
|
||||||
294 00fc DB01 movw r26,r22
|
|
||||||
295 00fe A050 subi r26,lo8(-(SR_Buffer))
|
|
||||||
296 0100 B040 sbci r27,hi8(-(SR_Buffer))
|
|
||||||
297 0102 E82F mov r30,r24
|
|
||||||
298 0104 F0E0 ldi r31,0
|
|
||||||
299 0106 E050 subi r30,lo8(-(character_Font-65))
|
|
||||||
300 0108 F040 sbci r31,hi8(-(character_Font-65))
|
|
||||||
301 .LVL34:
|
|
||||||
302 .L22:
|
|
||||||
303 010a 8081 ld r24,Z
|
|
||||||
304 .LVL35:
|
|
||||||
305 010c 8C93 st X,r24
|
|
||||||
306 .L19:
|
|
||||||
307 010e 0895 ret
|
|
||||||
308 .cfi_endproc
|
|
||||||
309 .LFE15:
|
|
||||||
311 .global add_Number_to_SR_Buffer
|
|
||||||
313 add_Number_to_SR_Buffer:
|
|
||||||
314 .LFB16:
|
|
||||||
120:src/print.c **** }
|
|
||||||
121:src/print.c ****
|
|
||||||
122:src/print.c **** }
|
|
||||||
123:src/print.c ****
|
|
||||||
124:src/print.c **** void add_Number_to_SR_Buffer(int number, int pos) {
|
|
||||||
315 .loc 1 124 0
|
|
||||||
316 .cfi_startproc
|
|
||||||
317 .LVL36:
|
|
||||||
318 /* prologue: function */
|
|
||||||
319 /* frame size = 0 */
|
|
||||||
320 /* stack size = 0 */
|
|
||||||
321 .L__stack_usage = 0
|
|
||||||
125:src/print.c **** SR_Buffer[pos-1] = number_Font[number];
|
|
||||||
322 .loc 1 125 0
|
|
||||||
323 0110 6050 subi r22,lo8(-(SR_Buffer-1))
|
|
||||||
324 0112 7040 sbci r23,hi8(-(SR_Buffer-1))
|
|
||||||
325 .LVL37:
|
|
||||||
326 0114 8050 subi r24,lo8(-(number_Font))
|
|
||||||
327 0116 9040 sbci r25,hi8(-(number_Font))
|
|
||||||
328 .LVL38:
|
|
||||||
329 0118 FC01 movw r30,r24
|
|
||||||
330 011a 8081 ld r24,Z
|
|
||||||
331 .LVL39:
|
|
||||||
332 011c FB01 movw r30,r22
|
|
||||||
333 .LVL40:
|
|
||||||
334 011e 8083 st Z,r24
|
|
||||||
335 0120 0895 ret
|
|
||||||
336 .cfi_endproc
|
|
||||||
337 .LFE16:
|
|
||||||
339 .global SR_Buffer
|
|
||||||
340 .data
|
|
||||||
343 SR_Buffer:
|
|
||||||
344 0000 E6 .byte -26
|
|
||||||
345 0001 E6 .byte -26
|
|
||||||
346 0002 E6 .byte -26
|
|
||||||
347 0003 E6 .byte -26
|
|
||||||
348 0004 E6 .byte -26
|
|
||||||
349 0005 E6 .byte -26
|
|
||||||
350 .global dot
|
|
||||||
351 .section .rodata
|
|
||||||
354 dot:
|
|
||||||
355 0000 01 .byte 1
|
|
||||||
356 .global minus
|
|
||||||
359 minus:
|
|
||||||
360 0001 20 .byte 32
|
|
||||||
361 .global blank
|
|
||||||
364 blank:
|
|
||||||
365 0002 00 .zero 1
|
|
||||||
366 .global character_Font
|
|
||||||
369 character_Font:
|
|
||||||
370 0003 BE .byte -66
|
|
||||||
371 0004 F4 .byte -12
|
|
||||||
372 0005 E0 .byte -32
|
|
||||||
373 0006 E6 .byte -26
|
|
||||||
374 0007 F8 .byte -8
|
|
||||||
375 0008 B8 .byte -72
|
|
||||||
376 0009 DC .byte -36
|
|
||||||
377 000a B4 .byte -76
|
|
||||||
378 000b 04 .byte 4
|
|
||||||
379 000c 46 .byte 70
|
|
||||||
380 000d BC .byte -68
|
|
||||||
381 000e D0 .byte -48
|
|
||||||
382 000f 9E .byte -98
|
|
||||||
383 0010 A4 .byte -92
|
|
||||||
384 0011 E4 .byte -28
|
|
||||||
385 0012 BA .byte -70
|
|
||||||
386 0013 3E .byte 62
|
|
||||||
387 0014 A0 .byte -96
|
|
||||||
388 0015 7C .byte 124
|
|
||||||
389 0016 F0 .byte -16
|
|
||||||
390 0017 C4 .byte -60
|
|
||||||
391 0018 C4 .byte -60
|
|
||||||
392 0019 D6 .byte -42
|
|
||||||
393 001a B6 .byte -74
|
|
||||||
394 001b 76 .byte 118
|
|
||||||
395 001c E6 .byte -26
|
|
||||||
396 .global number_Font
|
|
||||||
399 number_Font:
|
|
||||||
400 001d DE .byte -34
|
|
||||||
401 001e 06 .byte 6
|
|
||||||
402 001f EA .byte -22
|
|
||||||
403 0020 6E .byte 110
|
|
||||||
404 0021 36 .byte 54
|
|
||||||
405 0022 7C .byte 124
|
|
||||||
406 0023 FC .byte -4
|
|
||||||
407 0024 0E .byte 14
|
|
||||||
408 0025 FE .byte -2
|
|
||||||
409 0026 7E .byte 126
|
|
||||||
410 .text
|
|
||||||
411 .Letext0:
|
|
||||||
412 .file 2 "/usr/local/CrossPack-AVR-20131216/avr/include/stdint.h"
|
|
||||||
DEFINED SYMBOLS
|
|
||||||
*ABS*:00000000 print.c
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:2 *ABS*:0000003e __SP_H__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:3 *ABS*:0000003d __SP_L__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:4 *ABS*:0000003f __SREG__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:5 *ABS*:0000003b __RAMPZ__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:6 *ABS*:00000000 __tmp_reg__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:7 *ABS*:00000001 __zero_reg__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:13 .text:00000000 clear_SR_Buffer
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:343 .data:00000000 SR_Buffer
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:44 .text:0000001a add_Decimal_Point_to_SR_Buffer
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:67 .text:00000028 print_SR_Buffer
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:107 .text:00000044 add_ASCII_to_SR_Buffer
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:399 .rodata:0000001d number_Font
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:369 .rodata:00000003 character_Font
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:199 .text:000000ae print_String
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:261 .text:000000dc add_Character_to_SR_Buffer
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:313 .text:00000110 add_Number_to_SR_Buffer
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:354 .rodata:00000000 dot
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:359 .rodata:00000001 minus
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccd8mofv.s:364 .rodata:00000002 blank
|
|
||||||
|
|
||||||
UNDEFINED SYMBOLS
|
|
||||||
__do_copy_data
|
|
||||||
Binary file not shown.
Binary file not shown.
@ -1,177 +0,0 @@
|
|||||||
1 .file "uart.c"
|
|
||||||
2 __SP_H__ = 0x3e
|
|
||||||
3 __SP_L__ = 0x3d
|
|
||||||
4 __SREG__ = 0x3f
|
|
||||||
5 __RAMPZ__ = 0x3b
|
|
||||||
6 __tmp_reg__ = 0
|
|
||||||
7 __zero_reg__ = 1
|
|
||||||
8 .text
|
|
||||||
9 .Ltext0:
|
|
||||||
10 .cfi_sections .debug_frame
|
|
||||||
11 .global USART_Init
|
|
||||||
13 USART_Init:
|
|
||||||
14 .LFB0:
|
|
||||||
15 .file 1 "src/uart.c"
|
|
||||||
1:src/uart.c **** #include <avr/io.h>
|
|
||||||
2:src/uart.c **** #include "uart.h"
|
|
||||||
3:src/uart.c ****
|
|
||||||
4:src/uart.c ****
|
|
||||||
5:src/uart.c ****
|
|
||||||
6:src/uart.c **** void USART_Init(unsigned int ubrr)
|
|
||||||
7:src/uart.c **** {
|
|
||||||
16 .loc 1 7 0
|
|
||||||
17 .cfi_startproc
|
|
||||||
18 .LVL0:
|
|
||||||
19 /* prologue: function */
|
|
||||||
20 /* frame size = 0 */
|
|
||||||
21 /* stack size = 0 */
|
|
||||||
22 .L__stack_usage = 0
|
|
||||||
8:src/uart.c **** /*Set baud rate */
|
|
||||||
9:src/uart.c **** UBRR0H = ubrr>>8;
|
|
||||||
23 .loc 1 9 0
|
|
||||||
24 0000 9093 C500 sts 197,r25
|
|
||||||
10:src/uart.c **** UBRR0L = ubrr;
|
|
||||||
25 .loc 1 10 0
|
|
||||||
26 0004 8093 C400 sts 196,r24
|
|
||||||
11:src/uart.c **** /*Enable receiver and transmitter */
|
|
||||||
12:src/uart.c **** UCSR0B = (1<<TXEN0);
|
|
||||||
27 .loc 1 12 0
|
|
||||||
28 0008 88E0 ldi r24,lo8(8)
|
|
||||||
29 .LVL1:
|
|
||||||
30 000a 8093 C100 sts 193,r24
|
|
||||||
13:src/uart.c **** //| (1<<RXEN0)
|
|
||||||
14:src/uart.c **** //|(1<<RXCIE0);
|
|
||||||
15:src/uart.c **** /* Set frame format: 8data, 1 stop bit */
|
|
||||||
16:src/uart.c **** UCSR0C = (1<<UCSZ00) | (1 << UCSZ01);
|
|
||||||
31 .loc 1 16 0
|
|
||||||
32 000e 86E0 ldi r24,lo8(6)
|
|
||||||
33 0010 8093 C200 sts 194,r24
|
|
||||||
34 0014 0895 ret
|
|
||||||
35 .cfi_endproc
|
|
||||||
36 .LFE0:
|
|
||||||
38 .global USART_Transmit
|
|
||||||
40 USART_Transmit:
|
|
||||||
41 .LFB1:
|
|
||||||
17:src/uart.c **** }
|
|
||||||
18:src/uart.c ****
|
|
||||||
19:src/uart.c **** void USART_Transmit(unsigned char data )
|
|
||||||
20:src/uart.c **** {
|
|
||||||
42 .loc 1 20 0
|
|
||||||
43 .cfi_startproc
|
|
||||||
44 /* prologue: function */
|
|
||||||
45 /* frame size = 0 */
|
|
||||||
46 /* stack size = 0 */
|
|
||||||
47 .L__stack_usage = 0
|
|
||||||
48 .LVL2:
|
|
||||||
49 .L4:
|
|
||||||
21:src/uart.c **** /* Wait for empty transmit buffer */
|
|
||||||
22:src/uart.c **** while ( !( UCSR0A & (1<<UDRE0)) )
|
|
||||||
50 .loc 1 22 0 discriminator 1
|
|
||||||
51 0016 9091 C000 lds r25,192
|
|
||||||
52 001a 95FF sbrs r25,5
|
|
||||||
53 001c 00C0 rjmp .L4
|
|
||||||
23:src/uart.c **** ;
|
|
||||||
24:src/uart.c **** /* Put data into buffer, sends the data */
|
|
||||||
25:src/uart.c **** UDR0 = data;
|
|
||||||
54 .loc 1 25 0
|
|
||||||
55 001e 8093 C600 sts 198,r24
|
|
||||||
56 0022 0895 ret
|
|
||||||
57 .cfi_endproc
|
|
||||||
58 .LFE1:
|
|
||||||
60 .global uart_puts
|
|
||||||
62 uart_puts:
|
|
||||||
63 .LFB2:
|
|
||||||
26:src/uart.c **** }
|
|
||||||
27:src/uart.c ****
|
|
||||||
28:src/uart.c **** void uart_puts(char * str) {
|
|
||||||
64 .loc 1 28 0
|
|
||||||
65 .cfi_startproc
|
|
||||||
66 .LVL3:
|
|
||||||
67 0024 CF93 push r28
|
|
||||||
68 .LCFI0:
|
|
||||||
69 .cfi_def_cfa_offset 3
|
|
||||||
70 .cfi_offset 28, -2
|
|
||||||
71 0026 DF93 push r29
|
|
||||||
72 .LCFI1:
|
|
||||||
73 .cfi_def_cfa_offset 4
|
|
||||||
74 .cfi_offset 29, -3
|
|
||||||
75 /* prologue: function */
|
|
||||||
76 /* frame size = 0 */
|
|
||||||
77 /* stack size = 2 */
|
|
||||||
78 .L__stack_usage = 2
|
|
||||||
79 0028 EC01 movw r28,r24
|
|
||||||
80 .LVL4:
|
|
||||||
81 .L7:
|
|
||||||
29:src/uart.c **** while (*str) {
|
|
||||||
82 .loc 1 29 0 discriminator 1
|
|
||||||
83 002a 8991 ld r24,Y+
|
|
||||||
84 .LVL5:
|
|
||||||
85 002c 8823 tst r24
|
|
||||||
86 002e 01F0 breq .L9
|
|
||||||
87 .LVL6:
|
|
||||||
88 .LBB4:
|
|
||||||
89 .LBB5:
|
|
||||||
30:src/uart.c **** putchar(*str++);
|
|
||||||
31:src/uart.c **** }
|
|
||||||
32:src/uart.c **** }
|
|
||||||
33:src/uart.c ****
|
|
||||||
34:src/uart.c ****
|
|
||||||
35:src/uart.c **** int putchar(int c){
|
|
||||||
36:src/uart.c **** USART_Transmit((char) c);
|
|
||||||
90 .loc 1 36 0
|
|
||||||
91 0030 0E94 0000 call USART_Transmit
|
|
||||||
92 .LVL7:
|
|
||||||
93 0034 00C0 rjmp .L7
|
|
||||||
94 .LVL8:
|
|
||||||
95 .L9:
|
|
||||||
96 /* epilogue start */
|
|
||||||
97 .LBE5:
|
|
||||||
98 .LBE4:
|
|
||||||
32:src/uart.c **** }
|
|
||||||
99 .loc 1 32 0
|
|
||||||
100 0036 DF91 pop r29
|
|
||||||
101 0038 CF91 pop r28
|
|
||||||
102 .LVL9:
|
|
||||||
103 003a 0895 ret
|
|
||||||
104 .cfi_endproc
|
|
||||||
105 .LFE2:
|
|
||||||
107 .global putchar
|
|
||||||
109 putchar:
|
|
||||||
110 .LFB3:
|
|
||||||
35:src/uart.c **** int putchar(int c){
|
|
||||||
111 .loc 1 35 0
|
|
||||||
112 .cfi_startproc
|
|
||||||
113 .LVL10:
|
|
||||||
114 /* prologue: function */
|
|
||||||
115 /* frame size = 0 */
|
|
||||||
116 /* stack size = 0 */
|
|
||||||
117 .L__stack_usage = 0
|
|
||||||
118 .loc 1 36 0
|
|
||||||
119 003c 0E94 0000 call USART_Transmit
|
|
||||||
120 .LVL11:
|
|
||||||
37:src/uart.c **** //while ( !( UCSR0A & (1<<UDRE0)) )
|
|
||||||
38:src/uart.c **** //UDR0 = c;
|
|
||||||
39:src/uart.c **** return 0;
|
|
||||||
40:src/uart.c **** }
|
|
||||||
121 .loc 1 40 0
|
|
||||||
122 0040 80E0 ldi r24,0
|
|
||||||
123 0042 90E0 ldi r25,0
|
|
||||||
124 0044 0895 ret
|
|
||||||
125 .cfi_endproc
|
|
||||||
126 .LFE3:
|
|
||||||
128 .Letext0:
|
|
||||||
129 .file 2 "/usr/local/CrossPack-AVR-20131216/avr/include/stdint.h"
|
|
||||||
DEFINED SYMBOLS
|
|
||||||
*ABS*:00000000 uart.c
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccFBVmxm.s:2 *ABS*:0000003e __SP_H__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccFBVmxm.s:3 *ABS*:0000003d __SP_L__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccFBVmxm.s:4 *ABS*:0000003f __SREG__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccFBVmxm.s:5 *ABS*:0000003b __RAMPZ__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccFBVmxm.s:6 *ABS*:00000000 __tmp_reg__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccFBVmxm.s:7 *ABS*:00000001 __zero_reg__
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccFBVmxm.s:13 .text:00000000 USART_Init
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccFBVmxm.s:40 .text:00000016 USART_Transmit
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccFBVmxm.s:62 .text:00000024 uart_puts
|
|
||||||
/var/folders/vp/mj8sv_kj3c1gtbdcbb9v8gb80000gn/T//ccFBVmxm.s:109 .text:0000003c putchar
|
|
||||||
|
|
||||||
NO UNDEFINED SYMBOLS
|
|
||||||
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue