You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

97 lines
4.2 KiB
Plaintext

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