久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 5237|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

無(wú)字庫(kù)LCD12864顯示程序資料分享!

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主

  1. #include <reg51.h>
  2. #include <intrins.h>
  3. #define uint unsigned int
  4. #define uchar unsigned char

  5. #define Port P3 //LCD12864數(shù)據(jù)線(xiàn)

  6. sbit RS=P0^3; // 數(shù)據(jù)\指令 選擇
  7. sbit RW=P0^2; // 讀\寫(xiě) 選擇
  8. sbit EN=P0^1; // 讀\寫(xiě)使能
  9. sbit cs1=P0^5; // 片選1
  10. sbit cs2=P0^4; // 片選2
  11.         

  12. /********************************/
  13. /*  定義中文字庫(kù)                */
  14. /********************************/

  15. uchar code Hzk[]={
  16. /*--  文字:  各  --*/
  17. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  18. 0x00,0x20,0x20,0x10,0x08,0x8F,0xB4,0x44,0x44,0xA4,0x9C,0x04,0x00,0x00,0x00,0x00,
  19. 0x02,0x02,0x02,0x01,0x7F,0x42,0x42,0x42,0x42,0x42,0x42,0x7F,0x01,0x03,0x01,0x00,

  20. /*--  文字:  位  --*/
  21. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  22. 0x00,0xC0,0x30,0xEC,0x03,0x2A,0xC8,0x09,0x0A,0x0E,0x08,0xE8,0x48,0x08,0x00,0x00,
  23. 0x01,0x00,0x00,0x7F,0x20,0x20,0x20,0x27,0x20,0x30,0x2E,0x21,0x20,0x20,0x20,0x00,

  24. /*--  文字:  單  --*/
  25. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  26. 0x00,0x00,0xF8,0x28,0x29,0x2E,0x2A,0xF8,0x28,0x2C,0x2B,0x2A,0xF8,0x00,0x00,0x00,
  27. 0x08,0x08,0x0B,0x09,0x09,0x09,0x09,0xFF,0x09,0x09,0x09,0x09,0x0B,0x08,0x08,0x00,

  28. /*--  文字:  機(jī)  --*/
  29. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  30. 0x08,0x08,0xC8,0xFF,0x48,0x88,0x08,0x00,0xFE,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,
  31. 0x04,0x03,0x00,0xFF,0x00,0x41,0x30,0x0C,0x03,0x00,0x00,0x00,0x3F,0x40,0x78,0x00,

  32. /*--  文字:  愛(ài)  --*/
  33. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  34. 0x00,0x40,0xB2,0x96,0x9A,0x92,0xF6,0x9A,0x93,0x91,0x99,0x97,0x91,0x90,0x30,0x00,
  35. 0x40,0x20,0xA0,0x90,0x4C,0x47,0x2A,0x2A,0x12,0x1A,0x26,0x22,0x40,0xC0,0x40,0x00,

  36. /*--  文字:  好  --*/
  37. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  38. 0x10,0x10,0xF0,0x1F,0x10,0xF0,0x80,0x82,0x82,0x82,0xF2,0x8A,0x86,0x82,0x80,0x00,
  39. 0x80,0x43,0x22,0x14,0x0C,0x73,0x20,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,0x00,

  40. /*--  文字:  者  --*/
  41. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  42. 0x00,0x20,0x24,0x24,0x24,0x24,0xA4,0xBF,0x64,0x24,0x34,0x28,0x26,0x24,0x20,0x00,
  43. 0x04,0x04,0x04,0x02,0x02,0xFF,0x49,0x49,0x49,0x49,0x49,0x49,0xFF,0x00,0x00,0x00,

  44. /*--  文字:  你  --*/
  45. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  46. 0x80,0x40,0xF0,0x2C,0x43,0x20,0x98,0x0F,0x0A,0xE8,0x08,0x88,0x28,0x1C,0x08,0x00,
  47. 0x00,0x00,0x7F,0x00,0x10,0x0C,0x03,0x21,0x40,0x3F,0x00,0x00,0x03,0x1C,0x08,0x00,

  48. /*--  文字:  們  --*/
  49. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  50. 0x80,0x40,0xF0,0x1C,0x03,0xF0,0x01,0x0E,0x04,0x00,0x04,0x04,0x04,0xFC,0x00,0x00,
  51. 0x00,0x00,0x7F,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x20,0x40,0x3F,0x00,0x00,

  52. /*--  文字:  辛  --*/
  53. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  54. 0x80,0x84,0x84,0x94,0xA4,0xC4,0x85,0x86,0x84,0xC4,0xA4,0x94,0x84,0x84,0x80,0x00,
  55. 0x00,0x04,0x04,0x04,0x04,0x04,0x04,0xFF,0x04,0x04,0x04,0x04,0x04,0x00,0x00,0x00,

  56. /*--  文字:  苦  --*/
  57. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  58. 0x40,0x44,0x44,0x44,0x44,0x5F,0x44,0xF4,0x44,0x44,0x5F,0x44,0x44,0x44,0x44,0x00,
  59. 0x00,0x00,0x00,0x7E,0x22,0x22,0x22,0x23,0x22,0x22,0x22,0x7E,0x00,0x00,0x00,0x00,

  60. /*--  文字:  了  --*/
  61. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  62. 0x00,0x02,0x02,0x02,0x02,0x02,0x02,0xF2,0x12,0x0A,0x0A,0x06,0x06,0x02,0x00,0x00,
  63. 0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  64. /*--  文字:  希  --*/
  65. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  66. 0x20,0x20,0x30,0x30,0xA9,0x6A,0x3A,0x24,0xE4,0x2A,0x29,0x30,0x20,0x20,0x20,0x00,
  67. 0x08,0x04,0x02,0x01,0x3F,0x01,0x01,0x01,0xFF,0x01,0x21,0x61,0x3F,0x00,0x00,0x00,

  68. /*--  文字:  望  --*/
  69. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  70. 0x04,0x04,0xFC,0x85,0x46,0x24,0x04,0x80,0x7E,0x2A,0x2A,0xAA,0xAA,0xFE,0x00,0x00,
  71. 0x00,0x40,0x42,0x4A,0x4A,0x4A,0x4A,0x7E,0x4A,0x4A,0x4A,0x4A,0x4A,0x42,0x40,0x00,

  72. /*--  文字:  大  --*/
  73. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  74. 0x20,0x20,0x20,0x20,0x20,0x20,0xA0,0x7F,0xA0,0x20,0x20,0x20,0x20,0x20,0x20,0x00,
  75. 0x00,0x80,0x40,0x20,0x10,0x0C,0x03,0x00,0x01,0x06,0x08,0x30,0x60,0xC0,0x40,0x00,

  76. /*--  文字:  家  --*/
  77. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  78. 0x00,0x18,0x04,0x14,0x94,0x94,0xD5,0xB6,0x14,0x14,0x94,0x04,0x14,0x0C,0x04,0x00,
  79. 0x00,0x29,0x29,0x15,0x14,0x4A,0x89,0x44,0x3F,0x06,0x09,0x09,0x10,0x30,0x10,0x00,

  80. /*--  文字:  能  --*/
  81. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  82. 0x10,0xB8,0x97,0x92,0x90,0x94,0xB8,0x10,0x00,0x7F,0x48,0x48,0x44,0x74,0x20,0x00,
  83. 0x00,0xFF,0x0A,0x0A,0x4A,0x8A,0x7F,0x00,0x00,0x3F,0x44,0x44,0x42,0x72,0x20,0x00,

  84. /*--  文字:  多  --*/
  85. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  86. 0x00,0x00,0x00,0x20,0x90,0x88,0x54,0x53,0xA2,0x22,0x12,0x0A,0x06,0x00,0x00,0x00,
  87. 0x00,0x81,0x89,0x89,0x44,0x44,0x42,0x25,0x29,0x11,0x11,0x09,0x05,0x03,0x01,0x00,

  88. /*--  文字:  多  --*/
  89. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  90. 0x00,0x00,0x00,0x20,0x90,0x88,0x54,0x53,0xA2,0x22,0x12,0x0A,0x06,0x00,0x00,0x00,
  91. 0x00,0x81,0x89,0x89,0x44,0x44,0x42,0x25,0x29,0x11,0x11,0x09,0x05,0x03,0x01,0x00,

  92. /*--  文字:  交  --*/
  93. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  94. 0x00,0x08,0x88,0x48,0x38,0x28,0x09,0x0E,0x0C,0x08,0x98,0x28,0x68,0x48,0x08,0x00,
  95. 0x00,0x80,0x80,0x40,0x41,0x22,0x14,0x18,0x0C,0x16,0x23,0x61,0xC0,0x40,0x00,0x00,

  96. /*--  文字:  流  --*/
  97. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  98. 0x10,0x60,0x01,0x86,0x60,0x04,0x44,0x64,0x55,0x4E,0x44,0x64,0xC4,0x04,0x04,0x00,
  99. 0x04,0x04,0xFC,0x03,0x40,0x30,0x0F,0x00,0x00,0x7F,0x00,0x3F,0x40,0x40,0x70,0x00,

  100. /*--  文字:  學(xué)  --*/
  101. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  102. 0x40,0x30,0x10,0x12,0x5C,0x54,0x50,0x51,0x5E,0xD4,0x50,0x18,0x57,0x32,0x10,0x00,
  103. 0x00,0x02,0x02,0x02,0x02,0x02,0x42,0x82,0x7F,0x02,0x02,0x02,0x02,0x02,0x02,0x00,

  104. /*--  文字:  習(xí)  --*/
  105. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  106. 0x00,0x00,0x02,0x02,0x0A,0x12,0x22,0x62,0x02,0x82,0x82,0x42,0x02,0xFE,0x00,0x00,
  107. 0x00,0x00,0x04,0x0C,0x04,0x02,0x02,0x01,0x01,0x00,0x20,0x40,0x80,0x7F,0x00,0x00,

  108. /*--  文字:  24   --*/
  109. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16   --*/
  110. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  111. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  112. };


  113. /****************************************/
  114. /* 定義ASCII字庫(kù)8列*16行                */
  115. /****************************************/
  116. uchar code Ezk[]={

  117. /*--  文字:  Q  --*/
  118. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  119. 0xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x0F,0x18,0x24,0x24,0x38,0x50,0x4F,0x00,

  120. /*--  文字:  Q  --*/
  121. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  122. 0xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x0F,0x18,0x24,0x24,0x38,0x50,0x4F,0x00,

  123. /*--  文字:  1  --*/
  124. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  125. 0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,

  126. /*--  文字:  1  --*/
  127. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  128. 0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,

  129. /*--  文字:  8  --*/
  130. /*--  新宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  131. 0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00,

  132. /*--  文字:  1  --*/
  133. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  134. 0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,

  135. /*--  文字:  8  --*/
  136. /*--  新宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  137. 0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00,

  138. /*--  文字:  2  --*/
  139. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  140. 0x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,

  141. /*--  文字:  6  --*/
  142. /*--  新宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  143. 0x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00,

  144. /*--  文字:  4  --*/
  145. /*--  新宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  146. 0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,

  147. /*--  文字:  1  --*/
  148. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  149. 0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,

  150. /*--  文字:  4  --*/
  151. /*--  新宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  152. 0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,


  153. /*--  文字:     --*/
  154. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  155. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  156. /*--  文字:     --*/
  157. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  158. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  159. /*--  文字:     --*/
  160. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  161. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  162. /*--  文字:     --*/
  163. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  164. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  165. /*--  文字:     --*/
  166. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  167. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  168. /*--  文字:     --*/
  169. /*--  宋體12;  此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16   --*/
  170. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  171. };

  172. /*狀態(tài)檢查,LCD是否忙*/
  173. void Checkbusy()               
  174. {
  175.    uchar dat;//狀態(tài)信息(判斷是否忙)
  176.    RS=0; // 數(shù)據(jù)\指令選擇,D/I(RS)=“L” ,表示 DB7∽DB0 為顯示指令數(shù)據(jù)
  177.    RW=1; //R/W=“H” ,E=“H”數(shù)據(jù)被讀到DB7∽DB0
  178.    do{
  179.       Port=0x00;
  180.       EN=1;        //EN下降源
  181.           _nop_(); //一個(gè)時(shí)鐘延時(shí)
  182.           dat=Port;
  183.       EN=0;
  184.           dat=(0x80 & dat);
  185.       }while(!(dat==0x00)); //僅當(dāng)?shù)?位為0時(shí)才可操作(判別busy信號(hào))
  186. }


  187. /*寫(xiě)命令到LCD中*/
  188. Wcmd(uchar cmd)
  189. {
  190.    Checkbusy();//狀態(tài)檢查,LCD是否忙
  191.    RS=0;         //向LCD發(fā)送命令。RS=0寫(xiě)指令,RS=1寫(xiě)數(shù)據(jù)
  192.    RW=0;//R/W=“L” ,E=“H→L”數(shù)據(jù)被寫(xiě)到 IR 或 DR
  193.    Port=cmd;         //com :命令
  194.    EN=1;//EN下降源
  195.    _nop_();
  196.    _nop_();
  197.    EN=0;
  198. }

  199. /*設(shè)置頁(yè) 0xb8是頁(yè)的首地址*/
  200. void Setpage(uchar page)        
  201. {
  202.   page=0xb8|page; //1011 1xxx 0<=page<=7 設(shè)定頁(yè)地址--X 0-7,8行為一頁(yè)64/8=8,共8頁(yè)
  203.   Wcmd(page);
  204. }

  205. /*設(shè)定顯示開(kāi)始行,0xc0是行的首地址*/
  206. void Setx(uchar x)            
  207. {
  208.   x=0xc0|x; //1100 0000
  209.   Wcmd(x); //設(shè)置從哪行開(kāi)始:0--63,一般從0 行開(kāi)始顯示
  210. }

  211. /*設(shè)定列地址--Y 0-63 ,0x40是列的首地址*/
  212. void Sety(uchar y)        
  213. {
  214.   y=y&0x3f; //column最大值為64,越出 0=<column<=63
  215.   y= 0x40|y; //01xx xxxx
  216.   Wcmd(y);
  217. }


  218. /*開(kāi)關(guān)顯示,0x3f是開(kāi)顯示,0x3e是關(guān)顯示*/
  219. void SetOnOff(uchar onoff)           
  220. {
  221.         onoff=0x3e|onoff; //0011 111x,onoff只能為0或者1
  222.      Wcmd(onoff);
  223. }

  224. /*寫(xiě)顯示數(shù)據(jù) */
  225. void Writedata(uchar dat)        
  226. {
  227.    Checkbusy();//狀態(tài)檢查,LCD是否忙
  228.    RS=1; //RS=0寫(xiě)指令,RS=1寫(xiě)數(shù)據(jù)
  229.    RW=0;////R/W=“L” ,E=“H→L”數(shù)據(jù)被寫(xiě)到 IR 或 DR
  230.    Port=dat;//dat:顯示數(shù)據(jù)
  231.    EN=1; //EN下降源
  232.    _nop_();
  233.    _nop_();
  234.    EN=0;
  235. }



  236. /*選擇屏幕screen: 0-全屏,1-左屏,2-右屏*/
  237. void SelectScreen(uchar screen)         
  238. {                                                  
  239.    switch(screen)
  240.    { case 0: cs1=0;//全屏
  241.              _nop_(); _nop_(); _nop_();
  242.              cs2=0;
  243.              _nop_(); _nop_(); _nop_();
  244.              break;
  245.      case 1: cs1=0;//左屏
  246.              _nop_(); _nop_(); _nop_();
  247.              cs2=1;
  248.              _nop_(); _nop_(); _nop_();
  249.              break;
  250.      case 2: cs1=1;//右屏
  251.              _nop_(); _nop_(); _nop_();
  252.              cs2=0;
  253.              _nop_(); _nop_(); _nop_();
  254.              break;
  255.    }
  256. }

  257. /*清屏screen: 0-全屏,1-左屏,2-右*/
  258. void ClearScreen(uchar screen)         
  259. {         
  260.      uchar i,j;
  261.      SelectScreen(screen);

  262.          for(i=0;i<8;i++)         //控制頁(yè)數(shù)0-7,共8頁(yè)
  263.          {
  264.                 Setpage(i);
  265.                         Sety(0);
  266.               for(j=0;j<64;j++)           //控制列數(shù)0-63,共64列
  267.                           {
  268.                   Writedata(0x00); //寫(xiě)點(diǎn)內(nèi)容,列地址自動(dòng)加1
  269.               }
  270.      }
  271.                                          
  272. }

  273. /*延時(shí)程序*/
  274. void        delay(uint z)               
  275. {
  276.         uint i,j;
  277.         for(i=0; i<z; i++)
  278.                 for(j = 0; j < 110; j++);
  279. }
  280. /*向上滾屏*//*這里用做滾動(dòng)顯示*/
  281. /*void        lcd_rol()                                       
  282. {
  283.         uint i;
  284.         for(i = 0; i < 64; i++)
  285.         {
  286.                 cs1=0; // 片選1
  287.                 SendCommandToLCD(0xc0+i);
  288.                 cs1=1;
  289.                
  290.             cs2=0;// 片選2
  291.                 SendCommandToLCD(0xc0+62-i);
  292.                 cs2=0; // 片選2
  293.                
  294.                 delay(6);
  295.         }
  296. }        
  297.   */
  298. /*初始化LCD*/
  299. void InitLCD()           
  300. {

  301.         Checkbusy();

  302.         SelectScreen(0);
  303.         SetOnOff(0); //關(guān)顯示

  304.         SelectScreen(0);
  305.         SetOnOff(1); //開(kāi)顯示

  306.         SelectScreen(0);
  307.         ClearScreen(0);//清屏

  308.         Setx(0); //開(kāi)始行:0

  309. }


  310. /*顯示全角漢字*/
  311. void Display(uchar ss,uchar page,uchar y,uchar number)
  312. {
  313.         int i;        //選屏參數(shù),pagr選頁(yè)參數(shù),column選列參數(shù),number選第幾漢字輸出
  314.                
  315.         SelectScreen(ss);
  316.         y=y&0x3f;

  317.         Setpage(page);        //寫(xiě)上半頁(yè)
  318.         Sety(y); //控制列
  319.         for(i=0;i<16;i++)  //控制16列的數(shù)據(jù)輸出
  320.         {
  321.         Writedata(Hzk[i+32*number]); //i+32*number漢字的前16個(gè)數(shù)據(jù)輸出
  322.         
  323.         }

  324.         Setpage(page+1);                 //寫(xiě)下半頁(yè)
  325.         Sety(y);           //控制列
  326.     for(i=0;i<16;i++)          //控制16列的數(shù)據(jù)輸出
  327.         {
  328.         Writedata(Hzk[i+32*number+16]);        //i+32*number+16漢字的后16個(gè)數(shù)據(jù)輸出
  329.         }

  330. }


  331. /*顯示半角漢字和數(shù)字和字母*/
  332. void Displayen(uchar ss,uchar page,uchar y,uchar number)
  333. {
  334.         uint i;//選屏參數(shù),pagr選頁(yè)參數(shù),column選列參數(shù),number選第幾漢字輸出
  335.                
  336.         SelectScreen(ss);
  337.         y=y&0x3f;

  338.         Setpage(page);        //寫(xiě)上半頁(yè)
  339.         Sety(y);
  340.            for(i=0;i<8;i++)
  341.         {
  342.         Writedata(Ezk[i+16*number]);
  343.         }
  344.         
  345.         Setpage(page+1);        //寫(xiě)下半頁(yè)
  346.         Sety(y);
  347.            for(i=0;i<8;i++)
  348.         {
  349.         Writedata(Ezk[i+16*number+8]);
  350.         }
  351. }  

  352. /*主函數(shù)*/
  353. void main()
  354. {  
  355.         uint i;
  356.            InitLCD();//初始12864

  357.            //ClearScreen(0);//清屏

  358.            Setx(0);//顯示開(kāi)始行

  359.            while(1)
  360.            {   
  361.         /* //        可以單個(gè)顯示
  362.                   Display(2,0,0*16,0);//
  363.                 Display(2,0,1*16,1);//
  364.                 Display(2,0,2*16,2);//
  365.                 Display(2,0,3*16,3);//
  366.                 Display(1,0,4*16,4);//
  367.                 Display(1,0,5*16,5);//
  368.                 Display(1,0,6*16,6);//         */

  369.                 /* 可以多個(gè)顯示,這里是4個(gè)一起顯示*/
  370.                    for(i=0;i<4;i++)
  371.                    {
  372.                         Display(1,0,i*16,i);//Display(選屏參數(shù)(cs0,cs1),pagr選頁(yè)參數(shù),column選列參數(shù),number選第幾漢字輸出)
  373.                         _nop_();
  374.                         Display(2,0,i*16,i+4);
  375.                          _nop_();
  376.                         Display(1,0+2,i*16,i+8);
  377.                         _nop_();
  378.                         Display(2,0+2,i*16,i+12);
  379.                         _nop_();

  380.                         Display(1,0+2+2,i*16,i+16);
  381.                         _nop_();
  382.                         Display(2,0+2+2,i*16,i+20);        
  383.     }                   

  384.         for(i=0;i<8;i++)
  385.    {
  386.                 Displayen(1,0+2+2+2,i*8,i);
  387.                 _nop_(); ;
  388.                 Displayen(2,0+2+2+2,i*8,i+8);
  389.     }                       
  390. }
  391. /*        while(1)
  392.         {
  393.                 lcd_rol();
  394.                 delay(1000);
  395.         } */
  396. }
