在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

    
    
    <address id="vxupu"><td id="vxupu"></td></address>

      <pre id="vxupu"><small id="vxupu"></small></pre>
      <dfn id="vxupu"></dfn>
      <div id="vxupu"><small id="vxupu"></small></div>
    1. 新聞中心

      EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > LCD 240*128 T6963C C51程序

      LCD 240*128 T6963C C51程序

      作者: 時間:2016-12-02 來源:網(wǎng)絡(luò) 收藏
      主程序

      /***********************************/
      /* LCM(RT-240128TA)顯示程序 */
      /* LCM 控制芯片 T6963C 帶32KRAM */
      /* MCU 型號: STC 89C52RD2 */
      /* 時鐘頻率: 11.0592 MHz */
      /* 接口方式: 直接接口(總線方式) */
      /* 開發(fā)環(huán)境: Keil C51 V7.03 */
      /* 開發(fā)日期: 2006.07.01 */
      /* 程序編寫: liu1234 */
      /***********************************/
      #define t6963c_c 1
      #include "t6963c3.h"
      uint txthome,grhome;
      /**********************************
      //= 函數(shù)原型: uchar check_cmd_st()
      //= 功 能: 查詢是否可讀寫命令和數(shù)據(jù)的狀態(tài)
      //= 參 數(shù):
      //= 返 回 值: 非0不忙,否則忙
      //= 函數(shù)性質(zhì):私有函數(shù)
      **********************************/
      uchar check_cmd_st(void) // 狀態(tài)位STA1,STA0 判斷(讀寫指令和讀寫數(shù)據(jù))
      {
      uchar i;
      for(i=100;i>0;i--)
      {
      if((LCMCP & 0x03) == 0x03)
      break;
      }
      return i; // 若返回零,說明錯誤
      }

      本文引用地址:http://www.biyoush.com/article/201612/324710.htm

      /**********************************
      //= 函數(shù)原型: uchar check_ar_st
      //= 功 能: 查詢是否可數(shù)據(jù)自動讀狀態(tài)
      //= 參 數(shù):
      //= 返 回 值: 非0不忙,否則忙
      //= 函數(shù)性質(zhì):私有函數(shù)
      **********************************/
      uchar check_ar_st(void) // 狀態(tài)位ST2 判斷(數(shù)據(jù)自動讀狀態(tài))
      {
      uchar i;
      for(i=100;i>0;i--)
      {
      if((LCMCP & 0x04) == 0x04)
      break;
      }
      return i; // 若返回零,說明錯誤
      }

      /**********************************
      //= 函數(shù)原型: uchar check_aw_st
      //= 功 能: 查詢是否可數(shù)據(jù)自動寫狀態(tài)
      //= 參 數(shù):
      //= 返 回 值: 非0不忙,否則忙
      //= 函數(shù)性質(zhì):私有函數(shù)
      **********************************/
      uchar check_aw_st(void) // 狀態(tài)位ST3 判斷(數(shù)據(jù)自動寫狀態(tài))
      {
      uchar i;
      for(i=100;i>0;i--)
      {
      if((LCMCP & 0x08) == 0x08)
      break;
      }
      return i; // 若返回零,說明錯誤
      }

      /**********************************
      //= 函數(shù)原型: uchar check_scrPeek_st()
      //= 功 能: 查詢是否可屏讀/屏拷貝狀態(tài)狀態(tài)
      //= 參 數(shù):
      //= 返 回 值: 非0不忙,否則忙
      //= 函數(shù)性質(zhì):私有函數(shù)
      **********************************/
      uchar check_scrPeek_st(void) // 狀態(tài)位ST6 判斷(屏讀/屏拷貝狀態(tài))
      {
      uchar i;
      for(i=100;i>0;i--)
      {
      if((LCMCP & 0x40) == 0x40)
      break;
      }
      return i; // 若返回零,說明錯誤
      }

      /**********************************
      //= 函數(shù)原型: uchar wr_cmd_2(uchar uCmd,uint uPar)
      //= 功 能: 給T6963C寫帶雙參數(shù)的指令
      //= 參 數(shù):
      //= 返 回 值: 返回0 成功,否則忙
      //= 函數(shù)性質(zhì):私有函數(shù)
      **********************************/
      uchar wr_cmd_2(uchar uCmd,uint uPar) // 寫雙參數(shù)的指令
      {
      if(check_cmd_st() == 0) return 1;
      LCMDP = (uchar)(uPar& 0xFF);//先寫低字節(jié),再寫高字節(jié)
      if(check_cmd_st() == 0) return 2;
      LCMDP = (uchar)(uPar>>8);
      if(check_cmd_st() == 0) return 3;
      LCMCP = uCmd;
      return 0; // 返回0 成功
      }

      /**********************************
      //= 函數(shù)原型: uchar wr_cmd_1(uchar uCmd,uchar uPar1)
      //= 功 能: 給T6963C寫帶單參數(shù)的指令
      //= 參 數(shù):
      //= 返 回 值: 返回0 成功,否則忙
      //= 函數(shù)性質(zhì):私有函數(shù)
      **********************************/
      uchar wr_cmd_1(uchar uCmd,uchar uPar) // 寫單參數(shù)的指令
      {
      if(check_cmd_st() == 0) return 1;
      LCMDP = uPar;
      if(check_cmd_st() == 0) return 2;
      LCMCP = uCmd;
      return 0; // 返回0 成功
      }

      /**********************************
      //= 函數(shù)原型: uchar wr_cmd_0(uchar uCmd)
      //= 功 能: 給T6963C寫無參數(shù)的指令
      //= 參 數(shù):
      //= 返 回 值: 返回0 成功,否則忙
      //= 函數(shù)性質(zhì):私有函數(shù)
      **********************************/
      uchar wr_cmd_0(uchar uCmd) // 寫無參數(shù)的指令
      {
      if(check_cmd_st() == 0) return 1;
      LCMCP = uCmd;
      return 0; // 返回0 成功
      }

      /**********************************
      //= 函數(shù)原型: uchar wr_data(uchar uData)
      //= 功 能: 給T6963C寫一次數(shù)據(jù)
      //= 參 數(shù):
      //= 返 回 值: 返回0 成功,否則忙
      //= 函數(shù)性質(zhì):私有函數(shù)
      **********************************/
      uchar wr_data(uchar uData) // 寫一次數(shù)據(jù)
      {
      if(check_cmd_st() == 0) return 1;
      LCMDP = uData;
      return 0; // 返回0 成功
      }


      /**********************************
      //= 函數(shù)原型: uchar awr_data(uchar uData)
      //= 功 能: 給T6963C寫一個地址增加自動連續(xù)數(shù)據(jù)
      //= 參 數(shù):
      //= 返 回 值: 返回0 成功,否則忙
      //= 函數(shù)性質(zhì):私有函數(shù)
      **********************************/
      uchar awr_data(uchar uData) // 自動寫數(shù)據(jù)
      {
      if(check_aw_st() == 0) return 1;
      LCMDP = uData;
      return 0; // 返回0 成功
      }

      /**********************************
      //= 函數(shù)原型: uchar ard_data(uchar uData)
      //= 功 能: 從T6963C讀一個地址增加自動連續(xù)數(shù)據(jù)
      //= 參 數(shù):
      //= 返 回 值: 返回0 成功,否則忙
      //= 函數(shù)性質(zhì):私有函數(shù)
      **********************************/
      uchar ard_data(void) // 自動讀數(shù)據(jù)
      {
      if(check_ar_st() == 0) return 1;
      return LCMDP;
      }

      /**********************************
      //= 函數(shù)原型: void char_addr_Pointer_Set(uchar urow, uchar ucol)
      //= 功 能: 根據(jù)字符的行列設(shè)置vram地址
      //= 參 數(shù):
      //= 返 回 值:
      //= 函數(shù)性質(zhì):私有函數(shù)
      **********************************/
      void char_addr_Pointer_Set(uchar urow, uchar ucol)
      {
      uint iPos;
      iPos = urow * 30 + ucol + txthome;
      wr_cmd_2(LC_ADD_POS,iPos);
      }


      上一頁 1 2 3 下一頁

      關(guān)鍵詞: LCDT6963CC51程

      評論


      技術(shù)專區(qū)

      關(guān)閉