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

📄 main.lss

📁 液晶显示屏12232的开发程序
💻 LSS
📖 第 1 页 / 共 5 页
字号:
CONTROL&=~_BV(A0);
     85c:	db 98       	cbi	0x1b, 3	; 27
CONTROL|=_BV(E1);
     85e:	da 9a       	sbi	0x1b, 2	; 27
DATA=i;
     860:	80 ea       	ldi	r24, 0xA0	; 160
     862:	85 bb       	out	0x15, r24	; 21
CONTROL&=~_BV(E1);
     864:	da 98       	cbi	0x1b, 2	; 27
CONTROL&=~_BV(E2);
}
//右页指令
void outsi(uchar i)
{
CONTROL&=~_BV(A0);
     866:	db 98       	cbi	0x1b, 3	; 27
CONTROL|=_BV(E2);
     868:	d9 9a       	sbi	0x1b, 1	; 27
DATA=i;
     86a:	85 bb       	out	0x15, r24	; 21
CONTROL&=~_BV(E2);
     86c:	d9 98       	cbi	0x1b, 1	; 27
CONTROL&=~_BV(E1);
}
//左页命令
void outmi(uchar i)
{
CONTROL&=~_BV(A0);
     86e:	db 98       	cbi	0x1b, 3	; 27
CONTROL|=_BV(E1);
     870:	da 9a       	sbi	0x1b, 2	; 27
DATA=i;
     872:	8e ee       	ldi	r24, 0xEE	; 238
     874:	85 bb       	out	0x15, r24	; 21
CONTROL&=~_BV(E1);
     876:	da 98       	cbi	0x1b, 2	; 27
CONTROL&=~_BV(E2);
}
//右页指令
void outsi(uchar i)
{
CONTROL&=~_BV(A0);
     878:	db 98       	cbi	0x1b, 3	; 27
CONTROL|=_BV(E2);
     87a:	d9 9a       	sbi	0x1b, 1	; 27
DATA=i;
     87c:	85 bb       	out	0x15, r24	; 21
CONTROL&=~_BV(E2);
     87e:	d9 98       	cbi	0x1b, 1	; 27
CONTROL&=~_BV(E1);
}
//左页命令
void outmi(uchar i)
{
CONTROL&=~_BV(A0);
     880:	db 98       	cbi	0x1b, 3	; 27
CONTROL|=_BV(E1);
     882:	da 9a       	sbi	0x1b, 2	; 27
DATA=i;
     884:	15 ba       	out	0x15, r1	; 21
CONTROL&=~_BV(E1);
     886:	da 98       	cbi	0x1b, 2	; 27
CONTROL&=~_BV(E1);
}
//左页命令
void outmi(uchar i)
{
CONTROL&=~_BV(A0);
     888:	db 98       	cbi	0x1b, 3	; 27
CONTROL|=_BV(E1);
     88a:	da 9a       	sbi	0x1b, 2	; 27
DATA=i;
     88c:	80 ec       	ldi	r24, 0xC0	; 192
     88e:	85 bb       	out	0x15, r24	; 21
CONTROL&=~_BV(E1);
     890:	da 98       	cbi	0x1b, 2	; 27
CONTROL&=~_BV(E2);
}
//右页指令
void outsi(uchar i)
{
CONTROL&=~_BV(A0);
     892:	db 98       	cbi	0x1b, 3	; 27
CONTROL|=_BV(E2);
     894:	d9 9a       	sbi	0x1b, 1	; 27
DATA=i;
     896:	15 ba       	out	0x15, r1	; 21
CONTROL&=~_BV(E2);
     898:	d9 98       	cbi	0x1b, 1	; 27
CONTROL&=~_BV(E2);
}
//右页指令
void outsi(uchar i)
{
CONTROL&=~_BV(A0);
     89a:	db 98       	cbi	0x1b, 3	; 27
CONTROL|=_BV(E2);
     89c:	d9 9a       	sbi	0x1b, 1	; 27
DATA=i;
     89e:	85 bb       	out	0x15, r24	; 21
CONTROL&=~_BV(E2);
     8a0:	d9 98       	cbi	0x1b, 1	; 27
CONTROL&=~_BV(E1);
}
//左页命令
void outmi(uchar i)
{
CONTROL&=~_BV(A0);
     8a2:	db 98       	cbi	0x1b, 3	; 27
CONTROL|=_BV(E1);
     8a4:	da 9a       	sbi	0x1b, 2	; 27
DATA=i;
     8a6:	8f ea       	ldi	r24, 0xAF	; 175
     8a8:	85 bb       	out	0x15, r24	; 21
CONTROL&=~_BV(E1);
     8aa:	da 98       	cbi	0x1b, 2	; 27
CONTROL&=~_BV(E2);
}
//右页指令
void outsi(uchar i)
{
CONTROL&=~_BV(A0);
     8ac:	db 98       	cbi	0x1b, 3	; 27
CONTROL|=_BV(E2);
     8ae:	d9 9a       	sbi	0x1b, 1	; 27
DATA=i;
     8b0:	85 bb       	out	0x15, r24	; 21
CONTROL&=~_BV(E2);
     8b2:	d9 98       	cbi	0x1b, 1	; 27
    outsi(0X00);
    outsi(0XC0);
    
    outmi(0XAF);
    outsi(0XAF);
}
     8b4:	08 95       	ret

