📄 12864lcd程序 串行控制,控制器为st7920 - i am a chaser - csdnblog.mht
字号:
=
href=3D"http://blog.csdn.net/kassey/">=E6=88=91=E7=9A=84=E9=A6=96=E9=A1=B5=
</A> </LI>
<LI><A id=3DMyLinks1_PersonalResume=20
=
href=3D"http://job.csdn.net/resumes/kassey.aspx">=E4=B8=AA=E4=BA=BA=E6=A1=
=A3=E6=A1=88</A> </LI>
<LI><A id=3DMyLinks1_ContactLink accessKey=3D9=20
=
href=3D"http://blog.csdn.net/kassey/contact.aspx">=E8=81=94=E7=B3=BB=E4=BD=
=9C=E8=80=85</A> </LI>
<LI><A id=3DMyLinks1_Syndication=20
href=3D"http://blog.csdn.net/kassey/Rss.aspx">=E8=81=9A=E5=90=88</A><A =
id=3DMyLinks1_XMLLink=20
href=3D"http://blog.csdn.net/kassey/Rss.aspx"><IMG=20
src=3D"http://blog.csdn.net/images/xml.gif" border=3D0></A> </LI>
<LI><A id=3DMyLinks1_HyperLink1 =
href=3D"http://search.csdn.net/search_blog.asp"=20
target=3D_blank>=E6=90=9C=E7=B4=A2</A> </LI>
<LI><A id=3DMyLinks1_Admin =
href=3D"http://writeblog.csdn.net/">=E7=99=BB=E5=BD=95</A> </LI></UL>
<H3>Blog=E7=BB=9F=E8=AE=A1</H3>
<UL class=3Dlist>
<LI class=3Dlistitem>=E5=8E=9F=E5=88=9B - 17 </LI>
<LI class=3Dlistitem>=E7=BF=BB=E8=AF=91 - 0 </LI>
<LI class=3Dlistitem>=E8=BD=AC=E8=B4=B4 - 0 </LI>
<LI class=3Dlistitem>=E7=82=B9=E5=87=BB - 1648 </LI>
<LI class=3Dlistitem>=E8=AF=84=E8=AE=BA - 0 </LI>
<LI class=3Dlistitem>Trackbacks -0 </LI></UL>
<H3 class=3Dlisttitle>=E6=96=87=E7=AB=A0</H3>
<UL class=3Dlist>
<LI class=3Dlistitem><A=20
=
href=3D"http://blog.csdn.net/kassey/category/168893.aspx">=E7=A8=8B=E5=BA=
=8F=E6=BA=90=E7=A0=81=E5=88=86=E4=BA=AB</A><A=20
=
href=3D"http://blog.csdn.net/kassey/category/168893.aspx/rss">(RSS)</A></=
LI>
<LI class=3Dlistitem><A=20
=
href=3D"http://blog.csdn.net/kassey/category/168895.aspx">=E6=8A=80=E6=9C=
=AF=E6=96=87=E7=AB=A0</A><A=20
=
href=3D"http://blog.csdn.net/kassey/category/168895.aspx/rss">(RSS)</A></=
LI>
<LI class=3Dlistitem><A=20
=
href=3D"http://blog.csdn.net/kassey/category/168894.aspx">=E6=9C=89=E6=84=
=9F=E8=80=8C=E5=8F=91</A><A=20
=
href=3D"http://blog.csdn.net/kassey/category/168894.aspx/rss">(RSS)</A></=
LI></UL>
<H3 class=3Dlisttitle>=E6=94=B6=E8=97=8F</H3>
<UL class=3Dlist></UL>
<H3 class=3Dlisttitle>=E7=9B=B8=E5=86=8C</H3><!--category title-->
<UL class=3Dlist>
<LI class=3Dlistitem><A=20
=
href=3D"http://blog.csdn.net/kassey/Gallery/169243.aspx"></A></LI></UL>
<H3 class=3Dlisttitle>friends</H3>
<UL class=3Dlist>
<LI class=3Dlistitem><A href=3D"http://blog.csdn.net/ivsking"=20
target=3D_blank>ivsking</A><A href=3D"http://blog.csdn.net/ivsking"=20
target=3D_blank>(RSS)</A></LI></UL>
<H3 class=3Dlisttitle>=E5=AD=98=E6=A1=A3</H3>
<UL class=3Dlist>
<LI><A=20
=
href=3D"http://blog.csdn.net/kassey/archive/2006/03.aspx">2006=E5=B9=B403=
=E6=9C=88(1)</A></LI>
<LI><A=20
=
href=3D"http://blog.csdn.net/kassey/archive/2006/02.aspx">2006=E5=B9=B402=
=E6=9C=88(2)</A></LI>
<LI><A=20
=
href=3D"http://blog.csdn.net/kassey/archive/2006/01.aspx">2006=E5=B9=B401=
=E6=9C=88(8)</A></LI>
<LI><A=20
=
href=3D"http://blog.csdn.net/kassey/archive/2005/12.aspx">2005=E5=B9=B412=
=E6=9C=88(6)</A></LI></UL><SPAN=20
id=3DAnthem_RecentComments1_ltlComments__><SPAN=20
id=3DRecentComments1_ltlComments></SPAN></SPAN></DIV>
<DIV id=3Dmain>
<DIV class=3DTag>
<SCRIPT language=3Djavascript =
src=3D"http://tag.csdn.net/urltag.aspx"></SCRIPT>
<DIV style=3D"CLEAR: both"></DIV></DIV>
<SCRIPT>function =
StorePage(){d=3Ddocument;t=3Dd.selection?(d.selection.type!=3D'None'?d.se=
lection.createRange().text:''):(d.getSelection?d.getSelection():'');void(=
keyit=3Dwindow.open('http://www.365key.com/storeit.aspx?t=3D'+escape(d.ti=
tle)+'&u=3D'+escape(d.location.href)+'&c=3D'+escape(t),'keyit','scrollbar=
s=3Dno,width=3D475,height=3D575,left=3D75,top=3D20,status=3Dno,resizable=3D=
yes'));keyit.focus();}</SCRIPT>
<DIV class=3Dpost>
<DIV class=3DpostTitle><A=20
href=3D"http://blog.csdn.net/kassey/archive/2005/12/31/567505.aspx"><IMG =
height=3D13=20
src=3D"http://blog.csdn.net/images/authorship.gif" width=3D15=20
border=3D0> 12864lcd=E7=A8=8B=E5=BA=8F =
=E4=B8=B2=E8=A1=8C=E6=8E=A7=E5=88=B6=EF=BC=8C=E6=8E=A7=E5=88=B6=E5=99=A8=E4=
=B8=BAst7920</A> </DIV>
<DIV class=3DpostText>
<P>/********************************************<BR>File:8155.c<BR>Descri=
ption:8155=20
test OK<BR>Author: <A href=3D"mailto:kassey@126.com">kassey@126.com</A>=20
July,22th,2005<BR>********************************************/</P>
<P>#include<reg52.h><BR>#include<absacc.h><BR>#define COM=20
XBYTE[0x0100] //=E5=91=BD=E4=BB=A4=E5=8F=A3<BR>#define PA =
XBYTE[0x0101]<BR>#define PB=20
XBYTE[0x0102]<BR>#define HIGH XBYTE[0x0105]<BR>#define LOW XBYTE=20
[0x0104]<BR> <BR>/*<BR>PB7 PB6 PB5 PB4 PB3 PB2 PB1=20
PB0<BR> =20
RW ECK RST SCK SDA<BR>*/=20
<BR>/********************************************************************=
*****<BR>NOTE:=20
=E5=B0=8F=E6=9D=BF=E5=AD=908155<BR>**************************************=
***********************************/<BR>/*<BR> #define=20
CLRRST =
COM=3DCOM|0x02;PB=3DPB&0xfb<BR> #define=20
SETBRST COM=3DCOM|0x02;PB=3DPB|0x04</P>
<P><BR> #define CLRSCKLCD =
PB=3DPB&0xf7<BR> #define=20
SETBSCKLCD =20
PB=3DPB|0x08<BR> &nb=
sp; =20
<BR> =20
<BR> #define CLRSDALCD =20
PB=3DPB&0xef<BR> #define SETBSDALCD =20
PB=3DPB|0x10<BR>*/<BR> <BR> <BR>/******************************=
*******************************************<BR>NOTE:=E5=A4=A7=E6=9D=BF=E5=
=AD=90<BR>***************************************************************=
**********/</P>
<P> #define CLRRST =
PB=3DPB&0xfe<BR> #define=20
SETBRST PB=3DPB|0x01</P>
<P><BR> #define CLRSCKLCD =
PB=3DPB&0xfd<BR> #define=20
SETBSCKLCD =20
PB=3DPB|0x02<BR> &nb=
sp; =20
<BR> =20
<BR> #define CLRSDALCD =20
PB=3DPB&0xfb<BR> #define SETBSDALCD =
PB=3DPB|0x04</P>
<P><BR>/********************************************<BR>File: lcd.h<=
BR>Description: =20
LCD12864 =
=E9=A9=B1=E5=8A=A8 ,=E9=87=87=E7=94=A8=E4=B8=B2=E8=A1=8C=E6=96=B9=E5=
=BC=8F,<BR>Author: <A=20
href=3D"mailto:kassey@126.com">kassey@126.com</A>=20
July,22th,2005<BR>********************************************/</P>
<P></P>
<P></P>
<P></P>
<P>#include <intrins.h></P>
<P>unsigned char code=20
AC_TABLE[]=3D{<BR>0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87, &nb=
sp; =20
//=E7=AC=AC=E4=B8=80=E8=A1=8C=E6=B1=89=E5=AD=97=E4=BD=8D=E7=BD=AE<BR>0x90=
,0x91,0x92,0x93,0x94,0x95,0x96,0x97, =20
//=E7=AC=AC=E4=BA=8C=E8=A1=8C=E6=B1=89=E5=AD=97=E4=BD=8D=E7=BD=AE<BR>0x88=
,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f, =20
//=E7=AC=AC=E4=B8=89=E8=A1=8C=E6=B1=89=E5=AD=97=E4=BD=8D=E7=BD=AE<BR>0x98=
,0x99,0x9a,0x9b,0x9c,0x9d,0x9e,0x9f, =20
//=E7=AC=AC=E5=9B=9B=E8=A1=8C=E6=B1=89=E5=AD=97=E4=BD=8D=E7=BD=AE<BR>};<B=
R>void delay1MS(uchar x)<BR>{ <BR> uchar=20
k,j;<BR> =
x=3Dx<<1;<BR> for(k=3D0;k<x;k++)<BR> =20
for(j=3D0;j<255;j++)_nop_();<BR> </P>
<P>}</P>
<P><BR>/*****************************************<BR>Fucntion: =
delay10US(char=20
x)<BR>Description: delay for 10 us<BR>Parameter: x<BR>Author: <A=20
href=3D"mailto:kassey@126.com">kassey@126.com</A><BR>Date: =20
July,7th,2005<BR>*****************************************/</P>
<P><BR>void delay10US(uchar x)<BR>{<BR> uchar=20
k;<BR> for(k=3D0;k<x;k++);<BR> <BR>}</P>
<P>void SendByteLCD(uchar WLCDData)<BR>{<BR>uchar=20
i;<BR>for(i=3D0;i<8;i++)<BR>{<BR> if((WLCDData<<i)&0x80=
){SETBSDALCD=20
;}<BR> else {CLRSDALCD ; }<BR> CLRSCKLCD =
;<BR> SETBSCKLCD=20
;<BR>}<BR>}</P>
<P></P>
<P></P>
<P></P>
<P> SPIWR(uchar Wdata,uchar RS)<BR> {<BR> =20
SendByteLCD(0xf8+(RS<<1));<BR> =20
SendByteLCD(Wdata&0xf0);<BR> =20
SendByteLCD((Wdata<<4)&0xf0);</P>
<P> }</P>
<P> void SendCMD(uchar=20
CMD)<BR>{<BR>SPIWR(CMD,0);<BR>delay10US(90);//8155=E6=9D=A5=E6=A8=A1=E6=8B=
=9F=E4=B8=B2=E8=A1=8C=E9=80=9A=E4=BF=A1,=E6=89=80=E4=BB=A5,=E5=8A=A0=E4=B8=
=8A8155=E7=9A=84=E5=BB=B6=E6=97=B6,</P>
<P>}</P>
<P> void SendData(uchar Data)<BR>{</P>
<P>SPIWR(Data,1);<BR>}</P>
<P></P>
<P></P>
<P><BR>/*****************************************<BR>Fucntion:=20
LCDInit()<BR>Description:=E4=B8=A5=E6=A0=BC=E6=8C=89pdf=E4=B8=8A=E7=9A=84=
=E5=88=9D=E5=A7=8B=E5=8C=96=E7=A8=8B=E5=BA=8F test =
ok<BR>Parameter:=20
<BR>Author: <A=20
href=3D"mailto:kassey@126.com">kassey@126.com</A><BR>Date: =20
July,7th,2005<BR>*****************************************/<BR>/*void=20
LCDInit()<BR>{</P>
<P>RST=3D0;<BR>delay1MS(50);<BR>RST=3D1;</P>
<P><BR> =20
SendCMD(0x30);//=E5=8A=9F=E8=83=BD=E8=AE=BE=E7=BD=AE=EF=BC=8C=E4=B8=80=E6=
=AC=A1=E9=80=818=E4=BD=8D=E6=95=B0=E6=8D=AE=EF=BC=8C=E5=9F=BA=E6=9C=AC=E6=
=8C=87=E4=BB=A4=E9=9B=86 =E5=8A=9F=E8=83=BD=E8=AE=BE=E5=AE=9A&=
nbsp; 1<BR> =20
SendCMD(0x30); // &nb=
sp; =20
2<BR> SendCMD(0x0f);//0000,1100 =20
=E6=95=B4=E4=BD=93=E6=98=BE=E7=A4=BA=EF=BC=8C=E6=B8=B8=E6=A0=87off=EF=BC=8C=
=E6=B8=B8=E6=A0=87=E4=BD=8D=E7=BD=AEoff =E6=98=BE=E7=A4=BA=E8=AE=BE=E7=
=BD=AE 3<BR> SendCMD(0x01);//0000,0001=20
=E6=B8=85DDRAM =E6=B8=85DDRAM&nb=
sp; =20
4<BR> =
SendCMD(0x04);//=E7=82=B9=E8=AE=BE=E5=AE=9A=EF=BC=8C=E6=98=BE=E7=A4=BA=E5=
=AD=97=E7=AC=A6/=E5=85=89=E6=A0=87=E4=BB=8E=E5=B7=A6=E5=88=B0=E5=8F=B3=E7=
=A7=BB=E4=BD=8D=EF=BC=8CDDRAM=E5=9C=B0=E5=9D=80=E5=8A=A0=20
=E4=B8=80// entity mode 5</P>
<P><BR> =20
<BR>}<BR>*/<BR>/*****************************************<BR>Fucntion:=20
LCDInittest()<BR>Description: test <BR>Parameter: <BR>Author: <A=20
href=3D"mailto:kassey@126.com">kassey@126.com</A><BR>Date: =20
July,7th,2005<BR>*****************************************/<BR>void=20
LCDInittest()<BR>{</P>
<P><BR>CLRRST;//RST=3D0;<BR>delay10US(100);<BR>SETBRST;//RST=3D1;</P>
<P><BR> =20
SendCMD(0x30);//=E5=8A=9F=E8=83=BD=E8=AE=BE=E7=BD=AE=EF=BC=8C=E4=B8=80=E6=
=AC=A1=E9=80=818=E4=BD=8D=E6=95=B0=E6=8D=AE=EF=BC=8C=E5=9F=BA=E6=9C=AC=E6=
=8C=87=E4=BB=A4=E9=9B=86 =E5=8A=9F=E8=83=BD=E8=AE=BE=E5=AE=9A&=
nbsp; 1<BR> =20
SendCMD(0x30); //=E5=8A=9F=E8=83=BD=E8=AE=BE=E5=AE=9A=20
=E4=B8=80=E6=AC=A1=E9=80=818=E4=BD=8D=E6=95=B0=E6=8D=AE=EF=BC=8C=E5=9F=BA=
=E6=9C=AC=E6=8C=87=E4=BB=A4=E9=9B=86 =E5=8A=9F=E8=83=BD=E8=AE=BE=
=E5=AE=9A &nbs=
p; =20
2<BR> SendCMD(0x0c);//0000,1100 =20
=E6=95=B4=E4=BD=93=E6=98=BE=E7=A4=BA=EF=BC=8C=E6=B8=B8=E6=A0=87off=EF=BC=8C=
=E6=B8=B8=E6=A0=87=E4=BD=8D=E7=BD=AEoff =E6=98=BE=E7=A4=BA=E8=AE=BE=E7=
=BD=AE 3<BR> SendCMD(0x01);//0000,0001=20
=E6=B8=85DDRAM =E6=B8=85DDRAM&nb=
sp; =20
4<BR> =
SendCMD(0x06);//=E7=82=B9=E8=AE=BE=E5=AE=9A=EF=BC=8C=E6=98=BE=E7=A4=BA=E5=
=AD=97=E7=AC=A6/=E5=85=89=E6=A0=87=E4=BB=8E=E5=B7=A6=E5=88=B0=E5=8F=B3=E7=
=A7=BB=E4=BD=8D=EF=BC=8CDDRAM=E5=9C=B0=E5=9D=80=E5=8A=A0=20
=E4=B8=80// entity mode 5</P>
<P> //SendCMD(0x07);=E6=8D=A2=E9=A1=B5<BR> <BR>}<BR> =
</P>
<P><BR>/*****************************<BR>=E6=B8=85=E6=96=87=E6=9C=AC=E5=8C=
=BA<BR>*****************************/<BR>void=20
LcmClearTXT( void )<BR>{<BR> unsigned char=20
i;<BR> =
SendCMD(0x30); =20
//8BitMCU,=E5=9F=BA=E6=9C=AC=E6=8C=87=E4=BB=A4=E9=9B=86=E5=90=88<BR> =
; =20
SendCMD(0x80); =20
//AC=E5=BD=92=E8=B5=B7=E5=A7=8B=E4=BD=8D<BR> =20
for(i=3D0;i<64;i++)<BR> =20
SendData(0x20);<BR>}</P>
<P>/*****************************<BR>=E5=8F=91=E9=80=81=E5=AD=97=E7=AC=A6=
=E4=B8=B2<BR>*****************************/<BR>void=20
PutStr(unsigned char row,unsigned char col,unsigned char=20
*puts)<BR>{<BR> =20
SendCMD(0x30); =20
//8BitMCU,=E5=9F=BA=E6=9C=AC=E6=8C=87=E4=BB=A4=E9=9B=86=E5=90=88<BR> =
; =20
SendCMD(AC_TABLE[8*row+col]); =20
//=E8=B5=B7=E5=A7=8B=E4=BD=8D=E7=BD=AE<BR> =
while(*puts !=3D=20
'\0') =
//=E5=88=A4=E6=96=AD=E5=AD=97=E7=AC=A6=E4=B8=B2=E6=98=AF=E5=90=A6=E6=98=BE=
=E7=A4=BA=E5=AE=8C=E6=AF=95<BR> =20
{<BR> =20
if(col=3D=3D8)  =
; =20
//=E5=88=A4=E6=96=AD=E6=8D=A2=E8=A1=8C<BR> &=
nbsp; =20
{ =20
//=E8=8B=A5=E4=B8=8D=E5=88=A4=E6=96=AD,=E5=88=99=E8=87=AA=E5=8A=A8=E4=BB=8E=
=E7=AC=AC=E4=B8=80=E8=A1=8C=E5=88=B0=E7=AC=AC=E4=B8=89=E8=A1=8C<BR> =
&=
nbsp; =20
col=3D0;<BR> &=
nbsp; =20
row++;<BR> =20
}<BR> =
if(row=3D=3D4)=20
row=3D0; =20
//=E4=B8=80=E5=B1=8F=E6=98=BE=E7=A4=BA=E5=AE=8C,=E5=9B=9E=E5=88=B0=E5=B1=8F=
=E5=B7=A6=E4=B8=8A=E8=A7=92<BR> =
=20
SendCMD(AC_TABLE[8*row+col]);<BR> &nbs=
p; =20
SendData(*puts); =20
//=E4=B8=80=E4=B8=AA=E6=B1=89=E5=AD=97=E8=A6=81=E5=86=99=E4=B8=A4=E6=AC=A1=
<BR> =20
puts++;<BR> =20
SendData(*puts);<BR>  =
; =20
puts++;<BR> =20
col++;<BR> }<BR>}</P>
<P>/*****************************<BR>=E7=BB=98=E5=9B=BE<BR>**************=
***************/</P>
<P>void PutBMP(unsigned char *puts)<BR>{<BR> =
unsigned=20
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -