?? try.lst
字號:
C51 COMPILER V8.02 TRY 07/16/2008 13:32:05 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE TRY
OBJECT MODULE PLACED IN try.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE try.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /*************************************
2 GPS解碼12864顯示程序
3 作者:HEKUN
4 ***************************************/
5
6 #include <AT89X51.H>
7 #include <stdio.h>
8 #include "LCD12864_c51.h"
9 char code TIME_AREA= 8; //時區
10 //GPS數據存儲數組
11 unsigned char JD[10]; //經度
12 unsigned char JD_a; //經度方向
13 unsigned char WD[9]; //緯度
14 unsigned char WD_a; //緯度方向
15 unsigned char time[6]; //時間
16 unsigned char speed[4];
17 unsigned char date[6];
18 //串口中斷需要的變量
19 unsigned char seg_count; //逗號計數器
20 //unsigned char dot_count; //小數點計數器
21 unsigned char byte_count; //位數計數器
22 unsigned char cmd_number; //命令類型
23 unsigned char mode; //0:結束模式,1:命令模式,2:數據模式
24 unsigned char buf_full; //1:整句接收完成,相應數據有效。0:緩存數據無效。
25 unsigned char cmd[5]; //命令類型存儲數組
26
27 //顯示需要的變量
28 unsigned int dsp_count; //刷新次數計數器
29 unsigned char time_count;
30 void sys_init(void);
31 main()
32 {
33 1 unsigned char i;
34 1 // char Bhour=0;
35 1 sys_init();
36 1 while(1)
37 1 {
38 2 if(buf_full==0) //無GPS信號時
39 2 {
40 3 dsp_count++;
41 3 if(dsp_count>=65000){
42 4 Init_Lcd12864(); //清屏
43 4 ResetCursor(0,2);
44 4 printf("No GPS connect..");
45 4 while(buf_full==0);
46 4 ClearAS();
47 4 dsp_count=0;
48 4 }
49 3 }
50 2 else if(buf_full)
51 2 { //有GPS信號時 //RMC語句
52 3 ResetCursor(0,0);
53 3 printf("JD:");
54 3 ResetCursor(3,0);
55 3 printf("%c",JD_a);
C51 COMPILER V8.02 TRY 07/16/2008 13:32:05 PAGE 2
56 3 //顯示經度
57 3 for(i=0;i<10;i++){
58 4 ResetCursor(i+4,0);
59 4 printf("%c",JD[i]);
60 4
61 4 }
62 3 ResetCursor(0,1);
63 3 printf("WD:");
64 3 ResetCursor(3,1);
65 3 printf("%c",WD_a);
66 3 for(i=0;i<9;i++) //顯示緯度
67 3 {
68 4 ResetCursor(i+4,1);
69 4 printf("%c",WD[i]);
70 4 }
71 3 ResetCursor(0,2);
72 3 printf("BJT:");
73 3 // ResetCursor(4,2);
74 3 // printf("%c",date[4]);
75 3 // ResetCursor(5,2);
76 3 // printf("%c",date[5]);
77 3 // ResetCursor(6,2);
78 3 // printf("%c",date[2]);
79 3 // ResetCursor(7,2);
80 3 // printf("%c",date[3]);
81 3 // ResetCursor(8,2);
82 3 // printf("%c",date[0]);
83 3 // ResetCursor(9,2);
84 3 // printf("%c",date[1]);
85 3 // time[0]=((time[0]-'0')*10+(time[1]-'0'))/10+'0';
86 3 // time[1]=((time[0]-'0')*10+(time[1]-'0'))%10+'0';
87 3 for(i=0;i<6;i++) //顯示Time
88 3 {
89 4
90 4 ResetCursor(i+10,2);
91 4 printf("%c",time[i]);
92 4 }
93 3 // ResetCursor(0,3);
94 3 //// printf("Speed:");
95 3 // for(i=0;i<4;i++) //顯示speed
96 3 // {
97 3 // ResetCursor(i+6,3);
98 3 /// printf("%c",speed[i]);
99 3 // }
100 3 // ResetCursor(10,3);
101 3 // printf("knots");
102 3 dsp_count=0;
103 3 buf_full&=~0x01;
104 3 }
105 2
106 2
107 2 }
108 1 }
109
110
111
112
113 //系統初始化
114 void sys_init()
115 {
116 1 // unsigned char i;
117 1 SCON = 0x50; /* SCON: mode 1, 8-bit UART, enable rcvr */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -