📄 testda.lst
字号:
C51 COMPILER V8.04b TESTDA 04/28/2009 14:53:23 PAGE 1
C51 COMPILER V8.04b, COMPILATION OF MODULE TESTDA
OBJECT MODULE PLACED IN testDA.OBJ
COMPILER INVOKED BY: E:\Program Files\Keil c51\C51\BIN\C51.EXE testDA.c BROWSE DEBUG OBJECTEXTEND
line level source
1 # include < reg52.h >
2 # include < stido.h >
*** WARNING C318 IN LINE 2 OF testDA.c: can't open file 'stido.h'
3 # include < absacc.h >
4 # include < stdlib.h >
5 # define TRUE 1
6 # define FALSE 0
7 # define DELAY_VALUE 3
8
9 sbit P0_0=P0^0;
10 sbit P0_1=P0^1;
11 sbit P0_2=P0^2;
12 sbit P0_3=P0^3;
13 sbit P0_4=P0^4;
14 sbit P0_5=P0^5;
15 sbit P0_6=P0^6;
16 sbit P0_7=P0^7;
17
18 sbit P1_0=P1^0;
19 sbit P1_1=P1^1;
20 sbit P1_2=P1^2;
21 sbit P1_3=P1^3;
22 sbit P1_4=P1^4;
23 sbit P1_5=P1^5;
24 sbit P1_6=P1^6;
25 sbit P1_7=P1^7;
26
27 sbit P2_0=P2^0;
28 sbit P2_1=P2^1;
29 sbit P2_2=P2^2;
30 sbit P2_3=P2^3;
31 sbit P2_4=P2^4;
32 sbit P2_5=P2^5;
33 sbit P2_6=P2^6;
34 sbit P2_7=P2^7;
35
36 sbit P3_0=P3^0;
37 sbit P3_1=P3^1;
38 sbit P3_2=P3^2;
39 sbit P3_3=P3^3;
40 sbit P3_4=P3^4;
41 sbit P3_5=P3^5;
42 sbit P3_6=P3^6;
43 sbit P3_7=P3^7;
44
45 unsigned char mark_0=0; //中断判别
46 bit mark_1=0;
47 bit mark_2=0;
48
49 void initial();
50 void keyscan();
51 void AD_scan();
52 void DA_scan();
53
54 //中断
C51 COMPILER V8.04b TESTDA 04/28/2009 14:53:23 PAGE 2
55 void int_0(); //int0中断
56 void int_1();
57 void timer_0(); //定时器0中断
58 void timer_1();
59
60
61 void main(void)
62 {
63 1 initial();
64 1 //选通
65 1 P3_5=1;
66 1 P2_7=1;
67 1 P2_6=1;
68 1 P2_5=0;
69 1 //读写信号
70 1 P3_6=0;
71 1 P3_7=0;
72 1 while(1)
73 1 {
74 2 P0=0x01; //移位正确否???
75 2 P0=P0>>1;
76 2 }
77 1
78 1
79 1 }
80 void initial()
81 {
82 1 //串行口寄存器设置///////////////////////////////////
83 1 //SCON
84 1 SM0=0;
85 1 SM1=1; // 工作模式: 1 ;10步异步收发,每一帧10位。
86 1 SM2=1; //????模式一中,若sm2=1,则只有接收到有效停止位时,RI才置1
87 1 REN=1; //为一时,串口允许接收数据,由软件置位或清零
88 1 TB8=0; //工作于方式2、3时
89 1 RB8=0; //同上
90 1 TI=0; //发送和接收完一帧数据后,由硬件使TI/RI置位申请中断,须由软件清零
91 1 RI=0; //TI\RI发送和接收中断标志位
92 1
93 1 //SCON=0x70;
94 1 //电源控制寄存器PCON中 只有SMOD与串口有关,SMOD=1,波特率加倍,否则不加倍
95 1 PCON=0; //SMOD=1; 11M晶振
96 1 ////////////////////////////////////////////////////////////////////////////////////
97 1
98 1 //中断系统/////////////////////////////////////////////
99 1 //TCON定时器控制寄存器
100 1 TF1=0; //定时器T1和T0 溢出标志位
101 1 //空
102 1 TF0=0;
103 1 //空
104 1 IE1=0;
105 1 IT1=1;
106 1 IE0=0; //外部中断int0和Int1请求中断标志位 当为1 时,请求中断
107 1 IT0=1; //外部中断0、1为边沿触发
108 1 //TCON=0X05;//定义外部中断int0和int1的触发方式为 边沿触发 剩余两位无关
109 1 //SCON最后两位与中断有关 见串口寄存器SCON的设置
110 1 //IE中断允许寄存器
111 1 EA=1; //不屏蔽所有中断
112 1 //空
113 1 ET2=0;
114 1 ES=0; //允许串行口中断
115 1 ET1=0; //允许定时/计数器中断
116 1 EX1=1; //允许外部中断int1
C51 COMPILER V8.04b TESTDA 04/28/2009 14:53:23 PAGE 3
117 1 ET0=0;
118 1 EX0=1; //允许外部中断int0
119 1 //IE=0X81;
120 1 //IP中断优先级寄存器
121 1 //空
122 1 //空
123 1 PT2=0; //定时器T2 为1时,则是高优先级
124 1 PS=1; //串口
125 1 PT1=0;
126 1 PX1=0; //外部中断
127 1 PT0=0;
128 1 PX0=0;
129 1 //IP=0x01;
130 1 //////////////////////////////////////////////////////////////////////////////////
131 1 //定时/计数器的设置///////////////////////////////
132 1 //工作方式寄存器TMOD的设置,高四位用于定时器1,低四位用于定时器0
133 1 TMOD=0x01;
134 1 //控制寄存器TCON参见中断系统
135 1
136 1 //定时器 的四种工作模式 初值设定???????
137 1
138 1
139 1 }
140 //延时子函数////////////////////////////////////////////////
141 void delay(DEFINE_VALUE)
142 {
143 1 unsigned char i,j;
144 1 for(i=0;i<20;i++)
145 1 for(j=0;j<250;j++);
146 1 }
147 ////////////////////////////////////////////////////////////////////////////////////
148
149
150 void int_0() interrupt 0 using 0 //int0中断 含义?????
151 {
152 1 //此处为键盘的中断,读P1口
153 1 mark_0=1;
154 1 }
155 void int_1() interrupt 2 using 1 //int1中断 含义?????
156 {
157 1 mark_0=2;
158 1 }
159 void timer_0() interrupt 1 using 2 //定时器0中断
160 {
161 1 mark_0=3;
162 1 }
163 void timer_1() interrupt 3 using 3
164 {
165 1 mark_0=4;
166 1 }
167
168
169 ////////////////////////////////////////////////////////////////////////////////////
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 120 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 2
IDATA SIZE = ---- ----
C51 COMPILER V8.04b TESTDA 04/28/2009 14:53:23 PAGE 4
BIT SIZE = 2 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 1 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -