找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5555|回复: 10
打印 上一主题 下一主题
收起左侧

最近写了个12864显示时钟

[复制链接]
跳转到指定楼层
楼主


程序如下:

  1. #include<reg52.h>                                                //52头文件
  2. #define uint  unsigned int
  3. #define uchar unsigned char                        

  4. sbit rw=P2^5;                                                        //读写选择端
  5. sbit rs=P2^6;                                                        //数据命令选择端
  6. sbit en=P2^7;                                                        //使能端
  7. sbit psb=P3^2;                                                        //串口选择端
  8. uchar num,hours,minutes,secondsq,h1,h2,m1,m2,s1,s2;

  9. uchar code table0[32][2]={
  10. 0x00,0x00,
  11. 0x00,0x00,
  12. 0x00,0x00,
  13. 0x00,0x00,
  14. 0x07,0xE0,
  15. 0x0C,0x38,
  16. 0x1C,0x18,
  17. 0x38,0x1C,
  18. 0x38,0x1E,
  19. 0x78,0x1E,
  20. 0x78,0x0E,
  21. 0x78,0x0E,
  22. 0x78,0x0F,
  23. 0xF0,0x0F,
  24. 0xF0,0x0F,
  25. 0xF0,0x0F,
  26. 0xF0,0x0F,
  27. 0x70,0x0F,
  28. 0x78,0x0F,
  29. 0x78,0x0E,
  30. 0x78,0x1E,
  31. 0x38,0x1E,
  32. 0x38,0x1C,
  33. 0x1C,0x1C,
  34. 0x1C,0x38,
  35. 0x0F,0x70,
  36. 0x03,0xC0,
  37. 0x00,0x00,
  38. 0x00,0x00,
  39. 0x00,0x00,
  40. 0x00,0x00,
  41. 0x00,0x00,
  42. };
  43. uchar code table1[32][2]={
  44. 0x00,0x00,
  45. 0x00,0x00,
  46. 0x00,0x00,
  47. 0x00,0x00,
  48. 0x01,0xC0,
  49. 0x03,0xC0,
  50. 0x0F,0xC0,
  51. 0x1F,0xC0,
  52. 0x3B,0xC0,
  53. 0x03,0xC0,
  54. 0x03,0xC0,
  55. 0x03,0xC0,
  56. 0x03,0xC0,
  57. 0x03,0xC0,
  58. 0x03,0xC0,
  59. 0x03,0xC0,
  60. 0x03,0xC0,
  61. 0x03,0xC0,
  62. 0x03,0xC0,
  63. 0x03,0xC0,
  64. 0x03,0xC0,
  65. 0x03,0xC0,
  66. 0x03,0xC0,
  67. 0x03,0xC0,
  68. 0x03,0xC0,
  69. 0x1F,0xF8,
  70. 0x00,0x00,
  71. 0x00,0x00,
  72. 0x00,0x00,
  73. 0x00,0x00,
  74. 0x00,0x00,
  75. 0x00,0x00,
  76. };
  77. uchar code table2[32][2]={
  78. 0x00,0x00,
  79. 0x00,0x00,
  80. 0x00,0x00,
  81. 0x00,0x00,
  82. 0x0F,0xF0,
  83. 0x1F,0xFC,
  84. 0x38,0x3E,
  85. 0x38,0x1E,
  86. 0x70,0x1E,
  87. 0x70,0x1E,
  88. 0x00,0x1E,
  89. 0x00,0x1E,
  90. 0x00,0x1E,
  91. 0x00,0x3C,
  92. 0x00,0x38,
  93. 0x00,0x70,
  94. 0x00,0xE0,
  95. 0x01,0xC0,
  96. 0x03,0x80,
  97. 0x07,0x00,
  98. 0x0E,0x00,
  99. 0x1C,0x03,
  100. 0x38,0x03,
  101. 0x38,0x07,
  102. 0x7F,0xFF,
  103. 0xFF,0xFF,
  104. 0x00,0x00,
  105. 0x00,0x00,
  106. 0x00,0x00,
  107. 0x00,0x00,
  108. 0x00,0x00,
  109. 0x00,0x00,
  110. };

  111. uchar code table3[32][2]={
  112. 0x00,0x00,
  113. 0x00,0x00,
  114. 0x00,0x00,
  115. 0x00,0x00,
  116. 0x03,0xF0,
  117. 0x0F,0xF8,
  118. 0x1E,0x7C,
  119. 0x18,0x3C,
  120. 0x30,0x3C,
  121. 0x00,0x3C,
  122. 0x00,0x38,
  123. 0x00,0x70,
  124. 0x00,0xE0,
  125. 0x01,0xF8,
  126. 0x03,0xFC,
  127. 0x06,0x3E,
  128. 0x00,0x1F,
  129. 0x00,0x0F,
  130. 0x00,0x0F,
  131. 0x00,0x0F,
  132. 0x00,0x0F,
  133. 0x00,0x0F,
  134. 0x00,0x0E,
  135. 0x00,0x1C,
  136. 0x70,0x3C,
  137. 0x7C,0x70,
  138. 0x3F,0xE0,
  139. 0x00,0x00,
  140. 0x00,0x00,
  141. 0x00,0x00,
  142. 0x00,0x00,
  143. 0x00,0x00,
  144. };

  145. uchar code table4[32][2]={
  146. 0x00,0x00,
  147. 0x00,0x00,
  148. 0x00,0x00,
  149. 0x00,0x38,
  150. 0x00,0x38,
  151. 0x00,0x78,
  152. 0x00,0xF8,
  153. 0x00,0xF8,
  154. 0x01,0xF8,
  155. 0x03,0xF8,
  156. 0x07,0x78,
  157. 0x06,0x78,
  158. 0x0E,0x78,
  159. 0x1C,0x78,
  160. 0x18,0x78,
  161. 0x38,0x78,
  162. 0x70,0x78,
  163. 0x60,0x78,
  164. 0xFF,0xFF,
  165. 0xFF,0xFF,
  166. 0x00,0x78,
  167. 0x00,0x78,
  168. 0x00,0x78,
  169. 0x00,0x78,
  170. 0x00,0x78,
  171. 0x00,0x78,
  172. 0x00,0x78,
  173. 0x00,0x00,
  174. 0x00,0x00,
  175. 0x00,0x00,
  176. 0x00,0x00,
  177. 0x00,0x00,
  178. };

  179. uchar code table5[32][2]={
  180. 0x00,0x00,
  181. 0x00,0x00,
  182. 0x00,0x00,
  183. 0x00,0x00,
  184. 0x00,0x0C,
  185. 0x0F,0xFC,
  186. 0x0F,0xFC,
  187. 0x0C,0x00,
  188. 0x0C,0x00,
  189. 0x1C,0x00,
  190. 0x1C,0x00,
  191. 0x1F,0xE0,
  192. 0x1F,0xF8,
  193. 0x1F,0xFC,
  194. 0x1C,0x3C,
  195. 0x00,0x1E,
  196. 0x00,0x1E,
  197. 0x00,0x0E,
  198. 0x00,0x0F,
  199. 0x00,0x0F,
  200. 0x00,0x0E,
  201. 0x00,0x0E,
  202. 0x00,0x1E,
  203. 0x38,0x1C,
  204. 0x7C,0x78,
  205. 0x1F,0xE0,
  206. 0x00,0x00,
  207. 0x00,0x00,
  208. 0x00,0x00,
  209. 0x00,0x00,
  210. 0x00,0x00,
  211. 0x00,0x00,
  212. };


  213. uchar code table6[32][2]={
  214. 0x00,0x00,
  215. 0x00,0x00,
  216. 0x00,0x00,
  217. 0x00,0x0C,
  218. 0x00,0x3C,
  219. 0x00,0xF0,
  220. 0x01,0xC0,
  221. 0x07,0x80,
  222. 0x0F,0x00,
  223. 0x0F,0x00,
  224. 0x1E,0x00,
  225. 0x3E,0x00,
  226. 0x3C,0x00,
  227. 0x3F,0xF0,
  228. 0x78,0x7C,
  229. 0x78,0x3C,
  230. 0x78,0x1E,
  231. 0x78,0x1E,
  232. 0x78,0x1E,
  233. 0x78,0x1E,
  234. 0x78,0x1E,
  235. 0x78,0x1E,
  236. 0x3C,0x1E,
  237. 0x3C,0x1C,
  238. 0x1E,0x3C,
  239. 0x0F,0x78,
  240. 0x03,0xC0,
  241. 0x00,0x00,
  242. 0x00,0x00,
  243. 0x00,0x00,
  244. 0x00,0x00,
  245. 0x00,0x00,
  246. };

  247. uchar code table7[32][2]={
  248. 0x00,0x00,
  249. 0x00,0x00,
  250. 0x00,0x00,
  251. 0x00,0x00,
  252. 0x7F,0xFF,
  253. 0x7F,0xFE,
  254. 0x60,0x0E,
  255. 0x60,0x0C,
  256. 0x00,0x1C,
  257. 0x00,0x1C,
  258. 0x00,0x18,
  259. 0x00,0x38,
  260. 0x00,0x38,
  261. 0x00,0x70,
  262. 0x00,0x70,
  263. 0x00,0x60,
  264. 0x00,0xE0,
  265. 0x00,0xE0,
  266. 0x00,0xC0,
  267. 0x01,0xC0,
  268. 0x01,0xC0,
  269. 0x01,0x80,
  270. 0x03,0x80,
  271. 0x03,0x80,
  272. 0x03,0x00,
  273. 0x03,0x00,
  274. 0x00,0x00,
  275. 0x00,0x00,
  276. 0x00,0x00,
  277. 0x00,0x00,
  278. 0x00,0x00,
  279. 0x00,0x00,
  280. };


  281. uchar code table8[32][2]={
  282. 0x00,0x00,
  283. 0x00,0x00,
  284. 0x00,0x00,
  285. 0x00,0x00,
  286. 0x07,0xF0,
  287. 0x0C,0x3C,
  288. 0x1C,0x1C,
  289. 0x38,0x1E,
  290. 0x38,0x1E,
  291. 0x38,0x1E,
  292. 0x38,0x1E,
  293. 0x3C,0x1C,
  294. 0x1F,0x38,
  295. 0x0F,0xF0,
  296. 0x07,0xF0,
  297. 0x07,0xF8,
  298. 0x1E,0x7C,
  299. 0x3C,0x1E,
  300. 0x3C,0x0F,
  301. 0x38,0x0F,
  302. 0x38,0x0F,
  303. 0x38,0x0F,
  304. 0x38,0x0E,
  305. 0x3C,0x0E,
  306. 0x1C,0x1C,
  307. 0x0F,0x78,
  308. 0x01,0xE0,
  309. 0x00,0x00,
  310. 0x00,0x00,
  311. 0x00,0x00,
  312. 0x00,0x00,
  313. 0x00,0x00,
  314. };

  315. uchar code table9[32][2]={
  316. 0x00,0x00,
  317. 0x00,0x00,
  318. 0x00,0x00,
  319. 0x03,0xC0,
  320. 0x0E,0xF0,
  321. 0x3C,0x38,
  322. 0x38,0x3C,
  323. 0x78,0x1C,
  324. 0x78,0x1E,
  325. 0x78,0x1E,
  326. 0x78,0x1E,
  327. 0x78,0x1E,
  328. 0x78,0x1E,
  329. 0x78,0x1E,
  330. 0x3C,0x1E,
  331. 0x1E,0x1E,
  332. 0x0F,0xDE,
  333. 0x00,0x3C,
  334. 0x00,0x3C,
  335. 0x00,0x78,
  336. 0x00,0x78,
  337. 0x00,0xF0,
  338. 0x01,0xE0,
  339. 0x03,0xC0,
  340. 0x0F,0x00,
  341. 0x3C,0x00,
  342. 0x00,0x00,
  343. 0x00,0x00,
  344. 0x00,0x00,
  345. 0x00,0x00,
  346. 0x00,0x00,
  347. 0x00,0x00,
  348. };
  349. uchar code table10[32][2]={
  350. 0x00,0x00,
  351. 0x00,0x00,
  352. 0x00,0x00,
  353. 0x00,0x00,
  354. 0x00,0x00,
  355. 0x00,0x00,
  356. 0x01,0x00,
  357. 0x03,0x80,
  358. 0x07,0xC0,
  359. 0x0E,0xE0,
  360. 0x07,0xC0,
  361. 0x03,0x80,
  362. 0x01,0x00,
  363. 0x00,0x00,
  364. 0x00,0x00,
  365. 0x00,0x00,
  366. 0x00,0x00,
  367. 0x00,0x00,
  368. 0x00,0x00,
  369. 0x00,0x00,
  370. 0x00,0x00,
  371. 0x01,0x00,
  372. 0x03,0x80,
  373. 0x07,0xC0,
  374. 0x0E,0xE0,
  375. 0x07,0xC0,
  376. 0x03,0x80,
  377. 0x01,0x00,
  378. 0x00,0x00,
  379. 0x00,0x00,
  380. 0x00,0x00,
  381. 0x00,0x00,
  382. };
  383. uchar code table11[16][16]={
  384. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  385. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  386. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  387. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  388. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  389. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  390. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  391. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  392. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  393. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  394. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  395. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  396. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  397. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  398. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  399. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  400. };


  401. void delay(int z)                                     //0.1毫秒延时函数
  402. {
  403.        int x,y;
  404.         for(x=z;x>0;x--)
  405.                 for(y=11;y>0;y--);                        
  406. }

  407. //void delayms(int z)
  408. //{
  409. //        int x,y;
  410. //        for(x=z;x>0;x--)
  411. //        for(y=110;y>0;y--);
  412. //}
  413. void w_cmd(uchar cmd)                                        //写命令
  414. {
  415.         rs=0;
  416.         rw=0;
  417.         en=0;
  418.         delay(1);
  419.         P0=cmd;
  420.         delay(5);
  421.         en=1;
  422.         delay(5);
  423.         en=0;
  424.         delay(5);
  425. }
  426. void w_date(uchar date)                                        //写数据
  427. {
  428.         rs=1;
  429.         rw=0;
  430.         en=0;
  431.         P0=date;
  432.         delay(5);
  433.         en=1;
  434.         delay(5);
  435.         en=0;
  436.         delay(5);
  437. }
  438. void lcd_init()                                                        //lcd初始化
  439. {
  440.         psb=1;                                                                //并行方式

  441.         w_cmd(0x30);                                                //基本指令
  442.         delay(1);
  443.         w_cmd(0x0c);                                                //开整体显示
  444.         delay(1);
  445.         w_cmd(0x01);                                                //清除LCD显示内容
  446.         delay(50);
  447. }

  448. void suspend()                                                        //中断初始化
  449. {
  450.         TMOD=0x01;                                                        //设置定时器0为工作方式1
  451.         TH0=(65536-45872)/256;
  452.         TL0=(65536-45872)%256;                                //赋初值
  453.         EA=1;                                                                //开总中断
  454.         ET0=1;                                                                //开定时器0中断
  455.         TR0=1;                                                                //启动定时器
  456. }

  457. void lcd_show(uchar a[32][2],c,d)
  458. {
  459.         uchar i,j;
  460.         w_cmd(0x36);
  461.         delay(1);
  462.         for(i=0;i<16;i++)
  463.         {
  464.                 w_cmd(0x90+i);
  465.                 delay(1);
  466.                 w_cmd(c);
  467.                 delay(1);
  468.                 for(j=0;j<2;j++)
  469.                 {
  470.                         w_date(a[i][j]);
  471.                 }
  472.         }
  473.         for(i=0;i<16;i++)
  474.         {
  475.                 w_cmd(0x80+i);
  476.                 delay(1);
  477.                 w_cmd(d);
  478.                 delay(1);
  479.                 for(j=0;j<2;j++)
  480.                 {
  481.                         w_date(a[i+16][j]);
  482.                 }
  483.         }
  484.         w_cmd(0x30);
  485. }

  486. void lcd_show1()//显示空白
  487. {
  488.         uchar i,j;
  489.         w_cmd(0x36);
  490.         delay(1);
  491.         for(i=0;i<16;i++)
  492.         {
  493.                 w_cmd(0x80+i);
  494.                 delay(1);
  495.                 w_cmd(0x80);
  496.                 delay(1);
  497.                 for(j=0;j<16;j++)
  498.                 {
  499.                         w_date(table11[i][j]);
  500.                 }
  501.         }
  502.         for(i=0;i<16;i++)
  503.         {
  504.                 w_cmd(0x90+i);
  505.                 delay(1);
  506.                 w_cmd(0x98);
  507.                 delay(3);
  508.                 for(j=0;j<16;j++)
  509.                 {
  510.                         w_date(table11[i][j]);
  511.                 }
  512.         }
  513.         w_cmd(0x30);
  514. }

  515. void lcd_h1()
  516. {
  517.         h1=hours/10;
  518.         switch(h1)
  519.         {
  520.                 case 0: {lcd_show(table0,0x90,0x88);break;}
  521.                 case 1: {lcd_show(table1,0x90,0x88);break;}
  522.                 case 2: {lcd_show(table2,0x90,0x88);break;}
  523.                 case 3: {lcd_show(table3,0x90,0x88);break;}
  524.                 case 4: {lcd_show(table4,0x90,0x88);break;}
  525.                 case 5: {lcd_show(table5,0x90,0x88);break;}
  526.                 case 6: {lcd_show(table6,0x90,0x88);break;}
  527.                 case 7: {lcd_show(table7,0x90,0x88);break;}
  528.                 case 8: {lcd_show(table8,0x90,0x88);break;}
  529.                 case 9: {lcd_show(table9,0x90,0x88);break;}
  530.         }
  531. }
  532. void lcd_h2()
  533. {
  534.         h2=hours%10;
  535.         switch(h2)
  536.         {
  537.                 case 0: {lcd_show(table0,0x91,0x89);break;}
  538.                 case 1: {lcd_show(table1,0x91,0x89);break;}
  539.                 case 2: {lcd_show(table2,0x91,0x89);break;}
  540.                 case 3: {lcd_show(table3,0x91,0x89);break;}
  541.                 case 4: {lcd_show(table4,0x91,0x89);break;}
  542.                 case 5: {lcd_show(table5,0x91,0x89);break;}
  543.                 case 6: {lcd_show(table6,0x91,0x89);break;}
  544.                 case 7: {lcd_show(table7,0x91,0x89);break;}
  545.                 case 8: {lcd_show(table8,0x91,0x89);break;}
  546.                 case 9: {lcd_show(table9,0x91,0x89);break;}
  547.         }
  548. }
  549. void lcd_m1()
  550. {
  551.         m1=minutes/10;
  552.         switch(m1)
  553.         {
  554.                 case 0: {lcd_show(table0,0x93,0x8b);break;}
  555.                 case 1: {lcd_show(table1,0x93,0x8b);break;}
  556.                 case 2: {lcd_show(table2,0x93,0x8b);break;}
  557.                 case 3: {lcd_show(table3,0x93,0x8b);break;}
  558.                 case 4: {lcd_show(table4,0x93,0x8b);break;}
  559.                 case 5: {lcd_show(table5,0x93,0x8b);break;}
  560.                 case 6: {lcd_show(table6,0x93,0x8b);break;}
  561.                 case 7: {lcd_show(table7,0x93,0x8b);break;}
  562.                 case 8: {lcd_show(table8,0x93,0x8b);break;}
  563.                 case 9: {lcd_show(table9,0x93,0x8b);break;}
  564.         }
  565. }
  566. void lcd_m2()
  567. {
  568.         m2=minutes%10;        
  569.         switch(m2)
  570.         {
  571.                 case 0: {lcd_show(table0,0x94,0x8c);break;}
  572.                 case 1: {lcd_show(table1,0x94,0x8c);break;}
  573.                 case 2: {lcd_show(table2,0x94,0x8c);break;}
  574.                 case 3: {lcd_show(table3,0x94,0x8c);break;}
  575.                 case 4: {lcd_show(table4,0x94,0x8c);break;}
  576.                 case 5: {lcd_show(table5,0x94,0x8c);break;}
  577.                 case 6: {lcd_show(table6,0x94,0x8c);break;}
  578.                 case 7: {lcd_show(table7,0x94,0x8c);break;}
  579.                 case 8: {lcd_show(table8,0x94,0x8c);break;}
  580.                 case 9: {lcd_show(table9,0x94,0x8c);break;}
  581.         }
  582. }
  583. void lcd_s1()
  584. {
  585.          s1=secondsq/10;
  586.         switch(s1)
  587.         {
  588.                 case 0: {lcd_show(table0,0x96,0x8e);break;}
  589.                 case 1: {lcd_show(table1,0x96,0x8e);break;}
  590.                 case 2: {lcd_show(table2,0x96,0x8e);break;}
  591.                 case 3: {lcd_show(table3,0x96,0x8e);break;}
  592.                 case 4: {lcd_show(table4,0x96,0x8e);break;}
  593.                 case 5: {lcd_show(table5,0x96,0x8e);break;}
  594.                 case 6: {lcd_show(table6,0x96,0x8e);break;}
  595.                 case 7: {lcd_show(table7,0x96,0x8e);break;}
  596.                 case 8: {lcd_show(table8,0x96,0x8e);break;}
  597.                 case 9: {lcd_show(table9,0x96,0x8e);break;}
  598.         }
  599. }
  600. void lcd_s2()
  601. {
  602.         s2=secondsq%10;
  603.         switch(s2)
  604.         {
  605.                 case 0: {lcd_show(table0,0x97,0x8f);break;}
  606.                 case 1: {lcd_show(table1,0x97,0x8f);break;}
  607.                 case 2: {lcd_show(table2,0x97,0x8f);break;}
  608.                 case 3: {lcd_show(table3,0x97,0x8f);break;}
  609.                 case 4: {lcd_show(table4,0x97,0x8f);break;}
  610.                 case 5: {lcd_show(table5,0x97,0x8f);break;}
  611.                 case 6: {lcd_show(table6,0x97,0x8f);break;}
  612.                 case 7: {lcd_show(table7,0x97,0x8f);break;}
  613.                 case 8: {lcd_show(table8,0x97,0x8f);break;}
  614.                 case 9: {lcd_show(table9,0x97,0x8f);break;}
  615.         }
  616. }                                 

  617. void T0_time()  interrupt  1                        //选用定时器0方式1
  618. {
  619.         TH0=(65536-45872)/256;
  620.         TL0=(65536-45872)%256;                                //赋初值
  621.         num++;
  622.         if(num==20)                                                        //20次50ms为1秒
  623.         {
  624.                 secondsq++;                                                //秒自增
  625.                 num=0;                                                        //中断次数清零
  626.                 if(secondsq==60)
  627.                 {
  628.                         minutes++;                                        //分钟自增
  629.                         secondsq=0;                                        //秒清零
  630.                         if(minutes==60)
  631.                         {
  632.                                 hours++;                                //时钟自增
  633.                                 minutes=0;                                //分钟清零
  634.                                 if(hours==24)
  635.                                 {
  636.                                         hours=0;                         //时钟自增
  637.                                 }
  638.                         }
  639.                 }
  640.         }
  641. }

  642. void main()
  643. {
  644.         lcd_init();//显示初始化
  645.          suspend();//中断初始化
  646.         lcd_show1();//显示空白
  647.         lcd_show(table10,0x92,0x8a);
  648.         lcd_show(table10,0x95,0x8d);//显示冒号
  649.         while(1)
  650.         {        
  651.                 lcd_h1();
  652.                 lcd_h2();
  653.                 lcd_m1();
  654.                 lcd_m2();
  655.                 lcd_s1();
  656.                 lcd_s2();
  657.         }
  658. }
