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

📄 macoh.lis

📁 工控计数器ICCAVR的MAGE8程序LED数码显示+4键
💻 LIS
📖 第 1 页 / 共 5 页
字号:
                        .area data(ram, con, rel)
 00D1                   .dbfile E:\NumberDisplay\cfile\macoh.c
 00D1                   .blkb 2
                        .area idata
 00D1 7AC0              .byte 'z,192
                        .area data(ram, con, rel)
 00D3                   .dbfile E:\NumberDisplay\cfile\macoh.c
 00D3                   .dbsym e table _table A[56:56]c
                        .area text(rom, con, rel)
 0000                   .dbfile E:\NumberDisplay\cfile\macoh.c
 0000                   .dbfunc e InitIo _InitIo fV
                        .even
 0000           _InitIo::
 0000 00D0              rcall push_gset2
 0002 2297              sbiw R28,2
 0004                   .dbline -1
 0004                   .dbline 76
 0004           ; #define   MACOH_C
 0004           ; #include "main.h"
 0004           ; 
 0004           ; #define  set                 0x07
 0004           ; #define  left                 0x0b
 0004           ; #define  set_left           0x03
 0004           ; #define  down              0x0d
 0004           ; #define  up                  0x0e
 0004           ; #define  set3s              0x17
 0004           ; #define  left3s              0x1b
 0004           ; #define  set_left3s         0x13
 0004           ; #define  down_up         0x0c
 0004           ; #define     ds          0
 0004           ; #define     cp          1
 0004           ; #define    sh_cp      2
 0004           ; #define    scl_set     50
 0004           ; //----------------------------------------------------------------------------------------------------------------------------------------------------------------
 0004           ; unsigned char    co[ ]             ={33,33,33,33,33,33};                                 //--------字符数组
 0004           ; unsigned char    in[ ]           ={19,13,5,12,20,1};
 0004           ; unsigned char    inm[ ]         ={44,14,12,16,16,13};
 0004           ; unsigned char    in_msa[ ]     ={16,16,13,10,10,10};
 0004           ; unsigned char    in_msb[ ]     ={44,14,10,10,10,10};
 0004           ; unsigned char    in_10k[ ]        ={51,54,0,1,10,10};
 0004           ; unsigned char    in_2k[ ]       ={51,54,2,10,10,10};
 0004           ; unsigned char    in_25h[ ]       ={51,5,2,10,10,10};
 0004           ; unsigned char    rst[ ]           ={10,24,5,23,10,10};
 0004           ; unsigned char    lock[ ]           ={10,54,15,0,19,10};
 0004           ; unsigned char    so_1[ ]        ={12,12,12,12,12,12};
 0004           ; unsigned char    psx[ ]         ={10,1,12,5,22,10};
 0004           ; unsigned char    tr[ ]            ={10,10,23,24,10,10};
 0004           ; unsigned char    tr_x[ ]        ={10,1,12,23,24,10};
 0004           ; unsigned char    scl[ ]         ={50,12,12,19,15,5};
 0004           ; unsigned char    nega[ ]     ={10,13,45,17,20,10};
 0004           ; unsigned char    off[ ]     ={18,18,21,10,10,10};
 0004           ; unsigned char    on[ ]     ={20,21,10,10,10,10};
 0004           ; unsigned char    pont[ ]     ={10,24,20,21,22,10};
 0004           ; unsigned char    ponddd[ ]={0,0,0,0,0,0};
 0004           ; //---------------------------------------------------------------------------------------------------------------------------------------------------------------
 0004           ; unsigned char    dhitemp[ ]={0,0,0,0,0,0,0};                                                   //高6位显存
 0004           ; unsigned char    dlotemp[ ]={0,0,0,0,0,0,0};                                                   //低6位显存
 0004           ; unsigned char    comtep[ ] ={10,10,10,10,10,10};
 0004           ; unsigned char    *v=comtep;
 0004           ; unsigned char    *p=dhitemp;
 0004           ; unsigned char    *o=dlotemp;
 0004           ; //-----------------------------------------------------------------------------------------------------------------------------------------------------------
 0004           ; long                         tempcnt,negaon_off;                                                                    //显示值
 0004           ; unsigned    int          lockda,scldata[ ] = {10,5};                                                  //倍率值
 0004           ; unsigned char          trdata_x[ ]={1,2,3};                                                  //动作保持值123
 0004           ; unsigned char          trdata, pontdata,resettemp, intemp,inmtemp,negdata,key=0;        
 0004           ;                                                         //动作保持值
 0004           ;                                                         //小数点位置值                                                                
 0004           ;                                                         //复归模式值
 0004           ;                                                         //信号范围设定值
 0004           ;                                                         //加减算设定值
 0004           ; extern       long                                timeset[ ];                                            //计数设定值
 0004           ; extern       long                                Contdata ;                                             //计数现在值
 0004           ; extern      unsigned    int             ti[],ticnt,keytime ;
 0004           ; extern     unsigned   char           keybit,kt[];
 0004           ; unsigned    char                            tbit=0;                                                    //ps现在显示第几组
 0004           ; //---------------------------------------------------------------------------------------------------------------------------------------------------
 0004           ; unsigned char    table[56]= //-------------------------------------------------------------------------------显示表
 0004           ; {
 0004           ;   /*  0xC0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,  */
 0004           ;   0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,
 0004           ;   //   1--------------------------------------------10 //
 0004           ;   0X80,   /*.  11*/ 0X40,   /*-  12*/ 0X77,   /*a  13*/ 0X7c,   /*b  14*/ 0X39,   /*c  15*/ 0X5e,   /*d  16*/
 0004           ;   0X79,   /*e  17*/ 0X71,   /*f  18*/ 0X38,   /*l  19*/ 0X54,   /*n  20*/ 0X5c,   /*o  21*/ 0X73,   /*p  22*/
 0004           ;   0X50,   /*r  23*/ 0X78,   /*t  24*/
 0004           ;   0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef,0x80,0x80,//36
 0004           ;   0xbf,0X77,0X7c,0X39,0X5e,0X79,0X71,0X6e,0X3d,0X5c,0X73,0X37,0X7b,0x64,0x76,0xd4,0x88,0x7a,0xc0//55
 0004           ;   //   1--------------------------------------------10 // 
 0004           ; };
 0004           ; //-------------------------------------------------------------------------------------------------------------------------------------------------------
 0004           ; 
 0004           ; void InitIo(void)
 0004           ; {   
 0004                   .dbline 79
 0004           ;     
 0004           ; 
 0004           ;     CLI();
 0004 F894              cli
 0006                   .dbline 80
 0006           ;       WDR();
 0006 A895              wdr
 0008                   .dbline 81
 0008           ;       WDTCSR = 0x1f;  
 0008 8FE1              ldi R24,31
 000A 80936000          sts 96,R24
 000E                   .dbline 82
 000E           ;       WDTCSR = 0x29;  
 000E 89E2              ldi R24,41
 0010 80936000          sts 96,R24
 0014                   .dbline 83
 0014           ;       ACSR    = 0X01; 
 0014 81E0              ldi R24,1
 0016 80BF              out 0x30,R24
 0018                   .dbline 84
 0018           ;     EICRA = 0x0e;
 0018 8EE0              ldi R24,14
 001A 80936900          sts 105,R24
 001E                   .dbline 85
 001E           ;     EIMSK = 0x03;
 001E 83E0              ldi R24,3
 0020 8DBB              out 0x1d,R24
 0022                   .dbline 86
 0022           ;     TCCR1B = 0x00; //stop
 0022 2224              clr R2
 0024 20928100          sts 129,R2
 0028                   .dbline 87
 0028           ;     TCNT1H = 0xFD; //setup
 0028 8DEF              ldi R24,253
 002A 80938500          sts 133,R24
 002E                   .dbline 88
 002E           ;     TCNT1L = 0x8F;
 002E 8FE8              ldi R24,143
 0030 80938400          sts 132,R24
 0034                   .dbline 89
 0034           ;     OCR1AH = 0x02;
 0034 82E0              ldi R24,2
 0036 80938900          sts 137,R24
 003A                   .dbline 90
 003A           ;     OCR1AL = 0x71;
 003A 81E7              ldi R24,113
 003C 80938800          sts 136,R24
 0040                   .dbline 91
 0040           ;     OCR1BH = 0x02;
 0040 82E0              ldi R24,2
 0042 80938B00          sts 139,R24
 0046                   .dbline 92
 0046           ;     OCR1BL = 0x71;
 0046 81E7              ldi R24,113
 0048 80938A00          sts 138,R24
 004C                   .dbline 93
 004C           ;     ICR1H  = 0x02;
 004C 82E0              ldi R24,2
 004E 80938700          sts 135,R24
 0052                   .dbline 94
 0052           ;     ICR1L  = 0x71;
 0052 81E7              ldi R24,113
 0054 80938600          sts 134,R24
 0058                   .dbline 95
 0058           ;     TCCR1A = 0x00;
 0058 20928000          sts 128,R2
 005C                   .dbline 96
 005C           ;     TCCR1B = 0x03; //start Timer
 005C 83E0              ldi R24,3
 005E 80938100          sts 129,R24
 0062                   .dbline 97
 0062           ;     TIMSK0 = 0x10; //timer 0 interrupt sources
 0062 80E1              ldi R24,16
 0064 80936E00          sts 110,R24
 0068                   .dbline 98
 0068           ;     TIMSK1 = 0x01; //timer 1 interrupt sources
 0068 81E0              ldi R24,1
 006A 80936F00          sts 111,R24
 006E                   .dbline 99
 006E           ;     TIMSK2 = 0x00; //timer 2 interrupt sources
 006E 20927000          sts 112,R2
 0072                   .dbline 100
 0072           ;     PCMSK0 = 0x10; //pin change mask 0 
 0072 80E1              ldi R24,16
 0074 80936B00          sts 107,R24
 0078                   .dbline 101
 0078           ;     PCMSK1 = 0x00; //pin change mask 1 
 0078 20926C00          sts 108,R2
 007C                   .dbline 102
 007C           ;     PCMSK2 = 0x00; //pin change mask 2
 007C 20926D00          sts 109,R2
 0080                   .dbline 103
 0080           ;     PCICR = 0x01; //pin change enable 
 0080 81E0              ldi R24,1
 0082 80936800          sts 104,R24
 0086                   .dbline 104
 0086           ;     DDRB  = 0x00;
 0086 24B8              out 0x4,R2
 0088                   .dbline 105
 0088           ;       PORTB = 0xff;
 0088 8FEF              ldi R24,255
 008A 85B9              out 0x5,R24
 008C                   .dbline 106
 008C           ;     DDRC   = 0xff;
 008C 87B9              out 0x7,R24
 008E                   .dbline 107
 008E           ;       PORTC = 0x00;
 008E 28B8              out 0x8,R2
 0090                   .dbline 108
 0090           ;       DDRD   = 0b00110000;
 0090 80E3              ldi R24,48
 0092 8AB9              out 0xa,R24
 0094                   .dbline 109
 0094           ;       PORTD = 0b11001111;  
 0094 8FEC              ldi R24,207
 0096 8BB9              out 0xb,R24
 0098                   .dbline 110
 0098           ;       pontdata  = EEPROMread(0x10);
 0098 00E1              ldi R16,16
 009A 10E0              ldi R17,0
 009C 00D0              rcall _EEPROMread_extIO
 009E 00930400          sts _pontdata,R16
 00A2                   .dbline 111
 00A2           ;       resettemp = EEPROMread(0x11);
 00A2 01E1              ldi R16,17
 00A4 10E0              ldi R17,0
 00A6 00D0              rcall _EEPROMread_extIO
 00A8 00930300          sts _resettemp,R16
 00AC                   .dbline 112
 00AC           ;       intemp    = EEPROMread(0x12); 
 00AC 02E1              ldi R16,18
 00AE 10E0              ldi R17,0
 00B0 00D0              rcall _EEPROMread_extIO
 00B2 00930200          sts _intemp,R16
 00B6                   .dbline 113
 00B6           ;       trdata     = EEPROMread(0x13);
 00B6 03E1              ldi R16,19
 00B8 10E0              ldi R17,0
 00BA 00D0              rcall _EEPROMread_extIO
 00BC 00930500          sts _trdata,R16
 00C0                   .dbline 114
 00C0           ;       inmtemp = EEPROMread(0x14);
 00C0 04E1              ldi R16,20
 00C2 10E0              ldi R17,0
 00C4 00D0              rcall _EEPROMread_extIO
 00C6 00930100          sts _inmtemp,R16
 00CA                   .dbline 115
 00CA           ;     negdata  =EEPROMread(0x16);
 00CA 06E1              ldi R16,22
 00CC 10E0              ldi R17,0
 00CE 00D0              rcall _EEPROMread_extIO
 00D0 00930000          sts _negdata,R16
 00D4                   .dbline 116
 00D4           ;     EEPROM_READ(0x20,scldata);                          
 00D4 84E0              ldi R24,4
 00D6 90E0              ldi R25,0
 00D8 9983              std y+1,R25
 00DA 8883              std y+0,R24
 00DC 20E0              ldi R18,<_scldata
 00DE 30E0              ldi R19,>_scldata
 00E0 00E2              ldi R16,32
 00E2 10E0              ldi R17,0
 00E4 00D0              rcall _EEPROMReadBytes_extIO
 00E6                   .dbline 117
 00E6           ;     EEPROM_READ(0x30,trdata_x);
 00E6 83E0              ldi R24,3
 00E8 90E0              ldi R25,0
 00EA 9983              std y+1,R25
 00EC 8883              std y+0,R24
 00EE 20E0              ldi R18,<_trdata_x
 00F0 30E0              ldi R19,>_trdata_x
 00F2 00E3              ldi R16,48
 00F4 10E0              ldi R17,0
 00F6 00D0              rcall _EEPROMReadBytes_extIO
 00F8                   .dbline 118
 00F8           ;       EEPROM_READ(0x40,timeset[0]);
 00F8 84E0              ldi R24,4
 00FA 90E0              ldi R25,0
 00FC 9983              std y+1,R25
 00FE 8883              std y+0,R24
 0100 20E0              ldi R18,<_timeset
 0102 30E0              ldi R19,>_timeset
 0104 00E4              ldi R16,64
 0106 10E0              ldi R17,0
 0108 00D0              rcall _EEPROMReadBytes_extIO
 010A                   .dbline 119
 010A           ;       EEPROM_READ(0x50,timeset[1]);
 010A 84E0              ldi R24,4
 010C 90E0              ldi R25,0
 010E 9983              std y+1,R25
 0110 8883              std y+0,R24
 0112 20E0              ldi R18,<_timeset+4
 0114 30E0              ldi R19,>_timeset+4
 0116 00E5              ldi R16,80
 0118 10E0              ldi R17,0
 011A 00D0              rcall _EEPROMReadBytes_extIO
 011C                   .dbline 120
 011C           ;       EEPROM_READ(0x60,timeset[2]);
 011C 84E0              ldi R24,4
 011E 90E0              ldi R25,0
 0120 9983              std y+1,R25
 0122 8883              std y+0,R24
 0124 20E0              ldi R18,<_timeset+8

⌨️ 快捷键说明

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