📄 rs485.lst
字号:
C51 COMPILER V6.12 RS485 03/19/2008 11:43:07 PAGE 1
C51 COMPILER V6.12, COMPILATION OF MODULE RS485
OBJECT MODULE PLACED IN .\rs485.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE .\rs485.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /****************************************Copyright (c)**************************************************
2 ** 广州周立功单片机发展有限公司
3 ** 研 究 所
4 ** 产品一部
5 **
6 ** http://www.zlgmcu.com
7 **
8 **--------------文件信息--------------------------------------------------------------------------------
9 **文 件 名: PCF8563.C
10 **创 建 人: 叶皓贲
11 **最后修改日期: 2003-3-4
12 **描 述: DP-1581的8563T及7289a键盘LED演示程序
13 **
14 **--------------历史版本信息----------------------------------------------------------------------------
15 ** 创建人: 叶皓贲
16 ** 版 本: 1.0
17 ** 日 期: 2003-3-4
18 ** 描 述: DP-1581演示程序
19 **
20 **------------------------------------------------------------------------------------------------------
21 ** 修改人:
22 ** 版 本:
23 ** 日 期:
24 ** 描 述:
25 **
26 **--------------当前版本修订------------------------------------------------------------------------------
27 ** 修改人:
28 ** 日 期:
29 ** 描 述:
30 **
31 **------------------------------------------------------------------------------------------------------
32 ********************************************************************************************************/
33
34 #include "REG52.h"
35
36 unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00};
37
38
39 sbit KEY_INT=P3^2;
40 sbit RS485_RE=P3^0;
41
42 sbit led1=P1^0;
43 sbit led2=P1^1;
44 bit rec_data;
45
46 unsigned char rec_temp=1;
47
48 /* 全局变量 */
49
50 unsigned char disp_buf[8]={0,0,0,0,0,0,0,0};
51
52 /*********************************************************************************************************
53 ** 函数名称: display
54 ** 功能描述: 7298A led显示
55 ** 输 入: *sd : 显示缓冲区的头地址
C51 COMPILER V6.12 RS485 03/19/2008 11:43:07 PAGE 2
56 **
57 ** 输 出: 0 : OK;
58 ** 1 : FAIL;
59 ** 全局变量: 无
60 ** 调用模块: ZLG7289_SendBuf
61 **
62 ** 作 者: 叶皓贲
63 ** 日 期: 2003-3-4
64 **-------------------------------------------------------------------------------------------------------
65 ** 修改人:
66 ** 日 期:
67 **------------------------------------------------------------------------------------------------------
68 ********************************************************************************************************/
69
70 void dispchar(char infotext)
71 {
72 1
73 1 if (led1==0)
74 1 {
75 2 led2=0;
76 2 P2=dispcode[infotext/10];
77 2 delay02s();
*** WARNING C206 IN LINE 77 OF .\RS485.C: 'delay02s': missing function-prototype
78 2 led1=1;
79 2
80 2 } else
81 1 {
82 2 led1=0;
83 2 P2=dispcode[infotext%10];
84 2 delay02s();
85 2 led2=1;
86 2 }
87 1 delay02s();
88 1
89 1 }
90
91 unsigned char DelayNS(unsigned char no)
92 {
93 1 unsigned char i,j; //延时参数
94 1
95 1 for(; no>0; no--)
96 1 {
97 2 for(i=0; i<100; i++)
98 2 for(j=0; j<100; j++);
99 2 }
100 1 return 0;
101 1 }
102
103 /*********************************************************************************************************
104 ** 函数名称: delay
105 ** 功能描述: 短软件延时
106 ** 输 入: j : 延时参数,值越大时延时越久
107 **
108 ** 输 出: 0 : OK;
109 ** 1 : FAIL;
110 ** 全局变量: 无
111 ** 调用模块: 无
112 **
113 ** 作 者: 叶皓贲
114 ** 日 期: 2003-3-4
115 **-------------------------------------------------------------------------------------------------------
116 ** 修改人:
C51 COMPILER V6.12 RS485 03/19/2008 11:43:07 PAGE 3
117 ** 日 期:
118 **------------------------------------------------------------------------------------------------------
119 ********************************************************************************************************/
120 unsigned char delay(unsigned char j)
121 {
122 1 unsigned char k,l;
123 1 for(l=0;l<=j;l++)
124 1 for(k=0;k<=250;k++);
125 1 return 0;
126 1 }
127
128
129 void main()
130 {
131 1 unsigned char key;
132 1 rec_data=0;
133 1
134 1 //====设置波特率===================
135 1 delay(100);
136 1 TMOD = 0X20;
137 1 SCON=0X50;
138 1 TH1=0XFA;
139 1 TL1=0XFA;
140 1 PCON=0X80;
141 1 TR1=1;
142 1 EA=1;
143 1 ES=1;
144 1
145 1 RS485_RE=0;
146 1
147 1 while(1)
148 1 {
149 2 /* if(KEY_INT==0)
150 2 {
151 2 key=ZLG7290_GetKey();
152 2 delay(20);
153 2 // display_send(key);
154 2 RS485_RE=1;
155 2 SBUF=key;
156 2 delay(30);
157 2 }
158 2 */
159 2
160 2 if(rec_data)
161 2 {
162 3
163 3 rec_data=0;
164 3 rec_temp=SBUF;
165 3 dispchar(rec_temp);
166 3 // dispchar(rec_temp);
167 3 // display_rec(rec_temp);
168 3 if (rec_temp==23)
169 3 {
170 4 // dispchar(rec_temp);
171 4
172 4 }
173 3 delay(20);
174 3 }
175 2
176 2 }
177 1 }
*** WARNING C280 IN LINE 131 OF .\RS485.C: 'key': unreferenced local variable
C51 COMPILER V6.12 RS485 03/19/2008 11:43:07 PAGE 4
178
179 void Serial_ISR() interrupt 4
180 {
181 1 if(TI)
182 1 {
183 2 TI=0;
184 2 RS485_RE=0;
185 2 }
186 1 else
187 1 {
188 2 RI=0;
189 2 rec_data=1;
190 2 rec_temp=SBUF;
191 2 led1=0;
192 2 led2=1;
193 2
194 2 }
195 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 196 ----
CONSTANT SIZE = 11 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 9 2
IDATA SIZE = ---- ----
BIT SIZE = 1 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 2 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -