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

📄 pro.lis

📁 数字频率计数字频率计数字频率计数字频率计
💻 LIS
📖 第 1 页 / 共 4 页
字号:
                        .module pro.c
                        .area data(ram, con, rel)
 0000           _Second::
 0000                   .blkb 1
                        .area idata
 0000 00                .byte 0
                        .area data(ram, con, rel)
 0001                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 0001                   .dbsym e Second _Second c
 0001           _Minute::
 0001                   .blkb 1
                        .area idata
 0001 00                .byte 0
                        .area data(ram, con, rel)
 0002                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 0002                   .dbsym e Minute _Minute c
 0002           _Hour::
 0002                   .blkb 1
                        .area idata
 0002 00                .byte 0
                        .area data(ram, con, rel)
 0003                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 0003                   .dbsym e Hour _Hour c
 0003           _time_buffer::
 0003                   .blkb 2
                        .area idata
 0003 0000              .byte 0,0
                        .area data(ram, con, rel)
 0005                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 0005                   .blkb 2
                        .area idata
 0005 0000              .byte 0,0
                        .area data(ram, con, rel)
 0007                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 0007                   .blkb 2
                        .area idata
 0007 0000              .byte 0,0
                        .area data(ram, con, rel)
 0009                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 0009                   .blkb 2
                        .area idata
 0009 0000              .byte 0,0
                        .area data(ram, con, rel)
 000B                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 000B                   .dbsym e time_buffer _time_buffer A[8:8]c
 000B           _Timer1_Counter_H::
 000B                   .blkb 1
                        .area idata
 000B 00                .byte 0
                        .area data(ram, con, rel)
 000C                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 000C                   .dbsym e Timer1_Counter_H _Timer1_Counter_H c
 000C           _Timer1_Counter_L::
 000C                   .blkb 1
                        .area idata
 000C 00                .byte 0
                        .area data(ram, con, rel)
 000D                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 000D                   .dbsym e Timer1_Counter_L _Timer1_Counter_L c
 000D           _value::
 000D                   .blkb 4
                        .area idata
 000D 00000000          .word 0,0
                        .area data(ram, con, rel)
 0011                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 0011                   .dbsym e value _value l
 0011           _Freq::
 0011                   .blkb 4
                        .area idata
 0011 00000000          .word 0,0
                        .area data(ram, con, rel)
 0015                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 0015                   .dbsym e Freq _Freq L
 0015           _Freq_H16::
 0015                   .blkb 4
                        .area idata
 0015 00000000          .word 0,0
                        .area data(ram, con, rel)
 0019                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 0019                   .dbsym e Freq_H16 _Freq_H16 L
 0019           _Freq_L8::
 0019                   .blkb 4
                        .area idata
 0019 00000000          .word 0,0
                        .area data(ram, con, rel)
 001D                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 001D                   .dbsym e Freq_L8 _Freq_L8 L
 001D           _counter::
 001D                   .blkb 4
                        .area idata
 001D 00000000          .word 0,0
                        .area data(ram, con, rel)
 0021                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 0021                   .dbsym e counter _counter L
 0021           _T1_OV_Times::
 0021                   .blkb 1
                        .area idata
 0021 00                .byte 0
                        .area data(ram, con, rel)
 0022                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 0022                   .dbsym e T1_OV_Times _T1_OV_Times c
                        .area text(rom, con, rel)
 0000                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 0000                   .dbfunc e time _time fV
                        .even
 0000           _time::
 0000                   .dbline -1
 0000                   .dbline 21
 0000           ; //包含所需头文件
 0000           ; #include <ioM16v.h>
 0000           ; #include <macros.h>
 0000           ; #include "12864.h"
 0000           ; #include "delay.h"
 0000           ; /*------宏定义------*/
 0000           ; #define uchar unsigned char
 0000           ; #define uint  unsigned int
 0000           ; 
 0000           ; uchar Second=0,Minute=0,Hour=0;
 0000           ; uchar Second_H,Second_L,Minute_H,Minute_L,Hour_H,Hour_L;
 0000           ; uchar time_buffer[8]={0,0,0,0,0,0,0,0};
 0000           ; unsigned char Timer1_Counter_H=0;
 0000           ; unsigned char Timer1_Counter_L=0;
 0000           ; unsigned long value=0;
 0000           ; long Freq=0,Freq_H16=0,Freq_L8=0,counter=0;
 0000           ; uchar T1_OV_Times=0; //T1溢出次数
 0000           ; uchar temp[8];
 0000           ; 
 0000           ; void time(void)
 0000           ; {
 0000                   .dbline 22
 0000           ;  Second++;
 0000 80910000          lds R24,_Second
 0004 8F5F              subi R24,255    ; addi 1
 0006 80930000          sts _Second,R24
 000A                   .dbline 23
 000A           ;  if(Second >= 60)
 000A 8C33              cpi R24,60
 000C 98F0              brlo L2
 000E                   .dbline 24
 000E           ;  {
 000E                   .dbline 25
 000E           ;    Second=0;
 000E 2224              clr R2
 0010 20920000          sts _Second,R2
 0014                   .dbline 26
 0014           ;    Minute++;
 0014 80910100          lds R24,_Minute
 0018 8F5F              subi R24,255    ; addi 1
 001A 80930100          sts _Minute,R24
 001E                   .dbline 27
 001E           ;    if(Minute >=60)
 001E 8C33              cpi R24,60
 0020 48F0              brlo L4
 0022                   .dbline 28
 0022           ;    {
 0022                   .dbline 29
 0022           ;         Hour++;
 0022 80910200          lds R24,_Hour
 0026 8F5F              subi R24,255    ; addi 1
 0028 80930200          sts _Hour,R24
 002C                   .dbline 30
 002C           ;         if(Hour >=24)
 002C 8831              cpi R24,24
 002E 10F0              brlo L6
 0030                   .dbline 31
 0030           ;          Hour=0;
 0030 20920200          sts _Hour,R2
 0034           L6:
 0034                   .dbline 32
 0034           ;       }
 0034           L4:
 0034                   .dbline 33
 0034           L2:
 0034                   .dbline -2
 0034           L1:
 0034                   .dbline 0 ; func end
 0034 0895              ret
 0036                   .dbend
 0036                   .dbfunc e display_time _display_time fV
                        .even
 0036           _display_time::
 0036                   .dbline -1
 0036                   .dbline 37
 0036           ;  }
 0036           ; }
 0036           ; 
 0036           ; void display_time(void)
 0036           ; {
 0036                   .dbline 38
 0036           ;   time_buffer[0]=Hour/10+0x30;
 0036 1AE0              ldi R17,10
 0038 00910200          lds R16,_Hour
 003C 0E940000          xcall div8u
 0040 802F              mov R24,R16
 0042 805D              subi R24,208    ; addi 48
 0044 80930300          sts _time_buffer,R24
 0048                   .dbline 39
 0048           ;   time_buffer[1]=Hour%10+0x30;
 0048 1AE0              ldi R17,10
 004A 00910200          lds R16,_Hour
 004E 0E940000          xcall mod8u
 0052 802F              mov R24,R16
 0054 805D              subi R24,208    ; addi 48
 0056 80930400          sts _time_buffer+1,R24
 005A                   .dbline 40
 005A           ;   time_buffer[2]=':';
 005A 8AE3              ldi R24,58
 005C 80930500          sts _time_buffer+2,R24
 0060                   .dbline 41
 0060           ;   time_buffer[3]=Minute/10+0x30;
 0060 1AE0              ldi R17,10
 0062 00910100          lds R16,_Minute
 0066 0E940000          xcall div8u
 006A 802F              mov R24,R16
 006C 805D              subi R24,208    ; addi 48
 006E 80930600          sts _time_buffer+3,R24
 0072                   .dbline 42
 0072           ;   time_buffer[4]=Minute%10+0x30;
 0072 1AE0              ldi R17,10
 0074 00910100          lds R16,_Minute
 0078 0E940000          xcall mod8u
 007C 802F              mov R24,R16
 007E 805D              subi R24,208    ; addi 48
 0080 80930700          sts _time_buffer+4,R24
 0084                   .dbline 43
 0084           ;   time_buffer[5]=':';
 0084 8AE3              ldi R24,58
 0086 80930800          sts _time_buffer+5,R24
 008A                   .dbline 44
 008A           ;   time_buffer[6]=Second/10+0x30;
 008A 1AE0              ldi R17,10
 008C 00910000          lds R16,_Second
 0090 0E940000          xcall div8u
 0094 802F              mov R24,R16
 0096 805D              subi R24,208    ; addi 48
 0098 80930900          sts _time_buffer+6,R24
 009C                   .dbline 45
 009C           ;   time_buffer[7]=Second%10+0X30;
 009C 1AE0              ldi R17,10
 009E 00910000          lds R16,_Second
 00A2 0E940000          xcall mod8u
 00A6 802F              mov R24,R16
 00A8 805D              subi R24,208    ; addi 48
 00AA 80930A00          sts _time_buffer+7,R24
 00AE                   .dbline 47
 00AE           ;  
 00AE           ;   LCD12864_gotoXY(2,2);
 00AE 22E0              ldi R18,2
 00B0 02E0              ldi R16,2
 00B2 0E940000          xcall _LCD12864_gotoXY
 00B6                   .dbline 48
 00B6           ;   LCD12864_sendstr(time_buffer);
 00B6 00E0              ldi R16,<_time_buffer
 00B8 10E0              ldi R17,>_time_buffer
 00BA 0E940000          xcall _LCD12864_sendstr
 00BE                   .dbline -2
 00BE           L8:
 00BE                   .dbline 0 ; func end
 00BE 0895              ret
 00C0                   .dbend
 00C0                   .dbfunc e port_init _port_init fV
                        .even
 00C0           _port_init::
 00C0                   .dbline -1
 00C0                   .dbline 62
 00C0           ;   /*LCD12864_sendbyte(1,Hour_H);
 00C0           ;   LCD12864_sendbyte(1,Hour_L);
 00C0           ;   LCD12864_sendbyte(1,':');
 00C0           ;   
 00C0           ;   LCD12864_sendbyte(1,Minute_H);
 00C0           ;   LCD12864_sendbyte(1,Minute_L);
 00C0           ;   LCD12864_sendbyte(1,':');
 00C0           ; 
 00C0           ;   LCD12864_sendbyte(1,Second_H);
 00C0           ;   LCD12864_sendbyte(1,Second_L);*/
 00C0           ; }
 00C0           ; //端口初始化
 00C0           ; void port_init(void)
 00C0           ; {
 00C0                   .dbline 63
 00C0           ;  PORTA = 0xFF;
 00C0 8FEF              ldi R24,255
 00C2 8BBB              out 0x1b,R24
 00C4                   .dbline 64
 00C4           ;  DDRA  = 0xFF;
 00C4 8ABB              out 0x1a,R24
 00C6                   .dbline 65
 00C6           ;  PORTB = 0xf3;
 00C6 83EF              ldi R24,243
 00C8 88BB              out 0x18,R24
 00CA                   .dbline 66
 00CA           ;  DDRB  = 0xf1;
 00CA 81EF              ldi R24,241
 00CC 87BB              out 0x17,R24
 00CE                   .dbline 67
 00CE           ;  PORTC = 0x00;
 00CE 2224              clr R2
 00D0 25BA              out 0x15,R2
 00D2                   .dbline 68
 00D2           ;  DDRC  = 0x00;
 00D2 24BA              out 0x14,R2
 00D4                   .dbline 69
 00D4           ;  PORTD = 0x00;
 00D4 22BA              out 0x12,R2
 00D6                   .dbline 70
 00D6           ;  DDRD  = 0x00;
 00D6 21BA              out 0x11,R2
 00D8                   .dbline -2
 00D8           L16:
 00D8                   .dbline 0 ; func end
 00D8 0895              ret
 00DA                   .dbend
 00DA                   .dbfunc e timer0_init _timer0_init fV
                        .even
 00DA           _timer0_init::
 00DA                   .dbline -1
 00DA                   .dbline 75
 00DA           ; }
 00DA           ; 
 00DA           ; //定时器T0初始化
 00DA           ; void timer0_init(void)
 00DA           ; {
 00DA                   .dbline 76
 00DA           ;  TCCR0  = 0x00;//停止定时器
 00DA 2224              clr R2
 00DC 23BE              out 0x33,R2
 00DE                   .dbline 77
 00DE           ;  TCNT0  = 0x83;//初始值
 00DE 83E8              ldi R24,131
 00E0 82BF              out 0x32,R24
 00E2                   .dbline 78
 00E2           ;  OCR0   = 0x82;//匹配值
 00E2 82E8              ldi R24,130
 00E4 8CBF              out 0x3c,R24
 00E6                   .dbline 79
 00E6           ;  TIMSK |= 0x02;//中断允许
 00E6 89B7              in R24,0x39
 00E8 8260              ori R24,2
 00EA 89BF              out 0x39,R24
 00EC                   .dbline 80
 00EC           ;  TCCR0  = 0x04;//启动定时器
 00EC 84E0              ldi R24,4
 00EE 83BF              out 0x33,R24
 00F0                   .dbline -2
 00F0           L17:
 00F0                   .dbline 0 ; func end
 00F0 0895              ret
 00F2                   .dbend
                        .area data(ram, con, rel)
 0022                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 0022           _display_is_ok::
 0022                   .blkb 1
                        .area idata
 0022 00                .byte 0
                        .area data(ram, con, rel)
 0023                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 0023                   .dbsym e display_is_ok _display_is_ok c
 0023           _count::
 0023                   .blkb 1
                        .area idata
 0023 00                .byte 0
                        .area data(ram, con, rel)
 0024                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 0024                   .dbsym e count _count c
                        .area vector(rom, abs)
                        .org 76
 004C 0C947900          jmp _timer0_comp_isr
                        .area data(ram, con, rel)
 0024                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
                        .area text(rom, con, rel)
 00F2                   .dbfile E:\张秋伟\我的实验\数字频率计\pro.c
 00F2                   .dbfunc e timer0_comp_isr _timer0_comp_isr fV
                        .even
 00F2           _timer0_comp_isr::
 00F2 2A92              st -y,R2
 00F4 8A93              st -y,R24

⌨️ 快捷键说明

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