📄 main.c
字号:
/****************************************Copyright (c)**************************************************
** Guangzou ZLG-MCU Development Co.,LTD.
** graduate school
** http://www.zlgmcu.com
**
**--------------File Info-------------------------------------------------------------------------------
** File name: main.c
** Last modified Date: 2004-09-16
** Last Version: 1.0
** Descriptions: The main() function example template
**
**------------------------------------------------------------------------------------------------------
** Created by: Chenmingji
** Created date: 2004-09-16
** Version: 1.0
** Descriptions: The original version
**
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
** Version:
** Descriptions:
**
********************************************************************************************************/
/****************************************************************************
* File: main.c
* 功能:向LCD输出HelloWorld
****************************************************************************/
#include "config.h"
#include "lcd.h"
uint8 lcdnum[]={"0123456789"};
uint8 txt[]={"HelloWorld"};
/****************************************************************************
* 名称:ChkBusy()
* 功能:检查总线是否忙
****************************************************************************/
void ChkBusy()
{
IODIR=0x700;
while(1)
{
IOCLR=rs;
IOSET=rw;
IOSET=en;
if(!(IOPIN & busy))break;
IOCLR=en;
}
IODIR=0x7ff;
}
/****************************************************************************
* 名称:WrOp()
* 功能:写函数
****************************************************************************/
void WrOp(uint8 dat)
{
ChkBusy();
IOCLR=rs; //全部清零
IOCLR=rw;
IOCLR=0xff; //先清零
IOSET=dat; //再送数
IOSET=en;
IOCLR=en;
}
/****************************************************************************
* 名称:WrDat()
* 功能:写数据函数
****************************************************************************/
void WrDat(uint8 dat)
{
ChkBusy();
IOSET=rs;
IOCLR=rw;
IOCLR=0xff; //先清零
IOSET=dat; //再送数
IOSET=en;
IOCLR=en;
}
/****************************************************************************
* 名称:lcd_init()
* 功能:lcd初始化函数
****************************************************************************/
void lcd_init(void)
{
WrOp(TwoLine_8bit);
WrOp(CURSOR_RIGHT); //光标加1
WrOp(CURSOR_OFF); //关显示
}
/****************************************************************************
* 名称:DisText()
* 功能:显示文本函数
****************************************************************************/
void DisText(uint8 *p)
{
while(*p !='\0')WrDat(*(p++));
}
/*****************************
* 名称:gotoxy()
* 功能:设置地址函数
******************************/
void gotoxy(uint8 x,uint8 y)
{
if(x==1)
WrOp(GOTO_LINE_1+y);
else
WrOp(GOTO_LINE_2+y);
}
/****************************************************************************
* 名称:main()
* 功能:显示文本
****************************************************************************/
int main (void)
{ lcd_init();
IODIR=0x7ff; //设置为输出
IOCLR=0x7ff;
gotoxy(2,5);
DisText(txt);
WrDat(lcdnum[6]);
while(1);
return 0;
}
/*********************************************************************************************************
** End Of File
********************************************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -