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

📄 nrf2401.lis

📁 著名的RF射频芯片nRF2401应用程序
💻 LIS
📖 第 1 页 / 共 3 页
字号:
 0052                   .dbline 119
 0052           L10:
 0052                   .dbline 107
 0052 0395              inc R16
 0054           L12:
 0054                   .dbline 107
 0054 0830              cpi R16,8
 0056 90F3              brlo L9
 0058                   .dbline 121
 0058           ;       
 0058           ;       SET(PORTC,CLK1);
 0058           ;       NOP();
 0058           ;       NOP();
 0058           ;       NOP();
 0058           ;     CLR(PORTC,CLK1);
 0058           ;   }
 0058           ;   
 0058           ;       return temp;
 0058 022F              mov R16,R18
 005A                   .dbline -2
 005A           L8:
 005A                   .dbline 0 ; func end
 005A 0895              ret
 005C                   .dbsym r i 16 c
 005C                   .dbsym r temp 18 c
 005C                   .dbend
 005C                   .dbfunc e nrf2401A_StandBy _nrf2401A_StandBy fV
                        .even
 005C           _nrf2401A_StandBy::
 005C                   .dbline -1
 005C                   .dbline 126
 005C           ; }
 005C           ; 
 005C           ; //PwrDown->StandBy
 005C           ; void nrf2401A_StandBy()
 005C           ; {
 005C                   .dbline 127
 005C           ;    SET(PORTB,PWR);
 005C C69A              sbi 0x18,6
 005E                   .dbline 128
 005E           ;    CLR(PORTD,CE);
 005E 9498              cbi 0x12,4
 0060                   .dbline 129
 0060           ;    CLR(PORTB,CS);
 0060 C198              cbi 0x18,1
 0062                   .dbline -2
 0062           L15:
 0062                   .dbline 0 ; func end
 0062 0895              ret
 0064                   .dbend
 0064                   .dbfunc e nrf2401A_Off _nrf2401A_Off fV
                        .even
 0064           _nrf2401A_Off::
 0064                   .dbline -1
 0064                   .dbline 134
 0064           ; }
 0064           ; 
 0064           ; //->PwrDown
 0064           ; void nrf2401A_Off()
 0064           ; {
 0064                   .dbline 135
 0064           ;   CLR(PORTB,PWR);
 0064 C698              cbi 0x18,6
 0066                   .dbline 136
 0066           ;   CLR(PORTD,CE);
 0066 9498              cbi 0x12,4
 0068                   .dbline 137
 0068           ;   CLR(PORTB,CS);
 0068 C198              cbi 0x18,1
 006A                   .dbline -2
 006A           L16:
 006A                   .dbline 0 ; func end
 006A 0895              ret
 006C                   .dbend
 006C                   .dbfunc e nrf2401A_RwOn _nrf2401A_RwOn fV
                        .even
 006C           _nrf2401A_RwOn::
 006C                   .dbline -1
 006C                   .dbline 142
 006C           ; }
 006C           ; 
 006C           ; //配置模式
 006C           ; void nrf2401A_RwOn()
 006C           ; {
 006C                   .dbline 143
 006C           ;   SET(PORTB,PWR);
 006C C69A              sbi 0x18,6
 006E                   .dbline 144
 006E           ;   CLR(PORTD,CE);
 006E 9498              cbi 0x12,4
 0070                   .dbline 145
 0070           ;   SET(PORTB,CS);
 0070 C19A              sbi 0x18,1
 0072                   .dbline -2
 0072           L17:
 0072                   .dbline 0 ; func end
 0072 0895              ret
 0074                   .dbend
 0074                   .dbfunc e nrf2401A_Run _nrf2401A_Run fV
                        .even
 0074           _nrf2401A_Run::
 0074                   .dbline -1
 0074                   .dbline 150
 0074           ; }
 0074           ; 
 0074           ; //工作模式
 0074           ; void nrf2401A_Run()
 0074           ; {
 0074                   .dbline 151
 0074           ;   SET(PORTC,PWR);
 0074 AE9A              sbi 0x15,6
 0076                   .dbline 152
 0076           ;   CLR(PORTB,CS);        //first
 0076 C198              cbi 0x18,1
 0078                   .dbline 153
 0078           ;   SET(PORTD,CE);
 0078 949A              sbi 0x12,4
 007A                   .dbline -2
 007A           L18:
 007A                   .dbline 0 ; func end
 007A 0895              ret
 007C                   .dbend
 007C                   .dbfunc e nrf2401A_Config _nrf2401A_Config fV
                        .even
 007C           _nrf2401A_Config::
 007C                   .dbline -1
 007C                   .dbline 156
 007C           ; }
 007C           ; void nrf2401A_Config(void)
 007C           ; {
 007C                   .dbline 157
 007C           ;    nrf2401A_RwOn();//配置状态
 007C F7DF              rcall _nrf2401A_RwOn
 007E                   .dbline 158
 007E           ;    nrf2401A_WR(DATA2_W);           //200+16+32+8
 007E 00EA              ldi R16,160
 0080 BFDF              rcall _nrf2401A_WR
 0082                   .dbline 159
 0082           ;    nrf2401A_WR(DATA1_W);           //200
 0082 00EA              ldi R16,160
 0084 BDDF              rcall _nrf2401A_WR
 0086                   .dbline 160
 0086           ;    nrf2401A_WR(RX_ADDRESS2);
 0086 0027              clr R16
 0088 BBDF              rcall _nrf2401A_WR
 008A                   .dbline 161
 008A           ;    nrf2401A_WR(RX_ADDRESS2);
 008A 0027              clr R16
 008C B9DF              rcall _nrf2401A_WR
 008E                   .dbline 162
 008E           ;    nrf2401A_WR(RX_ADDRESS2);
 008E 0027              clr R16
 0090 B7DF              rcall _nrf2401A_WR
 0092                   .dbline 163
 0092           ;    nrf2401A_WR(RX_ADDRESS2);
 0092 0027              clr R16
 0094 B5DF              rcall _nrf2401A_WR
 0096                   .dbline 164
 0096           ;    nrf2401A_WR(RX_ADDRESS2);
 0096 0027              clr R16
 0098 B3DF              rcall _nrf2401A_WR
 009A                   .dbline 165
 009A           ;    nrf2401A_WR(RX_ADDRESS_4);
 009A 0027              clr R16
 009C B1DF              rcall _nrf2401A_WR
 009E                   .dbline 166
 009E           ;    nrf2401A_WR(RX_ADDRESS_3);
 009E 0CEC              ldi R16,204
 00A0 AFDF              rcall _nrf2401A_WR
 00A2                   .dbline 167
 00A2           ;    nrf2401A_WR(RX_ADDRESS_2);
 00A2 0CEC              ldi R16,204
 00A4 ADDF              rcall _nrf2401A_WR
 00A6                   .dbline 168
 00A6           ;    nrf2401A_WR(RX_ADDRESS_1);
 00A6 0CEC              ldi R16,204
 00A8 ABDF              rcall _nrf2401A_WR
 00AA                   .dbline 169
 00AA           ;    nrf2401A_WR(RX_ADDRESS_0);
 00AA 0CEC              ldi R16,204
 00AC A9DF              rcall _nrf2401A_WR
 00AE                   .dbline 170
 00AE           ;    nrf2401A_WR(CRC16_EN|ADDR_W);           //CRC16,AddrWidth
 00AE 03E8              ldi R16,131
 00B0 A7DF              rcall _nrf2401A_WR
 00B2                   .dbline 171
 00B2           ;    nrf2401A_WR(PA_PWR_3|XOF_16MHz|CM_SHOCK);
 00B2 0FE4              ldi R16,79
 00B4 A5DF              rcall _nrf2401A_WR
 00B6                   .dbline 173
 00B6           ;    //nrf2401A_WR(PA_PWR_3|XOF_16MHz|RFDR_1M|CM_SHOCK);
 00B6           ;    nrf2401A_WR(CH_NO_FREQ|RX_EN);               //RxMode,Chan
 00B6 05E0              ldi R16,5
 00B8 A3DF              rcall _nrf2401A_WR
 00BA                   .dbline 175
 00BA           ;    //
 00BA           ;    nrf2401A_StandBy();//执行配置
 00BA D0DF              rcall _nrf2401A_StandBy
 00BC                   .dbline -2
 00BC           L19:
 00BC                   .dbline 0 ; func end
 00BC 0895              ret
 00BE                   .dbend
 00BE                   .dbfunc e nrf2401A_RxOn _nrf2401A_RxOn fV
                        .even
 00BE           _nrf2401A_RxOn::
 00BE                   .dbline -1
 00BE                   .dbline 212
 00BE           ; }
 00BE           ; /*
 00BE           ; //配置nRF2401A
 00BE           ; void nrf2401A_Config(void)
 00BE           ; {
 00BE           ;    nrf2401A_RwOn();//配置状态
 00BE           ; 
 00BE           ;    nrf2401A_WR(DATA2_W);
 00BE           ;    nrf2401A_WR(DATA1_W);
 00BE           ;    nrf2401A_WR(RX_ADDRESS2);
 00BE           ;    nrf2401A_WR(RX_ADDRESS2);
 00BE           ;    nrf2401A_WR(RX_ADDRESS2);
 00BE           ;    nrf2401A_WR(RX_ADDRESS2);
 00BE           ;    nrf2401A_WR(RX_ADDRESS2);
 00BE           ;    nrf2401A_WR(RX_ADDRESS_4);
 00BE           ;    nrf2401A_WR(RX_ADDRESS_3);
 00BE           ;    nrf2401A_WR(RX_ADDRESS_2);
 00BE           ;    nrf2401A_WR(RX_ADDRESS_1);
 00BE           ;    nrf2401A_WR(RX_ADDRESS_0);
 00BE           ;    nrf2401A_WR(CRC16_EN|ADDR_W);//CRC16,AddrWidth
 00BE           ;    nrf2401A_WR(PA_PWR_3|XOF_16MHz|RFDR_1M|CM_SHOCK);
 00BE           ;    //#ifdef BPS_1M              
 00BE           ;   //  nrf2401A_WR(PA_PWR_3|XOF_16MHz|RFDR_1M|CM_SHOCK);//0dbm,16M,1Mbps,ShockBurst
 00BE           ;   // #else
 00BE           ;   //  nrf2401A_WR(PA_PWR_3|XOF_16MHz|CM_SHOCK);//0dbm,16M,250Kbps,ShockBurst
 00BE           ;   // #endif
 00BE           ;   // nrf2401A_WR(CH_NO_FREQ|RX_EN); //RxMode,Chan
 00BE           ;    
 00BE           ;    nrf2401A_StandBy();//执行配置
 00BE           ; }
 00BE           ; 
 00BE           ; */
 00BE           ; 
 00BE           ; 
 00BE           ; //接收模式
 00BE           ; void nrf2401A_RxOn()
 00BE           ; {
 00BE                   .dbline 213
 00BE           ;    nrf2401A_RwOn();
 00BE D6DF              rcall _nrf2401A_RwOn
 00C0                   .dbline 214
 00C0           ;    nrf2401A_WR(CH_NO_FREQ|RX_EN);     //RxMode,Chan
 00C0 05E0              ldi R16,5
 00C2 9EDF              rcall _nrf2401A_WR
 00C4                   .dbline 215
 00C4           ;    nrf2401A_Run();
 00C4 D7DF              rcall _nrf2401A_Run
 00C6                   .dbline -2
 00C6           L20:
 00C6                   .dbline 0 ; func end
 00C6 0895              ret
 00C8                   .dbend
 00C8                   .dbfunc e nrf2401A_TxOn _nrf2401A_TxOn fV
                        .even

⌨️ 快捷键说明

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