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

📄 main.lis

📁 chipcom公司CC1100无线模块底层驱动程序
💻 LIS
📖 第 1 页 / 共 2 页
字号:
                        .module main.c
                        .area text(rom, con, rel)
 0000                   .dbfile D:\WIRELE~1\CC1020~1\SoftWare\SoftWare\main.c
 0000                   .dbfunc e main _main fV
 0000           ;              i -> R20
                        .even
 0000           _main::
 0000                   .dbline -1
 0000                   .dbline 18
 0000           ; /****************************************************/
 0000           ; /* Application note                                 */
 0000           ; /* Reference design : CC1100 RF Test Board          */
 0000           ; /* File:        Main.c                              */
 0000           ; /* Revision:  1.0                                   */
 0000           ; /* Description:                                     */
 0000           ; /* Microcontroller:ATmega48/48V                     */
 0000           ; /* Author:  Zcg, Field Applications Engineer, SunRay*/
 0000           ; /****************************************************/
 0000           ; #include "iom88v.h"
 0000           ; #include "macros.h" 
 0000           ; #include "main.h"
 0000           ; #include "CC1100.h"
 0000           ; #include "board.h"
 0000           ; #include "simpleio.h"
 0000           ;   
 0000           ; void main (void)
 0000           ; {
 0000                   .dbline 21
 0000           ;       INT8U i; 
 0000           ; 
 0000           ;       InitSys();    //初始化变量、寄存器等
 0000 00D0              rcall _InitSys
 0002 AFC0              rjmp L3
 0004           L2:
 0004                   .dbline 24
 0004           ; 
 0004           ;       while (1)
 0004           ;       {
 0004                   .dbline 25
 0004           ;           if ((RFSendFlg == TRUE) && (RFState == CC1100_RX_STATE))//串口接收到
 0004 80910000          lds R24,_RFSendFlg
 0008 8130              cpi R24,1
 000A 79F4              brne L5
 000C 20900000          lds R2,_RFState
 0010 2220              tst R2
 0012 59F4              brne L5
 0014                   .dbline 26
 0014           ;               {
 0014                   .dbline 27
 0014           ;                   RFSendFlg = FALSE;    //串口接收完一包数据,准备射频发送
 0014 2224              clr R2
 0016 20920000          sts _RFSendFlg,R2
 001A                   .dbline 28
 001A           ;                       RF_SendPacket(UartReceive_Buf,RFSendCnt);
 001A 20910000          lds R18,_RFSendCnt
 001E 00E0              ldi R16,<_UartReceive_Buf
 0020 10E0              ldi R17,>_UartReceive_Buf
 0022 00D0              rcall _RF_SendPacket
 0024                   .dbline 29
 0024           ;                       RFSendCnt = 0;
 0024 2224              clr R2
 0026 20920000          sts _RFSendCnt,R2
 002A                   .dbline 30
 002A           ;               }
 002A           L5:
 002A                   .dbline 32
 002A           ; 
 002A           ;               if ((RFReceiveFlg == TRUE) && ((UCSR0B & (BIT(UDRIE0))) == 0))
 002A 80910000          lds R24,_RFReceiveFlg
 002E 8130              cpi R24,1
 0030 09F0              breq X1
 0032 56C0              rjmp L7
 0034           X1:
 0034 2090C100          lds R2,193
 0038 25FC              sbrc R2,5
 003A 52C0              rjmp L7
 003C                   .dbline 33
 003C           ;               {
 003C                   .dbline 34
 003C           ;                   RFReceiveFlg = FALSE; //射频接收完一包数据,准备处理
 003C 2224              clr R2
 003E 20920000          sts _RFReceiveFlg,R2
 0042                   .dbline 35
 0042           ;                   RFReceiveCnt = 0;
 0042 20920000          sts _RFReceiveCnt,R2
 0046                   .dbline 37
 0046           ; 
 0046           ;                       Beep_Flag=TRUE;
 0046 81E0              ldi R24,1
 0048 80930000          sts _Beep_Flag,R24
 004C                   .dbline 38
 004C           ;                       BEEP_ON();
 004C 5D9A              sbi 0xb,5
 004E                   .dbline 39
 004E           ;                       printf("RF Recved...");
 004E 00E0              ldi R16,<L9
 0050 10E0              ldi R17,>L9
 0052 00D0              rcall _printf
 0054                   .dbline 41
 0054           ; 
 0054           ;                       if( RFReceive_Buf[0]=='S'&&
 0054 80910000          lds R24,_RFReceive_Buf
 0058 8335              cpi R24,83
 005A 09F0              breq X2
 005C 40C0              rjmp L10
 005E           X2:
 005E 80910100          lds R24,_RFReceive_Buf+1
 0062 8536              cpi R24,101
 0064 09F0              breq X3
 0066 3BC0              rjmp L10
 0068           X3:
 0068 80910200          lds R24,_RFReceive_Buf+2
 006C 8E36              cpi R24,110
 006E 09F0              breq X4
 0070 36C0              rjmp L10
 0072           X4:
 0072 80910300          lds R24,_RFReceive_Buf+3
 0076 8436              cpi R24,100
 0078 91F5              brne L10
 007A                   .dbline 45
 007A           ;                               RFReceive_Buf[1]=='e'&&
 007A           ;                               RFReceive_Buf[2]=='n'&&
 007A           ;                               RFReceive_Buf[3]=='d' )
 007A           ;                       {
 007A                   .dbline 46
 007A           ;                               DIS_RX();   //禁止串口接收
 007A 8091C100          lds R24,193
 007E 8F7E              andi R24,239
 0080 8093C100          sts 193,R24
 0084                   .dbline 47
 0084           ;                               DIS_RX_INT();     //禁止串口接收中断
 0084 8091C100          lds R24,193
 0088 8F77              andi R24,127
 008A 8093C100          sts 193,R24
 008E                   .dbline 49
 008E           ; 
 008E           ;                               Test_RFTx_Buf[0]='R';
 008E 82E5              ldi R24,82
 0090 80930000          sts _Test_RFTx_Buf,R24
 0094                   .dbline 50
 0094           ;                               Test_RFTx_Buf[1]='e';
 0094 85E6              ldi R24,101
 0096 80930100          sts _Test_RFTx_Buf+1,R24
 009A                   .dbline 51
 009A           ;                               Test_RFTx_Buf[2]='c';
 009A 83E6              ldi R24,99
 009C 80930200          sts _Test_RFTx_Buf+2,R24
 00A0                   .dbline 52
 00A0           ;                               Test_RFTx_Buf[3]='v';
 00A0 86E7              ldi R24,118
 00A2 80930300          sts _Test_RFTx_Buf+3,R24
 00A6                   .dbline 54
 00A6           ; 
 00A6           ;                               for(i=0;i<MAX_DATA_TEST-4-1;i++)
 00A6 4427              clr R20
 00A8 0AC0              rjmp L21
 00AA           L18:
 00AA                   .dbline 55
 00AA                   .dbline 56
 00AA 80E0              ldi R24,<_Test_RFTx_Buf+4
 00AC 90E0              ldi R25,>_Test_RFTx_Buf+4
 00AE E42F              mov R30,R20
 00B0 FF27              clr R31
 00B2 E80F              add R30,R24
 00B4 F91F              adc R31,R25
 00B6 842F              mov R24,R20
 00B8 805D              subi R24,208    ; addi 48
 00BA 8083              std z+0,R24
 00BC                   .dbline 57
 00BC           L19:
 00BC                   .dbline 54
 00BC 4395              inc R20
 00BE           L21:
 00BE                   .dbline 54
 00BE 4B32              cpi R20,43
 00C0 A0F3              brlo L18
 00C2                   .dbline 58
 00C2           ;                               {
 00C2           ;                                       Test_RFTx_Buf[i+4]='0'+i;
 00C2           ;                               }
 00C2           ;                               Test_RFTx_Buf[MAX_DATA_TEST-1]='\n';//
 00C2 8AE0              ldi R24,10
 00C4 80932F00          sts _Test_RFTx_Buf+47,R24

⌨️ 快捷键说明

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