亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

標(biāo)題: 1602顯示驅(qū)動(dòng)程序函數(shù)封裝,有需要的拿去 [打印本頁]

作者: Li1783    時(shí)間: 2018-2-2 13:08
標(biāo)題: 1602顯示驅(qū)動(dòng)程序函數(shù)封裝,有需要的拿去
已經(jīng)封裝好的程序,使用起來非常方便

單片機(jī)源程序如下:
  1. /********************************************************************
  2. * 文件名  : 液晶1602顯示.c
  3. * 描述    :  該程序?qū)崿F(xiàn)了對(duì)液晶1602的控制。
  4. ***********************************************************************/
  5. #include <reg52.h>
  6. #include <intrins.h>
  7. #include "lcd1602.h"

  8. #define RS_CLR RS=0
  9. #define RS_SET RS=1
  10. #define RW_CLR RW=0
  11. #define RW_SET RW=1
  12. #define EN_CLR EN=0
  13. #define EN_SET EN=1

  14. //LCD 控制線接口
  15. sbit RS=P2^5;
  16. sbit RW=P2^4;
  17. sbit EN=P2^3;


  18. /******************************************************************/
  19. /*                   延時(shí)幾微秒                               */
  20. /******************************************************************/
  21. void delay_us(unsigned int us)
  22. {
  23.     _nop_();
  24.     while(--us);
  25. }

  26. /******************************************************************/
  27. /*                 延時(shí)幾毫秒                                */
  28. /******************************************************************/
  29. void delay_ms(unsigned long ms)
  30. {
  31.     unsigned char i, j;

  32.     do
  33.     {
  34.         _nop_();
  35.         _nop_();
  36.         _nop_();
  37.         i = 11;
  38.         j = 190;
  39.         do
  40.         {
  41.             while (--j);
  42.         }
  43.         while (--i);
  44.     }
  45.     while(--ms);
  46. }

  47. /******************************************************************/
  48. /*                   寫一字節(jié)指令                                 */
  49. /******************************************************************/
  50. void LCD_write_com(unsigned char com)
  51. {
  52.     RW =0;
  53.     RS_CLR;
  54.     EN_SET;
  55.     P0 = com;
  56.     delay_us(5);
  57.     EN_CLR;
  58. }
  59. /******************************************************************/
  60. /*                   寫一字節(jié)數(shù)據(jù)                                 */
  61. /******************************************************************/
  62. void LCD_write_data(unsigned char dat)
  63. {
  64.     RW =0;
  65.     RS_SET;
  66.     EN_SET;
  67.     P0 = dat;
  68.     delay_us(5);
  69.     EN_CLR;
  70. }
  71. /******************************************************************/
  72. /*                   清屏                                     */
  73. /******************************************************************/
  74. void LCD_clear(void)
  75. {
  76.     LCD_write_com(0x01);
  77.     delay_ms(5);
  78. }

  79. /******************************************************************/
  80. /*                   在指定位置寫字符                             */
  81. /******************************************************************/
  82. void LCD_write_char(unsigned char x,unsigned char y,unsigned char dat)
  83. {
  84.     if (y == 0)
  85.     {
  86.         LCD_write_com(0x80 + x);
  87.     }
  88.     else
  89.     {
  90.         LCD_write_com(0xC0 + x);
  91.     }
  92.     LCD_write_data( dat);
  93. }


  94. /******************************************************************/
  95. /*             在指定位置寫字符串                         */
  96. /******************************************************************/

  97. void LCD_write_string(unsigned char x,unsigned char y,unsigned char *s)
  98. {
  99.     if (y == 0)
  100.     {
  101.         LCD_write_com(0x80 + x);     //表示第一行
  102.     }
  103.     else
  104.     {
  105.         LCD_write_com(0xC0 + x);      //表示第二行
  106.     }
  107.     while (*s)                         //判斷是否字符串的結(jié)尾
  108.     {
  109.         LCD_write_data( *s);    //顯示當(dāng)前字符
  110.         s ++;                             //字符串地址加1
  111.     }
  112. }

  113. /******************************************************************/
  114. /*                   lcd初始化                                   */
  115. /******************************************************************/
  116. void LCD_init(void)
  117. {
  118.     LCD_write_com(0x38);
  119.     delay_ms(5);
  120. ……………………

  121. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
1602.zip (1.37 KB, 下載次數(shù): 33)



作者: chaoself    時(shí)間: 2018-2-12 15:48
謝謝分享
作者: oohoh    時(shí)間: 2018-2-12 17:05
謝謝提供資料,收藏了
作者: zmc419    時(shí)間: 2018-2-13 21:05
謝謝分享,收下了
作者: luoyinbazi    時(shí)間: 2018-2-15 15:30
非常感謝,真是好東西
作者: linziol    時(shí)間: 2018-2-15 17:55
謝謝分享,學(xué)習(xí)了!
作者: 黑卡卡    時(shí)間: 2018-2-15 23:17
不錯(cuò),謝謝樓主
作者: 黑卡卡    時(shí)間: 2018-2-15 23:18
謝謝分享,收下了

作者: ycying88    時(shí)間: 2018-2-17 16:58
謝謝分享,研究研究!
作者: lei97    時(shí)間: 2018-6-26 08:30
啊,我需要




歡迎光臨 (http://www.denmoz.com/bbs/) Powered by Discuz! X3.1