📄 cc1100.lis
字号:
01C2 .dbline 366
01C2 ; halSpiWriteReg(CCxxx0_FSCTRL0, rfSettings.FSCTRL0);
01C2 E0E0 ldi R30,<_rfSettings+2
01C4 F0E0 ldi R31,>_rfSettings+2
01C6 2491 lpm R18,Z
01C8 0CE0 ldi R16,12
01CA 8CDF rcall _halSpiWriteReg
01CC .dbline 367
01CC ; halSpiWriteReg(CCxxx0_FREQ2, rfSettings.FREQ2);
01CC E0E0 ldi R30,<_rfSettings+3
01CE F0E0 ldi R31,>_rfSettings+3
01D0 2491 lpm R18,Z
01D2 0DE0 ldi R16,13
01D4 87DF rcall _halSpiWriteReg
01D6 .dbline 368
01D6 ; halSpiWriteReg(CCxxx0_FREQ1, rfSettings.FREQ1);
01D6 E0E0 ldi R30,<_rfSettings+4
01D8 F0E0 ldi R31,>_rfSettings+4
01DA 2491 lpm R18,Z
01DC 0EE0 ldi R16,14
01DE 82DF rcall _halSpiWriteReg
01E0 .dbline 369
01E0 ; halSpiWriteReg(CCxxx0_FREQ0, rfSettings.FREQ0);
01E0 E0E0 ldi R30,<_rfSettings+5
01E2 F0E0 ldi R31,>_rfSettings+5
01E4 2491 lpm R18,Z
01E6 0FE0 ldi R16,15
01E8 7DDF rcall _halSpiWriteReg
01EA .dbline 370
01EA ; halSpiWriteReg(CCxxx0_MDMCFG4, rfSettings.MDMCFG4);
01EA E0E0 ldi R30,<_rfSettings+6
01EC F0E0 ldi R31,>_rfSettings+6
01EE 2491 lpm R18,Z
01F0 00E1 ldi R16,16
01F2 78DF rcall _halSpiWriteReg
01F4 .dbline 371
01F4 ; halSpiWriteReg(CCxxx0_MDMCFG3, rfSettings.MDMCFG3);
01F4 E0E0 ldi R30,<_rfSettings+7
01F6 F0E0 ldi R31,>_rfSettings+7
01F8 2491 lpm R18,Z
01FA 01E1 ldi R16,17
01FC 73DF rcall _halSpiWriteReg
01FE .dbline 372
01FE ; halSpiWriteReg(CCxxx0_MDMCFG2, rfSettings.MDMCFG2);
01FE E0E0 ldi R30,<_rfSettings+8
0200 F0E0 ldi R31,>_rfSettings+8
0202 2491 lpm R18,Z
0204 02E1 ldi R16,18
0206 6EDF rcall _halSpiWriteReg
0208 .dbline 373
0208 ; halSpiWriteReg(CCxxx0_MDMCFG1, rfSettings.MDMCFG1);
0208 E0E0 ldi R30,<_rfSettings+9
020A F0E0 ldi R31,>_rfSettings+9
020C 2491 lpm R18,Z
020E 03E1 ldi R16,19
0210 69DF rcall _halSpiWriteReg
0212 .dbline 374
0212 ; halSpiWriteReg(CCxxx0_MDMCFG0, rfSettings.MDMCFG0);
0212 E0E0 ldi R30,<_rfSettings+10
0214 F0E0 ldi R31,>_rfSettings+10
0216 2491 lpm R18,Z
0218 04E1 ldi R16,20
021A 64DF rcall _halSpiWriteReg
021C .dbline 375
021C ; halSpiWriteReg(CCxxx0_CHANNR, rfSettings.CHANNR);
021C E0E0 ldi R30,<_rfSettings+11
021E F0E0 ldi R31,>_rfSettings+11
0220 2491 lpm R18,Z
0222 0AE0 ldi R16,10
0224 5FDF rcall _halSpiWriteReg
0226 .dbline 376
0226 ; halSpiWriteReg(CCxxx0_DEVIATN, rfSettings.DEVIATN);
0226 E0E0 ldi R30,<_rfSettings+12
0228 F0E0 ldi R31,>_rfSettings+12
022A 2491 lpm R18,Z
022C 05E1 ldi R16,21
022E 5ADF rcall _halSpiWriteReg
0230 .dbline 377
0230 ; halSpiWriteReg(CCxxx0_FREND1, rfSettings.FREND1);
0230 E0E0 ldi R30,<_rfSettings+13
0232 F0E0 ldi R31,>_rfSettings+13
0234 2491 lpm R18,Z
0236 01E2 ldi R16,33
0238 55DF rcall _halSpiWriteReg
023A .dbline 378
023A ; halSpiWriteReg(CCxxx0_FREND0, rfSettings.FREND0);
023A E0E0 ldi R30,<_rfSettings+14
023C F0E0 ldi R31,>_rfSettings+14
023E 2491 lpm R18,Z
0240 02E2 ldi R16,34
0242 50DF rcall _halSpiWriteReg
0244 .dbline 379
0244 ; halSpiWriteReg(CCxxx0_MCSM0 , rfSettings.MCSM0 );
0244 E0E0 ldi R30,<_rfSettings+15
0246 F0E0 ldi R31,>_rfSettings+15
0248 2491 lpm R18,Z
024A 08E1 ldi R16,24
024C 4BDF rcall _halSpiWriteReg
024E .dbline 380
024E ; halSpiWriteReg(CCxxx0_FOCCFG, rfSettings.FOCCFG);
024E E0E0 ldi R30,<_rfSettings+16
0250 F0E0 ldi R31,>_rfSettings+16
0252 2491 lpm R18,Z
0254 09E1 ldi R16,25
0256 46DF rcall _halSpiWriteReg
0258 .dbline 381
0258 ; halSpiWriteReg(CCxxx0_BSCFG, rfSettings.BSCFG);
0258 E0E0 ldi R30,<_rfSettings+17
025A F0E0 ldi R31,>_rfSettings+17
025C 2491 lpm R18,Z
025E 0AE1 ldi R16,26
0260 41DF rcall _halSpiWriteReg
0262 .dbline 382
0262 ; halSpiWriteReg(CCxxx0_AGCCTRL2, rfSettings.AGCCTRL2);
0262 E0E0 ldi R30,<_rfSettings+18
0264 F0E0 ldi R31,>_rfSettings+18
0266 2491 lpm R18,Z
0268 0BE1 ldi R16,27
026A 3CDF rcall _halSpiWriteReg
026C .dbline 383
026C ; halSpiWriteReg(CCxxx0_AGCCTRL1, rfSettings.AGCCTRL1);
026C E0E0 ldi R30,<_rfSettings+19
026E F0E0 ldi R31,>_rfSettings+19
0270 2491 lpm R18,Z
0272 0CE1 ldi R16,28
0274 37DF rcall _halSpiWriteReg
0276 .dbline 384
0276 ; halSpiWriteReg(CCxxx0_AGCCTRL0, rfSettings.AGCCTRL0);
0276 E0E0 ldi R30,<_rfSettings+20
0278 F0E0 ldi R31,>_rfSettings+20
027A 2491 lpm R18,Z
027C 0DE1 ldi R16,29
027E 32DF rcall _halSpiWriteReg
0280 .dbline 385
0280 ; halSpiWriteReg(CCxxx0_FSCAL3, rfSettings.FSCAL3);
0280 E0E0 ldi R30,<_rfSettings+21
0282 F0E0 ldi R31,>_rfSettings+21
0284 2491 lpm R18,Z
0286 03E2 ldi R16,35
0288 2DDF rcall _halSpiWriteReg
028A .dbline 386
028A ; halSpiWriteReg(CCxxx0_FSCAL2, rfSettings.FSCAL2);
028A E0E0 ldi R30,<_rfSettings+22
028C F0E0 ldi R31,>_rfSettings+22
028E 2491 lpm R18,Z
0290 04E2 ldi R16,36
0292 28DF rcall _halSpiWriteReg
0294 .dbline 387
0294 ; halSpiWriteReg(CCxxx0_FSCAL1, rfSettings.FSCAL1);
0294 E0E0 ldi R30,<_rfSettings+23
0296 F0E0 ldi R31,>_rfSettings+23
0298 2491 lpm R18,Z
029A 05E2 ldi R16,37
029C 23DF rcall _halSpiWriteReg
029E .dbline 388
029E ; halSpiWriteReg(CCxxx0_FSCAL0, rfSettings.FSCAL0);
029E E0E0 ldi R30,<_rfSettings+24
02A0 F0E0 ldi R31,>_rfSettings+24
02A2 2491 lpm R18,Z
02A4 06E2 ldi R16,38
02A6 1EDF rcall _halSpiWriteReg
02A8 .dbline 389
02A8 ; halSpiWriteReg(CCxxx0_FSTEST, rfSettings.FSTEST);
02A8 E0E0 ldi R30,<_rfSettings+25
02AA F0E0 ldi R31,>_rfSettings+25
02AC 2491 lpm R18,Z
02AE 09E2 ldi R16,41
02B0 19DF rcall _halSpiWriteReg
02B2 .dbline 390
02B2 ; halSpiWriteReg(CCxxx0_TEST2, rfSettings.TEST2);
02B2 E0E0 ldi R30,<_rfSettings+26
02B4 F0E0 ldi R31,>_rfSettings+26
02B6 2491 lpm R18,Z
02B8 0CE2 ldi R16,44
02BA 14DF rcall _halSpiWriteReg
02BC .dbline 391
02BC ; halSpiWriteReg(CCxxx0_TEST1, rfSettings.TEST1);
02BC E0E0 ldi R30,<_rfSettings+27
02BE F0E0 ldi R31,>_rfSettings+27
02C0 2491 lpm R18,Z
02C2 0DE2 ldi R16,45
02C4 0FDF rcall _halSpiWriteReg
02C6 .dbline 392
02C6 ; halSpiWriteReg(CCxxx0_TEST0, rfSettings.TEST0);
02C6 E0E0 ldi R30,<_rfSettings+28
02C8 F0E0 ldi R31,>_rfSettings+28
02CA 2491 lpm R18,Z
02CC 0EE2 ldi R16,46
02CE 0ADF rcall _halSpiWriteReg
02D0 .dbline 393
02D0 ; halSpiWriteReg(CCxxx0_IOCFG2, rfSettings.IOCFG2);
02D0 E0E0 ldi R30,<_rfSettings+29
02D2 F0E0 ldi R31,>_rfSettings+29
02D4 2491 lpm R18,Z
02D6 0027 clr R16
02D8 05DF rcall _halSpiWriteReg
02DA .dbline 394
02DA ; halSpiWriteReg(CCxxx0_IOCFG0, rfSettings.IOCFG0);
02DA E0E0 ldi R30,<_rfSettings+30
02DC F0E0 ldi R31,>_rfSettings+30
02DE 2491 lpm R18,Z
02E0 02E0 ldi R16,2
02E2 00DF rcall _halSpiWriteReg
02E4 .dbline 395
02E4 ; halSpiWriteReg(CCxxx0_PKTCTRL1, rfSettings.PKTCTRL1);
02E4 E0E0 ldi R30,<_rfSettings+31
02E6 F0E0 ldi R31,>_rfSettings+31
02E8 2491 lpm R18,Z
02EA 07E0 ldi R16,7
02EC FBDE rcall _halSpiWriteReg
02EE .dbline 396
02EE ; halSpiWriteReg(CCxxx0_PKTCTRL0, rfSettings.PKTCTRL0);
02EE E0E0 ldi R30,<_rfSettings+32
02F0 F0E0 ldi R31,>_rfSettings+32
02F2 2491 lpm R18,Z
02F4 08E0 ldi R16,8
02F6 F6DE rcall _halSpiWriteReg
02F8 .dbline 397
02F8 ; halSpiWriteReg(CCxxx0_ADDR, rfSettings.ADDR);
02F8 E0E0 ldi R30,<_rfSettings+33
02FA F0E0 ldi R31,>_rfSettings+33
02FC 2491 lpm R18,Z
02FE 09E0 ldi R16,9
0300 F1DE rcall _halSpiWriteReg
0302 .dbline 398
0302 ; halSpiWriteReg(CCxxx0_PKTLEN, rfSettings.PKTLEN);
0302 E0E0 ldi R30,<_rfSettings+34
0304 F0E0 ldi R31,>_rfSettings+34
0306 2491 lpm R18,Z
0308 06E0 ldi R16,6
030A ECDE rcall _halSpiWriteReg
030C .dbline -2
030C L66:
030C .dbline 0 ; func end
030C 0895 ret
030E .dbend
030E .dbfunc e halRfSendPacket _halRfSendPacket fV
030E ; size -> R22
030E ; txBuffer -> R20,R21
.even
030E _halRfSendPacket::
030E 00D0 rcall push_gset2
0310 622F mov R22,R18
0312 A801 movw R20,R16
0314 2197 sbiw R28,1
0316 .dbline -1
0316 .dbline 413
0316 ; }
0316 ;
0316 ;
0316 ;
0316 ;
0316 ;
0316 ;
0316 ; //*****************************************************************************************
0316 ; //函数名:
0316 ; //输入:
0316 ; //输出:
0316 ; //功能描述:CC1100发送主叫数据
0316 ; //*****************************************************************************************
0316 ; void halRfSendPacket(INT8U *txBuffer, INT8U size)
0316 ; {
0316 .dbline 415
0316 ;
0316 ; halSpiWriteReg(CCxxx0_TXFIFO, size+2);
0316 262F mov R18,R22
0318 2E5F subi R18,254 ; addi 2
031A 0FE3 ldi R16,63
031C E3DE rcall _halSpiWriteReg
031E .dbline 416
031E ; halSpiWriteReg(CCxxx0_TXFIFO, ID_Opponent);
031E 20EF ldi R18,240
0320 0FE3 ldi R16,63
0322 E0DE rcall _halSpiWriteReg
0324 .dbline 417
0324 ; halSpiWriteReg(CCxxx0_TXFIFO, ID_Oneself);
0324 20EF ldi R18,240
0326 0FE3 ldi R16,63
0328 DDDE rcall _halSpiWriteReg
032A .dbline 419
032A ;
032A ; halSpiWriteBurstReg(CCxxx0_TXFIFO, txBuffer, size); //写入要发送的数据
032A 6883 std y+0,R22
032C 9A01 movw R18,R20
032E 0FE3 ldi R16,63
0330 E6DE rcall _halSpiWriteBurstReg
0332 .dbline 422
0332 ;
0332 ;
0332 ; halSpiStrobe(CCxxx0_STX); //进入发送模式发送数据
0332 05E3 ldi R16,53
0334 FCDE rcall _halSpiStrobe
0336 L102:
0336 .dbline 425
0336 L103:
0336 .dbline 425
0336 ;
0336 ; // Wait for GDO0 to be set - > sync transmitted
0336 ; while (!GDO0);
0336 20B2 in R2,0x10
0338 2220 tst R2
033A 19F4 brne L105
033C 41E0 ldi R20,1
033E 50E0 ldi R21,0
0340 02C0 rjmp L106
0342 L105:
0342 4427 clr R20
0344 5527 clr R21
0346 L106:
0346 42FD sbrc R20,2
0348 F6CF rjmp L102
034A L107:
034A .dbline 428
034A L108:
034A .dbline 428
034A ;
034A ; // Wait for GDO0 to be set - > sync transmitted
034A ; while (GDO0);
034A 8299 sbic 0x10,2
034C FECF rjmp L107
034E .dbline 430
034E ;
034E ; halSpiStrobe(CCxxx0_SFTX); //清洗发送缓冲区
034E 0BE3 ldi R16,59
0350 EEDE rcall _halSpiStrobe
0352 .dbline -2
0352 L101:
0352 2196 adiw R28,1
0354 00D0 rcall pop_gset2
0356 .dbline 0 ; func end
0356 0895 ret
0358 .dbsym r size 22 c
0358 .dbsym r txBuffer 20 pc
0358 .dbend
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -