delete compiled files

master
Eggert Jung 6 years ago
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…
Cancel
Save