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

標題: STC15w408單片機6線驅動1602源代碼 [打印本頁]

作者: legao123    時間: 2021-4-10 17:00
標題: STC15w408單片機6線驅動1602源代碼
用STC15w408單片機6線驅動1602液晶屏
    1602的驅動最多需要11線,其中數據線需要8條。也可以采用4條數據線來驅動,只寫不讀的話,還可以省去RW線,這樣最少只需要6線就可以驅動1602。
     采用4條數據線一般是使用單片機端口的高四位,但16腳封裝的STC15W408沒有完整的高四位可以采用,所以就使用了低四位。
     單片機程序如下:
/**
LCD1602  6線驅動顯示
使用STC15W408AS        , 數據口使用P1.0-P1.3 低四位
**/
#include <STC15.h>
#include <intrins.h>
#define uchar unsigned char
sbit RS = P5^5;
sbit EN = P5^4;
void Delay1us()                   //@11.0592MHz                   //STC15W408AS使用
{
        _nop_();
        _nop_();
        _nop_();
}

void LCD_en_write()
{
   EN = 1;
  Delay1us();
   EN = 0;
}

void Delay1ms()                //@11.0592MHz                //STC15W408AS使用
{
        unsigned char i, j;

        _nop_();
        _nop_();
        _nop_();
        i = 11;
        j = 190;
        do
        {
                while (--j);
        } while (--i);
}

void LCD1602_Write(uchar style,uchar input)                  //使用STC15W408AS低四位發送數據
{
    uchar temp,high;
        Delay1ms();
   if(style==0)
     RS = 0;                                           //命令‘0’
   else
     RS = 1;                                         //命令‘1’
         high =         input>>4;                    //數據高四位移到低四位
         temp= P1 & 0XF0;                        //清低四位
         P1 = temp |( high & 0x0f); //寫高四位
         Delay1ms();
         LCD_en_write();
         temp= P1 & 0XF0;                        //清低四位
         P1 = temp |( input & 0x0f);//寫低四位
         Delay1ms();
     LCD_en_write();
}

void LCD_Display(uchar x, uchar y, uchar *str)
{
if(y)
          LCD1602_Write(0,(0xc0+x));
   else
          LCD1602_Write(0,(0x80+x));
   while(*str !='\0')
     LCD1602_Write(1,*str++);
}



void LCD1602_initial()
{        
        LCD1602_Write(0,0x28);        //設置16*2顯示,5*7點陣,4位數據接口
           Delay1ms();
        LCD1602_Write(0,0x28);
        Delay1ms();
        LCD_en_write();
        Delay1ms();
        LCD1602_Write(0,0x28);
        LCD1602_Write(0,0x0c);        //開顯示 無光標
        LCD1602_Write(0,0x06);        //讀寫一字節后地址指針加1
        LCD1602_Write(0,0x01);         //清屏
        Delay1ms();
}
/*
void LCD1602_set_XY(uchar x,uchar y)
{
   if(y)
          LCD1602_Write(0,(0xc0+x));
   else
          LCD1602_Write(0,(0x80+x));
}

void LCD1602_write_data(uchar x,uchar y,uchar dat)
{
LCD1602_set_XY(x,y);
LCD1602_Write(1,dat);
}
*/
void main()
{        uchar TestStr[] = {"Welcome!"};
        uchar str[] = {"LCD1602 display"};
        

        LCD1602_initial();
        Delay1ms();
        LCD_Display(4, 0, &TestStr);         //顯示字符串
        Delay1ms();
        LCD_Display(0, 1,  &str);
        while(1);
}


作者: legao123    時間: 2021-4-10 17:07
補充一下,采用的是16腳封裝的STC15W408沒有連續完整的高四位,20腳封裝以上的都有。
作者: man1234567    時間: 2021-4-17 10:56
legao123 發表于 2021-4-10 17:07
補充一下,采用的是16腳封裝的STC15W408沒有連續完整的高四位,20腳封裝以上的都有。

無須補充。1602的6線接法可以任意口隨意接,只要獨占就可以。




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 国产成人亚洲精品 | 国产日韩欧美在线一区 | 特a毛片| 黄色网址免费在线观看 | 欧美精品一区二区在线观看 | 在线a视频网站 | 久久久久无码国产精品一区 | 免费看片在线播放 | 亚洲黄色高清视频 | 激情五月激情综合网 | av黄色在线| 精品欧美一区二区三区免费观看 | 国产成人a亚洲精品 | 久久精品视频网站 | 中文字幕视频在线观看免费 | 精品一区视频 | 欧美性猛交一区二区三区精品 | 久久久久免费精品国产小说色大师 | 黄色毛片免费 | 国产免国产免费 | 欧美色999| 欧美成人一区二区三区 | 91视频在线看 | av中文在线 | 在线观看av网站永久 | 日韩精品中文字幕在线 | 精品一区二区三区四区视频 | 香蕉久久久久久 | 日韩三级在线 | 国产精品久久久久久久久久久久冷 | 一区二区免费看 | 91热爆在线观看 | 亚洲精品视频在线看 | 欧美黄色一级毛片 | a久久 | 日韩在线视频免费观看 | 99久久精品免费看国产小宝寻花 | 黄片毛片在线观看 | 国产超碰人人爽人人做人人爱 | 亚洲图片一区二区三区 | 北条麻妃视频在线观看 |