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

📄 nrf_main.lis

📁 基于m16的nrf905接收发送程序
💻 LIS
📖 第 1 页 / 共 2 页
字号:
                        .module nrf_main.c
                        .area text(rom, con, rel)
 0000                   .dbfile C:\DOCUME~1\Administrator\桌面\nrftest\nrf_main.c
 0000                   .dbfunc e led_on _led_on fV
                        .even
 0000           _led_on::
 0000                   .dbline -1
 0000                   .dbline 8
 0000           ; #include <iom16v.h>
 0000           ; #include <macros.h>
 0000           ; #include "nrf905.h"
 0000           ; #include "lcd.h"
 0000           ; #include "delay.h"
 0000           ; 
 0000           ; void led_on( void )
 0000           ; {
 0000                   .dbline 9
 0000           ; DDRD |= ( 1 << PD0 );
 0000 889A              sbi 0x11,0
 0002                   .dbline 10
 0002           ; PORTD &=~ ( 1 << PB0 );
 0002 9098              cbi 0x12,0
 0004                   .dbline -2
 0004           L1:
 0004                   .dbline 0 ; func end
 0004 0895              ret
 0006                   .dbend
 0006                   .dbfunc e led_of _led_of fV
                        .even
 0006           _led_of::
 0006                   .dbline -1
 0006                   .dbline 13
 0006           ; }
 0006           ; void led_of( void )
 0006           ; {
 0006                   .dbline 14
 0006           ; DDRD |= ( 1 << PB0 );
 0006 889A              sbi 0x11,0
 0008                   .dbline 15
 0008           ; PORTD |= ( 1 << PB0 );
 0008 909A              sbi 0x12,0
 000A                   .dbline -2
 000A           L2:
 000A                   .dbline 0 ; func end
 000A 0895              ret
 000C                   .dbend
 000C                   .dbfunc e port_key_init _port_key_init fV
                        .even
 000C           _port_key_init::
 000C                   .dbline -1
 000C                   .dbline 19
 000C           ; }
 000C           ; 
 000C           ; void port_key_init( void )
 000C           ; {
 000C                   .dbline 20
 000C           ;        DDRA = 0X00;
 000C 2224              clr R2
 000E 2ABA              out 0x1a,R2
 0010                   .dbline 21
 0010           ;        PORTA = 0XFF;
 0010 8FEF              ldi R24,255
 0012 8BBB              out 0x1b,R24
 0014                   .dbline -2
 0014           L3:
 0014                   .dbline 0 ; func end
 0014 0895              ret
 0016                   .dbend
 0016                   .dbfunc e get_key _get_key fV
                        .even
 0016           _get_key::
 0016 4A93              st -y,R20
 0018 5A93              st -y,R21
 001A 2197              sbiw R28,1
 001C                   .dbline -1
 001C                   .dbline 25
 001C           ; }
 001C           ; 
 001C           ; void get_key( void )
 001C           ; {
 001C                   .dbline 26
 001C           ;        switch( PINA & 0xff )
 001C 49B3              in R20,0x19
 001E 5527              clr R21
 0020 5070              andi R21,0
 0022 4F3D              cpi R20,223
 0024 E0E0              ldi R30,0
 0026 5E07              cpc R21,R30
 0028 09F4              brne X12
 002A 67C0              xjmp L14
 002C           X12:
 002C           X0:
 002C 8FED              ldi R24,223
 002E 90E0              ldi R25,0
 0030 8417              cp R24,R20
 0032 9507              cpc R25,R21
 0034 84F0              brlt L18
 0036           X1:
 0036           L17:
 0036 4F37              cpi R20,127
 0038 E0E0              ldi R30,0
 003A 5E07              cpc R21,R30
 003C 09F4              brne X13
 003E 71C0              xjmp L16
 0040           X13:
 0040           X2:
 0040 4F37              cpi R20,127
 0042 E0E0              ldi R30,0
 0044 5E07              cpc R21,R30
 0046 0CF4              brge X14
 0048 75C0              xjmp L5
 004A           X14:
 004A           X3:
 004A           L19:
 004A 4F3B              cpi R20,191
 004C E0E0              ldi R30,0
 004E 5E07              cpc R21,R30
 0050 09F4              brne X15
 0052 5DC0              xjmp L15
 0054           X15:
 0054           X4:
 0054 6FC0              xjmp L5
 0056           L18:
 0056 4F3E              cpi R20,239
 0058 E0E0              ldi R30,0
 005A 5E07              cpc R21,R30
 005C 09F4              brne X16
 005E 43C0              xjmp L13
 0060           X16:
 0060           X5:
 0060 4F3E              cpi R20,239
 0062 E0E0              ldi R30,0
 0064 5E07              cpc R21,R30
 0066 0CF4              brge X17
 0068 65C0              xjmp L5
 006A           X17:
 006A           X6:
 006A           L20:
 006A 473F              cpi R20,247
 006C E0E0              ldi R30,0
 006E 5E07              cpc R21,R30
 0070 81F1              breq L12
 0072           X7:
 0072 4B3F              cpi R20,251
 0074 E0E0              ldi R30,0
 0076 5E07              cpc R21,R30
 0078 11F1              breq L11
 007A           X8:
 007A 4D3F              cpi R20,253
 007C E0E0              ldi R30,0
 007E 5E07              cpc R21,R30
 0080 A1F0              breq L10
 0082           X9:
 0082 4E3F              cpi R20,254
 0084 E0E0              ldi R30,0
 0086 5E07              cpc R21,R30
 0088 31F0              breq L9
 008A           X10:
 008A 4F3F              cpi R20,255
 008C E0E0              ldi R30,0
 008E 5E07              cpc R21,R30
 0090 09F4              brne X18
 0092 50C0              xjmp L6
 0094           X18:
 0094           X11:
 0094 4FC0              xjmp L5
 0096           L9:
 0096                   .dbline 29
 0096           ;        {
 0096           ;        case 0b11111111: break;
 0096           ;        case 0b11111110: nrf905_SendData('0'); LCD_write_char( 1, 8, '0' ); break;
 0096 00E3              ldi R16,48
 0098 0E940000          xcall _nrf905_SendData
 009C                   .dbline 29
 009C 80E3              ldi R24,48
 009E 8883              std y+0,R24
 00A0 28E0              ldi R18,8
 00A2 01E0              ldi R16,1
 00A4 0E940000          xcall _LCD_write_char
 00A8                   .dbline 29
 00A8 45C0              xjmp L6
 00AA           L10:
 00AA                   .dbline 30
 00AA           ;        case 0b11111101: nrf905_SendData('1'); LCD_write_char( 1, 8, '1' ); break;
 00AA 01E3              ldi R16,49
 00AC 0E940000          xcall _nrf905_SendData
 00B0                   .dbline 30
 00B0 81E3              ldi R24,49
 00B2 8883              std y+0,R24
 00B4 28E0              ldi R18,8
 00B6 01E0              ldi R16,1
 00B8 0E940000          xcall _LCD_write_char
 00BC                   .dbline 30
 00BC 3BC0              xjmp L6
 00BE           L11:
 00BE                   .dbline 31
 00BE           ;        case 0b11111011: nrf905_SendData('2'); LCD_write_char( 1, 8, '2' ); break;
 00BE 02E3              ldi R16,50
 00C0 0E940000          xcall _nrf905_SendData
 00C4                   .dbline 31
 00C4 82E3              ldi R24,50
 00C6 8883              std y+0,R24
 00C8 28E0              ldi R18,8
 00CA 01E0              ldi R16,1
 00CC 0E940000          xcall _LCD_write_char
 00D0                   .dbline 31
 00D0 31C0              xjmp L6
 00D2           L12:
 00D2                   .dbline 32
 00D2           ;        case 0b11110111: nrf905_SendData('3'); LCD_write_char( 1, 8, '3' ); break;
 00D2 03E3              ldi R16,51
 00D4 0E940000          xcall _nrf905_SendData
 00D8                   .dbline 32
 00D8 83E3              ldi R24,51
 00DA 8883              std y+0,R24
 00DC 28E0              ldi R18,8
 00DE 01E0              ldi R16,1
 00E0 0E940000          xcall _LCD_write_char
 00E4                   .dbline 32
 00E4 27C0              xjmp L6
 00E6           L13:
 00E6                   .dbline 33
 00E6           ;        case 0b11101111: nrf905_SendData('4'); LCD_write_char( 1, 8, '4' ); break;
 00E6 04E3              ldi R16,52
 00E8 0E940000          xcall _nrf905_SendData
 00EC                   .dbline 33
 00EC 84E3              ldi R24,52
 00EE 8883              std y+0,R24
 00F0 28E0              ldi R18,8
 00F2 01E0              ldi R16,1
 00F4 0E940000          xcall _LCD_write_char
 00F8                   .dbline 33
 00F8 1DC0              xjmp L6
 00FA           L14:
 00FA                   .dbline 34
 00FA           ;        case 0b11011111: nrf905_SendData('5'); LCD_write_char( 1, 8, '5' ); break;
 00FA 05E3              ldi R16,53
 00FC 0E940000          xcall _nrf905_SendData
 0100                   .dbline 34
 0100 85E3              ldi R24,53
 0102 8883              std y+0,R24
 0104 28E0              ldi R18,8
 0106 01E0              ldi R16,1
 0108 0E940000          xcall _LCD_write_char
 010C                   .dbline 34
 010C 13C0              xjmp L6
 010E           L15:
 010E                   .dbline 35
 010E           ;        case 0b10111111: nrf905_SendData('6'); LCD_write_char( 1, 8, '6' ); break;
 010E 06E3              ldi R16,54
 0110 0E940000          xcall _nrf905_SendData
 0114                   .dbline 35
 0114 86E3              ldi R24,54
 0116 8883              std y+0,R24
 0118 28E0              ldi R18,8
 011A 01E0              ldi R16,1
 011C 0E940000          xcall _LCD_write_char
 0120                   .dbline 35
 0120 09C0              xjmp L6
 0122           L16:
 0122                   .dbline 36
 0122           ;        case 0b01111111: nrf905_SendData('7'); LCD_write_char( 1, 8, '7' ); break;
 0122 07E3              ldi R16,55
 0124 0E940000          xcall _nrf905_SendData
 0128                   .dbline 36
 0128 87E3              ldi R24,55
 012A 8883              std y+0,R24
 012C 28E0              ldi R18,8
 012E 01E0              ldi R16,1
 0130 0E940000          xcall _LCD_write_char
 0134                   .dbline 36

⌨️ 快捷键说明

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