📄 lcm.lst
字号:
134 {
135 1 uchar uc_Content;
136 1 Parallel_Check_Busy();
137 1 P1 = 0xff; //输入前置1
138 1 RS = 1; //数据
139 1 RW = 1; //读模式
140 1 E = 1; //使能
141 1 uc_Content = P1; //P1口的内容放到变量中
142 1 E = 0;
143 1 return uc_Content;
144 1 }
145
146 //*************************************************************
147 //*函数名称:void Parallel_DDRAM_Address_Set(uchar ucDDramAdd) *
148 //*函数功能:设定DDRAM(文本区)地址到地址计数器AC *
149 //*形式参数:uchar ucDDramAdd *
150 //*行参说明:具体地址 *
151 //*格式说明: *
152 //* RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 *
153 //* 0 0 1 AC6 AC5 AC4 AC3 AC2 AC1 AC0 *
154 //*返回参数:无 *
155 //*使用说明: *
156 //* 第一行地址:80H~8FH *
157 //* 第二行地址:90H~9FH *
158 //* 第三行地址:A0H~AFH *
159 //* 第四行地址:B0H~BFH *
160 //*************************************************************
161 void Parallel_DDRAM_Address_Set(uchar ucDDramAdd)
162 {
163 1 Parallel_Write_LCD(COMMAND,BASIC_FUNCTION); //基本指令集
164 1 Parallel_Write_LCD(COMMAND,ucDDramAdd); //设定DDRAM地址到地址计数器AC
165 1 }
166
167
168 //*************************************************************
169 //*函数名称:void Parallel_CGRAM_Address_Set(uchar ucCGramAdd) *
170 //*函数功能:设定CGRAM(自定义字库区)地址到地址计数器AC *
171 //*形式参数:uchar ucCGramAdd *
172 //*形参说明:具体地址 *
173 //*格式说明: *
174 //* RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 *
175 //* 0 0 0 1 AC5 AC4 AC3 AC2 AC1 AC0 *
176 //*返回参数:无 *
177 //*使用说明:地址范围为40H~3FH *
178 //*************************************************************
179 void Parallel_CGRAM_Address_Set(uchar ucCGramAdd)
C51 COMPILER V8.02 LCM 06/09/2007 19:54:48 PAGE 4
180 {
181 1 Parallel_Write_LCD(COMMAND,BASIC_FUNCTION); //基本指令集
182 1 Parallel_Write_LCD(COMMAND,ucCGramAdd); //设定CGRAM地址到地址计数器AC
183 1 }
184
185
186 //*******************************************************************************
187 //*函数名称:void Parallel_GDRAM_Address_Set(uchar ucGDramAdd) *
188 //*函数功能:设定GDRAM(图形区)地址到地址计数器AC *
189 //*形式参数:uchar ucGDramAdd *
190 //*形参说明:具体地址值 *
191 //* RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 *
192 //* 0 0 1 AC6 AC5 AC4 AC3 AC2 AC1 AC0 *
193 //* 先设定垂直位置再设定水平位置(连续写入两个字节完成垂直和水平位置的设置) *
194 //* 垂直地址范围:AC6~AC0 *
195 //* 水平地址范围:AC3~AC0 *
196 //*返回参数:无 *
197 //*使用说明:必须在扩展指令集的情况下使用 *
198 //*******************************************************************************
199 void Parallel_GDRAM_Address_Set(uchar ucGDramAdd)
200 {
201 1 Parallel_Write_LCD(COMMAND,EXTEND_FUNCTION); //扩展指令集
202 1 Parallel_Write_LCD(COMMAND,ucGDramAdd);
203 1 }
204
205
206
207 //*******************************************
208 //*函数名称:void Parallel_Init_LCD(void) *
209 //*函数功能:并行初始化LCD *
210 //*形式参数:无 *
211 //*形参说明:无 *
212 //*返回参数:无 *
213 //*使用说明:无 *
214 //*******************************************
215 void Parallel_Init_LCD(void)
216 {
217 1 RST = 1; //复位后拉高,停止复位
218 1 PSB = 1; //选择并行传输模式
219 1 Parallel_Write_LCD(COMMAND,BASIC_FUNCTION); //基本指令动作
220 1 Parallel_Write_LCD(COMMAND,CLEAR_SCREEN); //清屏,地址指针指向00H
221 1 Parallel_Write_LCD(COMMAND,0x06); //光标的移动方向
222 1 Parallel_Write_LCD(COMMAND,0x0c); //开显示,关游标
223 1
224 1 }
225
226
227
228 //********************************************************
229 //*函数名称:void Parallel_Clear_Ram(void) *
230 //*函数功能:并行清屏函数 *
231 //*形式参数:无 *
232 //*形参说明:无 *
233 //*返回参数:无 *
234 //*使用说明:DDRAM填满20H,并设定DDRAM AC到00H *
235 //*格式说明: *
236 //* RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 *
237 //* 0 0 0 0 0 0 0 0 0 1 *
238 //********************************************************
239 void Parallel_Clear_Ram(void)
240 {
241 1 Parallel_Write_LCD(COMMAND,BASIC_FUNCTION); //基本指令集
C51 COMPILER V8.02 LCM 06/09/2007 19:54:48 PAGE 5
242 1 Parallel_Write_LCD(COMMAND,CLEAR_SCREEN); //清屏
243 1 }
244
245
246 //*****************************************************
247 //*函数名称:void Parallel_Graph_Mode_Set(bit bSelect) *
248 //*函数功能:打开或关闭绘图显示 *
249 //*形式参数:bit bSelect *
250 //*形参说明:打开或关闭绘图显示的标志位,1打开,0关闭 *
251 //*格式说明: *
252 //* RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 *
253 //* 0 0 0 0 1 DL X RE G X *
254 //* DL:0,4bitMPU控制界面 *
255 //* DL:1,8bitMPU控制界面 *
256 //* RE:0,基本指令集 *
257 //* RE:1,扩充指令集 *
258 //* G :0,绘图显示OFF *
259 //* G :1,绘图显示ON *
260 //*返回参数:无 *
261 //*使用说明:无 *
262 //*****************************************************
263 void Parallel_Graph_Mode_Set(bit bSelect)
264 {
265 1 Parallel_Write_LCD(COMMAND,EXTEND_FUNCTION); //扩展指令集
266 1 if(bSelect)
267 1 {
268 2 Parallel_Write_LCD(COMMAND,GRAPH_ON); //打开绘图模式
269 2 }
270 1 else
271 1 {
272 2 Parallel_Write_LCD(COMMAND,GRAPH_OFF); //关闭绘图模式
273 2 }
274 1 }
275
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -