久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2420|回復: 0
打印 上一主題 下一主題
收起左側

lcd1602.c文件

[復制鏈接]
跳轉到指定樓層
樓主
ID:184807 發表于 2017-7-31 22:20 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include <reg51.h>
#include <intrins.h>
#define INT8U  unsigned char
#define INT16U unsigned int
sbit RS = P1^0;        //寄存器選擇線
sbit RW = P1^1;        //讀/寫控制線
sbit EN = P2^5;        //使能控制
//-----------------------------------------------------------------
// 延時
//-----------------------------------------------------------------
void delay_ms(INT16U ms)
{
    INT8U i; while(ms--) for(i = 0; i < 120; i++);
}

//-----------------------------------------------------------------
// 忙等待
//-----------------------------------------------------------------
void Busy_Wait()
{
    INT8U LCD_Status;                        //液晶狀態字節變量
    do
    {
         P0 = 0xFF;
        EN = 0;RS = 0;RW = 1;
        EN = 1;LCD_Status = P0;
        EN = 0;

    } while (LCD_Status & 0x80);            //液晶忙繼續循環
}

//-----------------------------------------------------------------
// 寫LCD命令
//-----------------------------------------------------------------
void Write_LCD_Command(INT8U cmd)
{
    Busy_Wait();
    EN = 0;RS = 0;RW = 0;
    P0 = cmd;
    EN = 1;_nop_();EN = 0;     

}

//-----------------------------------------------------------------
// 發送數據
//-----------------------------------------------------------------
void Write_LCD_Data(INT8U dat)
{
    Busy_Wait();
    EN = 0;RS = 1;RW = 0;
    P0 = dat;
    EN = 1;_nop_();EN = 0;   
}

//-----------------------------------------------------------------
// LCD初始化
//-----------------------------------------------------------------
void Initialize_LCD()
{
    Write_LCD_Command(0x38); delay_ms(1);    //置功能,8位,雙行,5*7
    Write_LCD_Command(0x01); delay_ms(1);    //清屏
    Write_LCD_Command(0x06); delay_ms(1);    //字符進入模式:屏幕不動,字符后移
    Write_LCD_Command(0x0C); delay_ms(1);    //顯示開,關光標
}

//-----------------------------------------------------------------
// 在指定位置顯示字符串
//-----------------------------------------------------------------
void LCD_ShowString(INT8U r, INT8U c,INT8U *str)
{
    INT8U i = 0;
    code INT8U DDRAM[] = {0x80,0xC0};        //1602LCD兩行的起始DDRAM地址
    Write_LCD_Command(DDRAM[r] | c);        //設置顯示起始位置

    for ( i = 0; str[i] && i < 16 ;i++)        //輸出字符串
      Write_LCD_Data(str[i]);

    for (; i < 16; i++)                         //不足一行時用空格填充
      Write_LCD_Data(' ');
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩在线中文 | 激情国产 | 中文字幕亚洲精品在线观看 | 国产日韩免费观看 | 久久亚洲精品视频 | 国产成人福利视频在线观看 | 久草在线青青草 | 黄色欧美视频 | 久久久久久网 | 蜜桃毛片 | 欧美成年网站 | 国产精品久久久久久久久久妞妞 | 亚洲成人一区二区在线 | 精品一区二区三区日本 | 精品久久久久久亚洲精品 | 精品国产乱码久久久久久牛牛 | 中文字幕视频在线 | 色综合天天综合网国产成人网 | 久久伊 | 精品久久久久久久久久久下田 | 在线播放国产一区二区三区 | 日韩成人精品在线观看 | 欧美日韩中文在线 | 在线日韩 | 亚洲欧美精品一区 | 欧美综合一区二区 | 黄色免费观看 | 精品亚洲国产成av人片传媒 | 免费日韩av网站 | 日本激情视频中文字幕 | 香蕉久久久久久 | 一级看片免费视频囗交动图 | 欧美二三区 | 久久精品一 | 性色视频 | 精品伦精品一区二区三区视频 | 色婷婷综合成人av | 日韩精品影院 | 国产一区二区三区高清 | 亚洲中国字幕 | 成人欧美一区二区三区黑人孕妇 |