📄 text1.lst
字号:
C51 COMPILER V7.07 TEXT1 09/06/2008 16:02:13 PAGE 1
C51 COMPILER V7.07, COMPILATION OF MODULE TEXT1
OBJECT MODULE PLACED IN Text1.OBJ
COMPILER INVOKED BY: D:\我的软件\51编程软件安装\安装\C51\BIN\C51.EXE Text1.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include<reg51.h>
2 #include"LCD12864.h"
3 #include"zimo.h"
4 #include"LCD1602.h"
5 void hua_zuobiao(void);//画坐标
6 void delay1ms(uint k);//延时间
7 void TLC2543(void);//2543读数据子函数
8 void count_ad(void);//1602的显示
9 uchar code shuzi[]={0x00,0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};//0--8
10 uchar code number[]={"0123456789"};
11 uchar tab1[]={" wendu=+49.99c "};// 9 10. 12 13
12 uchar code tab2[]={" made of suwei "};
13 unsigned long int ad;
14 ///////////////////TLC2543
15 sbit clk=P1^3;//时钟
16 sbit cs=P1^2;//1变0时TLC2543复位
17 sbit adtain=P1^1;//数据输入
18 sbit adtaout=P1^0;//数据输出
19 ////////////////
20 void main(void)
21 {uchar x,y;//x页 y列
22 1 uchar i;
23 1 uint j;
24 1 uchar wendu=30,dp;//温度//曲线的点
25 1 ///////////1602
26 1 init_1602();
27 1 gotoxy(1,0);
28 1 for(i=0;i<16;i++)write_LCD_data(tab1[i]);
29 1 gotoxy(2,0);
30 1 for(i=0;i<16;i++)write_LCD_data(tab2[i]);
31 1 ///////////////12864LCD
32 1 initi_LCD();//
33 1 hua_zuobiao();//画坐标图
34 1 y=12;//从12列开始
35 1 while(1)
36 1 { TLC2543();//2543读数据子函数
37 2 count_ad();//lcd1602的更新显示
38 2 delay1ms(1);
39 2 j++;
40 2 if(j>50){j=0;
41 3 wendu=ad/100;//取温度的前2位
42 3 x=(wendu-1)/8;
43 3 x=6-x;
44 3 dp=(wendu-1)%8+1;
45 3 if(y<64){set_adr(x,y);
46 4 wdata(shuzi[dp],1,0);
47 4 }
48 3 else { set_adr(x,y-64);
49 4 wdata(shuzi[dp],0,1);
50 4 }
51 3 y++;//列
52 3 if(y==128){y=12;//
53 4 clear();//清屏
54 4 hua_zuobiao();//画坐标图
55 4 }
C51 COMPILER V7.07 TEXT1 09/06/2008 16:02:13 PAGE 2
56 3 }
57 2 }
58 1 }
59
60 ////////////
61 /*i=0;
62 initi_LCD();
63 hua_zuobiao();//画坐标
64 set_adr(3,12);
65 y=3;c=13;
66 while(1)
67 {i++;
68 c++;
69 if(i==8){i=0;
70 y=y-1;
71 if(y==0)y=7;
72 //temp=0xb8+y;
73 wcode(temp,1,1);
74 }
75 if(c==64) set_adr(temp,0);
76 if(c>=127)while(1);
77 if(c>=64) wdata(shuzhi[i],0,1);
78 else wdata(shuzhi[i],1,0);
79 delay1ms(100);
80 */
81
82 /////////////
83 // }
84 //}
85 ////1602的显示
86 void count_ad(void)
87 {uchar i;
88 1 uint temp;
89 1 temp=ad;
90 1 tab1[13]=number[temp%10];temp=temp/10;
91 1 tab1[12]=number[temp%10];temp=temp/10;
92 1 tab1[10]=number[temp%10];temp=temp/10;
93 1 tab1[9]= number[temp%10];
94 1 gotoxy(1,0);
95 1 for(i=0;i<16;i++)write_LCD_data(tab1[i]);
96 1 }
97 //////////////////////////////////
98 void TLC2543(void)//2543读数据子函数
99 {uchar i;//输入数据为0x00//0x10为第一通道
100 1 ad=0;
101 1 clk=0;
102 1 cs=0;
103 1 for(i=0;i<12;i++)
104 1 {if(adtaout==1)ad=ad|0x01;//读出数据
105 2 adtain=0;//写入数据
106 2 clk=1;
107 2 clk=0;
108 2 ad<<=1;//左移一位
109 2 }
110 1 cs=1;
111 1 ad>>=1;//数据存在ad里
112 1 ad=(ad*1000)/819;//temp=(ad*5000)/4095;
113 1 }
114 ///////////////////////////
115 void hua_zuobiao(void)//画坐标
116 {uchar j;
117 1 uint i;
C51 COMPILER V7.07 TEXT1 09/06/2008 16:02:13 PAGE 3
118 1 for(j=0;j<8;j++)//页码
119 1 {set_adr(j,0);
120 2 for(i=1;i<=64;i++){wdata(zuobiao[i+j*128],1,0);
121 3 wdata(zuobiao[63+i+j*128],0,1);
122 3 }
123 2 }
124 1 }
125 ////////////////////////
126 void delay1ms(uint k)//延时间
127 {k=k*125;
128 1 while(--k);
129 1 }
130 ////////////
131
132
133
134
135
136
137
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 881 ----
CONSTANT SIZE = 1061 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 21 10
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 + -