?? mini51test.lst
字號:
C51 COMPILER V8.02 MINI51TEST 08/27/2007 17:33:00 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE MINI51TEST
OBJECT MODULE PLACED IN Mini51test.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Mini51test.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg52.h>
2 #include <INTRINS.H>
3 #include <math.H>
4 #include <stdio.H>
5
6
7 unsigned char xdata CPLD_WREG _at_ 0xffe4;
8 unsigned char xdata CPLD_RREG _at_ 0xffe5;
9 unsigned char xdata ERAM_READ _at_ 0xffe6;
10
11 sbit OVER_FLAG=P1^0;//IO12
12
13 //REG[5..4]時鐘分頻選擇
14 //REG0=1 時鐘禁止
15 //REG1=0 地址寄存器復位
16
17
18
19 void delay_ms(unsigned int n)
20 {
21 1 unsigned char j;
22 1 while(n--)
23 1 for(j=0;j<230;j++);//230是實驗測試所得!
24 1 }
25
26
27 void adc_start(void)
28 {
29 1 CPLD_WREG = 0x01;//地址寄存器清零,時鐘禁止
30 1 _nop_();
31 1 CPLD_WREG = 0x02;//時鐘開啟
32 1 }
33
34
35 void rs232_port_init(void)
36 {
37 1 SCON|=0x50; //串口工作在方式1,異步模式
38 1 PCON|=0x80; //波特率翻倍
39 1 TMOD|=0x20; //定時器1工作在方式2
40 1 TH1=0xff; //波特率115200,晶振為22.1184MHz
41 1 TL1=0xff;
42 1 TR1 = 1; //啟動定時器,產生波特率
43 1 RI = 0; //接收標志位清零
44 1 TI = 0; //發送標志位清零
45 1 // ES = 1; //中斷允許
46 1 // EA = 1;
47 1 }
48
49 void uart_putc(unsigned char c)
50 {
51 1 SBUF = c;
52 1 while(!TI);
53 1 TI = 0;
54 1 }
55
C51 COMPILER V8.02 MINI51TEST 08/27/2007 17:33:00 PAGE 2
56 main()
57 {
58 1 unsigned int i;
59 1 // unsigned char temp;
60 1
61 1 rs232_port_init();
62 1 delay_ms(1000);
63 1
64 1 while(1)
65 1 {
66 2
67 2 adc_start();
68 2 while(!OVER_FLAG);
69 2
70 2 CPLD_WREG = 0x01;//地址寄存器清零
71 2 _nop_();
72 2 CPLD_WREG = 0x03;//時鐘禁止
73 2
74 2 for(i=0;i<0x8000;i++)//32K
75 2 {
76 3 uart_putc(ERAM_READ);
77 3 }
78 2 }
79 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 118 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 2
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 + -