请教51单片机的12864液晶显示问题

2019-07-16 07:16发布

请教51单片机的12864液晶显示问题



麻烦高手帮忙解释fyd12864液晶的这个程序,我就是搞不懂,先谢谢了

  1. #include<reg52.h>
  2. #define uchar unsigned char  

  3. #define uint unsigned int
  4. uchar code HZ12[]={"欢迎您!"};

  5. uchar code HZ16[]={"学习单片机!"};
  6. /*void init()
  7. {
  8. TMOD=0x20;
  9. //设置定时器1为工作方式2
  10. TH1=0xfd;     //装入初值
  11. TL1=0xfd;
  12. TR1=1; //启动定时器1

  13. SCON=0x50; //选择串行口为工作方式2
  14. EA=1;
  15. ES=1;
  16. }*/

  17. void send_char(uchar sendc)
  18. {
  19. SBUF=sendc;
  20. while(ti==0);

  21. TI=0;
  22. }
  23. void delay(uchar x)
  24. {
  25. int i,j;

  26. for(i=0;i<=x;i++)
  27. for(j=110;j>0;j--);
  28. }

  29. void display(uchar a,uchar x,uchar y,uchar *p)
  30. {
  31.   send_char(a);

  32. send_char(x);
  33. send_char(y);
  34. while(*p!='')
  35. {
  36. send_char(*p);

  37. p++;
  38. }
  39. send_char(0x0d);
  40. send_char(0x0a);

  41. }


  42. void main()
  43. {
  44. TMOD=0x20;
  45. TL1=0xfd;
  46. TH1=0xfd;

  47. SCON=0x58;
  48. PCON=0x00;
  49. TR1=1;
  50. EA=1;
  51. ES=1;
  52. display(HZ12);

  53. delay(100);
  54. send_char(0x12);
  55. send_char(0);
  56. delay(100);

  57. display(HZ16);
  58. delay(100);
  59. while(1);
  60. }
复制代码
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。