📄 p18_lcd.html
字号:
<B>LCD.SendCMDNoBusy</B>( w )</PRE>
<P>
<DL>
<DD> This function sends a command (4-bit mode) to the LCD without checking the LCDs BusyFlag. The user has to ensure, that the LCD is ready for executing instructions.<BR>
<P>
<DD><DL>
<DT><B>Parameters:</B>
<DD><CODE>w</CODE> - The command to send </DD>
</DL></DD>
<P>
<DD><DL>
<DT><B>Stacklevel:</B><DD>1</DD></DL>
</DD>
<DD><DL>
<DT><B>Status:</B><DD> Tested</DD></DL>
</DD>
<P>
<DD><DL>
<DT><B>Example:</B><DD><CODE><TABLE BORDER="0"><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">Delay.Mikros </FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">LCD.T_Instruction </FONT></CODE></TD> <TD><CODE><FONT COLOR="#22AAAA">; Waiting for instruction to be executed </FONT></CODE></TD></TR><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF"><B>call </B></FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">Delay.Wait </FONT></CODE></TD></TR><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF"><B>movlw </B></FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">LCD.Mode_CMD </FONT></CODE></TD> <TD><CODE><FONT COLOR="#22AAAA">; the command to turn the Display off </FONT></CODE></TD></TR><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF"><B>call </B></FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">LCD.SendCMDNoBusy </FONT></CODE></TD></TR></TABLE></CODE></DD></DL>
</DD>
<DD><DL>
<DT><B>Description:</B><DD> Switch the display off</DD></DL>
</DD>
</DL>
<HR>
<A NAME="LCD.SendCMD"></A><H3>
LCD.SendCMD</H3>
<PRE>
<B>LCD.SendCMD</B>( w )</PRE>
<P>
<DL>
<DD> This function sends a command to the LCD. The busy flag is being checked, so no delay routines are needed.<BR>
<P>
<DD><DL>
<DT><B>Parameters:</B>
<DD><CODE>w</CODE> - The command to be sent </DD>
</DL></DD>
<P>
<DD><DL>
<DT><B>Used SFRs:</B><DD> </DD></DL>
</DD>
<DD><DL>
<DT><B>Calls subroutines:</B><PRE> LCD.BUSY_CHECK
</PRE>
</DD></DL>
<DD><DL>
<DT><B>Stacklevel:</B><DD>2</DD></DL>
</DD>
<DD><DL>
<DT><B>Status:</B><DD> Tested</DD></DL>
</DD>
<P>
<DD><DL>
<DT><B>Example:</B><DD><CODE><TABLE BORDER="0"><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF"><B>movlw </B></FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">LCD.Mode_CMD | LCD.DisplayOn_BIT </FONT></CODE></TD> <TD><CODE><FONT COLOR="#22AAAA">; the command to turn the Display on </FONT></CODE></TD></TR><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF"><B>call </B></FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">LCD.SendCMD </FONT></CODE></TD></TR></TABLE></CODE></DD></DL>
</DD>
<DD><DL>
<DT><B>Description:</B><DD> Switch the display on</DD></DL>
</DD>
</DL>
<HR>
<A NAME="LCD.DrawChar"></A><H3>
LCD.DrawChar</H3>
<PRE>
<B>LCD.DrawChar</B>( w )</PRE>
<P>
<DL>
<DD> This function sends a char to the LCD at the current cursor position.<BR>
<P>
<DD><DL>
<DT><B>Parameters:</B>
<DD><CODE>w</CODE> - The char to be painted on the LCD </DD>
</DL></DD>
<P>
<DD><DL>
<DT><B>Used SFRs:</B><DD> </DD></DL>
</DD>
<DD><DL>
<DT><B>Calls subroutines:</B><PRE> LCD.BUSY_CHECK
</PRE>
</DD></DL>
<DD><DL>
<DT><B>Stacklevel:</B><DD>2</DD></DL>
</DD>
<DD><DL>
<DT><B>Status:</B><DD> Tested</DD></DL>
</DD>
<P>
<DD><DL>
<DT><B>Example:</B><DD><CODE><TABLE BORDER="0"><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF"><B>call </B></FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">LCD.SetLine0 </FONT></CODE></TD> <TD><CODE><FONT COLOR="#22AAAA">;setting cursor to start of line 0 </FONT></CODE></TD></TR><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF"><B>movlw </B></FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">'A' </FONT></CODE></TD></TR><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF"><B>call </B></FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">LCD.DrawChar </FONT></CODE></TD> <TD><CODE><FONT COLOR="#22AAAA">;draw char at current cursor position </FONT></CODE></TD></TR></TABLE></CODE></DD></DL>
</DD>
<DD><DL>
<DT><B>Description:</B><DD> Draws an "A" on the beginning of the first line.</DD></DL>
</DD>
</DL>
<HR>
<A NAME="LCD.DrawString"></A><H3>
LCD.DrawString</H3>
<PRE>
<B>LCD.DrawString</B>( FSR2 )</PRE>
<P>
<DL>
<DD> This function sends a string to the LCD beginning at the current cursor position.<BR>
<P>
<DD><DL>
<DT><B>Parameters:</B>
<DD><CODE>FSR2</CODE> - Start address of the string </DD>
</DL></DD>
<P>
<DD><DL>
<DT><B>Used SFRs:</B><DD> </DD></DL>
</DD>
<DD><DL>
<DT><B>Calls subroutines:</B><PRE> LCD.DrawChar LCD.BUSY_CHECK
</PRE>
</DD></DL>
<DD><DL>
<DT><B>Stacklevel:</B><DD>3</DD></DL>
</DD>
<DD><DL>
<DT><B>Status:</B><DD> Tested</DD></DL>
</DD>
<P>
<DD><DL>
<DT><B>Example:</B><DD><CODE><TABLE BORDER="0"><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF"><B>call </B></FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">LCD.SetLine0 </FONT></CODE></TD> <TD><CODE><FONT COLOR="#22AAAA">;setting cursor to start of line 0 </FONT></CODE></TD></TR><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">String.ReadPGM2RAM </FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">String,StringBuffer </FONT></CODE></TD> <TD><CODE><FONT COLOR="#22AAAA">;read string from program memory </FONT></CODE></TD></TR><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF"><B>lfsr </B></FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">FSR2,StringBuffer </FONT></CODE></TD></TR><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF"><B>call </B></FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">LCD.DrawString </FONT></CODE></TD> <TD><CODE><FONT COLOR="#22AAAA">;draw string at current cursor position </FONT></CODE></TD></TR><TR> <TD><CODE><FONT COLOR="#AA22AA">... </FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">... </FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">... </FONT></CODE></TD></TR><TR> <TD><CODE><FONT COLOR="#AA22AA">String </FONT></CODE></TD></TR><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF">DE </FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">"Example\0" </FONT></CODE></TD></TR></TABLE></CODE></DD></DL>
</DD>
<DD><DL>
<DT><B>Description:</B><DD> Draws "Example" on the beginning of the first line.</DD></DL>
</DD>
</DL>
<HR>
<A NAME="LCD.DrawBuffer"></A><H3>
LCD.DrawBuffer</H3>
<PRE>
<B>LCD.DrawBuffer</B>()</PRE>
<P>
<DL>
<DD> This function draws the LCD.Buffer on the LCD.<BR>
<P>
<P>
<DD><DL>
<DT><B>Used SFRs:</B><DD> FSR2 </DD></DL>
</DD>
<DD><DL>
<DT><B>Calls subroutines:</B><PRE> LCD.Clear LCD.SendCMD LCD.BUSY_CHECK LCD.SetLine0 LCD.SendCMD LCD.BUSY_CHECK LCD.DrawString LCD.DrawChar LCD.BUSY_CHECK LCD.SetLine1 LCD.SendCMD LCD.BUSY_CHECK
</PRE>
</DD></DL>
<DD><DL>
<DT><B>Stacklevel:</B><DD>4</DD></DL>
</DD>
<DD><DL>
<DT><B>Status:</B><DD> Tested</DD></DL>
</DD>
<P>
<DD><DL>
<DT><B>Example:</B><DD><CODE><TABLE BORDER="0"><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF"><B>call </B></FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">LCD.SetLine0 </FONT></CODE></TD> <TD><CODE><FONT COLOR="#22AAAA">;setting cursor to start of line 0 </FONT></CODE></TD></TR><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">String.ReadPGM2RAM </FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">String1,LCD.Buffer.Line0 </FONT></CODE></TD> <TD><CODE><FONT COLOR="#22AAAA">;load buffer line 0 with strings from program memory </FONT></CODE></TD></TR><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">String.ReadPGM2RAM </FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">String2,LCD.Buffer.Line1 </FONT></CODE></TD> <TD><CODE><FONT COLOR="#22AAAA">;load buffer line 0 with strings from program memory </FONT></CODE></TD></TR><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF"><B>call </B></FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">LCD.DrawBuffer </FONT></CODE></TD> <TD><CODE><FONT COLOR="#22AAAA">;paint buffer to LCD </FONT></CODE></TD></TR><TR> <TD><CODE><FONT COLOR="#AA22AA">... </FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">... </FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">... </FONT></CODE></TD></TR><TR> <TD><CODE><FONT COLOR="#AA22AA">String1 </FONT></CODE></TD></TR><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF">DE </FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">"Example line 1\0" </FONT></CODE></TD></TR><TR> <TD><CODE><FONT COLOR="#AA22AA">String2 </FONT></CODE></TD></TR><TR> <TD><CODE> </CODE></TD> <TD><CODE><FONT COLOR="#0000FF">DE </FONT></CODE></TD> <TD><CODE><FONT COLOR="#AA22AA">"Example line 2\0" </FONT></CODE></TD></TR></TABLE></CODE></DD></DL>
</DD>
<DD><DL>
<DT><B>Description:</B><DD> This will draw "Example line 1" on the first line of the LCD and "Example line 2" on the second line</DD></DL>
</DD>
</DL>
<HR>
<A NAME="LCD.BUSY_CHECK"></A><H3>
LCD.BUSY_CHECK</H3>
<PRE>
<B>LCD.BUSY_CHECK</B>()</PRE>
<P>
<DL>
<DD> This function waits for the LCD module accepting further instructions.<BR>
<P>
<P>
<DD><DL>
<DT><B>Stacklevel:</B><DD>1</DD></DL>
</DD>
<DD><DL>
<DT><B>Status:</B><DD> Tested</DD></DL>
</DD>
</DL>
<HR>
<A NAME="LCD.SetLine0"></A><H3>
LCD.SetLine0</H3>
<PRE>
<B>LCD.SetLine0</B>()</PRE>
<P>
<DL>
<DD> This function set the cursor to the first line.<BR>
<P>
<P>
<DD><DL>
<DT><B>Used SFRs:</B><DD> </DD></DL>
</DD>
<DD><DL>
<DT><B>Calls subroutines:</B><PRE> LCD.SendCMD LCD.BUSY_CHECK
</PRE>
</DD></DL>
<DD><DL>
<DT><B>Stacklevel:</B><DD>3</DD></DL>
</DD>
<DD><DL>
<DT><B>Status:</B><DD> Tested</DD></DL>
</DD>
</DL>
<HR>
<A NAME="LCD.SetLine1"></A><H3>
LCD.SetLine1</H3>
<PRE>
<B>LCD.SetLine1</B>()</PRE>
<P>
<DL>
<DD> This function set the cursor to the second line.<BR>
<P>
<P>
<DD><DL>
<DT><B>Used SFRs:</B><DD> </DD></DL>
</DD>
<DD><DL>
<DT><B>Calls subroutines:</B><PRE> LCD.SendCMD LCD.BUSY_CHECK
</PRE>
</DD></DL>
<DD><DL>
<DT><B>Stacklevel:</B><DD>3</DD></DL>
</DD>
<DD><DL>
<DT><B>Status:</B><DD> Tested</DD></DL>
</DD>
</DL>
<HR>
<A NAME="LCD.Clear"></A><H3>
LCD.Clear</H3>
<PRE>
<B>LCD.Clear</B>()</PRE>
<P>
<DL>
<DD> This function clears the LCD.<BR>
<P>
<P>
<DD><DL>
<DT><B>Used SFRs:</B><DD> </DD></DL>
</DD>
<DD><DL>
<DT><B>Calls subroutines:</B><PRE> LCD.SendCMD LCD.BUSY_CHECK
</PRE>
</DD></DL>
<DD><DL>
<DT><B>Stacklevel:</B><DD>3</DD></DL>
</DD>
<DD><DL>
<DT><B>Status:</B><DD> Tested</DD></DL>
</DD>
</DL>
<HR>
<!-- ========= END OF CLASS DATA ========= -->
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -