📄 can.lis
字号:
.module can.c
.area text(rom, con, rel)
0000 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
.area lit(rom, con, rel)
0000 _CanBaud::
0000 0204 .byte 2,4
0002 13 .byte 19
0003 0604 .byte 6,4
0005 13 .byte 19
0006 0E04 .byte 14,4
0008 13 .byte 19
0009 1204 .byte 18,4
000B 13 .byte 19
000C 1E04 .byte 30,4
000E 13 .byte 19
000F 2604 .byte 38,4
0011 13 .byte 19
0012 .dbsym e CanBaud _CanBaud A[18:6:3]kc
.area data(ram, con, rel)
0000 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0000 _CANMOBID::
0000 .blkb 4
.area idata
0000 00000010 .word 0,4096
.area data(ram, con, rel)
0004 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0004 .blkb 4
.area idata
0004 00000020 .word 0,8192
.area data(ram, con, rel)
0008 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0008 .blkb 4
.area idata
0008 00000030 .word 0,12288
.area data(ram, con, rel)
000C .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
000C .blkb 4
.area idata
000C 00000040 .word 0,16384
.area data(ram, con, rel)
0010 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0010 .blkb 4
.area idata
0010 00000050 .word 0,20480
.area data(ram, con, rel)
0014 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0014 .blkb 4
.area idata
0014 00000060 .word 0,24576
.area data(ram, con, rel)
0018 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0018 .blkb 4
.area idata
0018 00000001 .word 0,256
.area data(ram, con, rel)
001C .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
001C .blkb 4
.area idata
001C 01000001 .word 1,256
.area data(ram, con, rel)
0020 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0020 .blkb 4
.area idata
0020 00FF0002 .word 65280,512
.area data(ram, con, rel)
0024 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0024 .blkb 4
.area idata
0024 01000012 .word 1,4608
.area data(ram, con, rel)
0028 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0028 .blkb 4
.area idata
0028 02000001 .word 2,256
.area data(ram, con, rel)
002C .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
002C .blkb 4
.area idata
002C 03000001 .word 3,256
.area data(ram, con, rel)
0030 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0030 .blkb 4
.area idata
0030 04000001 .word 4,256
.area data(ram, con, rel)
0034 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0034 .blkb 4
.area idata
0034 05000001 .word 5,256
.area data(ram, con, rel)
0038 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0038 .blkb 4
.area idata
0038 01FF0013 .word 65281,4864
.area data(ram, con, rel)
003C .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
003C .dbsym e CANMOBID _CANMOBID A[60:15]l
003C _CANMOBMD::
003C .blkb 4
.area idata
003C FFFF0000 .word 65535,0
.area data(ram, con, rel)
0040 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0040 .blkb 4
.area idata
0040 FFFF0000 .word 65535,0
.area data(ram, con, rel)
0044 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0044 .blkb 4
.area idata
0044 FFFF0000 .word 65535,0
.area data(ram, con, rel)
0048 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0048 .blkb 4
.area idata
0048 FF00FF00 .word 255,255
.area data(ram, con, rel)
004C .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
004C .blkb 4
.area idata
004C FF00FF00 .word 255,255
.area data(ram, con, rel)
0050 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0050 .blkb 4
.area idata
0050 FF00FF00 .word 255,255
.area data(ram, con, rel)
0054 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0054 .blkb 4
.area idata
0054 FFFFFF1F .word 65535,8191
.area data(ram, con, rel)
0058 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0058 .blkb 4
.area idata
0058 FFFFFF1F .word 65535,8191
.area data(ram, con, rel)
005C .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
005C .blkb 4
.area idata
005C FFFFFF1F .word 65535,8191
.area data(ram, con, rel)
0060 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0060 .blkb 4
.area idata
0060 FFFFFF1F .word 65535,8191
.area data(ram, con, rel)
0064 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0064 .blkb 4
.area idata
0064 FFFFFF1F .word 65535,8191
.area data(ram, con, rel)
0068 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0068 .blkb 4
.area idata
0068 FFFFFF1F .word 65535,8191
.area data(ram, con, rel)
006C .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
006C .blkb 4
.area idata
006C FFFFFF1F .word 65535,8191
.area data(ram, con, rel)
0070 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0070 .blkb 4
.area idata
0070 FFFFFF1F .word 65535,8191
.area data(ram, con, rel)
0074 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0074 .blkb 4
.area idata
0074 FFFFFF1F .word 65535,8191
.area data(ram, con, rel)
0078 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0078 .dbsym e CANMOBMD _CANMOBMD A[60:15]l
0078 _CANIDT::
0078 .blkb 1
.area idata
0078 00 .byte 0
.area data(ram, con, rel)
0079 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0079 .blkb 3
.area idata
0079 000000 .byte 0,0,0
.area data(ram, con, rel)
007C .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
007C .blkb 56
.area idata
007C 00000000000000000000 .word 0,0,0,0,0
0086 00000000000000000000 .word 0,0,0,0,0
0090 00000000000000000000 .word 0,0,0,0,0
009A 00000000000000000000 .word 0,0,0,0,0
00A4 00000000000000000000 .word 0,0,0,0,0
00AE 000000000000 .byte 0,0,0,0,0,0
.area data(ram, con, rel)
00B4 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
00B4 .dbsym e CANIDT _CANIDT A[60:15:4]c
00B4 _CANIDM::
00B4 .blkb 1
.area idata
00B4 00 .byte 0
.area data(ram, con, rel)
00B5 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
00B5 .blkb 3
.area idata
00B5 000000 .byte 0,0,0
.area data(ram, con, rel)
00B8 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
00B8 .blkb 56
.area idata
00B8 00000000000000000000 .word 0,0,0,0,0
00C2 00000000000000000000 .word 0,0,0,0,0
00CC 00000000000000000000 .word 0,0,0,0,0
00D6 00000000000000000000 .word 0,0,0,0,0
00E0 00000000000000000000 .word 0,0,0,0,0
00EA 000000000000 .byte 0,0,0,0,0,0
.area data(ram, con, rel)
00F0 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
00F0 .dbsym e CANIDM _CANIDM A[60:15:4]c
.area text(rom, con, rel)
0000 .dbfile D:\报警系统设计资料\报警系统软件\测量模块基于CAN的系统网程序\开关量CAN网\can.c
0000 .dbfunc e can_init _can_init fV
.even
0000 _can_init::
0000 .dbline -1
0000 .dbline 30
0000 ; #include "main.h"
0000 ;
0000 ; //#pragma interrupt_handler can_ReceiveData:19
0000 ;
0000 ; /*******************************************************************
0000 ; CAN initialization:
0000 ; Mailbox 0: Receive --> interrupt
0000 ; Mailbox 1: Transmit --> polling
0000 ; *******************************************************************/
0000 ; #define TYP_RESET 5
0000 ; #define TYP_BAUD 10
0000 ;
0000 ; #define SELFID 2
0000 ;
0000 ; extern unsigned char sysrst,Pass_Flag;
0000 ; unsigned char canbaud;
0000 ; extern VCI_CAN_OBJ rece_data[3];
0000 ;
0000 ; const Uchar CanBaud[6][3]={{0x02,0x04,0x13},{0x06,0x04,0x13},{0x0E,0x04,0x13},{0x12,0x04,0x13},{0x1E,0x04,0x13},{0x26,0x04,0x13}};
0000 ; //波特率数组
0000 ;
0000 ; //15个MOB的ID和MID
0000 ; unsigned long CANMOBID[15]={0x10000000,0x20000000,0x30000000,0x40000000,0x50000000,0x60000000,0x01000000,0x01000001,0x0200ff00,0x12000001,0x01000002,0x01000003,0x01000004,0x01000005,0x1300ff01};
0000 ; unsigned long CANMOBMD[15]={0x0000ffff,0x0000ffff,0x0000ffff,0x00ff00ff,0x00ff00ff,0x00ff00ff,0x1fffffff,0x1fffffff,0x1fffffff,0x1fffffff,0x1fffffff,0x1fffffff,0x1fffffff,0x1fffffff,0x1fffffff};
0000 ; unsigned char CANIDT[15][4]={0};
0000 ; unsigned char CANIDM[15][4]={0};
0000 ; Uchar counterTemp,send_count;
0000 ;
0000 ; void can_init (void) //CAN初始化函数
0000 ; {
0000 .dbline 31
0000 ; canMob_init();
0000 01D0 xcall _canMob_init
0002 .dbline -2
0002 L1:
0002 .dbline 0 ; func end
0002 0895 ret
0004 .dbend
0004 .dbfunc e canMob_init _canMob_init fV
0004 ; temp2 -> R10,R11
0004 ; temp1 -> R22,R23
0004 ; temp -> y+0
0004 ; j -> R22
0004 ; i -> R20
.even
0004 _canMob_init::
0004 0E940000 xcall push_gset3
0008 2497 sbiw R28,4
000A .dbline -1
000A .dbline 36
000A ; }
000A ;
000A ;
000A ; void canMob_init (void) //MOB初始化函数
000A ; {
000A .dbline 41
000A ; unsigned char i,j;
000A ; unsigned long temp;
000A ; unsigned int temp1,temp2;
000A ;
000A ; CLI(); //关中断
000A F894 cli
000C .dbline 43
000C ; //DDRD=(1<<PD5)|(0<<PD6); //TXCAN, RXCNA
000C ; DDRD|=0x20; //CAN管脚初始化
000C 559A sbi 0xa,5
000E .dbline 44
000E ; DDRD&=0xBF;
000E 8AB1 in R24,0xa
0010 8F7B andi R24,191
0012 8AB9 out 0xa,R24
0014 .dbline 45
0014 ; CANGCON |= (1<<SWRES); //reset CAN interface
0014 8091D800 lds R24,216
0018 8160 ori R24,1
001A 8093D800 sts 216,R24
001E .dbline 47
001E ;
001E ; Pass_Flag = 0x00;
001E 2224 clr R2
0020 20920000 sts _Pass_Flag,R2
0024 .dbline 49
0024 ; //CANMOBID[2]=(unsigned long)(SELFID<<8)|CANMOBID[2];
0024 ; for(i=0;i<6;i++) //15个邮箱初始化
0024 4427 clr R20
0026 48C0 xjmp L6
0028 L3:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -