📄 admp.lst
字号:
180 1 ET0=1; //T0中断允许
181 1 PT0=1; //T0为高优先级中断
182 1 TR0=1;
183 1 }
184 void T0_ISR(void) interrupt 1 using 1
185 {
186 1 TH0=0xFC;
187 1 TL0=0x1F;
188 1 //TR0=1;
189 1 Globtime++;
190 1 }
191 /****MAX186服务函数****/
192 unsigned int max186_ad(unsigned char ctrl_byte)
193 {
194 1 unsigned int ad_data;
195 1 max186_cs = 1;
196 1 max186_sclk = 0;
197 1 max186_din = 0;
198 1 max186_cs = 0;
199 1 send_cb(ctrl_byte);//发出控制字
200 1 //max186_cs = 1;
201 1 do
202 1 {} while (!max186_sstrb);//等待转换完毕
203 1 max186_cs = 0;
204 1 max186_sclk = 1;
205 1 ad_data = receive();//接收转换后的数据
206 1 max186_sclk = 0;
207 1 max186_cs = 1;
208 1 return(ad_data);
209 1 }
210
211 /****控制字发送函数****/
212 void send_cb(unsigned char cb_buffer)
213 {
214 1 unsigned char gate;
215 1 for ( gate = 0x80 ; gate >= 1 ; gate >>= 1 )
216 1 {
217 2 max186_sclk=0; delay(1);
218 2 if ( (gate & cb_buffer) == 0 )//判断控制字中所要发送位的值
219 2 max186_din = 0;
220 2 else
221 2 max186_din = 1;
222 2 delay(1);
223 2 max186_sclk = 1; //给出SCLK的上升沿
224 2 }
225 1 delay(1);
226 1 max186_din = 0;
227 1 delay(1);
228 1 max186_sclk = 0;
229 1 }
230
231 /****数据接收函数****/
232 unsigned int receive(void) //读转换后的数据
233 {
234 1 unsigned int ad_buffer = 0;
235 1 unsigned int gate;
236 1 for ( gate = 0x8000 ; gate >= 0x0010; gate >>= 1 )
237 1 {
238 2 max186_sclk = 1;
239 2 max186_sclk = 0; //给出下降沿
240 2 if ( max186_dout == 1) //接收数据
C51 COMPILER V6.10 ADMP 12/23/2007 21:31:00 PAGE 5
241 2 ad_buffer += gate;
242 2 }
243 1 return(ad_buffer);
244 1 }
245
246
247
248
249
250
251
252
253
254
C51 COMPILER V6.10 ADMP 12/23/2007 21:31:00 PAGE 6
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
P1 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0090H 1
serial . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
ch . . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0019H 1
tmp. . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0000H 1
cnt. . . . . . . . . . . . . . . . . STATIC DATA U_CHAR 0000H 1
recchar. . . . . . . . . . . . . . . STATIC DATA ARRAY 0001H 4
T0 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B4H 1
AC . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D6H 1
max186_din . . . . . . . . . . . . . . ABSBIT ----- BIT 0094H 1
T1 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B5H 1
EA . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00AFH 1
max186_dout. . . . . . . . . . . . . . ABSBIT ----- BIT 0096H 1
IE . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00A8H 1
size_t . . . . . . . . . . . . . . . . TYPEDEF ----- U_INT ----- 2
RD . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B7H 1
ES . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00ACH 1
RI . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0098H 1
volt_yz. . . . . . . . . . . . . . . . PUBLIC DATA INT 0005H 2
INT0 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B2H 1
CY . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D7H 1
TI . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0099H 1
INT1 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B3H 1
max186_cs. . . . . . . . . . . . . . . ABSBIT ----- BIT 0093H 1
PS . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BCH 1
OV . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D2H 1
main . . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
ad_result. . . . . . . . . . . . . . AUTO DATA U_INT 0000H 2
DAT0 . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0002H 1
DAT1 . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0003H 1
MP . . . . . . . . . . . . . . . . . AUTO DATA ARRAY 0004H 4
i. . . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0008H 1
Adrslt . . . . . . . . . . . . . . . AUTO DATA U_INT 0009H 2
UItemp . . . . . . . . . . . . . . . * REG * DATA U_INT 0004H 2
volt_cur . . . . . . . . . . . . . . AUTO DATA INT 000BH 2
Itemp. . . . . . . . . . . . . . . . * REG * DATA INT 0006H 2
WR . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B6H 1
_send_char_com . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
ch . . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
SBUF . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0099H 1
PCON . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0087H 1
_send_cb . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
cb_buffer. . . . . . . . . . . . . . AUTO DATA U_CHAR 0000H 1
gate . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0001H 1
SCON . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0098H 1
TMOD . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0089H 1
Globtime . . . . . . . . . . . . . . . PUBLIC DATA U_LONG 0007H 4
t0_init. . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
IE0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0089H 1
IE1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008BH 1
Ctl186 . . . . . . . . . . . . . . . . PUBLIC DATA U_CHAR 000BH 1
ET0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A9H 1
init_serialcomm. . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
ET1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00ABH 1
TF0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008DH 1
TF1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008FH 1
RB8. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009AH 1
TH0. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 008CH 1
C51 COMPILER V6.10 ADMP 12/23/2007 21:31:00 PAGE 7
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
EX0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A8H 1
IT0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0088H 1
TH1. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 008DH 1
TB8. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009BH 1
EX1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00AAH 1
IT1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008AH 1
P. . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D0H 1
SM0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009FH 1
TL0. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 008AH 1
SM1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009EH 1
SM2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009DH 1
T0_ISR . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
PT0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B9H 1
PT1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BBH 1
RS0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D3H 1
TR0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008CH 1
RS1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D4H 1
TR1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008EH 1
PX0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B8H 1
PX1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BAH 1
REN. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009CH 1
receive. . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
ad_buffer. . . . . . . . . . . . . . * REG * DATA U_INT 0004H 2
gate . . . . . . . . . . . . . . . . * REG * DATA U_INT 0002H 2
_max186_ad . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
ctrl_byte. . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
ad_data. . . . . . . . . . . . . . . * REG * DATA U_INT 0006H 2
RXD. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B0H 1
TXD. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B1H 1
_delay . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0008H -----
dly_time . . . . . . . . . . . . . . AUTO DATA U_LONG 0000H 4
F0 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D5H 1
max186_sclk. . . . . . . . . . . . . . ABSBIT ----- BIT 0092H 1
max186_sstrb . . . . . . . . . . . . . ABSBIT ----- BIT 0095H 1
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 706 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 12 20
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 1 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -