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

📄 2.4g+̤

📁 2.4G无线模块资料
💻 4G+̤
📖 第 1 页 / 共 5 页
字号:
 022E 21E0              ldi R18,1
 0230 02E2              ldi R16,34
 0232 A2DF              rcall _SPI_RW_Reg
 0234                   .dbline 381
 0234           ;       SPI_RW_Reg(WRITE_REG + RF_CH, 40);        // Select RF channel 40
 0234 28E2              ldi R18,40
 0236 05E2              ldi R16,37
 0238 9FDF              rcall _SPI_RW_Reg
 023A                   .dbline 382
 023A           ;       SPI_RW_Reg(WRITE_REG + RX_PW_P0, TX_PLOAD_WIDTH); // Select same RX payload width as TX Payload width
 023A 24E1              ldi R18,20
 023C 01E3              ldi R16,49
 023E 9CDF              rcall _SPI_RW_Reg
 0240                   .dbline 383
 0240           ;       SPI_RW_Reg(WRITE_REG + RF_SETUP, 0x07);   // TX_PWR:0dBm, Datarate:2Mbps, LNA:HCURR
 0240 27E0              ldi R18,7
 0242 06E2              ldi R16,38
 0244 99DF              rcall _SPI_RW_Reg
 0246                   .dbline 384
 0246           ;       SPI_RW_Reg(WRITE_REG + CONFIG, 0x0f);     // Set PWR_UP bit, enable CRC(2 bytes) & Prim:RX. RX_DR enabled..
 0246 2FE0              ldi R18,15
 0248 00E2              ldi R16,32
 024A 96DF              rcall _SPI_RW_Reg
 024C                   .dbline 385
 024C           ;       nRF24L01_CEH;
 024C 5D9A              sbi 0xb,5
 024E                   .dbline 386
 024E           ;       delay();
 024E 64DF              rcall _delay
 0250                   .dbline -2
 0250           L54:
 0250 2196              adiw R28,1
 0252                   .dbline 0 ; func end
 0252 0895              ret
 0254                   .dbend
 0254                   .dbfunc e TX_Mode _TX_Mode fV
                        .even
 0254           _TX_Mode::
 0254 2197              sbiw R28,1
 0256                   .dbline -1
 0256                   .dbline 406
 0256           ;       //  This device is now ready to receive one packet of 16 bytes payload from a TX device sending to address
 0256           ;   //  '3443101001', with auto acknowledgment, retransmit count of 10, RF channel 40 and datarate = 2Mbps.
 0256           ; 
 0256           ; }
 0256           ; /**************************************************/
 0256           ; 
 0256           ; /**************************************************
 0256           ; Function: TX_Mode();
 0256           ; 
 0256           ; Description:
 0256           ;   This function initializes one nRF24L01 device to
 0256           ;   TX mode, set TX address, set RX address for auto.ack,
 0256           ;   fill TX payload, select RF channel, datarate & TX pwr.
 0256           ;   PWR_UP is set, CRC(2 bytes) is enabled, & PRIM:TX.
 0256           ; 
 0256           ;   ToDo: One high pulse(>10us) on CE will now send this
 0256           ;   packet and expext an acknowledgment from the RX device. */
 0256           ; /**************************************************/
 0256           ; void TX_Mode(void)
 0256           ; {
 0256                   .dbline 407
 0256           ;       nRF24L01_CEL;
 0256 5D98              cbi 0xb,5
 0258                   .dbline 408
 0258           ;       delay();
 0258 5FDF              rcall _delay
 025A                   .dbline 409
 025A           ;       SPI_Write_Buf(WRITE_REG + TX_ADDR, TX_ADDRESS, TX_ADR_WIDTH);    // Writes TX_Address to nRF24L01
 025A 85E0              ldi R24,5
 025C 8883              std y+0,R24
 025E 20E0              ldi R18,<_TX_ADDRESS
 0260 30E0              ldi R19,>_TX_ADDRESS
 0262 00E3              ldi R16,48
 0264 C0DF              rcall _SPI_Write_Buf
 0266                   .dbline 410
 0266           ;       SPI_Write_Buf(WRITE_REG + RX_ADDR_P0, TX_ADDRESS, TX_ADR_WIDTH); // RX_Addr0 same as TX_Adr for Auto.Ack
 0266 85E0              ldi R24,5
 0268 8883              std y+0,R24
 026A 20E0              ldi R18,<_TX_ADDRESS
 026C 30E0              ldi R19,>_TX_ADDRESS
 026E 0AE2              ldi R16,42
 0270 BADF              rcall _SPI_Write_Buf
 0272                   .dbline 411
 0272           ;       SPI_Write_Buf(WR_TX_PLOAD, Buffer, TX_PLOAD_WIDTH); // Writes data to TX payload
 0272 84E1              ldi R24,20
 0274 8883              std y+0,R24
 0276 20E0              ldi R18,<_Buffer
 0278 30E0              ldi R19,>_Buffer
 027A 00EA              ldi R16,160
 027C B4DF              rcall _SPI_Write_Buf
 027E                   .dbline 413
 027E           ; 
 027E           ;       SPI_RW_Reg(WRITE_REG + EN_AA, 0x01);      // Enable Auto.Ack:Pipe0
 027E 21E0              ldi R18,1
 0280 01E2              ldi R16,33
 0282 7ADF              rcall _SPI_RW_Reg
 0284                   .dbline 414
 0284           ;       SPI_RW_Reg(WRITE_REG + EN_RXADDR, 0x01);  // Enable Pipe0
 0284 21E0              ldi R18,1
 0286 02E2              ldi R16,34
 0288 77DF              rcall _SPI_RW_Reg
 028A                   .dbline 415
 028A           ;       SPI_RW_Reg(WRITE_REG + SETUP_RETR, 0x1a); // 500us + 86us, 10 retrans...
 028A 2AE1              ldi R18,26
 028C 04E2              ldi R16,36
 028E 74DF              rcall _SPI_RW_Reg
 0290                   .dbline 416
 0290           ;       SPI_RW_Reg(WRITE_REG + RF_CH, 40);        // Select RF channel 40
 0290 28E2              ldi R18,40
 0292 05E2              ldi R16,37
 0294 71DF              rcall _SPI_RW_Reg
 0296                   .dbline 417
 0296           ;       SPI_RW_Reg(WRITE_REG + RF_SETUP, 0x07);   // TX_PWR:0dBm, Datarate:2Mbps, LNA:HCURR
 0296 27E0              ldi R18,7
 0298 06E2              ldi R16,38
 029A 6EDF              rcall _SPI_RW_Reg
 029C                   .dbline 418
 029C           ;       SPI_RW_Reg(WRITE_REG + CONFIG, 0x0e);     // Set PWR_UP bit, enable CRC(2 bytes) & Prim:TX. MAX_RT & TX_DS enabled..
 029C 2EE0              ldi R18,14
 029E 00E2              ldi R16,32
 02A0 6BDF              rcall _SPI_RW_Reg
 02A2                   .dbline 419
 02A2           ;       nRF24L01_CEH;
 02A2 5D9A              sbi 0xb,5
 02A4                   .dbline 420
 02A4           ;       delay();
 02A4 39DF              rcall _delay
 02A6                   .dbline -2
 02A6           L55:
 02A6 2196              adiw R28,1
 02A8                   .dbline 0 ; func end
 02A8 0895              ret
 02AA                   .dbend
 02AA                   .dbfunc e timer0_init _timer0_init fV
                        .even
 02AA           _timer0_init::
 02AA                   .dbline -1
 02AA                   .dbline 425
 02AA           ;       
 02AA           ; }
 02AA           ; //------------------------------------------------------
 02AA           ; void timer0_init(void)
 02AA           ; {
 02AA                   .dbline 426
 02AA           ;  TCCR0B = 0x00; //stop
 02AA 2224              clr R2
 02AC 25BC              out 0x25,R2
 02AE                   .dbline 427
 02AE           ;  TCNT0 = 0x06; //set count
 02AE 86E0              ldi R24,6
 02B0 86BD              out 0x26,R24
 02B2                   .dbline 428
 02B2           ;  TCCR0A = 0x00; 
 02B2 24BC              out 0x24,R2
 02B4                   .dbline 429
 02B4           ;  TCCR0B = 0x02; //start timer
 02B4 82E0              ldi R24,2
 02B6 85BD              out 0x25,R24
 02B8                   .dbline -2
 02B8           L56:
 02B8                   .dbline 0 ; func end
 02B8 0895              ret
 02BA                   .dbend
                        .area vector(rom, abs)
                        .org 32
 0020 5DC1              rjmp _timer0_ovf_isr
                        .area text(rom, con, rel)
 02BA                   .dbfile E:\项目\PS2无~1\progamme\acceptavrnrf24l01\acceptavrnrf24l01\main.c
 02BA                   .dbfunc e timer0_ovf_isr _timer0_ovf_isr fV
                        .even
 02BA           _timer0_ovf_isr::
 02BA 2A92              st -y,R2
 02BC 8A93              st -y,R24
 02BE 2FB6              in R2,0x3f
 02C0 2A92              st -y,R2
 02C2                   .dbline -1
 02C2                   .dbline 433
 02C2                   .dbline 435
 02C2 86E0              ldi R24,6
 02C4 86BD              out 0x26,R24
 02C6                   .dbline 437
 02C6 80911300          lds R24,_t20ms
 02CA 8150              subi R24,1
 02CC 282E              mov R2,R24
 02CE 20921300          sts _t20ms,R2
 02D2 8823              tst R24
 02D4 49F4              brne L58
 02D6                   .dbline 438
 02D6                   .dbline 439
 02D6                   .dbline 439
 02D6 80911200          lds R24,_flag
 02DA 8160              ori R24,1
 02DC 80931200          sts _flag,R24
 02E0                   .dbline 439
 02E0                   .dbline 439
 02E0                   .dbline 440
 02E0 80E5              ldi R24,80
 02E2 80931300          sts _t20ms,R24
 02E6                   .dbline 442
 02E6 0000              nop
 02E8                   .dbline 449
 02E8           L58:
 02E8                   .dbline -2
 02E8           L57:
 02E8 2990              ld R2,y+
 02EA 2FBE              out 0x3f,R2
 02EC 8991              ld R24,y+
 02EE 2990              ld R2,y+
 02F0                   .dbline 0 ; func end
 02F0 1895              reti
 02F2                   .dbend
                        .area bss(ram, con, rel)
 0000                   .dbfile E:\项目\PS2无~1\progamme\acceptavrnrf24l01\acceptavrnrf24l01\main.c
 0000           _key6_time::
 0000                   .blkb 1
 0001                   .dbsym e key6_time _key6_time c
 0001           _key5_time::
 0001                   .blkb 1
 0002                   .dbsym e key5_time _key5_time c
 0002           _key4_time::
 0002                   .blkb 1
 0003                   .dbsym e key4_time _key4_time c
 0003           _key3_time::
 0003                   .blkb 1
 0004                   .dbsym e key3_time _key3_time c
 0004           _key2_time::
 0004                   .blkb 1
 0005                   .dbsym e key2_time _key2_time c
 0005           _key1_time::
 0005                   .blkb 1
 0006                   .dbsym e key1_time _key1_time c
 0006           _key6_flag::
 0006                   .blkb 1
 0007                   .dbsym e key6_flag _key6_flag c
 0007           _key5_flag::
 0007                   .blkb 1
 0008                   .dbsym e key5_flag _key5_flag c
 0008           _key4_flag::
 0008                   .blkb 1
 0009                   .dbsym e key4_flag _key4_flag c
 0009           _key3_flag::
 0009                   .blkb 1
 000A                   .dbsym e key3_flag _key3_flag c
 000A           _key2_flag::
 000A                   .blkb 1
 000B                   .dbsym e key2_flag _key2_flag c
 000B           _key1_flag::
 000B                   .blkb 1
 000C                   .dbsym e key1_flag _key1_flag c
 000C           _key6_pulse::
 000C                   .blkb 1
 000D                   .dbsym e key6_pulse _key6_pulse c
 000D           _key5_pulse::
 000D                   .blkb 1
 000E                   .dbsym e key5_pulse _key5_pulse c
 000E           _key4_pulse::
 000E                   .blkb 1
 000F                   .dbsym e key4_pulse _key4_pulse c
 000F           _key3_pulse::
 000F                   .blkb 1
 0010                   .dbsym e key3_pulse _key3_pulse c
 0010           _key2_pulse::
 0010                   .blkb 1
 0011                   .dbsym e key2_pulse _key2_pulse c
 0011           _key1_pulse::
 0011                   .blkb 1
 0012                   .dbsym e key1_pulse _key1_pulse c
 0012           _flag::
 0012                   .blkb 1
 0013                   .dbsym e flag _flag c
 0013           _t20ms::
 0013                   .blkb 1
 0014                   .dbsym e t20ms _t20ms c
 0014           _key_debug::
 0014                   .blkb 1
 0015                   .dbsym e key_debug _key_debug c

⌨️ 快捷键说明

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