<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于A(yíng)RM和TFT6758的液晶顯示模塊實(shí)現

基于A(yíng)RM和TFT6758的液晶顯示模塊實(shí)現

作者: 時(shí)間:2012-06-16 來(lái)源:網(wǎng)絡(luò ) 收藏
4 LCD 顯示軟件設計

本文引用地址:http://dyxdggzs.com/article/148902.htm

  首先進(jìn)行系統初始化, 接著(zhù)對LCD 控制寄存器及地址寄存器進(jìn)行改寫(xiě), 設置一些LCD 的參數, 配置Buffer 的起始地址和Buffer 大小等一些參數, 然后是清屏, 最后系統可以通過(guò)控制器發(fā)出的指令調用相關(guān)函數, 完成相應的顯示功能。流程圖如圖2所示。

  LCD顯示流程

  4.1 LCD 初始化

  LCD 初始化主要包括對控制器的顯示頻率、顯示行數及顯示緩沖區地址的設置。主要程序如下:

  void TftInit(void)

  { STCOM_INI init_dat;

  int i;

  TftReset();

  for(i=0; i《100; i++) // 設定最多100 條初始化命令

  { init_dat = _INI[i]; // _INI 數組定義 初始化數據信息

  if(init_dat.type==DATA_END) break;

  if(init_dat.type==HD66783_COM){ TftSerialCom(init_dat.com, init_dat.dat); // 向TFT 液晶發(fā)送串行命令}

  else{ TftSendCom(init_dat.com); // 向TFT 液晶發(fā)送命令字TftSendDat(init_dat.dat); // 向TFT 液晶發(fā)送數據}

  DelaymS(init_dat.dly); // 延時(shí)等待}

  }

  4.2 LCD 清屏

  由于系統上電時(shí), 顯示緩沖區的數據是不固定的, 顯示出亂碼, 因此在操作之前應將緩沖區清零或向緩沖區發(fā)送指定的數據來(lái)填充屏幕。程序如下:

  void GUI_ClearSCR(void){ TFT_FillSCR(GUI_CCOLOR); // 全屏填充, 直接使用數據填充顯示緩沖區}

  4.3 數據顯示

  液晶初始化結束后, 系統將采集來(lái)的信號通過(guò)處理后用文字、圖形等顯示到LCD 上。這里舉一個(gè)簡(jiǎn)單的畫(huà)窗口程序。為了提高程序的可讀性和可移植性, 在程序頭文件中都用了宏定義, 限于篇幅在此不再列出。

  s tatic WINDOWS win;// GUI 初始化

  void GUI_INIT(void){GUI_Initialize(); // 初始化GUI, 包括初始化顯示緩沖區, 初始化LCM 并清屏

  GUI_SetColor (WHITE,BLUE);// 顯示顏色:

  WHITE 前景色; BLACK背景色InitWin(win); // 窗口初始化}

  // 窗口初始化

  void InitWin(WINDOWS *ptrwin){ptrwin- 》x = Windows_x;ptrwin- 》y = Windows_y;ptrwin- 》with = Windows_width;ptrwin- 》hight = Windows_hight;ptrwin- 》title = (uint8 *)Windows_title;ptrwin- 》s tate = (uint8 *)Windows_s tate;GUI_WindowsDraw(ptrwin); // 顯示窗口。根據提供的窗口參數進(jìn)行畫(huà)窗口。

  }

  其中顯示漢字的程序如下:

  void MyGUI_PutHZ(uint32 x, uint32 y, uint8 *dat){GUI_PutHZ(x,y,dat,16,16);}

  以漢字方式顯示標題的函數如下:

  void ShowTitleHZ(uint32 x, uint32 y)

  {x=x+10;MyGUI_PutHZ(x, y, (uint8 *)hzye);//hzye為“ 液” 的點(diǎn)陣數組

  MyGUI_PutHZ (x+HZ_FONT_SIZE, y, (uint8 *)hzjing);//hzjing 為“ 晶” 的點(diǎn)陣數組

  MyGUI_PutHZ(x+2*HZ_FONT_SIZE, y, (uint8 *)hzxian); //hzxian 為“ 顯” 的點(diǎn)陣數組

  MyGUI_PutHZ(x+3*HZ_FONT_SIZE, y, (uint8 *)hzshi); //hzshi 為“ 示” 的點(diǎn)陣數組}

  以漢字方式顯示菜單、狀態(tài)欄等與上述方法類(lèi)似。

  5 結束語(yǔ)

  本文對 和TFT6758 的模塊方法進(jìn)行了探討, 對液晶模塊TFT6758 進(jìn)行了有效的控制, 可提供豐富靈活的漢字、字符、圖形, 菜單和現場(chǎng)數據的動(dòng)態(tài)顯示, 性能穩定。該顯示模塊能夠應用于工業(yè)控制中。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>