找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

LCD1602顯示+仿真

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:642836 發(fā)表于 2019-12-11 10:40 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
#include<reg52.h>
#define LCD_DB  P0     
sbit LCD_RS = P2^6;
sbit LCD_RW = P2^5;
sbit LCD_EN = P2^7;
unsigned char Zh1[]="  Dian Zi 1801  ";
unsigned char Zh2[]="  Xue Hao:  18  ";

void Busy()                 //檢忙
{
    unsigned char sta;      
    LCD_DB = 0xff;
    LCD_RS = 0;
    LCD_RW = 1;
    do
    {
    LCD_EN = 1;
    sta = LCD_DB;
    LCD_EN = 0;   
    }
    while(sta&0x80);
}
void Lcd_Write_Cmd(unsigned char cmd)      //命令
{
    Busy();
    LCD_RS = 0;
    LCD_RW = 0;
    LCD_DB = cmd;
    LCD_EN = 1;
    LCD_EN = 0;   
}
void Lcd_Write_Data(unsigned char dat)     //數(shù)據(jù)
{
    Busy();
    LCD_RS = 1;
    LCD_RW = 0;
    LCD_DB = dat;
    LCD_EN = 1;
    LCD_EN = 0;
}
void InitLcd()                            //初始化
{
    Lcd_Write_Cmd(0x38);   
    Lcd_Write_Cmd(0x08);
    Lcd_Write_Cmd(0x01);
    Lcd_Write_Cmd(0x06);
    Lcd_Write_Cmd(0x0c);     
}
void LcdSetCursor(unsigned char x,unsigned char y)   //坐標(biāo)
{
    unsigned char addr;
    if(y == 0)
        addr = 0x00 + x;
    else
        addr = 0x40 + x;
   
    Lcd_Write_Cmd(addr|0X80);
}
void LcdShowStr(unsigned char x,unsigned char y,unsigned char *s)  //字符串   
{
    LcdSetCursor(x,y);     
    while(*s)
    {
        Lcd_Write_Data(*s);
        s++;
    }
}

void main(void)
{
P1=0xf0;
InitLcd();
LcdShowStr(0,0,Zh1);
    LcdShowStr(0,1,Zh2);
while(1);   
}

捕獲.PNG (74.56 KB, 下載次數(shù): 29)

LCD1602仿真圖

LCD1602仿真圖

LCD顯示屏.zip

79.93 KB, 下載次數(shù): 28, 下載積分: 黑幣 -5

所有文件

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

使用道具 舉報

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

本版積分規(guī)則

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

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

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