📄 srt8300.lst
字号:
C51 COMPILER V7.09 SRT8300 07/05/2007 19:59:44 PAGE 1
C51 COMPILER V7.09, COMPILATION OF MODULE SRT8300
OBJECT MODULE PLACED IN SRT8300.obj
COMPILER INVOKED BY: D:\A\KEIL\C51\BIN\C51.EXE SRT8300\SRT8300.c BROWSE DEBUG OBJECTEXTEND PRINT(.\SRT8300.lst) OBJECT(S
-RT8300.obj)
line level source
1 #include "SRT8300.h"
2
3 //enum {R89, R91_8, R93, R95, R99_6, R103_2, R104_5, R105_4, R107} Radio_fre;
4 code unsigned char WriteReg_RadioFRE[] = {0x2a,0x55,0x5c,
5 0x2b,0xab,0x4c,
6 0x2c,0x3d,0x4c,
7 0x2d,0x31,0x3c,
8 0x2f,0x63,0x2c,
9 0x31,0x1a,0x1c,
10 0x31,0xb9,0x1c,
11 0x32,0x27,0x1c,
12 0x32,0xea,0x0c};
13
14
15
16 unsigned char WriteReg[32]={SRT8300_REGDATA_1,SRT8300_REGDATA_2,SRT8300_REGDATA_3,SRT8300_REGDATA_4,
17 SRT8300_REGDATA_5,SRT8300_REGDATA_6,SRT8300_REGDATA_7,SRT8300_REGDATA_8,
18 SRT8300_REGDATA_9,SRT8300_REGDATA_10,SRT8300_REGDATA_11,SRT8300_REGDATA_12,
19 SRT8300_REGDATA_13,SRT8300_REGDATA_14,SRT8300_REGDATA_15,SRT8300_REGDATA_16,
20 SRT8300_REGDATA_17,SRT8300_REGDATA_18,SRT8300_REGDATA_19,SRT8300_REGDATA_20,
21 SRT8300_REGDATA_21,SRT8300_REGDATA_22,SRT8300_REGDATA_23,SRT8300_REGDATA_24,
22 SRT8300_REGDATA_25,SRT8300_REGDATA_26,SRT8300_REGDATA_27,SRT8300_REGDATA_28,
23 };
24 unsigned char ReadReg[10];
25
26
27 ///////////////////////////////////////////////////////////////////
28 /// <summary>
29 /// 3wire模式写入数据
30 /// </summary>
31 void SendData3Wire()
32 {
33 1 unsigned char i,j;
34 1 unsigned char _mask;
35 1 unsigned char _d;
36 1 /// 设置为3wire通信模式
37 1 BMOD = 1;
38 1 /// 时钟置低
39 1 if( SCLK )
40 1 SCLK = 0;
41 1 /// 设置读写模式为低
42 1 if( SEN )
43 1 SEN = 0;
44 1
45 1 /// 使总线有效
46 1 BEN = 1;
47 1 /// 产生上升沿,设置为写模式
48 1 /// 2006/11/14日修改为5767兼容模式
49 1 SEN = 1;
50 1 SEN = 0;
51 1 SEN = 1;
52 1
53 1 // 循环发送寄存器数据
54 1 for(i=0;i<4;i++)//32;i++)
C51 COMPILER V7.09 SRT8300 07/05/2007 19:59:44 PAGE 2
55 1 {
56 2 _mask = 0x80; // 0x1 << 1;
57 2 // 循环发送每位数据
58 2 for(j=0; j<8; j++)
59 2 {
60 3 // 发送数据
61 3 _d = ((_mask & WriteReg[i]) == _mask);
62 3 if( SDIO != _d)
63 3 SDIO = _d ;
64 3 // 产生时钟上升沿
65 3 SCLK = 1;
66 3 // 复位时钟
67 3 SCLK = 0;
68 3
69 3 _mask >>= 1;
70 3 }
71 2 }
72 1 SEN = 1;
73 1 // 使总线无效
74 1 BEN = 0;
75 1 SDIO = 1;
76 1 }
77
78
79 ///////////////////////////////////////////////////////////////////
80 /// <summary>
81 /// 3Wire 模式读出数据
82 /// </summary>
83 void ReadData3Wire()
84 {
85 1 unsigned char i,j;
86 1 unsigned char _rec;
87 1 /// 设置为3wire通信模式
88 1 BMOD = 1;
89 1 /// 时钟置低
90 1 if( SCLK )
91 1 SCLK = 0;
92 1 /// 设置为写数据模式
93 1 if( !SEN )
94 1 SEN = 1;
95 1 /// 输出数据线置高,以实现线与逻辑
96 1 if( !SDIO )
97 1 SDIO = 1;
98 1
99 1 /// 使总线有效
100 1 BEN = 1;
101 1 /// 产生下降沿设置为读模式
102 1 SEN= 0;
103 1 SEN = 1;
104 1 SEN = 0;
105 1
106 1 // 循环发送寄存器数据
107 1 for(i=0; i<4; i++)
108 1 {
109 2 _rec = 0;
110 2 // 循环接收每位数据
111 2 for(j=0;j<8;j++)
112 2 {
113 3 _rec <<= 1;
114 3 // 产生时钟上升沿
115 3 SCLK = 1;
116 3 // 读入状态字
C51 COMPILER V7.09 SRT8300 07/05/2007 19:59:44 PAGE 3
117 3 _rec |= SDIO? 1:0;
118 3 // 复位时钟
119 3 SCLK = 0;
120 3
121 3 }
122 2 ReadReg[i] = _rec;
123 2 }
124 1
125 1 SEN = 1;
126 1 // 使总线无效
127 1 BEN = 0;
128 1 SDIO = 1;
129 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 147 ----
CONSTANT SIZE = 27 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 42 ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -