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

📄 splc501hardware.lst

📁 电子词典的设计开发
💻 LST
📖 第 1 页 / 共 4 页
字号:
                            			R3	=	R3	lsr	4;		
                            		.endif
0000CB73 1B D7 00 70        			[P_IO_Data_Data]=r3
0000CB75 40 F0 63 CC        			CALL F_Send_data			  
                            	//        R1=0x0AD2;
                            	//        [P_Lcd501Ctrl]=R1;        // Set driving mode register
                            	//        CALL F_Delay_Bus_Time;
0000CB77 13 97 00 70        			r3=[P_IO_Data_Data]
0000CB79 0A 95 00 FF        					r2=C_DataBus
0000CB7B 0A 85 FF FF        			r2^=0xffff
0000CB7D 02 B7              			r3&=r2
                            		
0000CB7E 40 A6              			r3|=0x0000
                            			.if	C_BusHighLow
                            		.else
                            			R3	=	R3	lsr	4;
                            			R3	=	R3	lsr	4;		
                            		.endif
0000CB7F 1B D7 00 70        			[P_IO_Data_Data]=r3
0000CB81 40 F0 63 CC        			CALL F_Send_data			  
                            	//        R1=0x0A00;
                            	//        [P_Lcd501Ctrl]=R1;        // LS Column : 0
                            	//        CALL F_Delay_Bus_Time;
0000CB83 13 97 00 70        			r3=[P_IO_Data_Data]
0000CB85 0A 95 00 FF        					r2=C_DataBus
0000CB87 0A 85 FF FF        			r2^=0xffff
0000CB89 02 B7              			r3&=r2
                            		
0000CB8A 0B A7 00 2C        			r3|=0x2c00
                            		.if	C_BusHighLow
                            		.else
                            			R3	=	R3	lsr	4;
                            			R3	=	R3	lsr	4;		
                            		.endif
0000CB8C 1B D7 00 70        			[P_IO_Data_Data]=r3
0000CB8E 40 F0 63 CC        			CALL F_Send_data			  
                            	//        R1=0x0A2C;
                            	//        [P_Lcd501Ctrl]=R1;        // REGULATOR on
                            	//        CALL F_Delay_Bus_Time;
0000CB90 13 97 00 70        			r3=[P_IO_Data_Data]
0000CB92 0A 95 00 FF        					r2=C_DataBus
0000CB94 0A 85 FF FF        			r2^=0xffff
0000CB96 02 B7              			r3&=r2
                            		
0000CB97 0B A7 00 2E        			r3|=0x2e00
                            		.if	C_BusHighLow
                            		.else
                            			R3	=	R3	lsr	4;
                            			R3	=	R3	lsr	4;		
                            		.endif
0000CB99 1B D7 00 70        			[P_IO_Data_Data]=r3
0000CB9B 40 F0 63 CC        			CALL F_Send_data			 
                            	//        R1=0x0A2E;
                            	//        [P_Lcd501Ctrl]=R1;        // +FOLLOWER oFF
                            	//        CALL F_Delay_Bus_Time;
0000CB9D 13 97 00 70        			r3=[P_IO_Data_Data]
0000CB9F 0A 95 00 FF        					r2=C_DataBus
0000CBA1 0A 85 FF FF        			r2^=0xffff
0000CBA3 02 B7              			r3&=r2
                            		
0000CBA4 0B A7 00 2F        			r3|=0x2f00
                            		.if	C_BusHighLow
                            		.else
                            			R3	=	R3	lsr	4;
                            			R3	=	R3	lsr	4;		
                            		.endif
0000CBA6 1B D7 00 70        			[P_IO_Data_Data]=r3
0000CBA8 40 F0 63 CC        			CALL F_Send_data			
                            	//        R1=0x0A2F;
                            	//        [P_Lcd501Ctrl]=R1;        // +FOLLOWER oFF
                            	//        CALL F_Delay_Bus_Time;
                            	
0000CBAA 90 9A              	        RETF;
                            	
                            	//////////////////////////////////////////////////////////////////////////////
                            	F_LCD_Display_On:
0000CBAB 13 97 00 70        			r3=[P_IO_Data_Data]
0000CBAD 0A 95 00 FF        					r2=C_DataBus
0000CBAF 0A 85 FF FF        			r2^=0xffff
0000CBB1 02 B7              			r3&=r2
                            		
0000CBB2 0B A7 00 AF        			r3|=0xaf00
                            		.if	C_BusHighLow
                            		.else
                            			R3	=	R3	lsr	4;
                            			R3	=	R3	lsr	4;		
                            		.endif
0000CBB4 1B D7 00 70        			[P_IO_Data_Data]=r3
0000CBB6 40 F0 63 CC        			CALL F_Send_data			  
                            	//        R1=0x0AAF;
                            	//        [P_Lcd501Ctrl]=R1;
                            	//        CALL F_Delay_Bus_Time;
                            	
0000CBB8 90 9A              	        RETF;
                            	
                            	//////////////////////////////////////////////////////////////////////////////
                            	F_LCD_ALL_On:
0000CBB9 13 97 00 70        			r3=[P_IO_Data_Data]
0000CBBB 0A 95 00 FF        					r2=C_DataBus
0000CBBD 0A 85 FF FF        			r2^=0xffff
0000CBBF 02 B7              			r3&=r2
                            		
0000CBC0 0B A7 00 A5        			r3|=0xa500
                            			.if	C_BusHighLow
                            		.else
                            			R3	=	R3	lsr	4;
                            			R3	=	R3	lsr	4;		
                            		.endif
0000CBC2 1B D7 00 70        			[P_IO_Data_Data]=r3
0000CBC4 40 F0 63 CC        			CALL F_Send_data			  
                            	//        R1=0x0AA5;              	//All points on
                            	//        [P_Lcd501Ctrl]=R1;
                            	//        CALL F_Delay_Bus_Time;
                            	
0000CBC6 90 9A              	        RETF;
                            	
                            	//////////////////////////////////////////////////////////////////////////////
                            	F_LCD_Normal_Display:
0000CBC7 13 97 00 70        			r3=[P_IO_Data_Data]
0000CBC9 0A 95 00 FF        					r2=C_DataBus
0000CBCB 0A 85 FF FF        			r2^=0xffff
0000CBCD 02 B7              			r3&=r2
                            		
0000CBCE 0B A7 00 A4        			r3|=0xa400
                            			.if	C_BusHighLow
                            		.else
                            			R3	=	R3	lsr	4;
                            			R3	=	R3	lsr	4;		
                            		.endif
0000CBD0 1B D7 00 70        			[P_IO_Data_Data]=r3
0000CBD2 40 F0 63 CC        			CALL F_Send_data			 
                            	//        R1=0x0AA4;              	//Normal display
                            	//        [P_Lcd501Ctrl]=R1;
                            	//        CALL F_Delay_Bus_Time;
                            	
0000CBD4 90 9A              	        RETF;
                            	//////////////////////////////////////////////////////////////////////////////
                            	//Filename : F_Set_LCD_Page_No
                            	//Function : Set the LCD page No.
                            	//Input    : Page No. (R1:0x0000~0x0007)
                            	//Output   : None
                            	//Destroy  : R1
                            	//////////////////////////////////////////////////////////////////////////////
                            	
                            	.public	_Set_LCD_Page_No
                            	.public	F_Set_LCD_Page_No
                            	F_Set_LCD_Page_No:
                            	_Set_LCD_Page_No:
0000CBD5 59 93              			r1=r1 lsl 0x04
0000CBD6 59 93              			r1=r1 lsl 0x04
0000CBD7 09 A3 00 B0        			r1|=0xb000
0000CBD9 88 D2              			PUSH R1,R1 TO [SP]
0000CBDA 11 93 00 70        			r1=[P_IO_Data_Data]
0000CBDC 88 D4              			push r2 to [sp]
0000CBDD 0A 95 00 FF        			r2=C_DataBus
0000CBDF 0A 85 FF FF        			r2^=0xffff
0000CBE1 02 B3              			r1&=r2
0000CBE2 88 92              			pop r2 from [sp]
0000CBE3 19 D3 00 70        			[P_IO_Data_Data]=r1
0000CBE5 88 90              			POP R1,R1 FROM [SP]
0000CBE6 11 A3 00 70        			r1|=[P_IO_Data_Data]
                            			.if	C_BusHighLow
                            		.else
                            			R1	=	R1	lsr	4;
                            			R1	=	R1	lsr	4;		
                            		.endif
0000CBE8 19 D3 00 70        			[P_IO_Data_Data]=r1
0000CBEA 40 F0 63 CC        			CALL F_Send_data
                            	//        R1 |= 0x0AB0;         	//Set Page No. (0~7)
                            	//        [P_Lcd501Ctrl]=R1;
                            	//        CALL F_Delay_Bus_Time;
                            	
0000CBEC 90 9A              	        RETF;
                            	
                            	//////////////////////////////////////////////////////////////////////////////
                            	//////////////////////////////////////////////////////////////////////////////
                            	//Filename : F_Set_LCD_Start_Line
                            	//Function : Set the LCD start line
                            	//Input    : Page No. (R1:0x0000~0x003F)
                            	//Output   : None
                            	//Destroy  : R1
                            	//////////////////////////////////////////////////////////////////////////////
                            	F_Set_LCD_Start_Line:
0000CBED 13 97 00 70        			r3=[P_IO_Data_Data]
0000CBEF 0A 95 00 FF        					r2=C_DataBus
0000CBF1 0A 85 FF FF        			r2^=0xffff
0000CBF3 02 B7              			r3&=r2
                            		
0000CBF4 59 93              			r1=r1 lsl 0x04
0000CBF5 59 93              			r1=r1 lsl 0x04
0000CBF6 0B A7 00 40        			r3|=0x4000
0000CBF8 01 A7              			r3|=r1
                            		.if	C_BusHighLow
                            		.else
                            			R3	=	R3	lsr	4;
                            			R3	=	R3	lsr	4;		
                            		.endif
0000CBF9 1B D7 00 70        			[P_IO_Data_Data]=r3
0000CBFB 40 F0 63 CC        			CALL F_Send_data			  
                            	//        R1 |= 0x0A40;           	//Set start line (00D ~ 63D)
                            	//        [P_Lcd501Ctrl]=R1;
                            	//        CALL F_Delay_Bus_Time;
                            	
0000CBFD 90 9A              	        RETF;
                            	//////////////////////////////////////////////////////////////////////////////
                            	//Filename : F_Set_LCD_Column_Addr
                            	//Function : Set the LCD column address
                            	//Input    : Page No. (R2:0x0000~0x0083)
                            	//Output   : None
                            	//Destroy  : R1,R2
                            	//////////////////////////////////////////////////////////////////////////////
                            	.public		_Set_LCD_Column_Addr
                            	.public		F_Set_LCD_Column_Addr
                            	F_Set_LCD_Column_Addr:
                            	_Set_LCD_Column_Addr:
0000CBFE 88 D2              	        push	r1 to [sp]
0000CBFF 88 D6              	        push	r3 to [sp]
0000CC00 02 93              	        R1 = R2                 
0000CC01 59 93              	        R1 = R1 LSl 4;
0000CC02 09 B3 00 0F        	        R1 &= 0x0F00;           	      
0000CC04 09 A3 00 10        	        R1 |= 0x1000;
0000CC06 88 D2              	        push r1,r1 to [sp]
0000CC07 11 93 00 70        	        r1=[P_IO_Data_Data]
                            	 //      r1&=0x00ff
0000CC09 88 D4              	 		push r2 to [sp]
0000CC0A 0A 95 00 FF        			r2=C_DataBus
0000CC0C 0A 85 FF FF        			r2^=0xffff
0000CC0E 02 B3              			r1&=r2
0000CC0F 88 92              			pop r2 from [sp]
0000CC10 19 D3 00 70        	        [P_IO_Data_Data]=r1
0000CC12 88 90              	        pop r1,r1 from [sp] 
0000CC13 11 A3 00 70        	        r1|=[P_IO_Data_Data]      
                            	        .if	C_BusHighLow
                            		.else
                            			R1	=	R1	lsr	4;
                            			R1	=	R1	lsr	4;		
                            		.endif   	
0000CC15 19 D3 00 70        			[P_IO_Data_Data]=r1
0000CC17 40 F0 63 CC        			CALL F_Send_data
0000CC19 02 93              			R1 = R2

⌨️ 快捷键说明

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