99久久久久国产-99久久久久国产精品免费-99久久久久久久-99久久久免费精品免费-99久久免费费视频在线观看

131 1300 0010
其他
當前位置: 首頁>> 元件技術>>其他>>
  • 導航欄目
  • 二極管
  • 整流橋
  • MOS管
  • 其他
  • MEGA8單片機對LCD1602液晶屏的驅動
    MEGA8單片機對LCD1602液晶屏的驅動
  • MEGA8單片機對LCD1602液晶屏的驅動
  •   發布日期: 2019-04-09  瀏覽次數: 1,360

    調試過程總結一下:

    1)由于找不到的1620資料,不知道它的操作時序。看到一些帖子說1620和1602沒區別,還是有點將信將疑。后面用網友編寫的1602程序試驗,才知道它們倆沒啥區別

     

    2)關于是否檢測LCD處于空閑,覺得還是最好在寫指令和寫數據時都加上。不檢測,會導致顯示結果不正常。

    3)由于連線很多14根(加上背光就是16根),如果有一根除了問題就會影響到顯示。所以我是用萬用表一根線一根線量了之后才通電試驗的。

    4)看到很多帖子都建議在初始化LCD前延時幾十毫秒。本例中并沒有延時,顯示也正常。

    5)總的說來,不是很難。在遇到問題時只要能夠仔細分析,就能找出原因和解決方法。自己前幾天在試程序時就是顯示結果不對,一直在檢查自己的程序,沒想到原來是單片機的Flash到壽命了那個郁悶啊。

    MEGA8單片機對LCD1602液晶屏的驅動

    頭文件中有五個函數:

    Function1.unsigned char AskBusy(void) 詢問LCD1620是否空閑, 返回值“1”空閑, “0”為忙;

    FuncTIon2.WritEDAta(char data) 寫數據到LCD1620;

    FuncTIon3.WriteCommand(char command) 寫指令到LCD1620;

    FuncTIon4.PutOneCharLCD(x,y,*Disp) 在LCD1620上顯示一個字符, x,y定義位置

    FuncTIon5.PutStringLCD(a,b,*DispString) 在LCD1620上顯示一個字符串, a,b定義初始位置。 Function6.LCD_Init() 初始化LCD

    在使用此頭文件之前,必須有以下宏定義:

    #define DataPortPullup PORTx

    #define DataPortDirection DDRx

    #define ReadLCDPINPINx

    #defineCTRlPortPullup PORTx

    #define CtrlPortDirection DDRx

    #define RS_Bit Px?

    #define RW_Bit Px?

    #define E_Bit Px?

    其中“x”代表B,C,D(mega8中無A口),“?”代表“0~1”

    完整頭文件如下(解釋搞了一大堆,也學學用英語……):

    /*******************************************************/

    /* Project :1620 Display Headfile */

    /* Date :2008,3,11 */

    /* Author :lhy */

    /* Version :v1.1 */

    /* Rework :lhy */

    /* Rework Date :2008.4.28 */

    /* */

    /* Comments : */

    /* 1 Function Description */

    /* Function1.unsigned char AskBusy(void) */

    /* --Calls this Fun to ask if LCD is busy, */

    /* 1--free,0--busy; */

    /* Function2.WritEDAta(char data) */

    /* --Write data to LCD */

    /* Function3.WriteCommand(char command) */

    /* --write command to LCD */

    /* Function4.PutOneCharLCD(x,y,*Disp) */

    /* --Put one char to LCD. */

    /* Function5.PutStringLCD(a,b,*DispString) */

    /* --Put String to LCD. Max length 32bits. */

    /* */

    /* 2 How to use */

    /* Before use this HeadFile, */

    /* need to define as below: */

    /* #define DataPortPullup PORTx */

    /* #define DataPortDirection DDRx */

    /* #define ReadLCDPin PINx */

    /* #define CtrlPortPullup PORTx */

    /* #define CtrlPortDirection DDRx */

    /* #define RS_Bit Px? */

    /* #define RW_Bit Px? */

    /* #define E_Bit Px? */

    /* ‘x’ -》 A,B,C,D.。. */

    /* ‘?’ -》 0,1,2,3,4,5,6,7 */

    /* And set control port output,like this: */

    /* CtrlPortDirection |= */

    /* (1《/* 3 Add the Function “LCD_Init(void)” */

    /* Before this Fun, you must set control port */

    /* output. */


  • ·上一篇:
    ·下一篇:
  • 其他關聯資訊
    深圳市日月辰科技有限公司
    地址:深圳市寶安區松崗鎮潭頭第二工業城A區27棟3樓
    電話:0755-2955 6626
    傳真:0755-2978 1585
    手機:131 1300 0010
    郵箱:hu@szryc.com

    深圳市日月辰科技有限公司 版權所有:Copyright?2010-2023 www.qingjujia.cn 電話:13113000010 粵ICP備2021111333號
    主站蜘蛛池模板: 国产s色| 特黄特级毛片免费视| 欧美日韩毛片| 久久国产视屏| 欧美日韩国产另类一区二区三区| 黄色一级片黄色一级片| 自拍激情视频| 999精品免费视频| 国产欧美精品一区二区三区-老狼 国产欧美精品一区二区三区四区 国产欧美精品专区一区二区 | 亚洲国产精品热久久| 91在线品视觉盛宴免费| 欧美一区二区三区四区在线观看| 三级网址在线观看| 久久精品综合视频| 国产视频你懂的| 日韩免费视频一区二区| 日韩欧美一区二区三区在线观看| 理论亚洲区美一区二区三区| 成人你懂的| 亚洲邪恶| 精彩视频一区二区| 色婷婷久久合月综| 1000部国产成人免费视频| 国产成人精品精品欧美| 欧美日韩第三页| yy6080久久亚洲精品| 国产毛片久久精品| 欧美成人xxxxxxxx在线| 一级毛片视频| 国产乳摇福利视频在线观看| 欧美黄色片免费观看| 三级a毛片| 国产小视频在线播放| 欧美精品在欧美一区二区| 久久一区二区三区免费| 精品在线91| 国产a级黄色毛片| 一级做性色a爰片久久毛片| 国产在亚洲线视频观看| 国产 日韩 一区| 一区二区三区视频在线|