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

📄 nrf905config.lis

📁 包含无线收发模块 NREF905的所有功能库函数 本库函数与外部函数接口简单易用
💻 LIS
📖 第 1 页 / 共 3 页
字号:
                        .module nrf905config.c
                        .area data(ram, con, rel)
 0000           _TxBuf::
 0000                   .blkb 2
                        .area idata
 0000 6566              .byte 'e,'f
                        .area data(ram, con, rel)
 0002                   .blkb 2
                        .area idata
 0002 6768              .byte 'g,'h
                        .area data(ram, con, rel)
 0004                   .blkb 2
                        .area idata
 0004 696A              .byte 'i,'j
                        .area data(ram, con, rel)
 0006                   .blkb 2
                        .area idata
 0006 6B6C              .byte 'k,'l
                        .area data(ram, con, rel)
 0008                   .blkb 2
                        .area idata
 0008 6D6E              .byte 'm,'n
                        .area data(ram, con, rel)
 000A                   .blkb 2
                        .area idata
 000A 6F70              .byte 'o,'p
                        .area data(ram, con, rel)
 000C                   .blkb 2
                        .area idata
 000C 7172              .byte 'q,'r
                        .area data(ram, con, rel)
 000E                   .blkb 2
                        .area idata
 000E 7374              .byte 's,'t
                        .area data(ram, con, rel)
 0010                   .blkb 2
                        .area idata
 0010 7576              .byte 'u,'v
                        .area data(ram, con, rel)
 0012                   .blkb 2
                        .area idata
 0012 7778              .byte 'w,'x
                        .area data(ram, con, rel)
 0014                   .blkb 2
                        .area idata
 0014 797A              .byte 'y,'z
                        .area data(ram, con, rel)
 0016                   .blkb 2
                        .area idata
 0016 7B7C              .byte 123,124
                        .area data(ram, con, rel)
 0018                   .blkb 2
                        .area idata
 0018 7D7E              .byte 125,126
                        .area data(ram, con, rel)
 001A                   .blkb 2
                        .area idata
 001A 7F80              .byte 127,128
                        .area data(ram, con, rel)
 001C                   .blkb 2
                        .area idata
 001C 8182              .byte 129,130
                        .area data(ram, con, rel)
 001E                   .blkb 2
                        .area idata
 001E 8384              .byte 131,132
                        .area data(ram, con, rel)
 0020                   .dbfile F:\programme\RF905\nrf905config.c
 0020                   .dbsym e TxBuf _TxBuf A[32:32]c
                        .area text(rom, con, rel)
 0000                   .dbfile F:\programme\RF905\nrf905config.c
 0000                   .dbfunc e nrf905_Config _nrf905_Config fV
                        .even
 0000           _nrf905_Config::
 0000 00D0              rcall push_gset2
 0002                   .dbline -1
 0002                   .dbline 14
 0002           ; #include "nrf905.h"
 0002           ; #include <iom8v.h>
 0002           ; extern void DelayMs(uchar ms);
 0002           ; extern void DelayUs(uint us);
 0002           ; 
 0002           ; #define SIZE 32
 0002           ; 
 0002           ; uchar TxBuf[SIZE]={101,102,103,104,105,106,107,108,109,110,
 0002           ;                    111,112,113,114,115,116,117,118,119,120,
 0002           ;                    121,122,123,124,125,126,127,128,129,130,
 0002           ;                                   131,132};
 0002           ; uchar RxBuf[SIZE];
 0002           ; void nrf905_Config(void)
 0002           ; {
 0002                   .dbline 15
 0002           ;   CLR(PORTB,CSN);                                // Spi 片选开
 0002 C298              cbi 0x18,2
 0004                   .dbline 16
 0004           ;   nrf905_SpiRW(WC);                              // Write config command
 0004 0027              clr R16
 0006 1127              clr R17
 0008 29D0              rcall _nrf905_SpiRW
 000A                   .dbline 17
 000A           ;   nrf905_SpiRW(CH_NO_BYTE);                      //中心频率低8位
 000A 0CE4              ldi R16,76
 000C 10E0              ldi R17,0
 000E 26D0              rcall _nrf905_SpiRW
 0010                   .dbline 18
 0010           ;   nrf905_SpiRW(PA_PWR_10dBm | HFREQ_PLL_433MHz); //发射+10dBm,发射频率433MHz,中心频率第9位=0
 0010 0CE0              ldi R16,12
 0012 10E0              ldi R17,0
 0014 23D0              rcall _nrf905_SpiRW
 0016                   .dbline 19
 0016           ;   nrf905_SpiRW(TX_AFW_4BYTE | RX_AFW_4BYTE);     //接收地址宽度4字节,发送地址宽度4字节
 0016 04E4              ldi R16,68
 0018 10E0              ldi R17,0
 001A 20D0              rcall _nrf905_SpiRW
 001C                   .dbline 20
 001C           ;   nrf905_SpiRW(RX_PW_32BYTE);                    //接收数据宽度32字节
 001C 00E2              ldi R16,32
 001E 10E0              ldi R17,0
 0020 1DD0              rcall _nrf905_SpiRW
 0022                   .dbline 21
 0022           ;   nrf905_SpiRW(TX_PW_32BYTE);                    //发送数据宽度32字节
 0022 00E2              ldi R16,32
 0024 10E0              ldi R17,0
 0026 1AD0              rcall _nrf905_SpiRW
 0028                   .dbline 22
 0028           ;   nrf905_SpiRW(RX_ADDRESS_0);                    //接收有效地址第1字节
 0028 02E1              ldi R16,18
 002A 10E0              ldi R17,0
 002C 20E0              ldi R18,0
 002E 30E0              ldi R19,0
 0030 15D0              rcall _nrf905_SpiRW
 0032                   .dbline 23
 0032           ;   nrf905_SpiRW(RX_ADDRESS_1);                    //接收有效地址第2字节
 0032 04E3              ldi R16,52
 0034 10E0              ldi R17,0
 0036 20E0              ldi R18,0
 0038 30E0              ldi R19,0
 003A 10D0              rcall _nrf905_SpiRW
 003C                   .dbline 24
 003C           ;   nrf905_SpiRW(RX_ADDRESS_2);                    //接收有效地址第3字节
 003C 06E5              ldi R16,86
 003E 10E0              ldi R17,0
 0040 20E0              ldi R18,0
 0042 30E0              ldi R19,0
 0044 0BD0              rcall _nrf905_SpiRW
 0046                   .dbline 25
 0046           ;   nrf905_SpiRW(RX_ADDRESS_3);                    //接收有效地址第4字节
 0046 08E7              ldi R16,120
 0048 10E0              ldi R17,0
 004A 20E0              ldi R18,0
 004C 30E0              ldi R19,0
 004E 06D0              rcall _nrf905_SpiRW
 0050                   .dbline 26
 0050           ;   nrf905_SpiRW(CRC16_EN | XOF_16MHz);            //CRC16模式使能,晶体振荡器频率16MHz
 0050 08ED              ldi R16,216
 0052 10E0              ldi R17,0
 0054 03D0              rcall _nrf905_SpiRW
 0056                   .dbline 27
 0056           ;   SET(PORTB,CSN);                                // Disable Spi
 0056 C29A              sbi 0x18,2
 0058                   .dbline -2
 0058           L1:
 0058 00D0              rcall pop_gset2
 005A                   .dbline 0 ; func end
 005A 0895              ret
 005C                   .dbend
 005C                   .dbfunc e nrf905_SpiRW _nrf905_SpiRW fc
 005C           ;           temp -> R20
 005C           ;            val -> R16
                        .even
 005C           _nrf905_SpiRW::
 005C 00D0              rcall push_gset1
 005E                   .dbline -1
 005E                   .dbline 31
 005E           ; }
 005E           ; 
 005E           ; uchar nrf905_SpiRW(uchar val) 
 005E           ; {   uchar temp;
 005E                   .dbline 33
 005E           ; 
 005E           ;     SPDR=val;
 005E 0FB9              out 0xf,R16
 0060           L3:
 0060                   .dbline 35
 0060           L4:
 0060                   .dbline 34
 0060           ;       while ((SPSR&(1<<SPIF))==0)
 0060 779B              sbis 0xe,7
 0062 FECF              rjmp L3
 0064                   .dbline 36
 0064           ;       ;
 0064           ;       temp=SPDR;
 0064 4FB1              in R20,0xf
 0066                   .dbline 37
 0066           ;       return temp;
 0066 042F              mov R16,R20
 0068                   .dbline -2
 0068           L2:
 0068 00D0              rcall pop_gset1
 006A                   .dbline 0 ; func end
 006A 0895              ret
 006C                   .dbsym r temp 20 c
 006C                   .dbsym r val 16 c
 006C                   .dbend
 006C                   .dbfunc e nrf905_StandBy _nrf905_StandBy fV
                        .even
 006C           _nrf905_StandBy::
 006C                   .dbline -1
 006C                   .dbline 42
 006C           ; }
 006C           ; 
 006C           ; //PwrDown->StandBy
 006C           ; void nrf905_StandBy()
 006C           ; {
 006C                   .dbline 43
 006C           ;    SET(PORTB,PWRUP);
 006C C09A              sbi 0x18,0
 006E                   .dbline 44
 006E           ;    CLR(PORTB,TRXCE);
 006E C198              cbi 0x18,1
 0070                   .dbline 45
 0070           ;    CLR(PORTB,TX_EN);
 0070 C698              cbi 0x18,6
 0072                   .dbline -2
 0072           L6:
 0072                   .dbline 0 ; func end
 0072 0895              ret
 0074                   .dbend
 0074                   .dbfunc e nrf905_Off _nrf905_Off fV
                        .even
 0074           _nrf905_Off::
 0074                   .dbline -1
 0074                   .dbline 50
 0074           ; }
 0074           ; 
 0074           ; //->PwrDown
 0074           ; void nrf905_Off()
 0074           ; {
 0074                   .dbline 51
 0074           ;   CLR(PORTB,PWRUP);
 0074 C098              cbi 0x18,0
 0076                   .dbline -2
 0076           L7:
 0076                   .dbline 0 ; func end
 0076 0895              ret
 0078                   .dbend
 0078                   .dbfunc e nrf905_TxOn _nrf905_TxOn fV
                        .even
 0078           _nrf905_TxOn::
 0078                   .dbline -1
 0078                   .dbline 56
 0078           ; }
 0078           ; 
 0078           ; //->ShockBurst Send
 0078           ; void nrf905_TxOn()
 0078           ; {
 0078                   .dbline 57
 0078           ;   SET(PORTB,PWRUP);
 0078 C09A              sbi 0x18,0
 007A                   .dbline 58
 007A           ;   SET(PORTB,TX_EN);
 007A C69A              sbi 0x18,6
 007C                   .dbline 59
 007C           ;   CLR(PORTB,TRXCE);
 007C C198              cbi 0x18,1
 007E                   .dbline -2
 007E           L8:
 007E                   .dbline 0 ; func end
 007E 0895              ret
 0080                   .dbend
 0080                   .dbfunc e nrf905_TxSend _nrf905_TxSend fV

⌨️ 快捷键说明

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