📄 lcd_8c-source.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>VLSI Solution Oy Evaluation MP3 Player Source Code Documentation</title><link href="doxygen.css" rel="stylesheet" type="text/css"><img src="vlsi_small.gif" hspace="20" bordercolor="#ffffff" alt="VLSI Solution Oy"><b>VLSI Solution Oy Evaluation MP3 Player Source Code Documentation</b><p></p></head><body><!-- Generated by Doxygen 1.3.7 --><div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="annotated.html">Class List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Class Members</a> | <a class="qindex" href="globals.html">File Members</a> | <a class="qindex" href="pages.html">Related Pages</a></div><h1>lcd.c</h1><a href="lcd_8c.html">Go to the documentation of this file.</a><pre class="fragment"><div>00001 <span class="preprocessor">#include "<a class="code" href="board_8h.html">board.h</a>"</span>00002 <span class="preprocessor">#include "<a class="code" href="lcd_8h.html">lcd.h</a>"</span>00003 <span class="preprocessor">#include "<a class="code" href="lcdfonts_8c.html">lcdfonts.c</a>"</span>00004 <a name="l00011"></a><a class="code" href="lcd_8c.html#a0">00011</a> code <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> <a class="code" href="lcd_8c.html#a0">lcd_hexchars</a>[17] = <span class="stringliteral">"0123456789abcdef"</span>;00012 00013 <a name="l00017"></a><a class="code" href="lcd_8h.html#a6">00017</a> <span class="keywordtype">void</span> <a class="code" href="lcd_8h.html#a6">LcdPutChar</a>(<span class="keywordtype">char</span> c) {00018 <a class="code" href="board_8h.html#a39">WaitOutDelay</a>();00019 <a class="code" href="board_8h.html#a20">LCD_RS</a> = <a class="code" href="board_8h.html#a24">LCD_DATA_MODE</a>;00020 <a class="code" href="board_8h.html#a21">LCD_ENABLE</a> = 1; <span class="comment">/* Rising edge */</span>00021 <a class="code" href="board_8h.html#a19">LCD_DATABUS</a> = c;00022 <a class="code" href="board_8h.html#a21">LCD_ENABLE</a> = 1; <span class="comment">/* Keep high...*/</span>00023 <a class="code" href="board_8h.html#a21">LCD_ENABLE</a> = 0; <span class="comment">/* Falling edge */</span>00024 <a class="code" href="board_8h.html#a38">InitiateDelay</a>(44);00025 }00026 00027 00028 00029 <a name="l00033"></a><a class="code" href="lcd_8h.html#a7">00033</a> <span class="keywordtype">void</span> <a class="code" href="lcd_8h.html#a7">LcdPutCommand</a>(<span class="keywordtype">char</span> cmd){00034 <a class="code" href="board_8h.html#a39">WaitOutDelay</a>();00035 <a class="code" href="board_8h.html#a20">LCD_RS</a> = <a class="code" href="board_8h.html#a23">LCD_COMMAND_MODE</a>;00036 <a class="code" href="board_8h.html#a21">LCD_ENABLE</a> = 1; <span class="comment">/* Rising edge */</span>00037 <a class="code" href="board_8h.html#a19">LCD_DATABUS</a> = cmd;00038 <a class="code" href="board_8h.html#a21">LCD_ENABLE</a> = 0; <span class="comment">/* Falling edge */</span>00039 }00040 00041 00042 <a name="l00043"></a><a class="code" href="lcd_8h.html#a5">00043</a> <span class="keywordtype">void</span> <a class="code" href="lcd_8h.html#a5">LcdSelectFont</a>(ROM_CHAR_PTR font){00044 <span class="keyword">static</span> <a class="code" href="lcd_8h.html#a0">ROM_CHAR_PTR</a> loadedFont = 0;00045 <span class="keywordflow">if</span> (loadedFont != font){00046 loadedFont=font;00047 00048 <a class="code" href="lcd_8h.html#a3">LcdLocateCG</a>();00049 <a class="code" href="lcd_8h.html#a10">LcdPutConstantString</a>(font); 00050 <a class="code" href="lcd_8h.html#a1">LcdLocateHome</a>();00051 00052 }00053 }00054 <a name="l00056"></a><a class="code" href="lcd_8h.html#a8">00056</a> <span class="keywordtype">void</span> <a class="code" href="lcd_8c.html#a4">LcdReset</a>(){00057 00058 00059 <a class="code" href="board_8h.html#a21">LCD_ENABLE</a> = 0;00060 <a class="code" href="board_8h.html#a38">InitiateDelay</a>(0); <span class="comment">/* Initialize the delay system */</span>00061 00062 <a class="code" href="lcd_8h.html#a7">LcdPutCommand</a>(56); <span class="comment">/* 8 data bits, 2 lines */</span>00063 <a class="code" href="board_8h.html#a38">InitiateDelay</a>(39);00064 00065 <a class="code" href="board_8h.html#a39">WaitOutDelay</a>();00066 <a class="code" href="lcd_8h.html#a7">LcdPutCommand</a>(56); <span class="comment">/* Command 2 times "just in case" */</span>00067 <a class="code" href="board_8h.html#a38">InitiateDelay</a>(39);00068 00069 <a class="code" href="board_8h.html#a39">WaitOutDelay</a>();00070 <a class="code" href="lcd_8h.html#a7">LcdPutCommand</a>(12); <span class="comment">/* Panel on, no cursor */</span>00071 <a class="code" href="board_8h.html#a38">InitiateDelay</a>(39);00072 00073 <a class="code" href="board_8h.html#a39">WaitOutDelay</a>();00074 <a class="code" href="lcd_8h.html#a7">LcdPutCommand</a>(1); <span class="comment">/* Clear screen */</span>00075 <a class="code" href="board_8h.html#a38">InitiateDelay</a>(1530); <span class="comment">/* Start a 1.53 ms delay */</span>00076 00077 <a class="code" href="lcd_8h.html#a5">LcdSelectFont</a>(<a class="code" href="lcdfonts_8c.html#a0">lcdFont_barchars</a>);00078 00079 }00080 00081 00082 <a name="l00089"></a><a class="code" href="lcd_8h.html#a9">00089</a> <span class="keywordtype">void</span> <a class="code" href="lcd_8h.html#a9">LcdPutString</a> (<span class="keywordtype">char</span> *str) {00090 <span class="keywordflow">while</span> (*str) {00091 <a class="code" href="lcd_8h.html#a6">LcdPutChar</a> (*str++);00092 }00093 }00094 00095 00096 <a name="l00102"></a><a class="code" href="lcd_8h.html#a10">00102</a> <span class="keywordtype">void</span> <a class="code" href="lcd_8h.html#a10">LcdPutConstantString</a>(<span class="keywordtype">char</span> code *str){00103 <span class="keywordflow">while</span> (*str)00104 {00105 <a class="code" href="lcd_8h.html#a6">LcdPutChar</a> (*str++);00106 }00107 }00108 00109 00110 <a name="l00111"></a><a class="code" href="lcd_8c.html#a7">00111</a> <span class="keywordtype">void</span> <a class="code" href="lcd_8c.html#a7">LcdFadeIn</a>(){00112 <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> c,d;00113 <span class="keywordflow">for</span> (c=0; c<254; c++){00114 <span class="keywordflow">for</span> (d=252; d; d-=2){00115 <span class="keywordflow">if</span> (d>c){00116 <a class="code" href="lcd_8h.html#a7">LcdPutCommand</a> (8);00117 <a class="code" href="board_8h.html#a38">InitiateDelay</a>(40);00118 }<span class="keywordflow">else</span>{00119 <a class="code" href="lcd_8h.html#a7">LcdPutCommand</a> (12);00120 <a class="code" href="board_8h.html#a38">InitiateDelay</a>(40);00121 }00122 }00123 }00124 <a class="code" href="lcd_8h.html#a7">LcdPutCommand</a>(12);00125 <a class="code" href="board_8h.html#a38">InitiateDelay</a>(40);00126 }00127 <a name="l00128"></a><a class="code" href="lcd_8c.html#a8">00128</a> <span class="keywordtype">void</span> <a class="code" href="lcd_8c.html#a8">LcdFadeOut</a>(){
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -