找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

51單片機(jī)+1602函數(shù) Proteus仿真

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


單片機(jī)源程序如下:
  1. /*---------------------------------------------------------------------
  2.                          LCD1602.C文件 LCD1602的函數(shù)  
  3. ----------------------------------------------------------------------*/

  4. #include "hardware.h"
  5. #include "lcd1602.h"

  6. void LCD_check_busy(void)   //檢測LCD狀態(tài),看它是不是還在忙呢
  7. {
  8. while(1)
  9.   {
  10.    LCD_EN=0;
  11.    LCD_RS=0;
  12.    LCD_RW=1;
  13.    LCD_DATA=0xff;
  14.    LCD_EN=1;
  15.    if(!LCD_BUSY)break;
  16.   }
  17. LCD_EN=0;
  18. }

  19. void LCD_cls(void)          //LCD清屏
  20. {

  21. LCD_check_busy();
  22. LCD_RS=0;
  23. LCD_RW=0;
  24. LCD_DATA=1;
  25. LCD_EN=1;
  26. LCD_EN=0;

  27. }

  28. void LCD_write_instruction(unsigned char LCD_instruction)   //寫指令到LCD
  29. {
  30.   LCD_check_busy();
  31. LCD_RS=0;
  32. LCD_RW=0;

  33. LCD_DATA=LCD_instruction;
  34. LCD_EN=1;
  35. LCD_EN=0;
  36. }

  37. void LCD_write_data(unsigned char LCD_data)      //輸出一個(gè)字節(jié)數(shù)據(jù)到LCD
  38. {
  39.   LCD_check_busy();
  40. LCD_RS=1;
  41. LCD_RW=0;

  42. LCD_DATA=LCD_data;
  43. LCD_EN=1;
  44. LCD_EN=0;
  45. }

  46. void LCD_set_position(unsigned char x)            //LCD光標(biāo)定位到x處
  47. {
  48. LCD_write_instruction(0x80+x);
  49. }

  50. /*
  51. void LCD_go_home(void)                         //LCD光標(biāo)歸位
  52. {
  53. LCD_write_instruction(LCD_GO_HOME);
  54. }
  55. */

  56. void LCD_printc(unsigned char lcd_data)          //輸出一個(gè)字符到LCD
  57. {
  58. LCD_write_data(lcd_data);
  59. }

  60. void LCD_prints(unsigned char *lcd_string)       //輸出一個(gè)字符串到LCD
  61. {
  62. unsigned char i=0;
  63. while(lcd_string[i]!=0x00)
  64.   {
  65.    LCD_write_data(lcd_string[i]);
  66.    i++;
  67.   }
  68. }

  69. void LCD_initial(void)                        //初始化LCD
  70. {
  71. LCD_write_instruction(LCD_AC_AUTO_INCREMENT|LCD_MOVE_DISENABLE);
  72. LCD_write_instruction(LCD_DISPLAY_ON|LCD_CURSOR_OFF);
  73. LCD_write_instruction(LCD_DISPLAY_DOUBLE_LINE);
  74. LCD_cls();
  75. }
復(fù)制代碼

所有資料51hei提供下載:
項(xiàng)目.zip (73.85 KB, 下載次數(shù): 18)


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

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

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