📄 cvavr写的关于12864的程序(atmage8l-hd61202)(huxiangming).htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0036)http://www.daxia.com/list.asp?id=909 -->
<HTML><HEAD><TITLE>CVAVR写的关于12864的程序(ATMage8L/HD61202)(huxiangming)</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312"><LINK
href="CVAVR写的关于12864的程序(ATMage8L-HD61202)(huxiangming).files/style.css"
rel=stylesheet>
<META content="MSHTML 6.00.2800.1106" name=GENERATOR></HEAD>
<BODY>
<DIV align=center>
<CENTER></CENTER></DIV>
<DIV align=center>
<CENTER>
<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=0 width="97%"
borderColorLight=#000000 border=1>
<TBODY>
<TR>
<TD width="100%" bgColor=#d0d0d0>
<P align=center>文章编号:909----加入日期:2003-12-5 </P></TD></TR>
<TR>
<TD width="100%">
<P align=right><A href="javascript:self.close()">『关闭窗口』</A></P></TD></TR>
<TR>
<TD width="100%">
<P
align=center><B>CVAVR写的关于12864的程序(ATMage8L/HD61202)(huxiangming)</B></P></TD></TR>
<TR>
<TD width="100%">
<BLOCKQUOTE><BR>主程序:<BR><BR>/************************************************************
<BR> LCD采用HD61202,128x64<BR> 控制单片机ATMage8L
8MHz<BR> 2003.12.5
huxiangming.<BR>************************************************************/<BR><BR>#include
<mega8.h><BR>#include <delay.h><BR>#include
<stdio.h><BR>#include "hz.h"<BR><BR><BR>/*LCD引脚定义 PB0-7对应LCD
DB0-DB7*/<BR>#define CS1 PORTC.2<BR>#define CS2 PORTC.3<BR>#define RS
PORTC.4<BR>#define RW PORTC.5<BR>#define E PORTD.4<BR><BR><BR>void
LCD_NOP(void)<BR>{<BR>unsigned char i;<BR>for(i=0;i<50;i++);
<BR>}<BR>void Delay(int x)<BR>{<BR>int
i,j;<BR>for(j=0;j<x;j++){<BR>
for(i=0;i<250;i++);<BR>}<BR>}<BR><BR><BR>//LCD左半屏写命令字<BR>void
LCD_Write_ComL(unsigned char x)<BR>{
<BR> CS1=0;CS2=1;LCD_NOP();<BR> RS=0;<BR> E=1;LCD_NOP();<BR> RW=0;<BR> PORTB=x;<BR> E=1;<BR> E=0;<BR> CS1=1;CS2=1;<BR>}<BR><BR>//LCD左半屏写数据<BR>void
LCD_Write_DatL(unsigned char x)<BR>{
<BR> CS1=0;CS2=1;LCD_NOP();<BR> RS=0;<BR> E=1;LCD_NOP();<BR> RS=1;<BR> RW=0;<BR> PORTB=x;<BR> E=1;<BR> E=0;<BR> CS1=1;CS2=1;<BR>}<BR><BR>//LCD右半屏写命令字<BR>void
LCD_Write_ComR(unsigned char x)<BR>{
<BR> CS1=1;CS2=0;LCD_NOP();<BR> RS=0;<BR> E=1;LCD_NOP();<BR> RW=0;<BR> PORTB=x;<BR> E=1;<BR> E=0;<BR> CS1=1;CS2=1;<BR> <BR>} <BR><BR>//LCD右半屏写数据<BR>void
LCD_Write_DatR(unsigned char x)<BR>{
<BR> CS1=1;CS2=0;LCD_NOP();<BR> RS=0;<BR> E=1;LCD_NOP();<BR> RS=1;<BR> RW=0;<BR> PORTB=x;<BR> E=1;<BR> E=0;<BR> CS1=1;CS2=1;<BR> <BR>}<BR><BR>//LCD初始化<BR>void
LCD_Init(void)<BR>{ <BR> LCD_Write_ComL(0x3e);LCD_Write_ComR(0x3e);<BR> LCD_Write_ComL(0x3f);LCD_Write_ComR(0x3f);<BR> LCD_Write_ComL(0xc0);LCD_Write_ComR(0xc0);<BR>}<BR><BR><BR>//LCD清屏<BR>void
LCD_Clr(void)<BR>{<BR>unsigned char
i,j;<BR><BR>for(j=0;j<8;j++){<BR>
LCD_Write_ComL(0xb8|j); <BR>
LCD_Write_ComL(0x40);<BR>
LCD_Write_ComR(0xb8|j); <BR>
LCD_Write_ComR(0x40);<BR>
for(i=0;i<64;i++){<BR>
LCD_Write_DatL(0x00); <BR>
LCD_Write_DatR(0x00); <BR>
}<BR>}<BR>}<BR><BR>//显示8x16字符,位置按8x8一个点来定 x:列坐标 y:行坐标 chrx:显示字符<BR>LCD_WrCHr8x16(unsigned
char x,unsigned char y,unsigned char chrx){<BR>unsigned char
i;<BR>unsigned int
chr_m;<BR>chr_m=chrx;<BR>chr_m=chr_m*16;<BR>if(y>=8){<BR> y=y-8;<BR> LCD_Write_ComR(0xb8|x); <BR>
LCD_Write_ComR(0x40|y<<3); <BR>
for(i=0;i<8;i++){<BR>
LCD_Write_DatR(Ezk[chr_m+i]); <BR> }<BR>
LCD_Write_ComR(0xb9|x); <BR>
LCD_Write_ComR(0x40|y<<3);<BR>
for(i=8;i<16;i++){<BR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -