⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gps.lss

📁 手持式GPS导航系统-源码
💻 LSS
📖 第 1 页 / 共 5 页
字号:

GPS.elf:     file format elf32-avr

Sections:
Idx Name          Size      VMA       LMA       File off  Algn
  0 .text         0000152c  00000000  00000000  00000074  2**1
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
  1 .data         000000e8  00800060  0000152c  000015a0  2**0
                  CONTENTS, ALLOC, LOAD, DATA
  2 .bss          00000215  00800148  00001614  00001688  2**0
                  ALLOC
  3 .debug_aranges 000000a0  00000000  00000000  00001688  2**0
                  CONTENTS, READONLY, DEBUGGING
  4 .debug_pubnames 0000021f  00000000  00000000  00001728  2**0
                  CONTENTS, READONLY, DEBUGGING
  5 .debug_info   00000d65  00000000  00000000  00001947  2**0
                  CONTENTS, READONLY, DEBUGGING
  6 .debug_abbrev 00000513  00000000  00000000  000026ac  2**0
                  CONTENTS, READONLY, DEBUGGING
  7 .debug_line   00000f6e  00000000  00000000  00002bbf  2**0
                  CONTENTS, READONLY, DEBUGGING
  8 .debug_frame  00000140  00000000  00000000  00003b30  2**2
                  CONTENTS, READONLY, DEBUGGING
  9 .debug_str    00000328  00000000  00000000  00003c70  2**0
                  CONTENTS, READONLY, DEBUGGING
 10 .debug_loc    00000c66  00000000  00000000  00003f98  2**0
                  CONTENTS, READONLY, DEBUGGING
 11 .debug_ranges 00000090  00000000  00000000  00004bfe  2**0
                  CONTENTS, READONLY, DEBUGGING
Disassembly of section .text:

00000000 <__vectors>:
       0:	4c c2       	rjmp	.+1176   	; 0x49a <__ctors_end>
       2:	66 c2       	rjmp	.+1228   	; 0x4d0 <__bad_interrupt>
       4:	65 c2       	rjmp	.+1226   	; 0x4d0 <__bad_interrupt>
       6:	64 c2       	rjmp	.+1224   	; 0x4d0 <__bad_interrupt>
       8:	63 c2       	rjmp	.+1222   	; 0x4d0 <__bad_interrupt>
       a:	62 c2       	rjmp	.+1220   	; 0x4d0 <__bad_interrupt>
       c:	61 c2       	rjmp	.+1218   	; 0x4d0 <__bad_interrupt>
       e:	60 c2       	rjmp	.+1216   	; 0x4d0 <__bad_interrupt>
      10:	5f c2       	rjmp	.+1214   	; 0x4d0 <__bad_interrupt>
      12:	5e c2       	rjmp	.+1212   	; 0x4d0 <__bad_interrupt>
      14:	5d c2       	rjmp	.+1210   	; 0x4d0 <__bad_interrupt>
      16:	5c c2       	rjmp	.+1208   	; 0x4d0 <__bad_interrupt>
      18:	5b c2       	rjmp	.+1206   	; 0x4d0 <__bad_interrupt>
      1a:	5a c2       	rjmp	.+1204   	; 0x4d0 <__bad_interrupt>
      1c:	59 c2       	rjmp	.+1202   	; 0x4d0 <__bad_interrupt>
      1e:	58 c2       	rjmp	.+1200   	; 0x4d0 <__bad_interrupt>
      20:	57 c2       	rjmp	.+1198   	; 0x4d0 <__bad_interrupt>
      22:	56 c2       	rjmp	.+1196   	; 0x4d0 <__bad_interrupt>
      24:	55 c2       	rjmp	.+1194   	; 0x4d0 <__bad_interrupt>

00000026 <CTAB_12>:
	...
      32:	00 00 fc 00 00 00 00 00 02 00 00 00 00 0c 02 0c     ................
      42:	02 00 00 00 00 00 00 00 90 d0 bc d0 bc 90 00 03     ................
      52:	00 03 00 00 18 24 fe 44 8c 00 03 02 07 02 01 00     .....$.D........
      62:	18 24 d8 b0 4c 80 00 03 00 01 02 01 c0 38 e4 38     .$..L........8.8
      72:	e0 00 01 02 02 01 02 02 08 06 00 00 00 00 00 00     ................
      82:	00 00 00 00 00 00 00 f8 04 02 00 00 00 01 02 04     ................
      92:	00 02 04 f8 00 00 00 04 02 01 00 00 90 60 f8 60     .............`.`
      a2:	90 00 00 00 01 00 00 00 20 20 fc 20 20 00 00 00     ........  .  ...
      b2:	01 00 00 00 00 00 00 00 00 00 08 06 00 00 00 00     ................
      c2:	20 20 20 20 20 00 00 00 00 00 00 00 00 00 00 00          ...........
      d2:	00 00 00 02 00 00 00 00 00 80 60 1c 02 00 04 03     ..........`.....
      e2:	00 00 00 00 f8 04 04 04 f8 00 01 02 02 02 01 00     ................
      f2:	00 08 fc 00 00 00 00 02 03 02 00 00 18 84 44 24     ..............D$
     102:	18 00 03 02 02 02 02 00 08 04 24 24 d8 00 01 02     ..........$$....
     112:	02 02 01 00 40 b0 88 fc 80 00 00 00 00 03 02 00     ....@...........
     122:	3c 24 24 24 c4 00 01 02 02 02 01 00 f8 24 24 2c     <$$$.........$$,
     132:	c0 00 01 02 02 02 01 00 0c 04 e4 1c 04 00 00 00     ................
     142:	03 00 00 00 d8 24 24 24 d8 00 01 02 02 02 01 00     .....$$$........
     152:	38 44 44 44 f8 00 00 03 02 02 01 00 00 00 10 00     8DDD............
     162:	00 00 00 00 02 00 00 00 00 00 20 00 00 00 00 00     .......... .....
     172:	06 00 00 00 00 20 50 88 04 02 00 00 00 00 01 02     ..... P.........
     182:	90 90 90 90 90 00 00 00 00 00 00 00 00 02 04 88     ................
     192:	50 20 00 02 01 00 00 00 18 04 c4 24 18 00 00 00     P .........$....
     1a2:	02 00 00 00 f8 04 e4 94 f8 00 01 02 02 02 02 00     ................
     1b2:	00 e0 9c f0 80 00 02 03 00 00 03 02 04 fc 24 24     ..............$$
     1c2:	d8 00 02 03 02 02 01 00 f8 04 04 04 0c 00 01 02     ................
     1d2:	02 02 01 00 04 fc 04 04 f8 00 02 03 02 02 01 00     ................
     1e2:	04 fc 24 74 0c 00 02 03 02 02 03 00 04 fc 24 74     ..$t..........$t
     1f2:	0c 00 02 03 02 00 00 00 f0 08 04 44 cc 40 00 01     ...........D.@..
     202:	02 02 01 00 04 fc 20 20 fc 04 02 03 00 00 03 02     ......  ........
     212:	04 04 fc 04 04 00 02 02 03 02 02 00 00 04 04 fc     ................
     222:	04 04 06 04 04 03 00 00 04 fc 24 d0 0c 04 02 03     ..........$.....
     232:	02 00 03 02 04 fc 04 00 00 00 02 03 02 02 02 03     ................
     242:	fc 3c c0 3c fc 00 03 00 03 00 03 00 04 fc 30 c4     .<.<..........0.
     252:	fc 04 02 03 02 00 03 00 f8 04 04 04 f8 00 01 02     ................
     262:	02 02 01 00 04 fc 24 24 18 00 02 03 02 00 00 00     ......$$........
     272:	f8 84 84 04 f8 00 01 02 02 07 05 00 04 fc 24 64     ..............$d
     282:	98 00 02 03 02 00 03 02 18 24 24 44 8c 00 03 02     .........$$D....
     292:	02 02 01 00 0c 04 fc 04 0c 00 00 02 03 02 00 00     ................
     2a2:	04 fc 00 00 fc 04 00 01 02 02 01 00 04 7c 80 e0     .............|..
     2b2:	1c 04 00 00 03 00 00 00 1c e0 3c e0 1c 00 00 03     ..........<.....
     2c2:	00 03 00 00 04 9c 60 9c 04 00 02 03 00 03 02 00     ......`.........
     2d2:	04 1c e0 1c 04 00 00 02 03 02 00 00 0c 84 64 1c     ..............d.
     2e2:	04 00 02 03 02 02 03 00 00 00 fe 02 02 00 00 00     ................
     2f2:	07 04 04 00 00 0e 30 c0 00 00 00 00 00 01 02 00     ......0.........
     302:	00 02 02 fe 00 00 00 04 04 07 00 00 00 04 02 04     ................
	...
     31e:	00 00 08 08 08 08 08 08 00 00 02 00 00 00 00 00     ................
     32e:	00 00 00 00 00 40 a0 a0 c0 00 00 01 02 02 03 02     .....@..........
     33e:	04 fc 20 20 c0 00 00 03 02 02 01 00 00 c0 20 20     ..  ..........  
     34e:	60 00 00 01 02 02 02 00 00 c0 20 24 fc 00 00 01     `......... $....
     35e:	02 02 03 02 00 c0 a0 a0 c0 00 00 01 02 02 02 00     ................
     36e:	00 20 f8 24 24 04 00 02 03 02 02 00 00 40 a0 a0     . .$$........@..
     37e:	60 20 00 07 0a 0a 0a 04 04 fc 20 20 c0 00 02 03     ` ........  ....
     38e:	02 00 03 02 00 20 e4 00 00 00 00 02 03 02 00 00     ..... ..........
     39e:	00 00 20 e4 00 00 08 08 08 07 00 00 04 fc 80 e0     .. .............
     3ae:	20 20 02 03 02 00 03 02 04 04 fc 00 00 00 02 02       ..............
     3be:	03 02 02 00 e0 20 e0 20 c0 00 03 00 03 00 03 00     ..... . ........
     3ce:	20 e0 20 20 c0 00 02 03 02 00 03 02 00 c0 20 20      .  ..........  
     3de:	c0 00 00 01 02 02 01 00 20 e0 20 20 c0 00 08 0f     ........ .  ....
     3ee:	0a 02 01 00 00 c0 20 20 e0 00 00 01 02 0a 0f 08     ......  ........
     3fe:	20 e0 40 20 20 00 02 03 02 00 00 00 00 60 a0 a0      .@  ........`..
     40e:	20 00 00 02 02 02 03 00 00 20 f8 20 00 00 00 00      ........ . ....
     41e:	01 02 02 00 20 e0 00 20 e0 00 00 01 02 02 03 02     .... .. ........
     42e:	20 e0 20 80 60 20 00 00 03 01 00 00 60 80 e0 80      . .` ......`...
     43e:	60 00 00 03 00 03 00 00 20 60 80 60 20 00 02 03     `....... `.` ...
     44e:	00 03 02 00 20 e0 20 80 60 20 08 08 07 01 00 00     .... . .` ......
     45e:	00 20 a0 60 20 00 00 02 03 02 02 00 00 00 20 de     . .` ......... .
     46e:	02 00 00 00 00 07 04 00 00 00 00 ff 00 00 00 00     ................
     47e:	00 0f 00 00 00 02 de 20 00 00 00 04 07 00 00 00     ....... ........
     48e:	02 01 02 04 04 02 00 00 00 00 00 00                 ............

0000049a <__ctors_end>:
     49a:	11 24       	eor	r1, r1
     49c:	1f be       	out	0x3f, r1	; 63
     49e:	cf e5       	ldi	r28, 0x5F	; 95
     4a0:	d4 e0       	ldi	r29, 0x04	; 4
     4a2:	de bf       	out	0x3e, r29	; 62
     4a4:	cd bf       	out	0x3d, r28	; 61

000004a6 <__do_copy_data>:
     4a6:	11 e0       	ldi	r17, 0x01	; 1
     4a8:	a0 e6       	ldi	r26, 0x60	; 96
     4aa:	b0 e0       	ldi	r27, 0x00	; 0
     4ac:	ec e2       	ldi	r30, 0x2C	; 44
     4ae:	f5 e1       	ldi	r31, 0x15	; 21
     4b0:	02 c0       	rjmp	.+4      	; 0x4b6 <.do_copy_data_start>

000004b2 <.do_copy_data_loop>:
     4b2:	05 90       	lpm	r0, Z+
     4b4:	0d 92       	st	X+, r0

000004b6 <.do_copy_data_start>:
     4b6:	a8 34       	cpi	r26, 0x48	; 72
     4b8:	b1 07       	cpc	r27, r17
     4ba:	d9 f7       	brne	.-10     	; 0x4b2 <.do_copy_data_loop>

