📄 ql300spi.lst
字号:
156 //==========================================================================
157 void csf_main(void)//初始化叠加的默认值
158 {UN idata i;
159 1
160 1 cls(1);//按蓝色清屏
161 1
162 1 delay_ms(70);//清屏后至少插入70ms的延时
163 1 }
*** WARNING C280 IN LINE 158 OF QL300SPI.C: 'i': unreferenced local variable
164 //----------------------------------------------------------------------------------
165
166
167 void csf_uart()
168 {TMOD=0x21;TH1=0xfa;TL1=0xfa;SCON=0x50;PCON=0x80;//9600波特率
C51 COMPILER V7.06 QL300SPI 11/23/2007 13:55:54 PAGE 4
169 1 TR1=1;}
170
171
172 void cls(UN ys)//按指定颜色清屏:ys:0=7
173 {Tx4b(1,ys,0,0);}
174 //---------------------------------------------
175 void Neiwai_SaoMiao(UN x)//内外屏及扫描方式选择:x=0为内同步;x=1为外同步
176 {Tx4b(2,x,0,0);}
177
178 //----------------------------------------
179 void hwy(UN h,l)////设定水平方向开始显示的位置h:0-1;l:0-0xff
180 {Tx4b(3,h,l,0);}
181
182 //----------------------------------------
183 void vwy(UN h,l)//PAL方式下设定垂直方向开始显示的位置h:0-1;l:0-0xff
184 {Tx4b(4,h,l,0);}
185
186 //----------------------------------------
187 void zfjj(UN x)//字符间距x:0-3
188 {Tx4b(5,x,0,0);}
189
190 //-------字符大小,设置指定行的字符大小,size=0-3:
191 void size(UN x)
192 {Tx4b(6,x,0,0);}
193
194 //-------定位,设置要显示的起始位置--------------------
195 void Ding_Wei(UN H,L)
196 {Tx4b(7,H,L,0);}
197
198 //----------------------------------------
199 void Tx_nei_ma(UN nmH,nmL)//按字符内码显示1字符
200 {Tx4b(8,nmH,nmL,0);}
201
202 //-------设置默认字符颜色--------------------
203 void MoRen_Color(UN ys)
204 {Tx4b(9,ys,0,0);}
205
206 ////行距设定0-7
207 void hj(UN x)
208 {Tx4b(10,x,0,0);}
209
210 //x=0-3;AT1=0无背景显示,AT1=1有背景显示但背景无框架,AT1=2有背景显示且框架阴影在底边,AT1=3有背景显示且框
-架阴影在顶边;默认为0
211 void bk(UN x)
212 {Tx4b(11,x,0,0);}
213 //阴影颜色x=0-7
214 void yy_ys(UN x)
215 {Tx4b(12,x,0,0);}
216
217 //框架效果;0-1;默认为1
218 void fxg(UN x)
219 {Tx4b(13,x,0,0);}
220
221 ////0-2;0=无阴影;1=微阴影;2=强阴影;开关及颜色都在 行距函数里控制
222 void yykg(UN x)
223 {Tx4b(14,x,0,0);}
224 //0-1;0不闪,1闪
225 void blinking(UN x)
226 {Tx4b(15,x,0,0);}
227
228 void lxfszf()
229 {Tx4b(16,0,0,0);
C51 COMPILER V7.06 QL300SPI 11/23/2007 13:55:54 PAGE 5
230 1
231 1 }
232
233 //写入1个用户自定义字符点阵数据到指定的用户RAM区;sz[1]=0-7,第二个字节为用户区号//
234
235 void wcode(UN idata zfc[],UN x)
236 {UN i;
237 1 Tx4b(17,x,0,0);
238 1 i=0xff;
239 1 do
240 1 {i++;write_1byte(zfc[i]);}//发送字符代码
241 1 while(i<96-1);
242 1
243 1
244 1 delay_ms(3);
245 1 }
246
247 //复制1指定的FLASH区(0-15)的点阵数据到指定RAM区 (0-7)
248 void copy_f_r(UN m,n)
249 {Tx4b(19,m,n,0);delay_ms(3);}
250
251 void disram(UN x)
252 {Tx4b(20,x,0,0);}
253
254
255
256 void Tx4b(UN a,b,c,d)//连续写4个字节--1个指令
257 {write_1byte(a);write_1byte(b);write_1byte(c);write_1byte(d);delay_ms(1);}
258
259
260 void csf_spi(void)//初始化SPI
261 {
262 1 spics=1;
263 1 spiclk=0;
264 1 }
265
266
267 void write_1byte(unsigned char x)//写1个字节
268 { unsigned char i=0;
269 1 bm=x;
270 1 spics=0;
271 1 // _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
272 1 do
273 1 {spidi=bm0;
274 2
275 2 // _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
276 2 spiclk=1;
277 2 // _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
278 2 spiclk=0;
279 2 // _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
280 2 bm=bm>>1;
281 2 i++;
282 2 // _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
283 2 }
284 1 while (i!=8);
285 1 spics=1;
286 1 // _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
287 1 }
288
289 void delay_ms(unsigned int nMs)//豪秒级的延时<65535ms
290 {
291 1 unsigned int n=0;
C51 COMPILER V7.06 QL300SPI 11/23/2007 13:55:54 PAGE 6
292 1 TMOD=0x21;
293 1 TR0=1;
294 1 while(n<nMs)////利用T0做定时计数器,循环采样,直到达到定时值
295 1 {
296 2 TH0=0;
297 2 TL0=20;
298 2 while(TH0<4)
299 2 {;
300 3 }
301 2 n++;
302 2 }
303 1 TR0=0;
304 1 }
305
306 void delay(unsigned int x)
307 {do{x--;}
308 1 while(x!=0);
309 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 970 ----
CONSTANT SIZE = 96 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 22
IDATA SIZE = ---- 1
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 9 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -