找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6889|回復(fù): 0
收起左側(cè)

51單片機:1602液晶顯示歡迎界面源程序

[復(fù)制鏈接]
ID:103513 發(fā)表于 2016-1-17 00:56 | 顯示全部樓層 |閱讀模式

  1. #include<reg52.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. uchar code table[]="hello! jasper";   //寫字符串時用“”而不是{ }了
  5. uchar code table1[]="   xm.dabiao    ";
  6. sbit lcden=P3^4;
  7. sbit lcdrs=P3^5;
  8. sbit dula=P2^6;     
  9. sbit wela=P2^7;  
  10. uchar num;
  11. void delay(uint z)     //延時
  12. {
  13. uint x,y;
  14. for(x=z;x>0;x--)
  15.   for(y=110;y>0;y--);
  16. }
  17. void write_com(uchar com) //寫指令函數(shù)
  18. {
  19. lcdrs=0;   
  20. P0=com;
  21. delay(5);   
  22. lcden=1;   
  23. delay(5);
  24. lcden=0;
  25. }
  26. void write_data(uchar date)   //寫數(shù)據(jù) 函數(shù)
  27. {
  28. lcdrs=1;
  29. P0=date;
  30. delay(5);
  31. lcden=1;
  32. delay(5);
  33. lcden=0;
  34. }
  35. void init()
  36. {
  37. dula=0;           //初始化,關(guān)斷數(shù)碼管
  38. wela=0;
  39. lcden=0;
  40. write_com(0x38);     
  41. write_com(0x0e);   
  42. write_com(0x06);  
  43. write_com(0x01);  
  44. // write_com(0x80);  
  45. write_com(0x80+0x10);  
  46. }
  47. void main()
  48. {
  49. init();
  50. for(num=0;num<13;num++)  
  51. {        
  52.   write_data(table[num]);  
  53.   delay(20);  
  54. }
  55. // write_com(1);   //清屏
  56. //----------------------------再寫第二行
  57. write_com(0x80+0x51);   
  58. for(num=0;num<16;num++)
  59. {
  60.   write_data(table1[num]);
  61.   delay(20);
  62. }
  63. for(num=0;num<16;num++)
  64. {
  65.   write_com(0x18);   //由code控制位 表算得18,整屏左移
  66.   delay(160);  
  67. }
  68. while(1);
  69. }
  70. //-------------------------
復(fù)制代碼



回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表