000004bc <__do_clear_bss>:
     4bc:	13 e0       	ldi	r17, 0x03	; 3
     4be:	a8 e4       	ldi	r26, 0x48	; 72
     4c0:	b1 e0       	ldi	r27, 0x01	; 1
     4c2:	01 c0       	rjmp	.+2      	; 0x4c6 <.do_clear_bss_start>

000004c4 <.do_clear_bss_loop>:
     4c4:	1d 92       	st	X+, r1

000004c6 <.do_clear_bss_start>:
     4c6:	ad 35       	cpi	r26, 0x5D	; 93
     4c8:	b1 07       	cpc	r27, r17
     4ca:	e1 f7       	brne	.-8      	; 0x4c4 <.do_clear_bss_loop>
     4cc:	02 d0       	rcall	.+4      	; 0x4d2 <main>
     4ce:	2c c8       	rjmp	.-4008   	; 0xfffff528 <__eeprom_end+0xff7ef528>

000004d0 <__bad_interrupt>:
     4d0:	97 cd       	rjmp	.-1234   	; 0x0 <__vectors>

000004d2 <main>:

unsigned char time_beijing;


int main()
{
     4d2:	3f 92       	push	r3
     4d4:	4f 92       	push	r4
     4d6:	5f 92       	push	r5
     4d8:	6f 92       	push	r6
     4da:	7f 92       	push	r7
     4dc:	8f 92       	push	r8
     4de:	9f 92       	push	r9
     4e0:	af 92       	push	r10
     4e2:	bf 92       	push	r11
     4e4:	cf 92       	push	r12
     4e6:	df 92       	push	r13
     4e8:	ef 92       	push	r14
     4ea:	ff 92       	push	r15
     4ec:	0f 93       	push	r16
     4ee:	1f 93       	push	r17
     4f0:	cf 93       	push	r28
     4f2:	df 93       	push	r29
	unsigned char total_gpgsv_no;					/*GPGSV语句条数*/
	unsigned char current_gpgsv_index;				/*当前GPGSV语句index*/
	unsigned char fix_valid;						/*定位有效标志*/
	unsigned char gprmc_valid;						/*GPRMC语句有效标志位*/					

	KEY_INI;				/*按键初始化*/
     4f4:	8e 98       	cbi	0x11, 6	; 17
     4f6:	8f 98       	cbi	0x11, 7	; 17
     4f8:	96 9a       	sbi	0x12, 6	; 18
     4fa:	97 9a       	sbi	0x12, 7	; 18
	COM_Initial(MYUBRR);	/*串口初始化*/
     4fc:	8f e5       	ldi	r24, 0x5F	; 95
     4fe:	90 e0       	ldi	r25, 0x00	; 0
     500:	45 d6       	rcall	.+3210   	; 0x118c <COM_Initial>
	lcdInit();				/*LCD初始化*/
     502:	31 d4       	rcall	.+2146   	; 0xd66 <lcdInit>
	lcdClrDisBuf();			/*清显存*/
     504:	00 d4       	rcall	.+2048   	; 0xd06 <lcdClrDisBuf>
	LCD_print12(0,0,"  GPS Viewer\n  --by bozai");	/*log信息*/
     506:	40 e6       	ldi	r20, 0x60	; 96
     508:	50 e0       	ldi	r21, 0x00	; 0
     50a:	60 e0       	ldi	r22, 0x00	; 0
     50c:	70 e0       	ldi	r23, 0x00	; 0
     50e:	80 e0       	ldi	r24, 0x00	; 0
     510:	90 e0       	ldi	r25, 0x00	; 0
     512:	cf d4       	rcall	.+2462   	; 0xeb2 <LCD_print12>
	lcdUpdateDisplay();	/*显示*/
     514:	01 d4       	rcall	.+2050   	; 0xd18 <lcdUpdateDisplay>
    milliseconds can be achieved.
 */
void
_delay_loop_2(uint16_t __count)
{
	__asm__ volatile (
     516:	80 e0       	ldi	r24, 0x00	; 0
     518:	98 e4       	ldi	r25, 0x48	; 72
     51a:	01 97       	sbiw	r24, 0x01	; 1
     51c:	f1 f7       	brne	.-4      	; 0x51a <main+0x48>
     51e:	20 e0       	ldi	r18, 0x00	; 0
     520:	55 24       	eor	r5, r5
     522:	66 24       	eor	r6, r6
					speed_angle_kph_temp%=10000;

					speed[i++] =  speed_angle_kph_temp/1000 + '0';
					speed_angle_kph_temp%=1000;

					speed[i++] = '.';
     524:	7e e2       	ldi	r23, 0x2E	; 46
     526:	37 2e       	mov	r3, r23
					temp = USART_getchar();
					if(temp == ',')	/*结束*/
						break;
					else
					{
						if(i == 5)longitude[i++] = '.';	/*添加'.'*/
     528:	6e e2       	ldi	r22, 0x2E	; 46
     52a:	46 2e       	mov	r4, r22
     52c:	01 c0       	rjmp	.+2      	; 0x530 <main+0x5e>
     52e:	20 e0       	ldi	r18, 0x00	; 0
	lcdUpdateDisplay();	/*显示*/
	_delay_ms(10);

	while(1)
	{
		if(KEY_RIGHT == 0)	/*检测按键*/
     530:	87 99       	sbic	0x10, 7	; 16
     532:	13 c0       	rjmp	.+38     	; 0x55a <main+0x88>
     534:	80 e0       	ldi	r24, 0x00	; 0
     536:	98 e4       	ldi	r25, 0x48	; 72
     538:	01 97       	sbiw	r24, 0x01	; 1
     53a:	f1 f7       	brne	.-4      	; 0x538 <main+0x66>
		{
			_delay_ms(10);	/*简单去抖*/
			if(KEY_RIGHT == 0)
     53c:	87 99       	sbic	0x10, 7	; 16
     53e:	0d c0       	rjmp	.+26     	; 0x55a <main+0x88>
			{
				while(KEY_RIGHT == 0);	/*等待释放*/
     540:	87 9b       	sbis	0x10, 7	; 16
     542:	fe cf       	rjmp	.-4      	; 0x540 <main+0x6e>
				if(mode == 0)
     544:	55 20       	and	r5, r5
     546:	21 f0       	breq	.+8      	; 0x550 <main+0x7e>
     548:	77 24       	eor	r7, r7
     54a:	73 94       	inc	r7
     54c:	55 24       	eor	r5, r5
     54e:	06 c0       	rjmp	.+12     	; 0x55c <main+0x8a>
     550:	77 24       	eor	r7, r7
     552:	73 94       	inc	r7
     554:	55 24       	eor	r5, r5
     556:	53 94       	inc	r5
     558:	01 c0       	rjmp	.+2      	; 0x55c <main+0x8a>
     55a:	77 24       	eor	r7, r7
				else mode = 0;	/*坐标模式*/
				need_update1 = 1;	/*只要有模式更改则须立即更新显示内容*/
			}
		}

		if(KEY_LEFT == 0)	/*检测按键*/
     55c:	86 99       	sbic	0x10, 6	; 16
     55e:	12 c0       	rjmp	.+36     	; 0x584 <main+0xb2>
     560:	80 e0       	ldi	r24, 0x00	; 0
     562:	98 e4       	ldi	r25, 0x48	; 72
     564:	01 97       	sbiw	r24, 0x01	; 1
     566:	f1 f7       	brne	.-4      	; 0x564 <main+0x92>
		{
			_delay_ms(10);	/*简单去抖*/
			if(KEY_LEFT == 0)
     568:	86 99       	sbic	0x10, 6	; 16
     56a:	0c c0       	rjmp	.+24     	; 0x584 <main+0xb2>
			{
				while(KEY_LEFT == 0);	/*等待释放*/
     56c:	86 9b       	sbis	0x10, 6	; 16
     56e:	fe cf       	rjmp	.-4      	; 0x56c <main+0x9a>
				if(mile_or_km == 0)
     570:	66 20       	and	r6, r6
     572:	21 f0       	breq	.+8      	; 0x57c <main+0xaa>
     574:	77 24       	eor	r7, r7
     576:	73 94       	inc	r7
     578:	66 24       	eor	r6, r6
     57a:	04 c0       	rjmp	.+8      	; 0x584 <main+0xb2>
     57c:	77 24       	eor	r7, r7
     57e:	73 94       	inc	r7
     580:	66 24       	eor	r6, r6
     582:	63 94       	inc	r6
				need_update1 = 1;	/*只要有模式更改则须立即更新显示内容*/
			}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -