⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 yj12864.lis

📁 AVR单片机开发版资料测试程序里的源程序
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 02DE 9B64              .byte 155,'d
 02E0 27F9              .byte 39,249
 02E2 FE7F              .byte 254,127
 02E4 8060              .byte 128,96
 02E6 0C1B              .byte 12,27
 02E8 6601              .byte 'f,1
 02EA 8C01              .byte 140,1
 02EC 8061              .byte 128,'a
 02EE 9B64              .byte 155,'d
 02F0 27F9              .byte 39,249
 02F2 FE7F              .byte 254,127
 02F4 8060              .byte 128,96
 02F6 1E1B              .byte 30,27
 02F8 6601              .byte 'f,1
 02FA 8C01              .byte 140,1
 02FC 8061              .byte 128,'a
 02FE 9B64              .byte 155,'d
 0300 2330              .byte 35,48
 0302 CC33              .byte 204,51
 0304 1C6C              .byte 28,'l
 0306 331B              .byte 51,27
 0308 6331              .byte 'c,49
 030A 9C70              .byte 156,'p
 030C CC33              .byte 204,51
 030E 1B64              .byte 27,'d
 0310 2330              .byte 35,48
 0312 CC33              .byte 204,51
 0314 1C78              .byte 28,'x
 0316 7FBF              .byte 127,191
 0318 F1E0              .byte 241,224
 031A FC70              .byte 252,'p
 031C 781E              .byte 'x,30
 031E 3FF4              .byte 63,244
 0320 2000              .byte 32,0
 0322 0000              .byte 0,0
 0324 0000              .byte 0,0
 0326 0000              .byte 0,0
 0328 0000              .byte 0,0
 032A 0000              .byte 0,0
 032C 0000              .byte 0,0
 032E 0004              .byte 0,4
 0330 2000              .byte 32,0
 0332 0000              .byte 0,0
 0334 0000              .byte 0,0
 0336 0000              .byte 0,0
 0338 0000              .byte 0,0
 033A 0000              .byte 0,0
 033C 0000              .byte 0,0
 033E 0004              .byte 0,4
 0340 2000              .byte 32,0
 0342 0000              .byte 0,0
 0344 0000              .byte 0,0
 0346 0000              .byte 0,0
 0348 0000              .byte 0,0
 034A 0000              .byte 0,0
 034C 0000              .byte 0,0
 034E 0004              .byte 0,4
 0350 2000              .byte 32,0
 0352 0000              .byte 0,0
 0354 0000              .byte 0,0
 0356 0000              .byte 0,0
 0358 0000              .byte 0,0
 035A 0000              .byte 0,0
 035C 0000              .byte 0,0
 035E 0004              .byte 0,4
 0360 2000              .byte 32,0
 0362 0000              .byte 0,0
 0364 0000              .byte 0,0
 0366 0000              .byte 0,0
 0368 0000              .byte 0,0
 036A 0000              .byte 0,0
 036C 0000              .byte 0,0
 036E 0004              .byte 0,4
 0370 2000              .byte 32,0
 0372 0000              .byte 0,0
 0374 0000              .byte 0,0
 0376 0000              .byte 0,0
 0378 0000              .byte 0,0
 037A 0000              .byte 0,0
 037C 0000              .byte 0,0
 037E 0004              .byte 0,4
 0380 2000              .byte 32,0
 0382 0000              .byte 0,0
 0384 0000              .byte 0,0
 0386 0000              .byte 0,0
 0388 0000              .byte 0,0
 038A 0000              .byte 0,0
 038C 0000              .byte 0,0
 038E 0004              .byte 0,4
 0390 2000              .byte 32,0
 0392 0000              .byte 0,0
 0394 0000              .byte 0,0
 0396 0000              .byte 0,0
 0398 0000              .byte 0,0
 039A 0000              .byte 0,0
 039C 0000              .byte 0,0
 039E 0004              .byte 0,4
 03A0 2000              .byte 32,0
 03A2 0000              .byte 0,0
 03A4 0000              .byte 0,0
 03A6 0000              .byte 0,0
 03A8 0000              .byte 0,0
 03AA 0000              .byte 0,0
 03AC 0000              .byte 0,0
 03AE 0004              .byte 0,4
 03B0 2000              .byte 32,0
 03B2 0000              .byte 0,0
 03B4 0000              .byte 0,0
 03B6 0000              .byte 0,0
 03B8 0000              .byte 0,0
 03BA 0000              .byte 0,0
 03BC 0000              .byte 0,0
 03BE 0004              .byte 0,4
 03C0 3FFF              .byte 63,255
 03C2 FFFF              .byte 255,255
 03C4 FFFF              .byte 255,255
 03C6 FFFF              .byte 255,255
 03C8 FFFF              .byte 255,255
 03CA FFFF              .byte 255,255
 03CC FFFF              .byte 255,255
 03CE FFFC              .byte 255,252
 03D0 0000              .byte 0,0
 03D2 0000              .byte 0,0
 03D4 0000              .byte 0,0
 03D6 0000              .byte 0,0
 03D8 0000              .byte 0,0
 03DA 0000              .byte 0,0
 03DC 0000              .byte 0,0
 03DE 0000              .byte 0,0
 03E0 0000              .byte 0,0
 03E2 0000              .byte 0,0
 03E4 0000              .byte 0,0
 03E6 0000              .byte 0,0
 03E8 0000              .byte 0,0
 03EA 0000              .byte 0,0
 03EC 0000              .byte 0,0
 03EE 0000              .byte 0,0
 03F0 0000              .byte 0,0
 03F2 0000              .byte 0,0
 03F4 0000              .byte 0,0
 03F6 0000              .byte 0,0
 03F8 0000              .byte 0,0
 03FA 0000              .byte 0,0
 03FC 0000              .byte 0,0
 03FE 0000              .byte 0,0
 0400                   .dbfile C:\icc\examples.avr\AVR_PQ1A_DEMO\4_12864\YJ12864.C
 0400                   .dbsym e GDRAM _GDRAM A[1024:1024]c
                        .area data(ram, con, rel)
 0000                   .dbfile C:\icc\examples.avr\AVR_PQ1A_DEMO\4_12864\YJ12864.C
                        .area text(rom, con, rel)
 00A8                   .dbfile C:\icc\examples.avr\AVR_PQ1A_DEMO\4_12864\YJ12864.C
 00A8                   .dbfunc e LCD12864_portini _LCD12864_portini fV
                        .even
 00A8           _LCD12864_portini::
 00A8                   .dbline -1
 00A8                   .dbline 88
 00A8           ; 返回值  : 无
 00A8           ; /********************************************/
 00A8           ; void LCD12864_portini(void)
 00A8           ; {
 00A8                   .dbline 89
 00A8           ;       LCDb_CTRL_DDR |= BIT(LCDb_RS)|BIT(LCDb_RW)|BIT(LCDb_E)|BIT(LCDb_RST);//配置控制管脚为输出
 00A8 81B3              in R24,0x11
 00AA 806F              ori R24,240
 00AC 81BB              out 0x11,R24
 00AE                   .dbline 90
 00AE           ;       LCDb_DATA_DDR |= 0xFF;  //配置数据管脚为输出
 00AE 87B3              in R24,0x17
 00B0 8F6F              ori R24,255
 00B2 87BB              out 0x17,R24
 00B4                   .dbline 91
 00B4           ;       LCDb_SET_RST;           //不使能复位端
 00B4 979A              sbi 0x12,7
 00B6                   .dbline -2
 00B6                   .dbline 92
 00B6           ; }
 00B6           L16:
 00B6                   .dbline 0 ; func end
 00B6 0895              ret
 00B8                   .dbend
 00B8                   .dbfunc e LCD12864_readbyte _LCD12864_readbyte fc
 00B8           ;          dByte -> R20
 00B8           ;         DatCmd -> R20
                        .even
 00B8           _LCD12864_readbyte::
 00B8 0E940000          xcall push_gset1
 00BC 402F              mov R20,R16
 00BE                   .dbline -1
 00BE                   .dbline 100
 00BE           ; /*******************************************
 00BE           ; 函数名称: LCD12864_readbyte
 00BE           ; 功    能: 从12864液晶读出一个字节数据或者指令
 00BE           ; 参    数: DatCmd--为iDat时是数据,为iCmd时是指令
 00BE           ; 返回值  : dByte--读回的数据或者指令
 00BE           ; /********************************************/
 00BE           ; uchar LCD12864_readbyte(uchar DatCmd)
 00BE           ; {
 00BE                   .dbline 102
 00BE           ;       uchar dByte;
 00BE           ;       if (DatCmd == iCmd)              //指令操作
 00BE 4423              tst R20
 00C0 11F4              brne L18
 00C2                   .dbline 103
 00C2           ;               LCDb_CLR_RS;
 00C2 9498              cbi 0x12,4
 00C4 01C0              xjmp L19
 00C6           L18:
 00C6                   .dbline 105
 00C6           ;       else
 00C6           ;               LCDb_SET_RS;
 00C6 949A              sbi 0x12,4
 00C8           L19:
 00C8                   .dbline 107
 00C8           ;               
 00C8           ;       LCDb_SET_RW;                     //读操作
 00C8 959A              sbi 0x12,5
 00CA                   .dbline 108
 00CA           ;       LCDb_SET_E;
 00CA 969A              sbi 0x12,6
 00CC                   .dbline 109
 00CC           ;       LCDb_DATA_DDR=0x00;      //数据总线定义为输入
 00CC 2224              clr R2
 00CE 27BA              out 0x17,R2
 00D0                   .dbline 110
 00D0           ;       dByte=LCDb_DI;                   //读数据或者指令
 00D0 46B3              in R20,0x16
 00D2                   .dbline 111
 00D2           ;       Delayms(1);                              //时序调整
 00D2 01E0              ldi R16,1
 00D4 10E0              ldi R17,0
 00D6 ACDF              xcall _Delayms
 00D8                   .dbline 112
 00D8           ;       LCDb_CLR_E;     
 00D8 9698              cbi 0x12,6
 00DA                   .dbline 113
 00DA           ;       LCDb_DATA_DDR|=0xff;     //数据总线还原为输出
 00DA 87B3              in R24,0x17
 00DC 8F6F              ori R24,255
 00DE 87BB              out 0x17,R24
 00E0                   .dbline 114
 00E0           ;       return dByte;
 00E0 042F              mov R16,R20
 00E2                   .dbline -2
 00E2           L17:
 00E2 0E940000          xcall pop_gset1
 00E6                   .dbline 0 ; func end
 00E6 0895              ret
 00E8                   .dbsym r dByte 20 c
 00E8                   .dbsym r DatCmd 20 c
 00E8                   .dbend
 00E8                   .dbfunc e LCD12864_sendbyte _LCD12864_sendbyte fV
 00E8           ;          dByte -> R20
 00E8           ;         DatCmd -> R22
                        .even
 00E8           _LCD12864_sendbyte::
 00E8 0E940000          xcall push_gset2
 00EC 422F              mov R20,R18
 00EE 602F              mov R22,R16
 00F0                   .dbline -1
 00F0                   .dbline 124
 00F0           ; }
 00F0           ; /*******************************************
 00F0           ; 函数名称: LCD12864_sendbyte
 00F0           ; 功    能: 向12864液晶写入一个字节数据或者指令
 00F0           ; 参    数: DatCmd--为iDat时是数据,为iCmd时是指令
 00F0           ;                 dByte--为写入12864的数据或者指令
 00F0           ; 返回值  : 无
 00F0           ; /********************************************/
 00F0           ; void LCD12864_sendbyte(uchar DatCmd, uchar dByte)
 00F0           ; {
 00F0                   .dbline 125
 00F0           ;       if (DatCmd == iCmd)             //指令操作
 00F0 6623              tst R22
 00F2 11F4              brne L21
 00F4                   .dbline 126
 00F4           ;               LCDb_CLR_RS;
 00F4 9498              cbi 0x12,4
 00F6 01C0              xjmp L22
 00F8           L21:
 00F8                   .dbline 128
 00F8           ;       else
 00F8           ;               LCDb_SET_RS;
 00F8 949A              sbi 0x12,4
 00FA           L22:
 00FA                   .dbline 130
 00FA           ;               
 00FA           ;       LCDb_CLR_RW;                    //写操作
 00FA 9598              cbi 0x12,5
 00FC                   .dbline 131
 00FC           ;       LCDb_SET_E;
 00FC 969A              sbi 0x12,6
 00FE                   .dbline 132
 00FE           ;       LCDb_DO = dByte;                //写入数据
 00FE 48BB              out 0x18,R20
 0100                   .dbline 133
 0100           ;       Delayus(100);
 0100 04E6              ldi R16,100
 0102 10E0              ldi R17,0
 0104 7DDF              xcall _Delayus
 0106                   .dbline 134
 0106           ;       LCDb_CLR_E;     
 0106 9698              cbi 0x12,6
 0108                   .dbline -2
 0108                   .dbline 135
 0108           ; }
 0108           L20:
 0108 0E940000          xcall pop_gset2
 010C                   .dbline 0 ; func end
 010C 0895              ret
 010E                   .dbsym r dByte 20 c
 010E                   .dbsym r DatCmd 22 c

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -