找回密码
 立即注册

QQ登录

只需一步,快速开始

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

LCD1602显示程序,简单易懂

[复制链接]
跳转到指定楼层
楼主
ID:467647 发表于 2019-1-14 01:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
简单易懂的程序,方便入学者
  1. #include<reg52.h>
  2. #define uint unsigned int
  3. #define uchar unsigned char
  4. ucharcodetable[]="suihuaxueyuan";
  5. ucharcodetable1[]="dianzixiehui";
  6. ucharnum; sbitlcden=P3^4; //液晶使能端
  7. sbit lcdrs=P3^5; //液晶数据命令选择端 选择写数据还是写命令
  8. voiddelay(uintz) {
  9. uinti,j;
  10. for(i=z;i>0;i--)
  11. for(j=110;j>0;j--);
  12. }
  13. void write_com(uchar com) //写入
  14. {
  15. lcdrs=0; //LCD 选择输入命令
  16. P0=com; //向 P0 口输入命令
  17. delay(5); //延时
  18. lcden=1; //打开 LCD 使能
  19. delay(5); //一个高脉冲
  20. lcden=0; //关闭 LCD 使能
  21. }
  22. voidwrite_data(uchardate)
  23. {
  24. lcdrs=1; //设置为输入数据
  25. P0=date; //将数据赋给P0 口
  26. delay(5); //延时
  27. lcden=1; //置高
  28. delay(5); //高脉冲
  29. lcden=0; //置低 完成高脉冲
  30. }
  31. voidinit()
  32. {
  33. lcden=0;
  34. write_com(0x38); //设置 16x2 显示 5x7 点阵,8 位数据接口
  35. write_com(0x0c); //设置开始显示 不显示光标
  36. write_com(0x06); //写一个字符后地址指针加1
  37. write_com(0x01); //显示清零 数据指针清零
  38. }
  39. voidmain()
  40. {
  41. init();
  42. write_com(0x80); //将数据指针第一行第一个字处,
  43. for(num=0;num<13;num++)
  44. {
  45. write_data(table[num]);
  46. delay(5);
  47. }
  48. write_com(0x80+0x40); //定义指针位置
  49. for(num=0;num<12;num++)
  50. {
  51. write_data(table1[num]);
  52. delay(5);
  53. } while(1);
  54. }
复制代码


LCD显示.doc

1.17 KB, 下载次数: 25, 下载积分: 黑币 -5

简单易懂的显示程序

评分

参与人数 1黑币 +15 收起 理由
杨雪飞 + 15

查看全部评分

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

使用道具 举报

沙发
ID:97554 发表于 2019-1-14 10:37 | 只看该作者
从显示的字符好像看到了绥化学院  电子协会,是黑龙江绥化的绥化学院?
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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