?? to yao(qq).lst
字號:
C51 COMPILER V7.08 TO_YAO_QQ_ 04/03/2008 09:51:57 PAGE 1
C51 COMPILER V7.08, COMPILATION OF MODULE TO_YAO_QQ_
OBJECT MODULE PLACED IN To Yao(QQ).OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE To Yao(QQ).c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <at89x52.H>
2 #include "LCD1602.h"
3
4
5
6 //********
7
8 unsigned char i;
9 sbit ST=P2^4;
10 sbit OE=P2^5;
11 sbit EOC=P2^6;
12 sbit CLK=P2^7;
13 void t0(void) interrupt 1 using 0
14 { CLK=~CLK; }
15 //***
16
17 unsigned char TempBuffer[10];
18 void IntToStr(unsigned int t, unsigned char *str, unsigned char n)
19 {
20 1 unsigned char a[5]; char i, j;
21 1 a[0]=(t/10000)%10; //取得整數值到數組
22 1 a[1]=(t/1000)%10;
23 1 a[2]=(t/100)%10;
24 1 a[3]=(t/10)%10;
25 1 a[4]=(t/1)%10;
26 1
27 1 for(i=0; i<5; i++) //轉成ASCII碼
28 1 a[i]=a[i]+'0';
29 1 for(i=0; a[i]=='0' && i<=3; i++);
30 1 for(j=5-n; j<i; j++) //填充空格
31 1 { *str=' '; str++; }
32 1 for(; i<5; i++)
33 1 { *str=a[i]; str++; } //加入有效的數字
34 1 *str='\0';
35 1 }
36
37 void Delay1ms(unsigned int count)
38 {
39 1 unsigned int i,j;
40 1 for(i=0;i<count;i++)
41 1 for(j=0;j<120;j++);
42 1 }
43
44 unsigned long getdata;
45 unsigned long temp;
46 unsigned int n=3;
47 unsigned char nou=35;
48 unsigned char nod=20;
49
50 main()
51 {
52 1 //************
53 1 ST=0;
54 1 OE=0;
55 1 ET0=1;
C51 COMPILER V7.08 TO_YAO_QQ_ 04/03/2008 09:51:57 PAGE 2
56 1 ET1=1;
57 1 EA=1;
58 1 TMOD=0x02;
59 1 TH0=216;
60 1 TL0=216;
61 1 TR0=1;
62 1 ST=1;
63 1 ST=0;//***
64 1
65 1
66 1
67 1 // Count = 0;
68 1 LCD_Initial();
69 1
70 1 while(1)
71 1 { //**************
72 2 if(EOC==1)
73 2 {
74 3 OE=1;
75 3 getdata=P3;
76 3 //getdata=127;
77 3 OE=0;
78 3 // temp=(getdata-137)*2;
79 3 temp=(getdata*100/51-272);
80 3
81 3 //P2=getdata;
82 3
83 3
84 3 ST=1;
85 3 ST=0;
86 3
87 3 }
88 2 if(P1_3==0){Delay1ms(70);if(P1_3==0){ n++;
89 4
90 4
91 4 if(n==4) n=1;}
92 3 }
93 2
94 2
95 2 switch(n){
96 3 case 1:
97 3 IntToStr(nou,&TempBuffer[0],3);
98 3 GotoXY(0,0);
99 3 Print("Set upper limit");
100 3 GotoXY(0,1);
101 3 Print(" is: \"C ");
102 3 GotoXY(7,1);
103 3 Print(&TempBuffer[0]); break;
104 3 case 2:
105 3 IntToStr(nod,&TempBuffer[0],3);
106 3 GotoXY(0,0);
107 3 Print("Set lower limit ");
108 3 GotoXY(0,1);
109 3 Print(" is: \"C ");
110 3 GotoXY(7,1);
111 3 Print(&TempBuffer[0]); break;
112 3 case 3: IntToStr(temp,&TempBuffer[0],3);
113 3 GotoXY(0,0);
114 3 Print("Now temperature ");
115 3 GotoXY(0,1);
116 3 Print(" is: \"C ");
117 3 GotoXY(7,1);
C51 COMPILER V7.08 TO_YAO_QQ_ 04/03/2008 09:51:57 PAGE 3
118 3 Print(&TempBuffer[0]);
119 3
120 3 break;
121 3 }
122 2 if(P1_1==0){Delay1ms(50);if(P1_1==0){if(n==1&&nou>nod) nou--;
123 4 else if(n==2) nod--;}
124 3 }
125 2
126 2 if(P1_0==0){Delay1ms(50);if(P1_0==0){if(n==1) nou++;
127 4 else if(n==2&&nod<nou) nod++;}
128 3 }
129 2
130 2 if(nod>temp){P1_5=0;P1_6=1;}
131 2 else if(nou<temp){P1_5=1;P1_6=0;}
132 2 else {P1_5=0;P1_6=0;}
133 2 }
134 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 786 ----
CONSTANT SIZE = 66 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 23 12
IDATA SIZE = ---- ----
BIT SIZE = ---- 1
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -