找回密码
 立即注册

QQ登录

只需一步,快速开始

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

51单片机显示名字学号源程序与Proteus仿真图 LM017L液晶显示

[复制链接]
跳转到指定楼层
楼主
51单片机显示名字学号身高体重等,C语言,完整包
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


单片机源程序如下:
  1. #include<reg51.h>
  2. #include<lcd1602.h>
  3. #define uchar unsigned char
  4.         unsigned char x[]="SG,TZ";
  5.          unsigned char y[]="ms20190404705";  

  6. #define uint unsigned int
  7. sbit LCD_RS =P3^0;
  8. sbit LCD_RW =P3^1;
  9. sbit LCD_E =P3^2;
  10. #define LCD_ch  P1
  11. //
  12. void delay(uint i)
  13. {
  14.         while(i--);
  15. }
  16. //        写指令进入LCD1602
  17. void LCD_command()
  18. {
  19.          LCD_RS=0;
  20.          LCD_RW=0;
  21.          LCD_E=0;
  22.          delay(200);
  23.          LCD_E=1;
  24. }
  25.    //         把数据写入LCD1602
  26. void LCD_data()
  27. {
  28.          LCD_RS=1;
  29.          LCD_RW=0;
  30.          LCD_E=0;
  31.          delay(200);
  32.          LCD_E=1;
  33. }
  34. //
  35. void Init_LCD(void)                //初始化液晶
  36. {
  37.          LCD_ch =0x01;                           //清屏
  38.          LCD_command();                           
  39.          LCD_ch =0x38;                           //8位显示
  40.          LCD_command();
  41.          LCD_ch =0x0c;                           //开显示,关光标,关闪烁
  42.          LCD_command();
  43.          LCD_ch =0x06;
  44.          LCD_command();
  45. }
  46. //           将数据显示在第i行第j列
  47. void LCD_dis(uchar i,uchar j,uchar ch)
  48. {
  49. uchar  addr;
  50. if(i==0) addr=0x80+j;                 //设置第一行
  51.          else addr=0xc0+j;                  //设置第二行
  52.          LCD_ch=addr;
  53.          LCD_command();
  54.          LCD_ch=ch;
  55.          LCD_data();
  56. }
  57. void main()
  58. {
  59. unsigned int i,j;
  60. Init_LCD();
  61. while(1)
  62. {
  63. for(i=0;i<17;i++)
  64. {
  65. //LCD_dis(1,i,0x30+i);
  66. //LCD_dis(0,i,i+'0');
  67. //LCD_dis(1,i,i+'A');
  68. LCD_dis(1,i,x[i]);                //显示数组内容
  69. delay(5000);
  70. }
  71. for(j=0;j<19;j++)
  72. {
  73. LCD_dis(0,j,y[j]);
  74. delay(5000);
  75. }
  76. }
  77. }
复制代码

Keil代码与Proteus仿真下载:
显示名字学号.7z (36.7 KB, 下载次数: 27)

评分

参与人数 1黑币 +10 收起 理由
admin + 10 共享资料的黑币奖励!

查看全部评分

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

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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