复制代码



但是随时间的增加
这是什么原因,找了好久没找到

感谢大神的回复!!!

评分

参与人数 1黑币 +5 收起 理由
791712429 + 5 很给力!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶2 踩
回复

使用道具 举报

沙发
ID:138194 发表于 2016-12-24 20:26 | 只看该作者
刚开始的时候

到后面就完全就乱码了,,怎么回事,自己找了好久没找到原因
回复

使用道具 举报

板凳
ID:1 发表于 2016-12-24 21:08 | 只看该作者
龚红 发表于 2016-12-24 20:26
刚开始的时候

到后面就完全就乱码了,,怎么回事,自己找了好久没找到原因

谢谢分享,这些问题我们专职版主都会帮你处理好的。不用在意,,其实解决办法很简单,用代码框 框起来就好了,就是点击工具栏的那个<> 符号
回复

使用道具 举报

地板
ID:138194 发表于 2016-12-25 10:36 | 只看该作者
admin 发表于 2016-12-24 21:08
谢谢分享,这些问题我们专职版主都会帮你处理好的。不用在意,,其实解决办法很简单,用代码框 框起来就 ...

谢谢回复,但是可以说的详细点吗??  没懂起意思
回复

使用道具 举报

5#
ID:138194 发表于 2016-12-25 12:47 | 只看该作者
admin 发表于 2016-12-24 21:08
谢谢分享,这些问题我们专职版主都会帮你处理好的。不用在意,,其实解决办法很简单,用代码框 框起来就 ...

你说的是模块化编程吗
回复

使用道具 举报

6#
ID:152682 发表于 2016-12-25 15:23 | 只看该作者
好歹来几句注释啊!我的哥!
回复

使用道具 举报

7#
ID:184098 发表于 2017-3-28 13:18 | 只看该作者
好!学习学习
回复

使用道具 举报

8#
ID:184098 发表于 2017-3-28 13:18 | 只看该作者
好!学习学习
回复

使用道具 举报

9#
ID:189763 发表于 2017-12-4 12:40 | 只看该作者
为什么是跳着显示的 1,2,3,5,7这样的
回复

使用道具 举报

10#
ID:189763 发表于 2017-12-4 12:48 | 只看该作者
为什么显示是跳着的  1,2,3,5,6,8???
回复

使用道具 举报

11#
ID:257136 发表于 2017-12-4 13:57 | 只看该作者
我也好想学习电子时钟的制作啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表