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

📄 gps.lst

📁 12864液晶不带字库的各种刷屏显示方式
💻 LST
📖 第 1 页 / 共 4 页
字号:
(0224) 		}
(0225) 	}
(0226) 	Ram_12864();
     E6E DEAD      RCALL	_Ram_12864
     E6F 940C 0F24 JMP	pop_xgsetF00C
_Write_Com_12864:
  cmdcode              --> R10
     E71 92AA      ST	R10,-Y
     E72 2EA0      MOV	R10,R16
(0227) }
(0228) 
(0229) /**********************************************************************/
(0230) 
(0231) 
(0232) void Write_Com_12864( unsigned char cmdcode )//写控制字
(0233) {
(0234) 	CS12864_H;
     E73 9AA8      SBI	0x15,0
(0235) 	RS12864_L;//写控制字RS = 0 ; RW = 0 ; E :H->L
     E74 98AA      CBI	0x15,2
(0236) 	RW12864_L;
     E75 98AB      CBI	0x15,3
(0237) 	Delay_1us();
     E76 DD88      RCALL	_Delay_1us
(0238) 	CS12864_L;
     E77 98A8      CBI	0x15,0
(0239) 	DATA_PORT_12864 = cmdcode ;
     E78 BAAB      OUT	0x1B,R10
(0240) 	Delay_1us();
     E79 DD85      RCALL	_Delay_1us
(0241) 	E12864_H;
     E7A 9AAC      SBI	0x15,4
(0242) 	Delay_1us();
     E7B DD83      RCALL	_Delay_1us
(0243) 	E12864_L;
     E7C 98AC      CBI	0x15,4
(0244) 	Delay_1us();
     E7D DD81      RCALL	_Delay_1us
(0245) 	CS12864_H;
     E7E 9AA8      SBI	0x15,0
     E7F 90A9      LD	R10,Y+
     E80 9508      RET
_Write_Data_12864:
  Dispdata             --> R10
     E81 92AA      ST	R10,-Y
     E82 2EA0      MOV	R10,R16
(0246) }
(0247) 
(0248) 
(0249) void Write_Data_12864 ( unsigned char Dispdata )//写数据到LCD
(0250) {
(0251) 	CS12864_H;
     E83 9AA8      SBI	0x15,0
(0252) 	RS12864_H;//写控制字RS = H ; RW = 0 ; E :H->L
     E84 9AAA      SBI	0x15,2
(0253) 	RW12864_L;
     E85 98AB      CBI	0x15,3
(0254) 	Delay_1us();
     E86 DD78      RCALL	_Delay_1us
(0255) 	CS12864_L;
     E87 98A8      CBI	0x15,0
(0256) 	DATA_PORT_12864 = Dispdata ;
     E88 BAAB      OUT	0x1B,R10
(0257) 	Delay_1us();
     E89 DD75      RCALL	_Delay_1us
(0258) 	E12864_H;
     E8A 9AAC      SBI	0x15,4
(0259) 	Delay_1us();
     E8B DD73      RCALL	_Delay_1us
(0260) 	E12864_L;
     E8C 98AC      CBI	0x15,4
(0261) 	Delay_1us();
     E8D DD71      RCALL	_Delay_1us
(0262) 	CS12864_H;
     E8E 9AA8      SBI	0x15,0
     E8F 90A9      LD	R10,Y+
     E90 9508      RET
_Clr_Scr_12864:
  page                 --> R20
  col                  --> R22
     E91 934A      ST	R20,-Y
     E92 936A      ST	R22,-Y
(0263) }
(0264) 
(0265) void Clr_Scr_12864(void)//清屏
(0266) {
(0267) 	unsigned char col,page; //12864 占据128行8页每页128列
(0268) 	for(page=0;page<8;page++)
     E93 2744      CLR	R20
     E94 C010      RJMP	0x0EA5
(0269) 	{
(0270) 		Write_Com_12864(0X10);//SET COLUMN ADDRESS = 0X00 UPPER-4BIT 
     E95 E100      LDI	R16,0x10
     E96 DFDA      RCALL	_Write_Com_12864
(0271) 		Write_Com_12864(0X00);//SET COLUMN ADDRESS = 0X00 LOWER-4BIT 
     E97 2700      CLR	R16
     E98 DFD8      RCALL	_Write_Com_12864
(0272) 		Write_Com_12864(0xB0|(page&0X0F));
     E99 2F04      MOV	R16,R20
     E9A 700F      ANDI	R16,0xF
     E9B 6B00      ORI	R16,0xB0
     E9C DFD4      RCALL	_Write_Com_12864
(0273) 		for(col=0;col<128;col++)
     E9D 2766      CLR	R22
     E9E C003      RJMP	0x0EA2
(0274) 		{
(0275) 			Write_Data_12864(0x00);
     E9F 2700      CLR	R16
     EA0 DFE0      RCALL	_Write_Data_12864
     EA1 9563      INC	R22
     EA2 3860      CPI	R22,0x80
     EA3 F3D8      BCS	0x0E9F
     EA4 9543      INC	R20
     EA5 3048      CPI	R20,0x8
     EA6 F370      BCS	0x0E95
     EA7 9169      LD	R22,Y+
     EA8 9149      LD	R20,Y+
     EA9 9508      RET
_Set_Scr_12864:
  page                 --> R20
  col                  --> R22
     EAA 934A      ST	R20,-Y
     EAB 936A      ST	R22,-Y
(0276) 		}
(0277) 	}
(0278) }
(0279) 
(0280) void Set_Scr_12864(void)//全显示程序
(0281) {
(0282) 	unsigned char col,page; //12864 占据128行8页每页128列
(0283) 	for(page=0;page<8;page++)
     EAC 2744      CLR	R20
     EAD C010      RJMP	0x0EBE
(0284) 	{
(0285) 		Write_Com_12864(0X10);//SET COLUMN ADDRESS = 0X00 UPPER-4BIT 
     EAE E100      LDI	R16,0x10
     EAF DFC1      RCALL	_Write_Com_12864
(0286) 		Write_Com_12864(0X00);//SET COLUMN ADDRESS = 0X00 LOWER-4BIT 
     EB0 2700      CLR	R16
     EB1 DFBF      RCALL	_Write_Com_12864
(0287) 		Write_Com_12864(0xB0|(page&0X0F));
     EB2 2F04      MOV	R16,R20
     EB3 700F      ANDI	R16,0xF
     EB4 6B00      ORI	R16,0xB0
     EB5 DFBB      RCALL	_Write_Com_12864
(0288) 		for(col=0;col<128;col++)
     EB6 2766      CLR	R22
     EB7 C003      RJMP	0x0EBB
(0289) 		{
(0290) 			Write_Data_12864(0xFF);
     EB8 EF0F      LDI	R16,0xFF
     EB9 DFC7      RCALL	_Write_Data_12864
     EBA 9563      INC	R22
     EBB 3860      CPI	R22,0x80
     EBC F3D8      BCS	0x0EB8
     EBD 9543      INC	R20
     EBE 3048      CPI	R20,0x8
     EBF F370      BCS	0x0EAE
     EC0 9169      LD	R22,Y+
     EC1 9149      LD	R20,Y+
     EC2 9508      RET
(0291) 		}
(0292) 	}
(0293) }
(0294) 
(0295) void Init_12864( void )
(0296) {
(0297) 	RST12864_L;				//复位LCD
_Init_12864:
     EC3 98A9      CBI	0x15,1
(0298) 	Delay_Us(10);
     EC4 E00A      LDI	R16,0xA
     EC5 DD3B      RCALL	_Delay_Us
(0299) 	RST12864_H;
     EC6 9AA9      SBI	0x15,1
(0300) 	Delay_Us(10);
     EC7 E00A      LDI	R16,0xA
     EC8 DD38      RCALL	_Delay_Us
(0301) 	Write_Com_12864(0XA2);//LCDBIAS = 1/9
     EC9 EA02      LDI	R16,0xA2
     ECA DFA6      RCALL	_Write_Com_12864
(0302) 	Write_Com_12864(0XA0);//LCDADC = NORMAL
     ECB EA00      LDI	R16,0xA0
     ECC DFA4      RCALL	_Write_Com_12864
(0303) 	Write_Com_12864(0XC8);//SHL = REVERSE
     ECD EC08      LDI	R16,0xC8
     ECE DFA2      RCALL	_Write_Com_12864
(0304) 	Write_Com_12864(0X40);//初始化LINE=0;
     ECF E400      LDI	R16,0x40
     ED0 DFA0      RCALL	_Write_Com_12864
(0305) 	Write_Com_12864(0X2C);//POWER CONTRAL
     ED1 E20C      LDI	R16,0x2C
     ED2 DF9E      RCALL	_Write_Com_12864
(0306) 	Delay_Ms(100);
     ED3 E604      LDI	R16,0x64
     ED4 E010      LDI	R17,0
     ED5 DD41      RCALL	_Delay_Ms
(0307) 	Write_Com_12864(0X2E);
     ED6 E20E      LDI	R16,0x2E
     ED7 DF99      RCALL	_Write_Com_12864
(0308) 	Delay_Ms(100);
     ED8 E604      LDI	R16,0x64
     ED9 E010      LDI	R17,0
     EDA DD3C      RCALL	_Delay_Ms
(0309) 	Write_Com_12864(0X2F);
     EDB E20F      LDI	R16,0x2F
     EDC DF94      RCALL	_Write_Com_12864
(0310) 	Delay_Ms(100);
     EDD E604      LDI	R16,0x64
     EDE E010      LDI	R17,0
     EDF DD37      RCALL	_Delay_Ms
(0311) 	Write_Com_12864(0X26);//REGULATOR RESISTOR SELECT
     EE0 E206      LDI	R16,0x26
     EE1 DF8F      RCALL	_Write_Com_12864
(0312) 	Write_Com_12864(0X81);//SET REFERENCE VOLATAG MODE
     EE2 E801      LDI	R16,0x81
     EE3 DF8D      RCALL	_Write_Com_12864
(0313) 	Write_Com_12864(0X1A);
     EE4 E10A      LDI	R16,0x1A
     EE5 DF8B      RCALL	_Write_Com_12864
(0314) 	Write_Com_12864(0XAF);//DISPLAY ON
     EE6 EA0F      LDI	R16,0xAF
     EE7 DF89      RCALL	_Write_Com_12864
(0315) 	Write_Com_12864(0XB0);//SET PAGE ADDRESS = 0
     EE8 EB00      LDI	R16,0xB0
     EE9 DF87      RCALL	_Write_Com_12864
(0316) 	Write_Com_12864(0X10);//SET COLUMN ADDRESS = 0X00 UPPER-4BIT 
     EEA E100      LDI	R16,0x10
     EEB DF85      RCALL	_Write_Com_12864
(0317) 	Write_Com_12864(0X00);//SET COLUMN ADDRESS = 0X00 LOWER-4BIT 
     EEC 2700      CLR	R16
     EED DF83      RCALL	_Write_Com_12864
     EEE 9508      RET
FILE: D:\SOURCE~1\手持gps测量仪\main.c
(0001) 
(0002) // Target : M128
(0003) // Crystal: 8.0000Mhz
(0004) 
(0005) #include <iom128v.h>
(0006) #include <macros.h>
(0007) //#include <eeprom.h>
(0008) #include "define.h"
(0009) #include "delay.h"
(0010) //#include "smg12232zk.h"
(0011) //#include "ds1302.h"
(0012) #include "usart128.h"
(0013) #include "initrialm128.h"
(0014) #include "lcm6059b12864.h"
(0015) #include "hanzi.h"
(0016) #include "HZK_GB16.h"
(0017) #include "tupian.h"
(0018) 
(0019) void main(void)
(0020) {
(0021) 	Byte i,k;
(0022) 	Byte x,y;
(0023) 	Word j,n;
(0024) 	Init_Devices();
_main:
  n                    --> Y,+1
  j                    --> Y,+1
  y                    --> Y,+1
  x                    --> Y,+1
  k                    --> Y,+1
  i                    --> Y,+1
     EEF DD85      RCALL	_Init_Devices
(0025) 	Init_12864();
     EF0 DFD2      RCALL	_Init_12864
(0026) 	Clr_Scr_12864();
     EF1 DF9F      RCALL	_Clr_Scr_12864
(0027) 	//Ram_Ascii8x16_12864(6,0,"123456");
(0028) 	//Ram_12864();
(0029) 	//Hz_Display16x16_12864(0,0,hanzi_yuan);
(0030) 	//Ram_Ascii8x16_12864(2,0,"%");
(0031) 	//Ram_12864();
(0032) 	//Ram_Hz16x16_12864(0,0,"袁自刚");
(0033) 	//Reverse_16x16_12864(0);
(0034) 	Ram_Bmp_12864(nBitmapDot4);
     EF2 E508      LDI	R16,0x58
     EF3 E113      LDI	R17,0x13
     EF4 DF57      RCALL	_Ram_Bmp_12864
(0035) 	//Ram_Hz16x16_12864(1,104,"朱");
(0036) 	//Ram_Hz16x16_12864(3,104,"宝");
(0037) 	//Ram_Hz16x16_12864(5,104,"宁");
(0038) 	while(1)
     EF5 CFFF      RJMP	0x0EF5
(0039) 	{
(0040) 		;
(0041) 	}
(0042) 	while(1)
FILE: <library>
     EF6 CFFF      RJMP	0x0EF6
     EF7 9508      RET
push_arg4:
     EF8 933A      ST	R19,-Y
     EF9 932A      ST	R18,-Y
push_arg2:
     EFA 931A      ST	R17,-Y
     EFB 930A      ST	R16,-Y
     EFC 9508      RET
pop_xgsetF0FC:
     EFD 90A9      LD	R10,Y+
     EFE 90B9      LD	R11,Y+
     EFF 90C9      LD	R12,Y+
     F00 90D9      LD	R13,Y+
     F01 90E9      LD	R14,Y+
     F02 90F9      LD	R15,Y+
     F03 9149      LD	R20,Y+
     F04 9159      LD	R21,Y+
     F05 9169      LD	R22,Y+
     F06 9179      LD	R23,Y+
     F07 9508      RET
push_xgsetF0FC:
     F08 937A      ST	R23,-Y
     F09 936A      ST	R22,-Y
push_xgset30FC:
     F0A 935A      ST	R21,-Y
     F0B 934A      ST	R20,-Y
push_xgset00FC:
     F0C 92FA      ST	R15,-Y
     F0D 92EA      ST	R14,-Y
push_xgset003C:
     F0E 92DA      ST	R13,-Y
     F0F 92CA      ST	R12,-Y
     F10 92BA      ST	R11,-Y
     F11 92AA      ST	R10,-Y
     F12 9508      RET
push_xgsetF000:
     F13 937A      ST	R23,-Y
     F14 936A      ST	R22,-Y
     F15 935A      ST	R21,-Y
     F16 934A      ST	R20,-Y
     F17 9508      RET
pop_xgsetF000:
     F18 9149      LD	R20,Y+
     F19 9159      LD	R21,Y+
     F1A 9169      LD	R22,Y+
     F1B 9179      LD	R23,Y+
     F1C 9508      RET
push_xgsetF00C:
     F1D 937A      ST	R23,-Y
     F1E 936A      ST	R22,-Y
     F1F 935A      ST	R21,-Y
     F20 934A      ST	R20,-Y
     F21 92BA      ST	R11,-Y
     F22 92AA      ST	R10,-Y
     F23 9508      RET
pop_xgsetF00C:
     F24 90A9      LD	R10,Y+
     F25 90B9      LD	R11,Y+
     F26 9149      LD	R20,Y+
     F27 9159      LD	R21,Y+
     F28 9169      LD	R22,Y+
     F29 9179      LD	R23,Y+
     F2A 9508      RET
push_xgsetF03C:
     F2B 937A      ST	R23,-Y
     F2C 936A      ST	R22,-Y
     F2D 935A      ST	R21,-Y
     F2E 934A      ST	R20,-Y
     F2F 92DA      ST	R13,-Y
     F30 92CA      ST	R12,-Y
     F31 92BA      ST	R11,-Y
     F32 92AA      ST	R10,-Y
     F33 9508      RET
pop_xgsetF03C:
     F34 90A9      LD	R10,Y+
     F35 90B9      LD	R11,Y+
     F36 90C9      LD	R12,Y+
     F37 90D9      LD	R13,Y+
     F38 9149      LD	R20,Y+
     F39 9159      LD	R21,Y+
     F3A 9169      LD	R22,Y+
     F3B 9179      LD	R23,Y+
     F3C 9508      RET

⌨️ 快捷键说明

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