📄 9325tp.lst
字号:
247 1
248 1 for(H=0;H<240;H++)
249 1 {
250 2 for(V=160;V<200;V++)
251 2 Write_Data(0xf8,0x1f);
252 2 }
253 1
254 1 for(H=0;H<240;H++)
255 1 {
256 2 for(V=200;V<240;V++)
257 2 Write_Data(0x07,0xff);
258 2 }
259 1
260 1 for(H=0;H<240;H++)
261 1 {
262 2 for(V=240;V<280;V++)
263 2 Write_Data(0xff,0xff);
264 2 }
265 1
266 1 for(H=0;H<240;H++)
267 1 {
268 2 for(V=280;V<320;V++)
269 2 Write_Data(0x00,0x00);
270 2 }
271 1
272 1 }
273
274 void show_photo(void)
275 {
276 1 unsigned char j;
277 1 unsigned int i;
278 1 unsigned long s=0;
279 1
280 1 LCD_SetPos(0,240,0,320);//320x240
281 1
282 1 for (i=0;i<75;i++)
283 1 {
284 2 for (j=0;j<240;j++)
285 2 Write_Data(0xff,0xff);
286 2
287 2 }
288 1
289 1 for (i=0;i<170;i++)
290 1 {
291 2 for (j=0;j<55;j++)
292 2 Write_Data(0xff,0xff);
293 2
294 2 for (j=0;j<130;j++)
295 2 Write_Data(pic[s++],pic[s++]);
296 2
C51 COMPILER V7.06 9325TP 12/29/2009 09:12:51 PAGE 6
297 2 for (j=0;j<55;j++)
298 2 Write_Data(0xff,0xff);
299 2 }
300 1
301 1 for (i=0;i<75;i++)
302 1 {
303 2 for (j=0;j<240;j++)
304 2 Write_Data(0xff,0xff);
305 2
306 2 }
307 1
308 1 }
309
310 //=======================================================//
311
312
313
314 void Write_Cmd_Data (unsigned char x,unsigned int y)
315 {
316 1 unsigned char m,n;
317 1 m=y>>8;
318 1 n=y;
319 1 Write_Cmd(0x00,x);
320 1 Write_Data(m,n);
321 1
322 1 }
323
324
325 void Write_Data_U16(unsigned int y)
326 {
327 1 unsigned char m,n;
328 1 m=y>>8;
329 1 n=y;
330 1 Write_Data(m,n);
331 1
332 1 }
333 //====================== 写命令 ==========================//
334
335 void Write_Cmd(unsigned char DH,unsigned char DL)
336 {
337 1
338 1
339 1
340 1 CS=0;
341 1 RS=0;
342 1
343 1 P0=DH;
344 1 RW=0;
345 1 RW=1;
346 1
347 1 P0=DL;
348 1
349 1 RW=0;
350 1 RW=1;
351 1 CS=1;
352 1 }
353
354 //===================== 写数据 ===========================//
355
356 void Write_Data(unsigned char DH,unsigned char DL)
357 {
358 1
C51 COMPILER V7.06 9325TP 12/29/2009 09:12:51 PAGE 7
359 1
360 1
361 1 CS=0;
362 1
363 1 RS=1;
364 1 P0=DH;
365 1 RW=0;
366 1 RW=1;
367 1
368 1 P0=DL;
369 1 RW=0;
370 1 RW=1;
371 1 CS=1;
372 1 }
373
374
375
376
377
378 //=======================================================
379 void delayms(unsigned int count)
380 {
381 1 int i,j;
382 1 for(i=0;i<count;i++)
383 1 {
384 2 for(j=0;j<260;j++);
385 2 }
386 1 }
387
388
389
390 //===================== 初始化代码 =======================//
391
392 void ILI9325_Initial(void)
393 {
394 1
395 1
396 1 delayms(50);
397 1 Write_Cmd_Data(0x0001,0x0100);
398 1 Write_Cmd_Data(0x0002,0x0700);
399 1 Write_Cmd_Data(0x0003,0x1030);
400 1 Write_Cmd_Data(0x0004,0x0000);
401 1 Write_Cmd_Data(0x0008,0x0207);
402 1 Write_Cmd_Data(0x0009,0x0000);
403 1 Write_Cmd_Data(0x000A,0x0000);
404 1 Write_Cmd_Data(0x000C,0x0000);
405 1 Write_Cmd_Data(0x000D,0x0000);
406 1 Write_Cmd_Data(0x000F,0x0000);
407 1 //power on sequence VGHVGL
408 1 Write_Cmd_Data(0x0010,0x0000);
409 1 Write_Cmd_Data(0x0011,0x0007);
410 1 Write_Cmd_Data(0x0012,0x0000);
411 1 Write_Cmd_Data(0x0013,0x0000);
412 1 //vgh
413 1 Write_Cmd_Data(0x0010,0x1290);
414 1 Write_Cmd_Data(0x0011,0x0227);
415 1 //delayms(100);
416 1 //vregiout
417 1 Write_Cmd_Data(0x0012,0x001d); //0x001b
418 1 //delayms(100);
419 1 //vom amplitude
420 1 Write_Cmd_Data(0x0013,0x1500);
C51 COMPILER V7.06 9325TP 12/29/2009 09:12:51 PAGE 8
421 1 //delayms(100);
422 1 //vom H
423 1 Write_Cmd_Data(0x0029,0x0018);
424 1 Write_Cmd_Data(0x002B,0x000D);
425 1
426 1 //gamma
427 1 Write_Cmd_Data(0x0030,0x0004);
428 1 Write_Cmd_Data(0x0031,0x0307);
429 1 Write_Cmd_Data(0x0032,0x0002);// 0006
430 1 Write_Cmd_Data(0x0035,0x0206);
431 1 Write_Cmd_Data(0x0036,0x0408);
432 1 Write_Cmd_Data(0x0037,0x0507);
433 1 Write_Cmd_Data(0x0038,0x0204);//0200
434 1 Write_Cmd_Data(0x0039,0x0707);
435 1 Write_Cmd_Data(0x003C,0x0405);// 0504
436 1 Write_Cmd_Data(0x003D,0x0F02);
437 1 //ram
438 1 Write_Cmd_Data(0x0050,0x0000);
439 1 Write_Cmd_Data(0x0051,0x00EF);
440 1 Write_Cmd_Data(0x0052,0x0000);
441 1 Write_Cmd_Data(0x0053,0x013F);
442 1 Write_Cmd_Data(0x0060,0xA700);
443 1 Write_Cmd_Data(0x0061,0x0001);
444 1 Write_Cmd_Data(0x006A,0x0000);
445 1 //
446 1 Write_Cmd_Data(0x0080,0x0000);
447 1 Write_Cmd_Data(0x0081,0x0000);
448 1 Write_Cmd_Data(0x0082,0x0000);
449 1 Write_Cmd_Data(0x0083,0x0000);
450 1 Write_Cmd_Data(0x0084,0x0000);
451 1 Write_Cmd_Data(0x0085,0x0000);
452 1 //
453 1 Write_Cmd_Data(0x0090,0x0010);
454 1 Write_Cmd_Data(0x0092,0x0600);
455 1 Write_Cmd_Data(0x0093,0x0003);
456 1 Write_Cmd_Data(0x0095,0x0110);
457 1 Write_Cmd_Data(0x0097,0x0000);
458 1 Write_Cmd_Data(0x0098,0x0000);
459 1 Write_Cmd_Data(0x0007,0x0133);
460 1
461 1
462 1
463 1 // Write_Cmd_Data(0x0022);//
464 1 }
465
466
467
468
469
470
471
472 /*===========================================================*/
473
474 /*************************************************************
475 函数名称:LCD_DefineDispWindow
476 功 能:定义显示窗体
477 参 数:x0: 窗体中X坐标中较小者
478 x1: 窗体中X坐标中较大者
479 y0: 窗体中Y坐标中较小者
480 y1: 窗体中Y坐标中较大者
481 返 回 值:无
482 *************************************************************/
C51 COMPILER V7.06 9325TP 12/29/2009 09:12:51 PAGE 9
483 static void LCD_SetPos(unsigned int x0,unsigned int x1,unsigned int y0,unsigned int y1)
484 {
485 1 Write_Cmd_Data(WINDOW_XADDR_START,x0);
486 1 Write_Cmd_Data(WINDOW_XADDR_END,x1);
487 1 Write_Cmd_Data(WINDOW_YADDR_START,y0);
488 1 Write_Cmd_Data(WINDOW_YADDR_END,y1);
489 1 Write_Cmd_Data(GRAM_XADDR,x0);
490 1 Write_Cmd_Data(GRAM_YADDR,y0);
491 1 Write_Cmd (0x00,0x22);//LCD_WriteCMD(GRAMWR);
492 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 2563 ----
CONSTANT SIZE = 3816 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 114
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 + -