復(fù)制代碼

LCD12864顯示文字.zip

83.98 KB, 下載次數(shù): 65, 下載積分: 黑幣 -5

評(píng)分

參與人數(shù) 1黑幣 +100 收起 理由
admin + 100 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:288468 發(fā)表于 2018-4-3 01:50 | 只看該作者
可以仿真成功嗎?
回復(fù)

使用道具 舉報(bào)

板凳
ID:192893 發(fā)表于 2018-4-3 08:04 來(lái)自觸屏版 | 只看該作者
感謝樓主分享
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 成人免费激情视频 | 亚洲第一成人av | 国产黄a一级 | 亚洲一区日韩 | 成人免费在线观看 | 91一区二区 | 欧美一区二 | 欧美伊人久久久久久久久影院 | 观看av | 成人精品一区二区三区中文字幕 | 狠狠干五月天 | 999久久久久久久久6666 | 黄网站涩免费蜜桃网站 | aa级毛片毛片免费观看久 | 成人欧美一区二区三区在线播放 | 久久久久一区二区 | 一区中文字幕 | 久久伊人精品 | 国产偷录叫床高潮录音 | 欧美一区二区精品 | 欧美一级视频 | 一区二区三区欧美在线 | 青青久在线视频 | 成人在线免费电影 | 日韩欧美成人精品 | 欧美情趣视频 | 午夜在线视频 | 黑人精品 | 四虎影院在线观看免费视频 | 成人在线网址 | 一级黄色片一级黄色片 | 欧美激情一区二区三级高清视频 | 午夜国产一区 | 国产情侣久久 | 国产精品国产成人国产三级 | 91久久久久 | 免费黄篇 | 午夜免费视频 | 精品综合久久久 | 成人影音| 成人在线免费电影 |