一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于單片機2個IO口驅(qū)動LCD1602案例

CHANBAEK ? 來源: LYQ電子工作室 ? 作者: LYQ電子工作室 ? 2023-10-31 15:24 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

LCD1602作為常見的并口數(shù)據(jù)屏幕,因為驅(qū)動簡單,相較數(shù)碼管可以顯示更多的內(nèi)容,所以應(yīng)用很多,當然了,不及LCD單色液晶屏和彩色LCD屏,可以操控每個像素點。

這里分享的是2個IO口驅(qū)動LCD1602,當前市面上是有這樣的方案的,不過用的是IIC芯片擴展IO口,本質(zhì)上還是增加了IO口數(shù)量。當然了,移位寄存器也是擴展IO口,這里擴展的是輸出類型。

回歸正題,原理圖,時序圖如下,具體的原理分析,可以閱讀原文,觀看視頻。

圖片

主要函數(shù)代碼,此代碼用于STC8單片機,其他單片機可能需要修改部分內(nèi)容,尤其是延時部分,LCD1602數(shù)據(jù)處理需要時間,延時不夠,是會出問題的。

底層驅(qū)動函數(shù)

//LCD1602寫入數(shù)據(jù)或指令
//0指令,1數(shù)據(jù)
void LCD1602_Write_Data(bit CD,u8 dat)
{
  u8 i;
  //先傳輸高4位
  //第一步,低電平
  for(i=0;i< 6;i++)
  {
    HC164_CP=0;
    HC164_DI=0;//先傳輸最高位;
    HC164_CP=1;
  }

  HC164_CP=0;
  HC164_DI=1;//E高電平
  HC164_CP=1;

  HC164_CP=0;
  HC164_DI=CD;//傳輸命令位
  HC164_CP=1;

  for(i=0;i< 4;i++)//傳輸數(shù)據(jù)高4位
  {
    HC164_CP=0;
    HC164_DI=dat&0x80;//先傳輸最高位;
    HC164_CP=1;
    dat <=1;//次高位左移到最高位
  }
  HC164_DI=1;HC164_DI=0;//LCD1602吸收數(shù)據(jù)
  //如果DI=0;那么此時DI=1;DI=0即可
  //如果DI=1;那么DI=0即可


  //傳輸?shù)?位數(shù)據(jù),操作同上
  for(i=0;i< 6;i++)
  {
    HC164_CP=0;
    HC164_DI=0;
    HC164_CP=1;
  }

  HC164_CP=0;
  HC164_DI=1;//E高電平
  HC164_CP=1;

  HC164_CP=0;
  HC164_DI=CD;//傳輸命令位
  HC164_CP=1;

  //這里的移位可以接著傳輸
  for(i=0;i< 4;i++)//傳輸?shù)?位數(shù)據(jù)
  {
    HC164_CP=0;
    HC164_DI=dat&0x80;//先傳輸高位;
    HC164_CP=1;
    dat <=1;//次高位左移到最高位
  }
  HC164_DI=1;HC164_DI=0;//LCD1602吸收數(shù)據(jù)
}

延時函數(shù)

void Delay100us()    //@24.000MHz
{
  unsigned char i, j;


  i = 4;
  j = 27;
  do
  {
    while (--j);
  } while (--i);
}
//測試600us延時能用
void LCD1602_Delay()
{
  Delay100us();Delay100us();
  Delay100us();Delay100us();
  Delay100us();Delay100us();
  Delay100us();Delay100us();
}

初始化代碼

void LCD1602_Init()//LCD1602初始化
{
  LCD1602_Write_Data(0,0x02);//光標復(fù)位
  LCD1602_Delay();
  LCD1602_Write_Data(0,0x28);//四位總線,雙行顯示
  LCD1602_Delay();
  LCD1602_Write_Data(0,0x01);//清除顯示
  LCD1602_Delay();
  LCD1602_Write_Data(0,0x06);//光標移動方向
  LCD1602_Delay();
  LCD1602_Write_Data(0,0x0c);//整體顯示開,無光標
  LCD1602_Delay();
  LCD1602_Write_Data(0,0x14);//光標隨著字右移
  LCD1602_Delay();
}

以上代碼差不多了,工程代碼分享到粉絲群了,公眾號后臺可以加粉絲群下載。

PCB工程分享,此工程本人沒有測試打樣。

圖片

圖片

總結(jié):使用74HC164+與門,2個IO口就能控制LCD1602了,但是驅(qū)動效率低一些。沒有74HC595的3線控制快。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關(guān)注

    關(guān)注

    6067

    文章

    44997

    瀏覽量

    650776
  • lcd
    lcd
    +關(guān)注

    關(guān)注

    34

    文章

    4520

    瀏覽量

    171674
  • 數(shù)碼管
    +關(guān)注

    關(guān)注

    32

    文章

    1889

    瀏覽量

    92655
  • LCD1602
    +關(guān)注

    關(guān)注

    14

    文章

    607

    瀏覽量

    53537
  • IO口
    +關(guān)注

    關(guān)注

    3

    文章

    170

    瀏覽量

    25020
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    51單片機是怎樣驅(qū)動LCD1602

    51單片機驅(qū)動LCD1602顯示原理及例程1.LCD1602A介紹2.LCD1602A中文手冊 下載3.
    發(fā)表于 11-17 07:51

    基于單片機虛擬串口驅(qū)動LCD1602的電路仿真

    基于M ult isim 10 仿真軟件, 設(shè)計單片機的虛擬串口驅(qū)動LCD1602 液晶電路。實現(xiàn)了虛擬串口擴展并行輸出的功能。該設(shè)計適用單片機UART 串口被占用時, 以最少的
    發(fā)表于 08-16 17:28 ?116次下載

    基于單片機LCD1602矩陣鍵盤顯示【匯編版】

    基于單片機LCD1602矩陣鍵盤顯示【匯編版】
    發(fā)表于 12-29 18:19 ?0次下載

    LCD1602驅(qū)動程序

    寫了一LCD1602驅(qū)動程序,分享給大家參考(基于51單片機)。
    發(fā)表于 03-10 14:49 ?15次下載

    單片機原理及應(yīng)用LCD1602顯示原理

    單片機原理及應(yīng)用LCD1602顯示原理,為了讓你們更快掌握1602的使用
    發(fā)表于 06-15 15:53 ?19次下載

    基于51單片機LCD1602四數(shù)據(jù)線驅(qū)動程序,LCD1602單片機驅(qū)動程序

    基于51單片機LCD1602四數(shù)據(jù)線驅(qū)動程序,LCD1602單片機驅(qū)動程序
    的頭像 發(fā)表于 09-20 19:43 ?2158次閱讀

    使用單片機進行LCD1602讀寫驅(qū)動函數(shù)的例程免費下載

    本文檔的主要內(nèi)容詳細介紹的是使用單片機進行LCD1602讀寫驅(qū)動函數(shù)的例程免費下載。
    發(fā)表于 06-03 08:00 ?3次下載
    使用<b class='flag-5'>單片機</b>進行<b class='flag-5'>LCD1602</b>讀寫<b class='flag-5'>驅(qū)動</b>函數(shù)的例程免費下載

    STM32單片機驅(qū)動LCD1602的源代碼免費下載

    本文檔的主要內(nèi)容詳細介紹的是STM32單片機驅(qū)動LCD1602的源代碼免費下載。
    發(fā)表于 12-30 08:00 ?115次下載
    STM32<b class='flag-5'>單片機</b><b class='flag-5'>驅(qū)動</b><b class='flag-5'>LCD1602</b>的源代碼免費下載

    基于51單片機LCD1602顯示proteus實驗

    基于51單片機LCD1602顯示proteus實驗
    發(fā)表于 04-30 10:14 ?39次下載

    51單片機驅(qū)動LCD1602顯示原理及例程

    51單片機驅(qū)動LCD1602顯示原理及例程1.LCD1602A介紹2.LCD1602A中文手冊 下載3.
    發(fā)表于 11-10 19:51 ?151次下載
    51<b class='flag-5'>單片機</b><b class='flag-5'>驅(qū)動</b><b class='flag-5'>LCD1602</b>顯示原理及例程

    單片機LCD1602 的應(yīng)用實驗

    一、實驗?zāi)康模海ㄒ唬┦煜?LCD1602單片機的電路連接;(二)熟悉 LCD1602 的引腳功能;(三)掌握 LCD1602 的時序;(四)掌握
    發(fā)表于 11-11 15:21 ?17次下載
    <b class='flag-5'>單片機</b>:<b class='flag-5'>LCD1602</b> 的應(yīng)用實驗

    51單片機驅(qū)動——LCD1602

    51單片機驅(qū)動——LCD16021.描述51單片機控制LCD1602屏幕顯示測量數(shù)據(jù)、固定字符串等,大家復(fù)制過去可以直接使用,相關(guān)注釋我已標
    發(fā)表于 11-21 09:06 ?22次下載
    51<b class='flag-5'>單片機</b><b class='flag-5'>驅(qū)動</b>——<b class='flag-5'>LCD1602</b>

    單片機學習(五)LCD1602和矩陣鍵盤的使用

    單片機學習(五)LCD1602和矩陣鍵盤的使用
    發(fā)表于 12-04 09:06 ?13次下載
    <b class='flag-5'>單片機</b>學習(五)<b class='flag-5'>LCD1602</b>和矩陣鍵盤的使用

    LCD1602液晶顯示屏驅(qū)動文件

    1、LCD1602.h文件,進行管腳定義和函數(shù)聲明#ifndef _LCD1602_H_#define _LCD1602_H_#include /* 定義單片機的管腳
    發(fā)表于 01-13 16:41 ?10次下載
    <b class='flag-5'>LCD1602</b>液晶顯示屏<b class='flag-5'>驅(qū)動</b>文件

    基于單片機LCD1602顯示按鍵位置

    單片機課程設(shè)計題二:LCD1602顯示按鍵位置
    的頭像 發(fā)表于 07-14 15:11 ?3675次閱讀
    基于<b class='flag-5'>單片機</b>的<b class='flag-5'>LCD1602</b>顯示按鍵位置