📄 dis_dir.asm
字号:
//****************************************************************************************************
// 128X64I液晶底层驱动程序包
// 设计者: 牟联树
// 日 期: 2003.11.22
// 版本号: 1.0
//****************************************************************************************************
.INCLUDE Spmc75_regs.inc
.DEFINE LCD_E 0x0800 //LCD使能信号 (IOA11)
.DEFINE LCD_R_W 0x0400 //读写信号 (IOA10)
.DEFINE LCD_DI 0x0200 //数据指令选择 (IOA9)
.DEFINE LCD_CS 0x0100 //LCD左半屏片选 (IOA8)
.DEFINE LCD_Port P_IOA_Data_ADDR
.DEFINE LCD_Port_B P_IOA_Buffer_ADDR
.DEFINE LCD_Port_Dir P_IOA_Dir_ADDR
.CODE
//****************************************************************************************************
// 128X64I液晶底层驱动画圆误差计算 W_Red_Err(int *a,int *b,int *r)
// 设计者: 牟联树
// 描 述: 系统初始化
// 日 期: 2004.12.22
// 版本号: 1.2
//****************************************************************************************************
.PUBLIC _W_Red_Err
_W_Red_Err: push bp,bp to [sp]
bp = sp+1
r3 = [bp+3]
r3 = [r3]
r3 = r3+1
r4 = r3
mr = r3*r4,us
r1 = r3
r3 = [bp+4]
r3 = [r3]
r4 = r3
mr = r3*r4,us
r1+= r3
r3 = [bp+5]
r3 = [r3]
r4 = r3
mr = r3*r4,us
r1-=r3
jl squ1
r4 = [bp+4]
r3 = [r4]
r1-= r3
jl squ1
r3-=1
[r4] = r3;
squ1: r4 = [bp+3]
r3 = [r4]
r3+=1
[r4] = r3
pop bp,bp from [sp]
retf
//****************************************************************************************************
// 128X64I液晶底层驱动写数据子程序 Writ_Data(int a,int Data)
// 设计者: 牟联树
// 描 述: 数据写入子程序(供C语言调用)
// 日 期: 2004.12.22
// 版本号: 1.1
//****************************************************************************************************
.PUBLIC _Writ_Data
_Writ_Data: r2 = sp + 3
r1 = [LCD_Port_Dir]
r1 |= 0x00ff
[LCD_Port_Dir] = r1
r1 = [LCD_Port_B]
r1 &= (~(LCD_CS + LCD_E + LCD_R_W))&0xff00
r1 |= LCD_DI + LCD_E
r1 |= [r2] //装入要写的数据
[LCD_Port_B] = r1
r1 &=~LCD_E //产生E信号脉冲
r1 |= LCD_CS
[LCD_Port_B] = r1
retf
//****************************************************************************************************
// 128X64I液晶底层驱动写指令子程序 Writ_ZL(int l_r,int Data)
// 设计者: 牟联树
// 描 述: 指令写入子程序(供C语言调用)
// 日 期: 2004.12.22
// 版本号: 1.1
//****************************************************************************************************
.PUBLIC _Writ_ZL
_Writ_ZL: r2 = sp +3
r1 = [LCD_Port_Dir]
r1 |= 0x00ff
[LCD_Port_Dir] = r1
r1 = [LCD_Port_B]
r1 &= (~(LCD_CS + LCD_E + LCD_DI + LCD_R_W))&0xff00
r1 |= [r2] //装入要写的数据
r1 |= LCD_E
[LCD_Port_B] = r1
r1 &=~LCD_E //产生E信号脉冲
r1 |= LCD_CS
[LCD_Port_B] = r1
retf
//****************************************************************************************************
// 128X64I液晶底层驱动读数据子程序 Read_Data()
// 设计者: 牟联树
// 描 述: 数据读取子程序(供C语言调用)
// 日 期: 2004.12.22
// 版本号: 1.1
//****************************************************************************************************
.PUBLIC _Read_Data
_Read_Data: r1 = [LCD_Port_Dir]
r1 &= 0xff00
[LCD_Port_Dir] = r1
r1 = [LCD_Port_B]
r1 &= ~LCD_CS //合成CS,DI和RW信号
r1 |= (LCD_DI + LCD_R_W + LCD_E)
[LCD_Port_B] = r1
r2 = [LCD_Port] //读数据
r1 &=~LCD_E
r1 |= LCD_CS
[LCD_Port_B] = r1
r1 = r2 & 0x00ff
retf
//****************************************************************************************************
// 128X64I液晶底层驱动读数据子程序 Read_State()
// 设计者: 牟联树
// 描 述: 数据读取子程序(供C语言调用)
// 日 期: 2004.12.22
// 版本号: 1.1
//****************************************************************************************************
.PUBLIC _Read_State
_Read_State:r1 = [LCD_Port_Dir]
r1 &= 0xff00
[LCD_Port_Dir] = r1
r1 = [LCD_Port_B]
r1 &= ~(LCD_CS + LCD_DI) //合成CS,DI和RW信号
r1 |= (LCD_R_W + LCD_E)
[LCD_Port_B] = r1
r2 = [LCD_Port] //读数据
r1 &=~LCD_E
r1 |= LCD_CS
[LCD_Port_B] = r1
r1 = r2 & 0x00ff
retf
//****************************************************************************************************
// 128X64I液晶底层驱动[6X8]字体库
// 设计者: 牟联树
// 描 述: [6X8]西文字符的字模数据 (纵向取模,字节倒序)
// 日 期: 2004.4.27
// 版本号: 1.1
//****************************************************************************************************
.PUBLIC _Asii8
_Asii8:
.DW 0x0000,0x0000,0x0000,0x0000,0x065F,0x0600,0x0007,0x0300,0x0703,0x0024,0x7E24,0x7E24
.DW 0x0024,0x2B6A,0x1200,0x0063,0x1308,0x6463,0x0036,0x4956,0x2050,0x0000,0x0703,0x0000
.DW 0x0000,0x3E41,0x0000,0x0000,0x413E,0x0000,0x0008,0x3E1C,0x3E08,0x0008,0x083E,0x0808
.DW 0x0000,0xE060,0x0000,0x0008,0x0808,0x0808,0x0000,0x6060,0x0000,0x0020,0x1008,0x0402
.DW 0x003E,0x5149,0x453E,0x0000,0x427F,0x4000,0x0062,0x5149,0x4946,0x0022,0x4949,0x4936
.DW 0x0018,0x1412,0x7F10,0x002F,0x4949,0x4931,0x003C,0x4A49,0x4930,0x0001,0x7109,0x0503
.DW 0x0036,0x4949,0x4936,0x0006,0x4949,0x291E,0x0000,0x6C6C,0x0000,0x0000,0xEC6C,0x0000
.DW 0x0008,0x1422,0x4100,0x0024,0x2424,0x2424,0x0000,0x4122,0x1408,0x0002,0x0159,0x0906
.DW 0x003E,0x415D,0x551E,0x007E,0x1111,0x117E,0x007F,0x4949,0x4936,0x003E,0x4141,0x4122
.DW 0x007F,0x4141,0x413E,0x007F,0x4949,0x4941,0x007F,0x0909,0x0901,0x003E,0x4149,0x497A
.DW 0x007F,0x0808,0x087F,0x0000,0x417F,0x4100,0x0030,0x4040,0x403F,0x007F,0x0814,0x2241
.DW 0x007F,0x4040,0x4040,0x007F,0x0204,0x027F,0x007F,0x0204,0x087F,0x003E,0x4141,0x413E
.DW 0x007F,0x0909,0x0906,0x003E,0x4151,0x215E,0x007F,0x0909,0x1966,0x0026,0x4949,0x4932
.DW 0x0001,0x017F,0x0101,0x003F,0x4040,0x403F,0x001F,0x2040,0x201F,0x003F,0x403C,0x403F
.DW 0x0063,0x1408,0x1463,0x0007,0x0870,0x0807,0x0071,0x4945,0x4300,0x0000,0x7F41,0x4100
.DW 0x0002,0x0408,0x1020,0x0000,0x4141,0x7F00,0x0004,0x0201,0x0204,0x8080,0x8080,0x8080
.DW 0x0000,0x0307,0x0000,0x0020,0x5454,0x5478,0x007F,0x4444,0x4438,0x0038,0x4444,0x4428
.DW 0x0038,0x4444,0x447F,0x0038,0x5454,0x5408,0x0008,0x7E09,0x0900,0x0018,0xA4A4,0xA47C
.DW 0x007F,0x0404,0x7800,0x0000,0x007D,0x4000,0x0040,0x8084,0x7D00,0x007F,0x1028,0x4400
.DW 0x0000,0x007F,0x4000,0x007C,0x0418,0x0478,0x007C,0x0404,0x7800,0x0038,0x4444,0x4438
.DW 0x00FC,0x4444,0x4438,0x0038,0x4444,0x44FC,0x0044,0x7844,0x0408,0x0008,0x5454,0x5420
.DW 0x0004,0x3E44,0x2400,0x003C,0x4020,0x7C00,0x001C,0x2040,0x201C,0x003C,0x6030,0x603C
.DW 0x006C,0x1010,0x6C00,0x009C,0xA060,0x3C00,0x0064,0x5454,0x4C00,0x0008,0x3E41,0x4100
.DW 0x0000,0x0077,0x0000,0x0000,0x4141,0x3E08,0x0002,0x0102,0x0100,0x1038,0x7C10,0x1010
//****************************************************************************************************
// 128X64I液晶底层驱动[8X16]字体库
// 设计者: 牟联树
// 描 述: [8X16]西文字符的字模数据 (纵向取模,字节倒序)
// 日 期: 2004.4.27
// 版本号: 1.1
//****************************************************************************************************
.PUBLIC _Asii16
_Asii16:
.DW 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000
.DW 0x0000,0x00F8,0x0000,0x0000,0x0000,0x0033,0x3000,0x0000
.DW 0x0010,0x0C06,0x100C,0x0600,0x0000,0x0000,0x0000,0x0000
.DW 0x40C0,0x7840,0xC078,0x4000,0x043F,0x0404,0x3F04,0x0400
.DW 0x0070,0x88FC,0x0830,0x0000,0x0018,0x20FF,0x211E,0x0000
.DW 0xF008,0xF000,0xE018,0x0000,0x0021,0x1C03,0x1E21,0x1E00
.DW 0x00F0,0x0888,0x7000,0x0000,0x1E21,0x2324,0x1927,0x2110
.DW 0x1016,0x0E00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000
.DW 0x0000,0x00E0,0x1804,0x0200,0x0000,0x0007,0x1820,0x4000
.DW 0x0002,0x0418,0xE000,0x0000,0x0040,0x2018,0x0700,0x0000
.DW 0x4040,0x80F0,0x8040,0x4000,0x0202,0x010F,0x0102,0x0200
.DW 0x0000,0x00F0,0x0000,0x0000,0x0101,0x011F,0x0101,0x0100
.DW 0x0000,0x0000,0x0000,0x0000,0x80B0,0x7000,0x0000,0x0000
.DW 0x0000,0x0000,0x0000,0x0000,0x0001,0x0101,0x0101,0x0101
.DW 0x0000,0x0000,0x0000,0x0000,0x0030,0x3000,0x0000,0x0000
.DW 0x0000,0x0000,0x8060,0x1804,0x0060,0x1806,0x0100,0x0000
.DW 0x00E0,0x1008,0x0810,0xE000,0x000F,0x1020,0x2010,0x0F00
.DW 0x0010,0x10F8,0x0000,0x0000,0x0020,0x203F,0x2020,0x0000
.DW 0x0070,0x0808,0x0888,0x7000,0x0030,0x2824,0x2221,0x3000
.DW 0x0030,0x0888,0x8848,0x3000,0x0018,0x2020,0x2011,0x0E00
.DW 0x0000,0xC020,0x10F8,0x0000,0x0007,0x0424,0x243F,0x2400
.DW 0x00F8,0x0888,0x8808,0x0800,0x0019,0x2120,0x2011,0x0E00
.DW 0x00E0,0x1088,0x8818,0x0000,0x000F,0x1120,0x2011,0x0E00
.DW 0x0038,0x0808,0xC838,0x0800,0x0000,0x003F,0x0000,0x0000
.DW 0x0070,0x8808,0x0888,0x7000,0x001C,0x2221,0x2122,0x1C00
.DW 0x00E0,0x1008,0x0810,0xE000,0x0000,0x3122,0x2211,0x0F00
.DW 0x0000,0x00C0,0xC000,0x0000,0x0000,0x0030,0x3000,0x0000
.DW 0x0000,0x0080,0x0000,0x0000,0x0000,0x8060,0x0000,0x0000
.DW 0x0000,0x8040,0x2010,0x0800,0x0001,0x0204,0x0810,0x2000
.DW 0x4040,0x4040,0x4040,0x4000,0x0404,0x0404,0x0404,0x0400
.DW 0x0008,0x1020,0x4080,0x0000,0x0020,0x1008,0x0402,0x0100
.DW 0x0070,0x4808,0x0808,0xF000,0x0000,0x0030,0x3601,0x0000
.DW 0xC030,0xC828,0xE810,0xE000,0x0718,0x2724,0x2314,0x0B00
.DW 0x0000,0xC038,0xE000,0x0000,0x203C,0x2302,0x0227,0x3820
.DW 0x08F8,0x8888,0x8870,0x0000,0x203F,0x2020,0x2011,0x0E00
.DW 0xC030,0x0808,0x0808,0x3800,0x0718,0x2020,0x2010,0x0800
.DW 0x08F8,0x0808,0x0810,0xE000,0x203F,0x2020,0x2010,0x0F00
.DW 0x08F8,0x8888,0xE808,0x1000,0x203F,0x2020,0x2320,0x1800
.DW 0x08F8,0x8888,0xE808,0x1000,0x203F,0x2000,0x0300,0x0000
.DW 0xC030,0x0808,0x0838,0x0000,0x0718,0x2020,0x221E,0x0200
.DW 0x08F8,0x0800,0x0008,0xF808,0x203F,0x2101,0x0121,0x3F20
.DW 0x0008,0x08F8,0x0808,0x0000,0x0020,0x203F,0x2020,0x0000
.DW 0x0000,0x0808,0xF808,0x0800,0xC080,0x8080,0x7F00,0x0000
.DW 0x08F8,0x88C0,0x2818,0x0800,0x203F,0x2001,0x2638,0x2000
.DW 0x08F8,0x0800,0x0000,0x0000,0x203F,0x2020,0x2020,0x3000
.DW 0x08F8,0xF800,0xF8F8,0x0800,0x203F,0x003F,0x003F,0x2000
.DW 0x08F8,0x30C0,0x0008,0xF808,0x203F,0x2000,0x0718,0x3F00
.DW 0xE010,0x0808,0x0810,0xE000,0x0F10,0x2020,0x2010,0x0F00
.DW 0x08F8,0x0808,0x0808,0xF000,0x203F,0x2101,0x0101,0x0000
.DW 0xE010,0x0808,0x0810,0xE000,0x0F18,0x2424,0x3850,0x4F00
.DW 0x08F8,0x8888,0x8888,0x7000,0x203F,0x2000,0x030C,0x3020
.DW 0x0070,0x8808,0x0808,0x3800,0x0038,0x2021,0x2122,0x1C00
.DW 0x1808,0x08F8,0x0808,0x1800,0x0000,0x203F,0x2000,0x0000
.DW 0x08F8,0x0800,0x0008,0xF808,0x001F,0x2020,0x2020,0x1F00
.DW 0x0878,0x8800,0x00C8,0x3808,0x0000,0x0738,0x0E01,0x0000
.DW 0xF808,0x00F8,0x0008,0xF800,0x033C,0x0700,0x073C,0x0300
.DW 0x0818,0x6880,0x8068,0x1808,0x2030,0x2C03,0x032C,0x3020
.DW 0x0838,0xC800,0xC838,0x0800,0x0000,0x203F,0x2000,0x0000
.DW 0x1008,0x0808,0xC838,0x0800,0x2038,0x2621,0x2020,0x1800
.DW 0x0000,0x00FE,0x0202,0x0200,0x0000,0x007F,0x4040,0x4000
.DW 0x000C,0x30C0,0x0000,0x0000,0x0000,0x0001,0x0638,0xC000
.DW 0x0002,0x0202,0xFE00,0x0000,0x0040,0x4040,0x7F00,0x0000
.DW 0x0000,0x0402,0x0202,0x0400,0x0000,0x0000,0x0000,0x0000
.DW 0x0000,0x0000,0x0000,0x0000,0x8080,0x8080,0x8080,0x8080
.DW 0x0002,0x0204,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000
.DW 0x0000,0x8080,0x8080,0x0000,0x0019,0x2422,0x2222,0x3F20
.DW 0x08F8,0x0080,0x8000,0x0000,0x003F,0x1120,0x2011,0x0E00
.DW 0x0000,0x0080,0x8080,0x0000,0x000E,0x1120,0x2020,0x1100
.DW 0x0000,0x0080,0x8088,0xF800,0x000E,0x1120,0x2010,0x3F20
.DW 0x0000,0x8080,0x8080,0x0000,0x001F,0x2222,0x2222,0x1300
.DW 0x0080,0x80F0,0x8888,0x8818,0x0020,0x203F,0x2020,0x0000
.DW 0x0000,0x8080,0x8080,0x8000,0x006B,0x9494,0x9493,0x6000
.DW 0x08F8,0x0080,0x8080,0x0000,0x203F,0x2100,0x0020,0x3F20
.DW 0x0080,0x9898,0x0000,0x0000,0x0020,0x203F,0x2020,0x0000
.DW 0x0000,0x0080,0x9898,0x0000,0x00C0,0x8080,0x807F,0x0000
.DW 0x08F8,0x0000,0x8080,0x8000,0x203F,0x2402,0x2D30,0x2000
.DW 0x0008,0x08F8,0x0000,0x0000,0x0020,0x203F,0x2020,0x0000
.DW 0x8080,0x8080,0x8080,0x8000,0x203F,0x2000,0x3F20,0x003F
.DW 0x8080,0x0080,0x8080,0x0000,0x203F,0x2100,0x0020,0x3F20
.DW 0x0000,0x8080,0x8080,0x0000,0x001F,0x2020,0x2020,0x1F00
.DW 0x8080,0x0080,0x8000,0x0000,0x80FF,0xA120,0x2011,0x0E00
.DW 0x0000,0x0080,0x8080,0x8000,0x000E,0x1120,0x20A0,0xFF80
.DW 0x8080,0x8000,0x8080,0x8000,0x2020,0x3F21,0x2000,0x0100
.DW 0x0000,0x8080,0x8080,0x8000,0x0033,0x2424,0x2424,0x1900
.DW 0x0080,0x80E0,0x8080,0x0000,0x0000,0x001F,0x2020,0x0000
.DW 0x8080,0x0000,0x0080,0x8000,0x001F,0x2020,0x2010,0x3F20
.DW 0x8080,0x8000,0x0080,0x8080,0x0001,0x0E30,0x0806,0x0100
.DW 0x8080,0x0080,0x0080,0x8080,0x0F30,0x0C03,0x0C30,0x0F00
.DW 0x0080,0x8000,0x8080,0x8000,0x0020,0x312E,0x0E31,0x2000
.DW 0x8080,0x8000,0x0080,0x8080,0x8081,0x8E70,0x1806,0x0100
.DW 0x0080,0x8080,0x8080,0x8000,0x0021,0x302C,0x2221,0x3000
.DW 0x0000,0x0000,0x807C,0x0202,0x0000,0x0000,0x003F,0x4040
.DW 0x0000,0x0000,0xFF00,0x0000,0x0000,0x0000,0xFF00,0x0000
.DW 0x0002,0x027C,0x8000,0x0000,0x0040,0x403F,0x0000,0x0000
.DW 0x0006,0x0101,0x0202,0x0404,0x0000,0x0000,0x0000,0x0000
.DW 0x80C0,0xE0F0,0xF880,0x8080,0x0103,0x070F,0x1F01,0x0101
.PUBLIC _GB16
_GB16:
//-- 文字: 牟 -- (纵向取模,字节倒序)
//-- 新宋体12; 此字体下对应的点阵为:宽x高=16x16 --
.DW 0x0000,0x80E8,0x8C8A,0x89E8,0x8888,0x8A8C,0x9800,0x0000
.DW 0x0405,0x0404,0x0404,0x04FF,0x0404,0x0404,0x0404,0x0400
//-- 文字: 联 -- (纵向取模,字节倒序)
//-- 新宋体12; 此字体下对应的点阵为:宽x高=16x16 --
.DW 0x02FE,0x9292,0x92FE,0x1211,0x121C,0xF018,0x1712,0x1000
.DW 0x081F,0x0808,0x04FF,0x0581,0x4131,0x0F11,0x21C1,0x4100
//-- 文字: 树 -- (纵向取模,字节倒序)
//-- 新宋体12; 此字体下对应的点阵为:宽x高=16x16 --
.DW 0x1010,0xD0FF,0x5090,0x6888,0x6818,0x9010,0x10FF,0x1000
.DW 0x0403,0x00FF,0x1009,0x0403,0x0106,0x0041,0x807F,0x0000
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -