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

📄 gps.lis

📁 利用AVRM16单片机读与GPS接收模块进行通信
💻 LIS
📖 第 1 页 / 共 5 页
字号:
                        .module gps.c
                        .area data(ram, con, rel)
 0000           _bn::
 0000                   .blkb 2
                        .area idata
 0000 0000              .word 0
                        .area data(ram, con, rel)
 0002                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 0002                   .dbsym e bn _bn I
 0002           _lin1::
 0002                   .blkb 16
                        .area idata
 0002 CAB1BCE43A30303A30303A3030204100  .byte 202,177,188,228,58,48,48,58,48,48,58,48,48,32,'A,0
                        .area data(ram, con, rel)
 0012                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 0012                   .dbsym e lin1 _lin1 A[16:16]c
 0012           _lin2::
 0012                   .blkb 16
                        .area idata
 0012 BEADB6C83A30303030302E3030303000  .byte 190,173,182,200,58,48,48,48,48,48,46,48,48,48,48,0
                        .area data(ram, con, rel)
 0022                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 0022                   .dbsym e lin2 _lin2 A[16:16]c
 0022           _lin3::
 0022                   .blkb 15
                        .area idata
 0022 CEB3B6C83A303030302E3030303000    .byte 206,179,182,200,58,48,48,48,48,46,48,48,48,48,0
                        .area data(ram, con, rel)
 0031                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 0031                   .dbsym e lin3 _lin3 A[15:15]c
 0031           _lin4::
 0031                   .blkb 15
                        .area idata
 0031 2020B6ABBEAD2020B1B1CEB3202000    .byte 32,32,182,171,190,173,32,32,177,177,206,179,32,32,0
                        .area data(ram, con, rel)
 0040                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 0040                   .dbsym e lin4 _lin4 A[15:15]c
 0040           _data_item::
 0040                   .blkb 1
                        .area idata
 0040 00                .byte 0
                        .area data(ram, con, rel)
 0041                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 0041                   .dbsym e data_item _data_item c
 0041           _g_Ptr::
 0041                   .blkb 1
                        .area idata
 0041 00                .byte 0
                        .area data(ram, con, rel)
 0042                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 0042                   .dbsym e g_Ptr _g_Ptr c
 0042           _g_Class::
 0042                   .blkb 1
                        .area idata
 0042 00                .byte 0
                        .area data(ram, con, rel)
 0043                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 0043                   .dbsym e g_Class _g_Class c
 0043           _g_DataVari::
 0043                   .blkb 1
                        .area idata
 0043 00                .byte 0
                        .area data(ram, con, rel)
 0044                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 0044                   .dbsym e g_DataVari _g_DataVari c
 0044           _rece_num::
 0044                   .blkb 2
                        .area idata
 0044 0000              .word 0
                        .area data(ram, con, rel)
 0046                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 0046                   .dbsym e rece_num _rece_num i
 0046           _g_DisTime::
 0046                   .blkb 6
                        .area idata
 0046 303030303030      .byte 48,48,48,48,48,48
                        .area data(ram, con, rel)
 004C                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 004C                   .dbsym e g_DisTime _g_DisTime A[6:6]c
 004C           _g_Diss::
 004C                   .blkb 1
                        .area idata
 004C 20                .byte 32
                        .area data(ram, con, rel)
 004D                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 004D                   .dbsym e g_Diss _g_Diss A[1:1]c
 004D           _g_Diswie::
 004D                   .blkb 9
                        .area idata
 004D 303030302E31313131        .byte 48,48,48,48,46,49,49,49,49
                        .area data(ram, con, rel)
 0056                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 0056                   .dbsym e g_Diswie _g_Diswie A[9:9]c
 0056           _g_Disns::
 0056                   .blkb 1
                        .area idata
 0056 4E                .byte 'N
                        .area data(ram, con, rel)
 0057                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 0057                   .dbsym e g_Disns _g_Disns A[1:1]c
 0057           _g_Disjing::
 0057                   .blkb 10
                        .area idata
 0057 30303030302E30303030      .byte 48,48,48,48,48,46,48,48,48,48
                        .area data(ram, con, rel)
 0061                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 0061                   .dbsym e g_Disjing _g_Disjing A[10:10]c
 0061           _g_Disew::
 0061                   .blkb 1
                        .area idata
 0061 45                .byte 'E
                        .area data(ram, con, rel)
 0062                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 0062                   .dbsym e g_Disew _g_Disew A[1:1]c
                        .area text(rom, con, rel)
 0000                   .dbfile E:\单片机\AVR程序\GPS通信\gps.c
 0000                   .dbfunc e delay_1us _delay_1us fV
                        .even
 0000           _delay_1us::
 0000                   .dbline -1
 0000                   .dbline 94
 0000           ; //包含所需头文件
 0000           ; #include <ioM16v.h>
 0000           ; #include <macros.h>
 0000           ; //*
 0000           ; //*
 0000           ; /***************************************************************************************************
 0000           ;                                        宏定义
 0000           ; ****************************************************************************************************/
 0000           ; 
 0000           ; #define uchar unsigned char
 0000           ; #define uint  unsigned int
 0000           ; 
 0000           ; //串行通信
 0000           ; #define PORT    PORTA  //选择引脚口
 0000           ; 
 0000           ; #define setRS    PORT|=(1<<1)   //串行的片选信号
 0000           ; #define clearRS  PORT&=~(1<<1) 
 0000           ; 
 0000           ; #define setRW    PORT|=(1<<2)   //串行的数据口
 0000           ; #define clearRW  PORT&=~(1<<2)
 0000           ; 
 0000           ; #define setCKL   PORT|=(1<<3),delay_nus(1)  //串行的同步时钟
 0000           ; #define clearCKL PORT&=~(1<<3),delay_nus(1)
 0000           ; 
 0000           ; #define Clear         WriteCommand(0x01),delay_nms(5)  //清屏
 0000           ; 
 0000           ; #define hanzishu  18      //输入汉字数
 0000           ; #define howmany0  1      //在开始显示汉字前填入多少个相同的汉字 (一般填空字)    
 0000           ; #define position  6      //填什么样的相同汉字(一般填空字)
 0000           ; #define homMHZPosition  8  //以多少个汉字位来显示移动汉字
 0000           ; 
 0000           ; /***************************************************************************************************
 0000           ;                                        宏定义
 0000           ; ****************************************************************************************************/
 0000           ; 
 0000           ; //全局变量
 0000           ; uchar temp[17][(howmany0+hanzishu)*2+2];
 0000           ; bn=0;
 0000           ; 
 0000           ; char lin1[]={"时间:00:00:00 A"};
 0000           ; char lin2[]={"经度:00000.0000"};
 0000           ; char lin3[]={"纬度:0000.0000"};
 0000           ; char lin4[]={"  东经  北纬  "}; 
 0000           ; 
 0000           ; uchar data_item=0;     //接收到第几个字节
 0000           ; uchar g_Ptr = 0;       //所要提取的一节信息的字节数
 0000           ; uchar g_Class = 0;     //提取信息节数
 0000           ; uchar g_DataVari = 0;  
 0000           ; uint  rece_num = 0;    //
 0000           ; 
 0000           ; 
 0000           ; uchar g_DisTime[6]={"000000"}; //时间
 0000           ; uchar g_Diss   [1]={" "}; //定位状态
 0000           ; uchar g_Diswie [9]={"0000.1111"}; //纬度
 0000           ; uchar g_Disns  [1]={"N"}; //北纬N/南纬S
 0000           ; uchar g_Disjing[10]={"00000.0000"};//经度
 0000           ; uchar g_Disew  [1]={"E"}; //东经E/西经W
 0000           ; /***************************************************************************************************
 0000           ;                                       下面是 全局函数
 0000           ; ****************************************************************************************************/
 0000           ; void delay_1us(void) ;//
 0000           ; void delay_nus(unsigned int n);
 0000           ; void delay_1ms(void);
 0000           ; void delay_nms(unsigned int n);
 0000           ; void send_8bit(uchar ch);//发送8位数据
 0000           ; void WriteData(uchar data);//写数据
 0000           ; void WriteCommand(uchar command);//写地址
 0000           ; void guangbiao(uchar x); //光标开关,1开,0关
 0000           ; void lcd12864_init(void); //液晶初始化程序 
 0000           ; void Set_display_Adress(uchar y,uchar x);//设置显示坐标:y行,x列
 0000           ; void display_Char(uchar y, uchar x,uchar);
 0000           ; void display_String(uchar y,uchar x,uchar *s) ;  //显示字符串
 0000           ; void display_Num(uchar y,uchar x,uint num,char N);//可以显示 N 位的的整数num,(从个位起)最多显示6位
 0000           ; void Display_Picture(const uchar *tab );//全屏显示图形子程序 128*64
 0000           ; void Display_Picture32( uchar *tab );//显示图形子程序 32*32
 0000           ; void display_hanzi();
 0000           ; void leftmove32x32(uchar *tu );
 0000           ; void putin (uchar point);
 0000           ; void clearRAM (void);
 0000           ; void left_move(void);
 0000           ; void zaihanzi(void);
 0000           ; void left_movedisplay(void);
 0000           ; shownum( unsigned char i,unsigned char j, float num);//LCD显示      显示带有数码包括整数,浮点
 0000           ; /***************************************************************************************************
 0000           ;                                       上述为 全局函数
 0000           ; ****************************************************************************************************/
 0000           ; 
 0000           ; 
 0000           ; /*-----------------------------------------------------------------------
 0000           ; 延时函数
 0000           ; 系统时钟:8M
 0000           ; -----------------------------------------------------------------------*/
 0000           ; void delay_1us(void)                 //1us延时函数
 0000           ;   {
 0000                   .dbline 95
 0000           ;    asm("nop");
 0000 0000              nop
 0002                   .dbline -2
 0002           L1:
 0002                   .dbline 0 ; func end
 0002 0895              ret
 0004                   .dbend
 0004                   .dbfunc e delay_nus _delay_nus fV
 0004           ;              i -> R20,R21
 0004           ;              n -> R22,R23
                        .even
 0004           _delay_nus::
 0004 0E940000          xcall push_gset2
 0008 B801              movw R22,R16
 000A                   .dbline -1
 000A                   .dbline 98
 000A           ;   }
 000A           ; void delay_nus(unsigned int n)       //N us延时函数
 000A           ;   {
 000A                   .dbline 99
 000A           ;    unsigned int i=0;
 000A 4427              clr R20
 000C 5527              clr R21
 000E                   .dbline 100
 000E           ;    for (i=0;i<n;i++)
 000E 03C0              xjmp L6
 0010           L3:
 0010                   .dbline 101
 0010 F7DF              xcall _delay_1us
 0012           L4:
 0012                   .dbline 100
 0012 4F5F              subi R20,255  ; offset = 1
 0014 5F4F              sbci R21,255
 0016           L6:
 0016                   .dbline 100
 0016 4617              cp R20,R22
 0018 5707              cpc R21,R23
 001A D0F3              brlo L3
 001C                   .dbline -2
 001C           L2:
 001C 0E940000          xcall pop_gset2
 0020                   .dbline 0 ; func end
 0020 0895              ret
 0022                   .dbsym r i 20 i
 0022                   .dbsym r n 22 i
 0022                   .dbend
 0022                   .dbfunc e delay_1ms _delay_1ms fV
 0022           ;              i -> R16,R17
                        .even
 0022           _delay_1ms::
 0022                   .dbline -1
 0022                   .dbline 104
 0022           ;    delay_1us();
 0022           ;   }
 0022           ; void delay_1ms(void)                 //1ms延时函数
 0022           ;   {
 0022                   .dbline 106
 0022 0027              clr R16
 0024 1127              clr R17
 0026 02C0              xjmp L11
 0028           L8:
 0028                   .dbline 106
 0028           L9:
 0028                   .dbline 106
 0028 0F5F              subi R16,255  ; offset = 1
 002A 1F4F              sbci R17,255
 002C           L11:
 002C                   .dbline 106
 002C           ;    unsigned int i;
 002C           ;    for (i=0;i<1140;i++);
 002C 0437              cpi R16,116
 002E E4E0              ldi R30,4
 0030 1E07              cpc R17,R30
 0032 D0F3              brlo L8
 0034                   .dbline -2
 0034           L7:
 0034                   .dbline 0 ; func end
 0034 0895              ret
 0036                   .dbsym r i 16 i
 0036                   .dbend
 0036                   .dbfunc e delay_nms _delay_nms fV
 0036           ;              i -> R20,R21
 0036           ;              n -> R22,R23
                        .even
 0036           _delay_nms::

⌨️ 快捷键说明

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