📄 lcd12864.lst
字号:
115 {
116 1 unsigned char ucCountOne,ucCountTwo;
C51 COMPILER V8.05a LCD12864 11/13/2007 09:15:28 PAGE 3
117 1 for(ucCountOne=0;ucCountOne<ucHigh;ucCountOne++)
118 1 for(ucCountTwo=0;ucCountTwo<ucWidth;ucCountTwo++)
119 1 {
120 2 vSetPosition(ucRow+ucCountOne,ucLine+ucCountTwo);
121 2 vWriteData(0x00);
122 2 }
123 1 }
124
125
126 //*************************************************************************************************
127 //* *
128 //* ************************************清屏*********************************** *
129 //* *
130 //*************************************************************************************************
131 void vCleanAll()
132 {
133 1 unsigned char ucRow,ucLine;
134 1 CS1=1;
135 1 CS2=1;
136 1 for(ucRow=0;ucRow<8;ucRow++)
137 1 {
138 2 vWriteCMD(LCDPAGE+ucRow);
139 2 vWriteCMD(LCDLINE);
140 2 for(ucLine=0;ucLine<64;ucLine++)
141 2 vWriteData(0x00);
142 2 }
143 1 }
144 //*************************************************************************************************
145 //* *
146 //* *****************************字符显示函数*********************************** *
147 //* *
148 //*************************************************************************************************
149 //此函数将8×16字符显示在8×128的格子里。
150 void vShowChar(unsigned char ucCaps,unsigned char ucPage,unsigned char ucLine,unsigned char *ucaCharMap)
151 {
152 1 unsigned char ucCount,ucaTemp[5];
153 1 switch(ucCaps)
154 1 {
155 2 case CAPS_COMMON:
156 2 vShowCustomRow(ucPage,ucLine,8,ucaCharMap);
157 2 vShowCustomRow(ucPage+1,ucLine,8,ucaCharMap+8);
158 2 break;
159 2 case CAPS_MARK:
160 2 for(ucCount=0;ucCount<5;ucCount++)
161 2 {
162 3 ucaTemp[ucCount]=uca_MARK[40+ucLine+ucCount]|(*(ucaCharMap+ucCount));
163 3 }
164 2 vShowCustomRow(MARKPOS_ROW+1,ucLine,5,ucaTemp);
165 2 vShowCustomRow(MARKPOS_ROW+2,ucLine,5,ucaCharMap+5);
166 2 break;
167 2 case CAPS_TIME:
168 2 for(ucCount=0;ucCount<5;ucCount++)
169 2 {
170 3 ucaTemp[ucCount]=uca_TIME[40+ucLine+ucCount]|(*(ucaCharMap+ucCount));
171 3 }
172 2 vShowCustomRow(4,ucLine,5,ucaTemp);
173 2 vShowCustomRow(5,ucLine,5,ucaCharMap+5);
174 2 break;
175 2 default:
176 2 vShowCustomRow(ucPage,ucLine,5,ucaCharMap);
177 2 vShowCustomRow(ucPage+1,ucLine,5,ucaCharMap+5);
178 2 break;
C51 COMPILER V8.05a LCD12864 11/13/2007 09:15:28 PAGE 4
179 2 }
180 1 }
181
182 //*************************************************************************************************
183 //* *
184 //* *****************************图片显示函数*********************************** *
185 //* *
186 //*************************************************************************************************
187 void vShowGraph(unsigned char ucPage,unsigned char ucLine,unsigned char ucWidth,
188 unsigned char ucHigh,unsigned char * ucaGraph)
189 {
190 1 unsigned char ucCount;
191 1 for(ucCount=0;ucCount<ucHigh;ucCount++)
192 1 vShowCustomRow(ucPage+ucCount,ucLine,ucWidth,ucaGraph+ucCount*ucWidth);
193 1 }
194 //*************************************************************************************************
195 //* *
196 //* **********************************显示数字*********************************** *
197 //* *
198 //*************************************************************************************************
199 void vShowNumber(unsigned char ucCaps,unsigned char ucRow,unsigned char ucLine,unsigned long ulNumber)
200 {
201 1 unsigned char ucCount,ucNumberFront;
202 1 unsigned long ulNumberTemp=1000000000;
203 1
204 1 for(ucNumberFront=0;ucNumberFront<9;ucNumberFront++)
205 1 {
206 2 if(ulNumber/ulNumberTemp)
207 2 break;
208 2 ulNumberTemp/=10;
209 2 }
210 1
211 1 for(ucCount=0;ucCount<10-ucNumberFront;ucCount++)
212 1 {
213 2 if(ucCaps==CAPS_COMMON)
214 2 vShowChar(ucCaps,ucRow,ucLine+ucCount*NUMBERWIDTH,uca_Number[ulNumber/ulNumberTemp]);
215 2 else
216 2 vShowChar(ucCaps,ucRow,ucLine+ucCount*NUMBERSWIDTH,uca_NumberS[ulNumber/ulNumberTemp]);
217 2 ulNumber-=(ulNumber/ulNumberTemp)*ulNumberTemp;
218 2 ulNumberTemp/=10;
219 2 }
220 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 882 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 43
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -