欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

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

不太明白LCD1602的單片機(jī)程序 求解釋

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:729709 發(fā)表于 2020-6-4 17:19 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
void Lcd_ram()      
{
        uint i,j,k=0,temp=0x40;
        for(i=0;i<7;i++)
        {
           for(j=0;j<8;j++)
           {
            write_com(temp+j);
            write_date(zifu[k]);
            k++;
           }
           temp=temp+8;
        }
}
大佬們 這段程序是什么意思。

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

使用道具 舉報(bào)

沙發(fā)
ID:97554 發(fā)表于 2020-6-4 18:04 | 只看該作者
本帖最后由 楊雪飛 于 2020-6-5 08:57 編輯

void Lcd_ram()          //   LCD顯示子程序
{
        uint i,j,k=0,temp=0x40;      //定義四個(gè)無(wú)符號(hào)整數(shù)變量 i  j  k  temp。temp的起始數(shù)值為0x40,后邊的write_com(temp+j);就是寫(xiě)完一個(gè)字符這個(gè)地址加1的意思,也就是往后移一位寫(xiě)寫(xiě)一個(gè)字符。

        for(i=0;i<7;i++)    //這個(gè)就很簡(jiǎn)單了吧,i自己加,加到8停止,也就是i的值會(huì)依次+1從0到7停止。
        {
           for(j=0;j<8;j++)   //同理,這個(gè)j也是從0到8
           {
            write_com(temp+j);    //上邊說(shuō)過(guò)了,這個(gè)就是往后移一個(gè)位置的意思。
            write_date(zifu[k]);     //這個(gè)在程序的開(kāi)頭有個(gè)定義的名字為zifu的table,[ ] 里邊會(huì)有N個(gè)字符,比如a b c d啥的,這個(gè)k就是這N個(gè)字符中的第幾個(gè)的意思,下邊的一句k++就是k自己每次+1的意思,這樣就會(huì)配合上邊的語(yǔ)句,把zifu[xxxxxxxxxxx]里的字符一個(gè)一個(gè)的在屏幕上挨個(gè)的顯示出來(lái)了。
            k++;
           }
           temp=temp+8;      //這個(gè)是把上邊的寫(xiě)完了之后直接把字符的顯示位置的地址直接+8。
        }
}


回復(fù)

使用道具 舉報(bào)

板凳
ID:669432 發(fā)表于 2020-6-4 19:43 | 只看該作者
循環(huán)看得懂吧,0x40是第二行,意思就是在第二行寫(xiě)入數(shù)組zifu[]
回復(fù)

使用道具 舉報(bào)

地板
ID:760179 發(fā)表于 2020-6-4 20:04 來(lái)自觸屏版 | 只看該作者
把程序都寫(xiě)出來(lái),一段程序不怎么好弄懂
回復(fù)

使用道具 舉報(bào)

5#
ID:155507 發(fā)表于 2020-6-5 09:55 | 只看該作者
對(duì)1602 的CGRAM 一個(gè)自定義字符操作

http://m.raoushi.com/bbs/dpj-42528-1.html
回復(fù)

使用道具 舉報(bào)

6#
ID:729709 發(fā)表于 2020-6-5 12:36 | 只看該作者
angmall 發(fā)表于 2020-6-5 09:55
對(duì)1602 的CGRAM 一個(gè)自定義字符操作

http://m.raoushi.com/bbs/dpj-42528-1.html

好的 謝謝
回復(fù)

使用道具 舉報(bào)

7#
ID:729709 發(fā)表于 2020-6-5 12:37 | 只看該作者
回復(fù)

使用道具 舉報(bào)

8#
ID:770266 發(fā)表于 2020-6-5 13:08 | 只看該作者
write_com這個(gè)函數(shù)是什么內(nèi)容
回復(fù)

使用道具 舉報(bào)

9#
ID:267932 發(fā)表于 2020-6-5 13:56 | 只看該作者
太熱 發(fā)表于 2020-6-5 13:08
write_com這個(gè)函數(shù)是什么內(nèi)容

#define LCD_RS(x)  P3DIR &= ~BIT(0);x?(P3 |= BIT(0)) : (P3 &= ~BIT(0))
#define LCD_RW(x)  P1DIR &= ~BIT(3);x?(P1 |= BIT(3)) : (P1 &= ~BIT(3))
#define LCD_EN(x)   P1DIR &= ~BIT(2);x?(P1 |= BIT(2)) : (P1 &= ~BIT(2))
#define LCD_4(x)   P02_set_dir(0);x?(P0 |= BIT(2)) : (P0 &= ~BIT(2))
#define LCD_5(x)   P00_set_dir(0);x?(P0 |= BIT(0)) : (P0 &= ~BIT(0))
#define LCD_6(x)   P01_set_dir(0);x?(P0 |= BIT(1)) : (P0 &= ~BIT(1))
#define LCD_7(x)   P11_set_dir(0);x?(P1 |= BIT(1)) : (P1 &= ~BIT(1))


void write_command(u8 dat)    //寫(xiě)命令
{   
  //uchar dat_half;
        u8 Hdata,Ldata;
    LCD_RS(0);                         //指令 寫(xiě)入
   //RW_CLR;                    //先寫(xiě)入高四位
    LCD_RW(0);
    delay_RWC;
    Hdata=dat&0xf0;                    //è???????
    Ldata=(dat<<4)&0xf0;    //è?μí????
        LCD_4(Hdata&0x10);
        LCD_5(Hdata&0x20);
        LCD_6(Hdata&0x40);
        LCD_7(Hdata&0x80);

       
  delay_Dat;
   LCD_EN(1);
   delay_Eset;
   LCD_EN(0);                        //下降沿,執(zhí)行指令
   check_busy_ff();

   LCD_RS(0);                         //指令 寫(xiě)入
   LCD_RW(0);
   delay_RWC;
   LCD_4(Ldata&0x10);
   LCD_5(Ldata&0x20);
   LCD_6(Ldata&0x40);
   LCD_7(Ldata&0x80);        //再寫(xiě)入低四位
   delay_Dat;
   LCD_EN(1);
   delay_Eset;
   LCD_EN(0);                        //下降沿,執(zhí)行指令
   check_busy();
}


我這個(gè)是四個(gè)數(shù)據(jù)io, 分兩次發(fā),一次高四,一次發(fā)低四
回復(fù)

使用道具 舉報(bào)

10#
ID:744327 發(fā)表于 2020-6-5 15:17 | 只看該作者
write_com這個(gè)函數(shù)是向LCD液晶寫(xiě)數(shù)據(jù),寫(xiě)子函數(shù)。
回復(fù)

使用道具 舉報(bào)

11#
ID:663230 發(fā)表于 2020-6-8 21:17 | 只看該作者
write_com 這個(gè)是LCD1602寫(xiě)命令函數(shù),見(jiàn)下面函數(shù).
void WriteLcdCom(uchar Com)
{
        rs=0;
        rw=0;
        LcdE=0;
        LcdDat=Com;
        delayms(1);
        LcdE=1;
        delayms(3);
        LcdE=0;

}
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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