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

標題: 單片機代碼紅色部分FOR循環的為什么能讓LCD1602移屏? 一直想不明白 [打印本頁]

作者: Tongnh    時間: 2021-7-9 15:41
標題: 單片機代碼紅色部分FOR循環的為什么能讓LCD1602移屏? 一直想不明白
#include <reg52.h>
#include <LCD1602.h>  //LCD1602頭文件
#include <ds1302.h>          //時鐘芯片頭文件
#include <tem.h>          //溫度18b20頭文件

#define u8 unsigned char  //重定義
#define u16 unsigned int

sbit KEY1=P3^0;         //定義界面功能按鍵、確定鍵
sbit add=P3^1;         //定義加按鍵
sbit sub=P3^2;         //定義減按鍵
sbit KEY4=P3^3;  //定義改變功能鍵、返回鍵

sbit beep=P1^5;         //蜂鳴器輸出口

int con=0,mon=0;

bit bcon=0;
bit cool,teel;
bit nao=0,wen=0;

u16 win0,win1;
u16 hin=0;
char  t[][16]={"H50 L20 17/10/25",        //顯示日期        放在隨機存儲器中
               "21.3C 12:00:00 6"}; //顯示時間、周  放在程序存儲器

char  c1[]="Clock 07:00:00  ";        //顯示鬧鐘時間
char code c2[]=" Good  Everyday ";        // Good Everyday
char code c3[]=" Open OR Close  ";        //  Open OR Close  開啟還是關閉

char code M1[][16]={">     Time     <",">    Clock     <",
                    ">  Tem_Aralm   <"};          //  時間調整,鬧鐘,溫度上下限
char K1[16]=" ";
//u8 code kai[]={"          LYC The Most Beautiful Time To Meet The Most Beautiful You Do Not Cherish HJY         "};
u8 code kai[]={"           123456789ABCDEFGHIJKLMNOPQISDUVWXYZ         "};
//*********延時函數***********//
void delay(u16 i)
{
  while(i--);
}

//*********開機畫面*********//
void open()
{
   int i=0,j;
   while(kai[ i]!='\0')
    i++;
        i--;
   for(i;i!=0;i--)
   {
      K1[0]=kai[ i];
          LCD1602_WRITERCOM(0x80);
      for(j=0;j<16;j++)
      {
         LCD1602_WRITERDAT(K1[j]);
      }
      LCD1602_WRITERCOM(0xC0);
      for(j=0;j<16;j++)
      {
         LCD1602_WRITERDAT(K1[j]);
      }

          for(j=14;j>=0;j--)
          {
            K1[j+1]=K1[j];
          }

          delay(15000);
   }
}

紅色部分FOR循環的為什么能讓LCD移屏, 一直想不明白,請哪位大俠幫幫忙????



作者: Tongnh    時間: 2021-7-9 16:18
已經搞懂了
作者: shumivan    時間: 2021-7-9 16:18
前一個單元存放的數據移位到后一個單元存放,你覺得它是不是移位呢?
作者: yzwzfyz    時間: 2021-7-9 16:37
例如一個漢字是16*16,每一行或列的點陣數據放在KI[]中。
1、你輪流將KI[]送到顯示接口中去(如,16次完成一個漢字顯示),則可以顯示出一個漢字。認可不?
2、如果KI[]中的數據永遠不變,則顯示的永遠是那個漢字,不會變。認可不?
3、如果每間隔一段時間(如,0.5秒),將KI[]中的后一列數據,送到前一列中,則何如?不就相當于向前滾了一列嗎?當然KI[]末列應當補入另一個漢字的最前列。
說的不一定與你的程序完成一樣,但道理一樣。你想想。

作者: Tongnh    時間: 2021-7-9 20:21
shumivan 發表于 2021-7-9 16:18
前一個單元存放的數據移位到后一個單元存放,你覺得它是不是移位呢?

謝謝 已經明白了
作者: Tongnh    時間: 2021-7-9 20:22
yzwzfyz 發表于 2021-7-9 16:37
例如一個漢字是16*16,每一行或列的點陣數據放在KI[]中。
1、你輪流將KI[]送到顯示接口中去(如,16次完成 ...

謝謝 已經明白了




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 在线免费观看黄色av | 国产精品欧美一区喷水 | 婷婷久久综合 | 国产精品视频网站 | 在线播放中文字幕 | 国产在线播放一区二区三区 | www.日本在线 | 国产在视频一区二区三区吞精 | 日韩精品在线一区 | 91亚洲一区| 91精品国产一区二区三区 | 在线看av的网址 | 国产乱码精品一区二区三区忘忧草 | 中文字幕成人av | 亚洲精品一区国产精品 | 欧美激情在线观看一区二区三区 | 亚洲国产成人精品久久 | 五月婷婷丁香婷婷 | 午夜久久久久久久久久一区二区 | 就操在线 | 蜜桃特黄a∨片免费观看 | 91一区二区三区 | 欧美一级片在线 | 亚洲精品在线免费看 | 综合中文字幕 | 中文字幕一区二区三区乱码在线 | 伊人久久一区二区 | 中文字幕成人免费视频 | 免费看a | 免费观看黄 | 日韩在线精品视频 | 欧美成人免费在线视频 | 中文字幕第二十页 | 亚洲视频1区 | 国产成人精品久久二区二区91 | 亚洲成人三级 | 91麻豆精品国产91久久久久久 | 欧美激情一区二区三级高清视频 | 视频一区二区三区中文字幕 | 久久久久久免费毛片精品 | 992tv人人草 久久精品超碰 |