📄 c8051f330_camera.lst
字号:
#elif AM==001
262 1 TftWrite(0x0020,0x00ef);
263 1 TftWrite(0x0021,0x013f);
264 1 #elif AM==010
TftWrite(0x0020,0x0000);
TftWrite(0x0021,0x013f);
#elif AM==011
TftWrite(0x0020,0x0000);
TftWrite(0x0021,0x013f);
#elif AM==100
TftWrite(0x0020,0x00ef);
TftWrite(0x0021,0x0000);
#elif AM==101
TftWrite(0x0020,0x00ef);
TftWrite(0x0021,0x0000);
#elif AM==110
TftWrite(0x0020,0x0000);
TftWrite(0x0021,0x0000);
#elif AM==111
TftWrite(0x0020,0x0000);
TftWrite(0x0021,0x0000);
#endif
283 1 TftWrite(0x0080, 0x0000);
284 1 TftWrite(0x0081, 0x0000);
285 1 TftWrite(0x0082, 0x0000);
286 1 TftWrite(0x0083, 0x0000);
287 1 TftWrite(0x0084, 0x0000);
288 1 TftWrite(0x0085, 0x0000);
C51 COMPILER V9.00 C8051F330_CAMERA 09/22/2012 14:17:10 PAGE 6
289 1 TftWrite(0x0090, 0x0010);
290 1 TftWrite(0x0092, 0x0000);
291 1 TftWrite(0x0093, 0x0003);
292 1 TftWrite(0x0095, 0x0110);
293 1 TftWrite(0x0097, 0x0000);
294 1 TftWrite(0x0098, 0x0000);
295 1 TftWrite(0x0007, 0x0173);
296 1 delay_ms(1000);
297 1
298 1
299 1
300 1 }
301
302
303 void Tft_WR_DATA16(unsigned int inputdata)
304 {
305 1 unsigned int inputdatah;
306 1 unsigned int inputdatal;
307 1 unsigned int x;
308 1 x=inputdata;
309 1 inputdatal=inputdata&0x00ff;
310 1 inputdatah=(inputdata&0xff00)>>8;
311 1 P1MDOUT= 0XFF;
312 1 Tft_RS_PIN=1;
313 1 P1=0x00;
314 1 P1=inputdatah;
315 1 Tft_WR_PIN=0;
316 1 Tft_WR_PIN=1;
317 1 P1=0x00;
318 1 P1=inputdatal;
319 1 Tft_WR_PIN=0;
320 1 Tft_WR_PIN=1;
321 1 P1MDOUT= 0X00;
322 1
323 1 }
324
325
326 void TftWrite16(unsigned int index)
327 {
328 1 unsigned int indexh;
329 1 unsigned int indexl;
330 1 indexh=(index&0xff00)>>8;
331 1 indexl=index&0x00ff;
332 1 P1MDOUT= 0XFF;
333 1 Tft_RS_PIN=0;
334 1
335 1 P1=0x00;
336 1 P1=indexh;
337 1 Tft_WR_PIN=0;
338 1 Tft_WR_PIN=1;
339 1
340 1 P1=0x00;
341 1 P1=indexl;
342 1
343 1 Tft_WR_PIN=0;
344 1 Tft_WR_PIN=1;
345 1
346 1 P1MDOUT= 0X00;
347 1
348 1 }
349
350
C51 COMPILER V9.00 C8051F330_CAMERA 09/22/2012 14:17:10 PAGE 7
351 void TftWrite(unsigned int index,unsigned int inputdata)
352 {
353 1 unsigned int x;
354 1 unsigned int y;
355 1 unsigned int indexh;
356 1 unsigned int indexl;
357 1 unsigned int inputdatah;
358 1 unsigned int inputdatal;
359 1 x=index;
360 1 y=inputdata;
361 1 indexh=(index&0xff00)>>8;
362 1 indexl=index&0x00ff;
363 1 inputdatah=(inputdata&0xff00)>>8;
364 1 inputdatal=inputdata&0x00ff;
365 1 P1MDOUT= 0XFF;
366 1 Tft_RS_PIN= 0;
367 1
368 1 P1=0;
369 1 P1=indexh;
370 1 Tft_WR_PIN=0;
371 1 Tft_WR_PIN=1;
372 1 P1=0;
373 1 P1=indexl;
374 1 Tft_WR_PIN=0;
375 1 Tft_WR_PIN=1;
376 1
377 1 Tft_RS_PIN=1;
378 1 P1=0;
379 1 P1=inputdatah;
380 1 Tft_WR_PIN=0;
381 1 Tft_WR_PIN=1;
382 1 P1=0;
383 1 P1=inputdatal;
384 1 Tft_WR_PIN=0;
385 1 Tft_WR_PIN=1;
386 1
387 1 P1MDOUT= 0X00;
388 1
389 1 }
390
391 void TftClear(unsigned int Color)
392 {
393 1 unsigned long index = 0;
394 1
395 1 TftWrite(0x0050,0x00);
396 1 TftWrite(0x0051,239);
397 1 TftWrite(0x0052,0x00);
398 1 TftWrite(0x0053,319);
399 1 TftWrite(0x0020,0x0000);
400 1 TftWrite(0x0021,0x0000);
401 1 TftWrite16(0x0022);
402 1
403 1 for(index = 0; index < 76800; index++)
404 1 {
405 2 Tft_WR_DATA16(Color);
406 2
407 2 }
408 1
409 1 }
410
411 void TftWR_SingleStr(unsigned char inputdata,unsigned int color,unsigned int xcolor)
412 {
C51 COMPILER V9.00 C8051F330_CAMERA 09/22/2012 14:17:10 PAGE 8
413 1
414 1 unsigned char avl,i,n;
415 1 TftWrite16(0x0022);
416 1 for (i=0;i<16;i++)
417 1 {
418 2 avl=(english[inputdata-32][i]);
419 2 for (n=0;n<8;n++)
420 2 {
421 3 if(avl&0x80) Tft_WR_DATA16(color);
422 3 else Tft_WR_DATA16(xcolor);
423 3
424 3 avl<<=1;
425 3 }
426 2 }
427 1 }
428 void TftWR_Str(unsigned int x,unsigned int y,unsigned char *s,unsigned int color,unsigned int xcolor)
429 {
430 1 unsigned int k=0;
431 1 while (*s)
432 1 {
433 2 Tft_SetBackground(y,x+k,15,8);
434 2 TftWR_SingleStr( *s,color,xcolor);
435 2 k=k+8;
436 2 s++;
437 2
438 2 }
439 1
440 1 }
441
442
443 void Tft_SetBackground(unsigned int StartX,unsigned int StartY,unsigned int LongX,unsigned int LongY)
444 {
445 1
446 1 #if AM==000
Tft_SetCursor(StartX+LongX-1,312-StartY+LongY-1);
#elif AM==001
450 1 Tft_SetCursor(StartX+LongX-1,312-StartY+LongY-1);
451 1
452 1 #elif AM==010
Tft_SetCursor(StartX,312-StartY+LongY-1);
#elif AM==011
Tft_SetCursor(StartX,312-StartY+LongY-1);
#elif AM==100
Tft_SetCursor(StartX+LongX-1,312-StartY);
#elif AM==101
Tft_SetCursor(StartX+LongX-1,312-StartY);
#elif AM==110
Tft_SetCursor(StartX,312-StartY);
#elif AM==111
Tft_SetCursor(StartX,312-StartY);
#endif
471 1
472 1 TftWrite(0x0050,StartX);
473 1 TftWrite(0x0051,StartX+LongX-1);
474 1 TftWrite(0x0052,312-StartY);
C51 COMPILER V9.00 C8051F330_CAMERA 09/22/2012 14:17:10 PAGE 9
475 1 TftWrite(0x0053,312-StartY+LongY-1);
476 1 }
477
478 void Tft_SetCursor(unsigned int Xpos, unsigned int Ypos)
479 {
480 1
481 1 TftWrite(0x20, Xpos);
482 1 TftWrite(0x21, Ypos);
483 1 }
484
485
486
487 void set_Cmos7670reg(void)
488 {
489 1
490 1 flag=0;
491 1 WrCmos7670(0x3a, 0x04);
492 1 WrCmos7670(0x40, 0xd0);
493 1 WrCmos7670(0x12, 0x14);
494 1 WrCmos7670(0x32, 0x80);
495 1 WrCmos7670(0x17, 0x16);
496 1 WrCmos7670(0x18, 0x04);
497 1 WrCmos7670(0x19, 0x02);
498 1 WrCmos7670(0x1a, 0x7b);
499 1 WrCmos7670(0x03, 0x06);
500 1 WrCmos7670(0x0c, 0x04);
501 1 WrCmos7670(0x3e, 0x00);
502 1 WrCmos7670(0x70, 0x3a);
503 1 WrCmos7670(0x71, 0x35);
504 1 WrCmos7670(0x72, 0x11);
505 1 WrCmos7670(0x73, 0x00);
506 1 WrCmos7670(0xa2, 0x02);
507 1 WrCmos7670(0x11, 0x81);
508 1
509 1 WrCmos7670(0x7a, 0x20);
510 1 WrCmos7670(0x7b, 0x1c);
511 1 WrCmos7670(0x7c, 0x28);
512 1 WrCmos7670(0x7d, 0x3c);
513 1 WrCmos7670(0x7e, 0x55);
514 1 WrCmos7670(0x7f, 0x68);
515 1 WrCmos7670(0x80, 0x76);
516 1 WrCmos7670(0x81, 0x80);
517 1 WrCmos7670(0x82, 0x88);
518 1 WrCmos7670(0x83, 0x8f);
519 1 WrCmos7670(0x84, 0x96);
520 1 WrCmos7670(0x85, 0xa3);
521 1 WrCmos7670(0x86, 0xaf);
522 1 WrCmos7670(0x87, 0xc4);
523 1 WrCmos7670(0x88, 0xd7);
524 1 WrCmos7670(0x89, 0xe8);
525 1
526 1 WrCmos7670(0x13, 0xe0);
527 1 WrCmos7670(0x00, 0x00);
528 1
529 1 WrCmos7670(0x10, 0x00);
530 1 WrCmos7670(0x0d, 0x00);
531 1 WrCmos7670(0x14, 0x28);
532 1 WrCmos7670(0xa5, 0x05);
533 1 WrCmos7670(0xab, 0x07);
534 1 WrCmos7670(0x24, 0x75);
535 1 WrCmos7670(0x25, 0x63);
536 1 WrCmos7670(0x26, 0xA5);
C51 COMPILER V9.00 C8051F330_CAMERA 09/22/2012 14:17:10 PAGE 10
537 1 WrCmos7670(0x9f, 0x78);
538 1 WrCmos7670(0xa0, 0x68);
539 1 WrCmos7670(0xa1, 0x03);
540 1 WrCmos7670(0xa6, 0xdf);
541 1 WrCmos7670(0xa7, 0xdf);
542 1 WrCmos7670(0xa8, 0xf0);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -