找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

2.0寸LCD屏ILI9225驅(qū)動 顯示字符圖片線條 單片機(jī)匯編語言程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:261025 發(fā)表于 2022-12-14 22:35 | 只看該作者 |只看大圖 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
簡單的測試  畫圓不會



單片機(jī)源程序如下:
  1. //   176*220  8位并口    ILI9225         
  2. // 用12C5A60S2         
  3.                                    P0M1        EQU      93H
  4.                    P0M0        EQU      94H
  5.                                    P4SW        EQU      0BBH;           將P4設(shè)置成普通IO口
  6.                                    P4          EQU      0C0H                                                                                                                                   
  7. //=============================================================================
  8. //貼片                          
  9.                    TFT_LED     BIT      P0.4;      //背光
  10.                                    TFT_CS      BIT      P0.7;           //片選
  11.                                    RESET       BIT      P4.6;           //復(fù)位        
  12.                    TFT_RS      BIT      P4.1;      //數(shù)據(jù)/命令切換
  13.                    TFT_WR      BIT      P4.5;           //寫控制
  14.                    TFT_RD      BIT      P4.4;           //讀控制
  15. //=============================================================================
  16. // 2.0寸屏幕
  17.                                    DAT_X_H_B       EQU      20H;           //     高8位   結(jié)束位
  18.                                    DAT_X_L_B       EQU      21H;           //     低8位          結(jié)束位

  19.                                    DAT_Y_H_B       EQU      22H;           //     高8位   結(jié)束位
  20.                                    DAT_Y_L_B       EQU      23H;           //     低8位          結(jié)束位

  21.                                    DIP_VH               EQU      24H;                橫屏 豎屏
  22.                                    DAT_H           EQU      25H;                高8位
  23.                                    DAT_L           EQU      26H;                低8位         
  24. //-------------------------------------------------------------------------
  25. //-------------------------------------------------------------------------
  26.                        ORG 0000H;
  27.                        LJMP START;

  28.                        ORG 0100H;
  29. //-------------------------------------------------------------------------
  30. START:                            MOV P0M0,#00000000B;
  31.                                        MOV P0M0,#00010000B;               P0.4強(qiáng)推       
  32.                                            MOV P4SW,#70H;           P4.4 P4.5 P4.6變成IO口
  33.                                 MOV SP,#60H
  34. //--------------------------------------------------------------------  
  35.                                    SETB TFT_LED;                      開啟屏幕背光
  36.                        SETB TFT_RD;                                 用不到 拉高
  37. //屏幕設(shè)置
  38.                                            LCALL REGISTER_SETTINGS;  配置屏幕  寫入預(yù)置數(shù)據(jù)                                          
  39. //--------------------------------------------------------------------
  40. MAIN:
  41. // 顯示數(shù)字
  42.                                            LCALL DISP_GBK_0816;
  43. // 顯示文字
  44.                                        LCALL DISP_GBK_1616;
  45.                                        LCALL DISP_GBK_3232;
  46. // 顯示線條
  47.                                    LCALL SET_CS
  48. // 顯示圖片
  49.                                            LCALL DISP_Y_1_SET_1;                             設(shè)置橫向顯示坐標(biāo) 第一個字符的橫向起始位和結(jié)束位
  50.                                        LCALL DISP_X_1_SET_1;                             設(shè)置縱向顯示坐標(biāo) 第一個字符的縱向起始位和結(jié)束位
  51.                                        MOV R0,#4;                                                         要顯示的字符縱向起始位   以要顯示的字符高度算
  52.                                        LCALL DISP_INC_32_Y;                  連續(xù)計(jì)算                                       
  53.                                        MOV R0,#10;                                                         要顯示的字符縱向起始位   以要顯示的字符寬度算
  54.                                        LCALL DISP_INC_16_X;                  連續(xù)計(jì)算                                       
  55.                                        LCALL LCD_Set_X_Y;                    設(shè)置顯示區(qū)域
  56.                        LCALL DIP_PICTURE;
  57. // 填充顏色
  58.                                            LCALL DISP_Y_1_SET_1;                             設(shè)置橫向顯示坐標(biāo) 第一個字符的橫向起始位和結(jié)束位
  59.                                        LCALL DISP_X_1_SET_1;                             設(shè)置縱向顯示坐標(biāo) 第一個字符的縱向起始位和結(jié)束位
  60.                                        MOV R0,#6;                                                         要顯示的字符橫向起始位   以要顯示的字符寬度算
  61.                                        LCALL DISP_INC_32_X;                  連續(xù)計(jì)算
  62.                                        LCALL LCD_Set_X_Y;                    設(shè)置顯示區(qū)域

  63.                                            LCALL DIP_COLOUR;

  64.                        LJMP $;
  65. //======================================================================================
  66. //======================================================================================

  67. //--------------------------------------------------------------------
  68. //--------------------------------------------------------------------
  69. $INCLUDE (DIP_INIT.ASM)                                         
  70. $INCLUDE (SET_DIP.ASM)                                         
  71. $INCLUDE (DELAY.ASM)                                         
  72. $INCLUDE (SET.ASM)
  73. $INCLUDE (ZK.ASM)
  74. $INCLUDE (DISP_GBK_3232.ASM)
  75. $INCLUDE (DISP_GBK_1616.ASM)
  76. $INCLUDE (DISP_GBK_0816.ASM)
  77.                                    END;
復(fù)制代碼

51hei截圖20221214222627.jpg (53.7 KB, 下載次數(shù): 95)

51hei截圖20221214222627.jpg

51hei截圖20221214222737.jpg (33.06 KB, 下載次數(shù): 94)

51hei截圖20221214222737.jpg

1.jpg (41.04 KB, 下載次數(shù): 92)

1.jpg

3.jpg (229.07 KB, 下載次數(shù): 96)

3.jpg

2.0寸 測試顯示字符 圖片 線條.7z

39.1 KB, 下載次數(shù): 11, 下載積分: 黑幣 -5

評分

參與人數(shù) 1黑幣 +70 收起 理由
admin + 70 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報(bào)

沙發(fā)
ID:279787 發(fā)表于 2022-12-16 14:01 | 只看該作者
厲害,這個驅(qū)動還用匯編寫;但是為了方便移植,還是用C好一點(diǎn)。
回復(fù)

使用道具 舉報(bào)

板凳
ID:126422 發(fā)表于 2022-12-16 21:53 | 只看該作者
請教樓主,這個與ILI9341驅(qū)動上有什么區(qū)別?
回復(fù)

使用道具 舉報(bào)

地板
ID:261025 發(fā)表于 2022-12-16 22:28 | 只看該作者
lijn 發(fā)表于 2022-12-16 21:53
請教樓主,這個與ILI9341驅(qū)動上有什么區(qū)別?

命令不一樣   設(shè)置字符坐標(biāo)只設(shè)置起始位   和設(shè)置坐標(biāo)有關(guān)的程序都要修改  研究明白了也沒多大區(qū)別
回復(fù)

使用道具 舉報(bào)

5#
ID:261025 發(fā)表于 2022-12-16 22:32 | 只看該作者
oliver2 發(fā)表于 2022-12-16 14:01
厲害,這個驅(qū)動還用匯編寫;但是為了方便移植,還是用C好一點(diǎn)。

不會C  修改一點(diǎn)就出錯  有時候提示的錯誤和真正的錯誤位置相差十萬八千里  不知道錯在哪   匯編錯哪提示哪  一步一步的很好排除
回復(fù)

使用道具 舉報(bào)

6#
ID:126422 發(fā)表于 2022-12-20 17:15 | 只看該作者
418854190 發(fā)表于 2022-12-16 22:28
命令不一樣   設(shè)置字符坐標(biāo)只設(shè)置起始位   和設(shè)置坐標(biāo)有關(guān)的程序都要修改  研究明白了也沒多大區(qū)別

謝謝,先下載慢慢學(xué)習(xí)。
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

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