000008b6 <SetPage>:
/*
函数说明:同时设置主从显示页为0-3页。
*/
void SetPage(uchar page0,uchar page1)
{
     8b6:	68 6b       	ori	r22, 0xB8	; 184
CONTROL&=~_BV(E1);
}
//左页命令
void outmi(uchar i)
{
CONTROL&=~_BV(A0);
     8b8:	db 98       	cbi	0x1b, 3	; 27
CONTROL|=_BV(E1);
     8ba:	da 9a       	sbi	0x1b, 2	; 27
DATA=i;
     8bc:	65 bb       	out	0x15, r22	; 21
CONTROL&=~_BV(E1);
     8be:	da 98       	cbi	0x1b, 2	; 27
/*
函数说明:同时设置主从显示页为0-3页。
*/
void SetPage(uchar page0,uchar page1)
{
outmi(0xB8|page1);outsi(0xB8|page0);
     8c0:	88 6b       	ori	r24, 0xB8	; 184
CONTROL&=~_BV(E2);
}
//右页指令
void outsi(uchar i)
{
CONTROL&=~_BV(A0);
     8c2:	db 98       	cbi	0x1b, 3	; 27
CONTROL|=_BV(E2);
     8c4:	d9 9a       	sbi	0x1b, 1	; 27
DATA=i;
     8c6:	85 bb       	out	0x15, r24	; 21
CONTROL&=~_BV(E2);
     8c8:	d9 98       	cbi	0x1b, 1	; 27
函数说明:同时设置主从显示页为0-3页。
*/
void SetPage(uchar page0,uchar page1)
{
outmi(0xB8|page1);outsi(0xB8|page0);
}
     8ca:	08 95       	ret

000008cc <SetAddress>:
--------------------------------------------------------------------------------
函数说明:同时设置主从列地址为0-121。
--------------------------------------------------------------------------------
*/
void SetAddress(uchar address0,uchar address1)
{
     8cc:	db 98       	cbi	0x1b, 3	; 27
}
//左页命令
void outmi(uchar i)
{
CONTROL&=~_BV(A0);
CONTROL|=_BV(E1);
     8ce:	da 9a       	sbi	0x1b, 2	; 27
DATA=i;
     8d0:	65 bb       	out	0x15, r22	; 21
CONTROL&=~_BV(E1);
     8d2:	da 98       	cbi	0x1b, 2	; 27
CONTROL&=~_BV(E2);
}
//右页指令
void outsi(uchar i)
{
CONTROL&=~_BV(A0);
     8d4:	db 98       	cbi	0x1b, 3	; 27
CONTROL|=_BV(E2);
     8d6:	d9 9a       	sbi	0x1b, 1	; 27
DATA=i;
     8d8:	85 bb       	out	0x15, r24	; 21
CONTROL&=~_BV(E2);
     8da:	d9 98       	cbi	0x1b, 1	; 27
--------------------------------------------------------------------------------
*/
void SetAddress(uchar address0,uchar address1)
{
outmi(address1);outsi(address0);
}
     8dc:	08 95       	ret

000008de <PutCharR>:
void PutCharR(uchar ch)
{
     8de:	db 9a       	sbi	0x1b, 3	; 27
}
//右页数据
void outsd(uchar i)
{
CONTROL|=_BV(A0);
CONTROL|=_BV(E2);
     8e0:	d9 9a       	sbi	0x1b, 1	; 27
DATA=i;
     8e2:	85 bb       	out	0x15, r24	; 21
CONTROL&=~_BV(E2);
     8e4:	d9 98       	cbi	0x1b, 1	; 27
outmi(address1);outsi(address0);
}
void PutCharR(uchar ch)
{
outsd(ch);
}
     8e6:	08 95       	ret

000008e8 <PutCharL>:
/*
调用方式:void PutChar1(uchar ch)
函数说明:在左页当前地址画一个字节8个点.
-*/
void PutCharL(uchar ch)
{
     8e8:	db 9a       	sbi	0x1b, 3	; 27

//左页数据
void outmd(uchar i)
{
CONTROL|=_BV(A0);
CONTROL|=_BV(E1);
     8ea:	da 9a       	sbi	0x1b, 2	; 27
DATA=i;
     8ec:	85 bb       	out	0x15, r24	; 21
CONTROL&=~_BV(E1);
     8ee:	da 98       	cbi	0x1b, 2	; 27
函数说明:在左页当前地址画一个字节8个点.
-*/
void PutCharL(uchar ch)
{
outmd(ch);
} 
     8f0:	08 95       	ret

000008f2 <clrscr>:
/*
调用方式:void clrscr(void)
函数说明:清屏
-*/
void clrscr(void)
{
     8f2:	1f 93       	push	r17
     8f4:	10 e0       	ldi	r17, 0x00	; 0
for (uchar page=0;page<4;page++)
{
SetPage(page,page);
     8f6:	61 2f       	mov	r22, r17
     8f8:	81 2f       	mov	r24, r17
     8fa:	0e 94 5b 04 	call	0x8b6	; 0x8b6 <SetPage>
CONTROL&=~_BV(E1);
}
//左页命令
void outmi(uchar i)
{
CONTROL&=~_BV(A0);
     8fe:	db 98       	cbi	0x1b, 3	; 27
CONTROL|=_BV(E1);
     900:	da 9a       	sbi	0x1b, 2	; 27
DATA=i;
     902:	15 ba       	out	0x15, r1	; 21
CONTROL&=~_BV(E1);
     904:	da 98       	cbi	0x1b, 2	; 27
CONTROL&=~_BV(E2);
}
//右页指令
void outsi(uchar i)
{
CONTROL&=~_BV(A0);
     906:	db 98       	cbi	0x1b, 3	; 27
CONTROL|=_BV(E2);
     908:	d9 9a       	sbi	0x1b, 1	; 27
DATA=i;
     90a:	15 ba       	out	0x15, r1	; 21
CONTROL&=~_BV(E2);
     90c:	d9 98       	cbi	0x1b, 1	; 27
     90e:	80 e0       	ldi	r24, 0x00	; 0
CONTROL&=~_BV(E1);
}
//右页数据
void outsd(uchar i)
{
CONTROL|=_BV(A0);
     910:	db 9a       	sbi	0x1b, 3	; 27
CONTROL|=_BV(E2);
     912:	d9 9a       	sbi	0x1b, 1	; 27
DATA=i;
     914:	15 ba       	out	0x15, r1	; 21
CONTROL&=~_BV(E2);
     916:	d9 98       	cbi	0x1b, 1	; 27


//左页数据
void outmd(uchar i)
{
CONTROL|=_BV(A0);
     918:	db 9a       	sbi	0x1b, 3	; 27
CONTROL|=_BV(E1);
     91a:	da 9a       	sbi	0x1b, 2	; 27
DATA=i;
     91c:	15 ba       	out	0x15, r1	; 21
CONTROL&=~_BV(E1);
     91e:	da 98       	cbi	0x1b, 2	; 27
{
for (uchar page=0;page<4;page++)
{
SetPage(page,page);
SetAddress(0,0);
for (uchar i=0;i<61;i++){PutCharR(0);PutCharL(0);}
     920:	8f 5f       	subi	r24, 0xFF	; 255
     922:	8d 33       	cpi	r24, 0x3D	; 61
     924:	a9 f7       	brne	.-22     	; 0x910 <clrscr+0x1e>
调用方式:void clrscr(void)
函数说明:清屏
-*/
void clrscr(void)
{
for (uchar page=0;page<4;page++)
     926:	1f 5f       	subi	r17, 0xFF	; 255
     928:	14 30       	cpi	r17, 0x04	; 4
     92a:	29 f7       	brne	.-54     	; 0x8f6 <clrscr+0x4>
{
SetPage(page,page);
SetAddress(0,0);
for (uchar i=0;i<61;i++){PutCharR(0);PutCharL(0);}
}
} 
     92c:	1f 91       	pop	r17
     92e:	08 95       	ret

00000930 <DrawBmp1>:
//图片显示
//采用字模2生成或字模3生成的都可以.
void DrawBmp1(uint x_add, uchar width,uchar *bmp)
{
     930:	7f 92       	push	r7
     932:	8f 92       	push	r8
     934:	9f 92       	push	r9
     936:	af 92       	push	r10
     938:	bf 92       	push	r11
     93a:	cf 92       	push	r12
     93c:	df 92       	push	r13
     93e:	ef 92       	push	r14
     940:	ff 92       	push	r15
     942:	0f 93       	push	r16
     944:	1f 93       	push	r17
     946:	cf 93       	push	r28
     948:	df 93       	push	r29
     94a:	7c 01       	movw	r14, r24
     94c:	fa 01       	movw	r30, r20
     94e:	86 2f       	mov	r24, r22
     950:	90 e0       	ldi	r25, 0x00	; 0
     952:	9c 01       	movw	r18, r24
     954:	22 0f       	add	r18, r18
     956:	33 1f       	adc	r19, r19
     958:	e9 01       	movw	r28, r18
     95a:	c8 0f       	add	r28, r24
     95c:	d9 1f       	adc	r29, r25
     95e:	ce 0f       	add	r28, r30
     960:	df 1f       	adc	r29, r31
     962:	4f 01       	movw	r8, r30
     964:	82 0e       	add	r8, r18
     966:	93 1e       	adc	r9, r19
     968:	5f 01       	movw	r10, r30
     96a:	a8 0e       	add	r10, r24

⌨️ 快捷键说明

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