分享

单片机可调时间继电器制作 三个按键 LCD12864显示附程序

 zsok 2016-01-16



液晶12864(KS0108主控)做动作显示,74hc573 做扩展,三个按键,功能键,+ ,-。可调节组和各单元时间间隔。









下面是可调时控继电器的51单片机程序源码:

  1. #include

  2. #include

  3. #include

  4. #define uint unsigned int

  5. #define uchar unsigned char

  6. #define lcd_bus P0

  7. #define date_bus P3


  8. /*************LCD接口定义*************/

  9. sbit rs=P2^0;

  10. sbit rw=P2^1;

  11. sbit e=P2^2;

  12. sbit cs1=P2^3;

  13. sbit cs2=P2^4;

  14. sbit rst=P2^5;

  15. /***************外扩输出*************/

  16. sbit a573a=P1^0;

  17. sbit a573b=P1^1;

  18. sbit a573c=P1^2;


  19. /*********按键*****************/

  20. sbit gn=P1^4;

  21. sbit jia=P1^5;

  22. sbit jian=P1^6;

  23. /***************初始屏(工作)时显示************/

  24. uchar code table1[][32]={

  25. //'第',

  26. 0x10,0x08,0x94,0x97,0x9C,0x96,0x94,0xF8,

  27. 0x97,0x94,0x9C,0x94,0xF6,0x04,0x00,0x00,

  28. 0x00,0x40,0x47,0x24,0x24,0x14,0x0C,0xFF,

  29. 0x04,0x04,0x24,0x44,0x44,0x3E,0x04,0x00,


  30. //'一',

  31. 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,

  32. 0x80,0x80,0x80,0x80,0x80,0xC0,0x80,0x00,

  33. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  34. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  35. //'组',

  36. 0x20,0x30,0xAC,0x63,0x20,0x10,0x00,0xFC,

  37. 0x44,0x44,0x44,0x44,0xFE,0x04,0x00,0x00,

  38. 0x22,0x67,0x22,0x12,0x12,0x52,0x40,0x7F,

  39. 0x44,0x44,0x44,0x44,0x7F,0x40,0x40,0x00,


  40. /*******框周围亮中间黑**********/

  41. 0xFF,0x01,0x01,0x01,0x01,0x01,0x01,0x01,

  42. 0x01,0x01,0x01,0x01,0x01,0x01,0x01,0xFF,

  43. 0xFF,0x80,0x80,0x80,0x80,0x80,0x80,0x80,

  44. 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xFF,


  45. /****************圆灭**********************************/

  46. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  47. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  48. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  49. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,


  50. /****************圆灭**********************************/

  51. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  52. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  53. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  54. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,


  55. /****************圆灭**********************************/

  56. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  57. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  58. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  59. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,

  60. /****************圆灭**********************************/

  61. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  62. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  63. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  64. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,


  65. //'第',

  66. 0x10,0x08,0x94,0x97,0x9C,0x96,0x94,0xF8,

  67. 0x97,0x94,0x9C,0x94,0xF6,0x04,0x00,0x00,

  68. 0x00,0x40,0x47,0x24,0x24,0x14,0x0C,0xFF,

  69. 0x04,0x04,0x24,0x44,0x44,0x3E,0x04,0x00,



  70. //'二',

  71. 0x00,0x00,0x08,0x08,0x08,0x08,0x08,0x08,

  72. 0x08,0x08,0x08,0x0C,0x08,0x00,0x00,0x00,

  73. 0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,

  74. 0x10,0x10,0x10,0x10,0x10,0x18,0x10,0x00,


  75. //'组',

  76. 0x20,0x30,0xAC,0x63,0x20,0x10,0x00,0xFC,

  77. 0x44,0x44,0x44,0x44,0xFE,0x04,0x00,0x00,

  78. 0x22,0x67,0x22,0x12,0x12,0x52,0x40,0x7F,

  79. 0x44,0x44,0x44,0x44,0x7F,0x40,0x40,0x00,

  80. /*******框周围亮中间黑**********/

  81. 0xFF,0x01,0x01,0x01,0x01,0x01,0x01,0x01,

  82. 0x01,0x01,0x01,0x01,0x01,0x01,0x01,0xFF,

  83. 0xFF,0x80,0x80,0x80,0x80,0x80,0x80,0x80,

  84. 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xFF,



  85. /****************圆灭**********************************/

  86. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  87. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  88. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  89. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,


  90. /****************圆灭**********************************/

  91. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  92. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  93. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  94. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,


  95. /****************圆灭**********************************/

  96. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  97. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  98. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  99. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,

  100. /****************圆灭**********************************/

  101. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  102. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  103. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  104. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,


  105. //'第',

  106. 0x10,0x08,0x94,0x97,0x9C,0x96,0x94,0xF8,

  107. 0x97,0x94,0x9C,0x94,0xF6,0x04,0x00,0x00,

  108. 0x00,0x40,0x47,0x24,0x24,0x14,0x0C,0xFF,

  109. 0x04,0x04,0x24,0x44,0x44,0x3E,0x04,0x00,


  110. //'三',

  111. 0x00,0x04,0x84,0x84,0x84,0x84,0x84,0x84,

  112. 0x84,0x84,0x84,0xC4,0x86,0x04,0x00,0x00,

  113. 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,

  114. 0x20,0x20,0x20,0x20,0x20,0x30,0x20,0x00,



  115. //'组',

  116. 0x20,0x30,0xAC,0x63,0x20,0x10,0x00,0xFC,

  117. 0x44,0x44,0x44,0x44,0xFE,0x04,0x00,0x00,

  118. 0x22,0x67,0x22,0x12,0x12,0x52,0x40,0x7F,

  119. 0x44,0x44,0x44,0x44,0x7F,0x40,0x40,0x00,

  120. /*******框周围亮中间黑**********/

  121. 0xFF,0x01,0x01,0x01,0x01,0x01,0x01,0x01,

  122. 0x01,0x01,0x01,0x01,0x01,0x01,0x01,0xFF,

  123. 0xFF,0x80,0x80,0x80,0x80,0x80,0x80,0x80,

  124. 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xFF,



  125. /****************圆灭**********************************/

  126. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  127. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  128. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  129. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,


  130. /****************圆灭**********************************/

  131. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  132. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  133. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  134. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,


  135. /****************圆灭**********************************/

  136. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  137. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  138. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  139. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,

  140. /****************圆灭**********************************/

  141. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  142. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  143. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  144. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,


  145. //'第',

  146. 0x10,0x08,0x94,0x97,0x9C,0x96,0x94,0xF8,

  147. 0x97,0x94,0x9C,0x94,0xF6,0x04,0x00,0x00,

  148. 0x00,0x40,0x47,0x24,0x24,0x14,0x0C,0xFF,

  149. 0x04,0x04,0x24,0x44,0x44,0x3E,0x04,0x00,


  150. //'四',

  151. 0x00,0xFC,0x04,0x04,0x04,0xFC,0x04,0x04,

  152. 0x04,0xFC,0x04,0x04,0x04,0xFE,0x04,0x00,

  153. 0x00,0x7F,0x20,0x28,0x24,0x23,0x20,0x20,

  154. 0x20,0x21,0x22,0x22,0x22,0x7F,0x00,0x00,


  155. //'组',

  156. 0x20,0x30,0xAC,0x63,0x20,0x10,0x00,0xFC,

  157. 0x44,0x44,0x44,0x44,0xFE,0x04,0x00,0x00,

  158. 0x22,0x67,0x22,0x12,0x12,0x52,0x40,0x7F,

  159. 0x44,0x44,0x44,0x44,0x7F,0x40,0x40,0x00,


  160. /*******框周围亮中间黑**********/

  161. 0xFF,0x01,0x01,0x01,0x01,0x01,0x01,0x01,

  162. 0x01,0x01,0x01,0x01,0x01,0x01,0x01,0xFF,

  163. 0xFF,0x80,0x80,0x80,0x80,0x80,0x80,0x80,

  164. 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xFF,



  165. /****************圆灭**********************************/

  166. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  167. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  168. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  169. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,


  170. /****************圆灭**********************************/

  171. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  172. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  173. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  174. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,


  175. /****************圆灭**********************************/

  176. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  177. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  178. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  179. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,

  180. /****************圆灭**********************************/

  181. 0xF0,0x1C,0x0C,0x06,0x02,0x01,0x01,0x01,

  182. 0x01,0x01,0x02,0x02,0x04,0x1C,0xF0,0xC0,

  183. 0x0F,0x38,0x30,0x60,0x40,0x80,0x80,0x80,

  184. 0x80,0x80,0x40,0x60,0x30,0x38,0x0F,0x03,

  185. /******框中间亮******/

  186. 0x00,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,

  187. 0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0x00,

  188. 0x00,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,

  189. 0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x00,

  190. /****************圆亮****************************/

  191. 0xC0,0xF0,0xF8,0xFC,0xFC,0xFE,0xFE,0xFE,

  192. 0xFE,0xFE,0xFE,0xFC,0xFC,0xF8,0xF0,0xC0,

  193. 0x03,0x0F,0x1F,0x3F,0x3F,0x7F,0x7F,0x7F,

  194. 0x7F,0x7F,0x7F,0x3F,0x3F,0x1F,0x0F,0x03,


  195. /***************调整时显示***********************/


  196. //

  197. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  198. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  199. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  200. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  201. //-- 圆 --

  202. 0x00,0xFE,0x02,0x82,0xBA,0xAA,0xAA,0xAA,

  203. 0xAA,0xAA,0xBA,0x82,0x02,0xFF,0x02,0x00,

  204. 0x00,0xFF,0x40,0x4F,0x60,0x50,0x48,0x46,

  205. 0x48,0x50,0x60,0x4F,0x40,0xFF,0x00,0x00,

  206. //-- 间 --

  207. 0x00,0xF8,0x01,0x02,0xF6,0x10,0x12,0x12,

  208. 0x12,0x12,0xFA,0x12,0x02,0xFF,0x02,0x00,

  209. 0x00,0xFF,0x00,0x00,0x3F,0x11,0x11,0x11,

  210. 0x11,0x11,0x3F,0x40,0x80,0x7F,0x00,0x00,

  211. //-- 隔 --

  212. 0x00,0xFE,0x22,0x5A,0x86,0x02,0x7A,0x4A,

  213. 0x4A,0x4A,0x4A,0x4A,0x7B,0x82,0x00,0x00,

  214. 0x00,0xFF,0x04,0x08,0x07,0xFF,0x09,0x0B,

  215. 0x0D,0x79,0x0D,0x4B,0x89,0x7F,0x01,0x00,

  216. //-- 调 --

  217. 0x20,0x21,0xE6,0x00,0x00,0xFE,0x82,0x92,

  218. 0x92,0xFE,0x92,0xD2,0x82,0xFF,0x02,0x00,

  219. 0x00,0x00,0x3F,0x90,0x48,0x3F,0x00,0x3E,

  220. 0x12,0x12,0x12,0x5E,0x80,0x7F,0x00,0x00,

  221. //-- 整 --

  222. 0x00,0x3A,0xAA,0x6A,0xFF,0x6A,0xAA,0x3A,

  223. 0x08,0xB7,0x44,0xA4,0x1C,0x06,0x04,0x00,

  224. 0x41,0x41,0x42,0x42,0x7B,0x42,0x42,0x7E,

  225. 0x4B,0x4A,0x4A,0x4A,0x43,0x61,0x41,0x00,

  226. //

  227. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  228. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  229. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  230. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  231. //

  232. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  233. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  234. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  235. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,


  236. //

  237. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  238. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  239. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  240. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,


  241. //-- 组 --

  242. 0x20,0x30,0xAC,0x63,0x20,0x10,0x00,0xFC,

  243. 0x44,0x44,0x44,0x44,0xFE,0x04,0x00,0x00,

  244. 0x22,0x67,0x22,0x12,0x12,0x52,0x40,0x7F,

  245. 0x44,0x44,0x44,0x44,0x7F,0x40,0x40,0x00,

  246. //-- 间 --

  247. 0x00,0xF8,0x01,0x02,0xF6,0x10,0x12,0x12,

  248. 0x12,0x12,0xFA,0x12,0x02,0xFF,0x02,0x00,

  249. 0x00,0xFF,0x00,0x00,0x3F,0x11,0x11,0x11,

  250. 0x11,0x11,0x3F,0x40,0x80,0x7F,0x00,0x00,

  251. //-- 隔 --

  252. 0x00,0xFE,0x22,0x5A,0x86,0x02,0x7A,0x4A,

  253. 0x4A,0x4A,0x4A,0x4A,0x7B,0x82,0x00,0x00,

  254. 0x00,0xFF,0x04,0x08,0x07,0xFF,0x09,0x0B,

  255. 0x0D,0x79,0x0D,0x4B,0x89,0x7F,0x01,0x00,

  256. //-- 调 --

  257. 0x20,0x21,0xE6,0x00,0x00,0xFE,0x82,0x92,

  258. 0x92,0xFE,0x92,0xD2,0x82,0xFF,0x02,0x00,

  259. 0x00,0x00,0x3F,0x90,0x48,0x3F,0x00,0x3E,

  260. 0x12,0x12,0x12,0x5E,0x80,0x7F,0x00,0x00,

  261. //-- 整 --

  262. 0x00,0x3A,0xAA,0x6A,0xFF,0x6A,0xAA,0x3A,

  263. 0x08,0xB7,0x44,0xA4,0x1C,0x06,0x04,0x00,

  264. 0x41,0x41,0x42,0x42,0x7B,0x42,0x42,0x7E,

  265. 0x4B,0x4A,0x4A,0x4A,0x43,0x61,0x41,0x00,

  266. //

  267. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  268. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  269. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  270. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  271. //

  272. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  273. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  274. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  275. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  276. //

  277. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  278. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  279. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  280. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  281. //

  282. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  283. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  284. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

  285. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, };

  286. /************定义变量******************/

  287. uchar sj,sk=1,on,gnb;

  288. uint mm,miao,zuj=40,yuanj=20;

  289. uint fzg,zjg=0;

  290. uint yjiab=3,zjiab=3;

  291. uchar ja=0,tt,ti;

  292. /*******毫秒延时************/

  293. void delay(uint a)

  294. {

  295. uint x,y;

  296. for(x=0;x<>

  297. for(y=0;y<>

  298. }

  299. /***********延时*************/

  300. void delayy()

  301. {

  302. _nop_();

  303. _nop_();

  304. _nop_();

  305. _nop_();

  306. _nop_();

  307. _nop_();

  308. _nop_();

  309. _nop_();

  310. _nop_();

  311. _nop_();

  312. _nop_();

  313. _nop_();

  314. }

  315. /************测忙**************/

  316. void lcd_busm()

  317. {

  318. uchar temp;

  319. do

  320. {

  321. temp=0x80;

  322. rs=0;

  323. _nop_();

  324. _nop_();

  325. _nop_();

  326. rw=1;

  327. e=1;

  328. temp=lcd_bus;

  329. _nop_();

  330. _nop_();

  331. _nop_();

  332. e=0;

  333. } while((temp&0x80)==0x80);

  334. }

  335. /***********写指令********************/

  336. void send_comm(uchar comm)

  337. {

  338. lcd_busm();

  339. rs=0;

  340. delayy();

  341. rw=0;

  342. lcd_bus=comm;

  343. delayy();

  344. e=1;

  345. delayy();

  346. e=0;

  347. }

  348. /************写数据********************/

  349. void send_data(uchar date)

  350. {

  351. lcd_busm();

  352. rs=1;

  353. delayy();

  354. rw=0;

  355. delayy();

  356. lcd_bus=date;

  357. delayy();

  358. e=1;

  359. delayy();

  360. e=0;

  361. }

  362. /*************选屏****************/

  363. void csp(uchar a)

  364. {

  365. switch(a)

  366. {

  367. case 0:

  368. {

  369. cs1=1;

  370. cs2=1;

  371. break;

  372. }

  373. case 1:

  374. {

  375. cs1=1;

  376. cs2=0;

  377. break;

  378. }

  379. case 2:

  380. {

  381. cs1=0; delayy();

  382. cs2=1;

  383. break;

  384. }

  385. default: break;

  386. }

  387. }

  388. /**********初始化*****************/

  389. void init()

  390. {

  391. rst=0;

  392. delay(150);

  393. rst=1;

  394. delay(100);

  395. csp(0);

  396. send_comm(0x3f);

  397. delayy();

  398. send_comm(0xc0);

  399. a573a=0;

  400. a573b=0;

  401. a573c=0;

  402. }

  403. /**************定时器初始化**************/

  404. void time()

  405. {

  406. TMOD=0x11;

  407. TH0=0x3c;

  408. TL0=0xb0;

  409. TH1=0X3C;

  410. TL1=0XB0;

  411. EA=1;

  412. ET0=1;

  413. ET1=1;

  414. TR0=1;

  415. TR1=1;

  416. }

  417. /***********设置页地址*************/

  418. void x_page(uchar x)

  419. {

  420. send_comm(0xb8+x);

  421. delayy();

  422. }

  423. /************设置列地址***********/

  424. void y_line(uchar y)

  425. {

  426. send_comm(0x40+y);

  427. delayy();

  428. }

  429. /************设置行地址***********/

  430. void z_hang(uchar z)

  431. {

  432. send_comm(0xc0+z);

  433. delayy();

  434. }


  435. /*************清空显示内存***********/

  436. void clean()

  437. {

  438. uchar i,j,k;

  439. for(i=0;i<>

  440. {

  441. csp(0);

  442. y_line(0);

  443. delayy();

  444. x_page(i);

  445. delayy();


  446. csp(1);

  447. for(j=0;j<>

  448. {

  449. send_data(0x00);

  450. }

  451. delayy();

  452. csp(2);

  453. for(k=64;k<>

  454. {

  455. send_data(0x00);

  456. }

  457. }

  458. }


  459. /****************页和列地址*****************/

  460. void write_x_y(uchar x,y)

  461. {

  462. x_page(x);

  463. y_line(y);

  464. }


  465. /**************指定位置写汉字****************/

  466. void write_zf(uchar a,b,c )

  467. {

  468. uchar k,m;


  469. write_x_y(a,b); //写页和列地址是字的上半

  470. for(k=0;k<>

  471. {

  472. send_data(table1[c][k]);

  473. }

  474. delayy();

  475. write_x_y(a+1,b); //写页和列地址是字的下半

  476. for(m=16;m<>

  477. {

  478. send_data(table1[c][m]);

  479. }

  480. }


  481. /*****************指定位置写字ASCII*************/

  482. void write_ascii(uchar a,b,c )

  483. {

  484. uchar k,m;


  485. write_x_y(a,b);

  486. for(k=0;k<>

  487. {

  488. send_data(table1[c][k]);

  489. }

  490. delayy();

  491. write_x_y(a+1,b);

  492. for(m=8;m<>

  493. {

  494. send_data(table1[c][m]);

  495. }

  496. }

  497. /***************满行写字***************/

  498. void write_mh(uchar a,b,c) //(页,列 ,字)

  499. {

  500. uchar i,d;

  501. csp(1);

  502. for(i=0;i<>

  503. {

  504. write_zf(a,b+i*16,c++);

  505. }

  506. csp(2); delayy();

  507. for(d=0;d<>

  508. {

  509. write_zf(a,b+d*16,c++);

  510. }


  511. }




    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多