可以帮我看看程序吗
#include <reg52.h>#define uchar unsigned char#define uint unsigned intuchar table[] = "Hello everyone!";uchar table1[] = "Welcome to here!";uchar num;void main(void){ unsigned char i;for(i=0;i<16;i++){LcdWriteData(uchar [i]);} while(1); }void Lcd1602_Delay1ms(uint c){uchar a,b;for(;c>0;c--){for(b=199;b>0;b--){for(a=1;a>0;a--);}}}#ifndef LCD1602_4PINSvoid LcdWriteCom(uchar com){LCD1602_E=0;LCD1602_RS=0;LCD1602_RW=0;LCD1602_DATAP=com;Lcd1602_Delay1ms(1);LCD1602_E=1;Lcd1602_Delay1ms(10);LCD1602_E=0;}#elsevoid LcdWriteCom(uchar com){LCD1602_E=0;LCD1602_RS=0;LCD1602_RW=0;LCD1602_DATAPINS=com;LCD1602_Delay(1);LCD1602_E=1;lcd1602_Delay1ms(10);LCD1602_E=0;lcd1602_Delay1ms(1);LCD1602_DATAPINS=com<<4;Lcd1602_Delay1ms(1);LCD1602_E=1;Lcd1602_Delay1ms(10);LCD1602_E=0;}#endif#ifndef LCD1602_4PINSvoid LcdWriteData(uchar dat){LCD1602_E=0;LCD1602_RS=1;LCD1602_RW=0;LCD1602_DATAPINS=dat;LCD1602_Delay1ms(1);LCD1602_E=1;LCD1602_Delay1ms(10);LCD1602_E=0;}#elsevoid LcdWriteData(uchar dat){LCD1602_E=0;LCD1602_RS=1;LCD1602_RW=0;LCD1602_DATAPINS=dat;Lcd1602_Delay1ms(1);LCD1602_E=1;Lcd1602_Delay1ms(10);LCD1602_E=0;LCD1602_DATAPINS=dat<<4;Lcd1602_Delay1ms(1);LCD1602_E=1;Lcd1602_Delay1ms(10);LCD1602_E=0;}#endif#ifndef LCD1602_4PINSvoid LcdInit(){LcdWriteCom(0x38);LcdWriteCom(0x0c);LcdWriteCom(0x06);LcdWriteCom(0x01);LcdWriteCom(0x80);}#elsevoid LcdInit(){LcdWriteCom(0x32);LcdWriteCom(0x28);LcdWriteCom(0x0c);LcdWriteCom(0x06);LcdWriteCom(0x01);LcdWriteCom(0x80);}#endif#ifndef _LCD_H_#define _LCD_H_#define LCD1602_4PINS#include<reg52.h>#ifdef uchar#define uchar unsigned char#endif#ifndef uint#define uint unsigned int#endif#define LCD1602_DATAPINS P0sbit LCD1602_E=P2^2;sbit LCD1602_RW=P2^1;sbit LCD1602_RS=P2^0;void LCD1602_Delay1ms(uint c);void LcdWriteCom(uchar Com);void LcdWriteDaTa(uchar dat);void LcdInit();#endif
程序完全不对
首先,最后一段程序从
#ifndef _LCD_H_ #define _LCD_H_
开始,它是单独的一个.h文件,如lcd.h
而从
#ifndef LCD1602_4PINS
又应该是一个单独的文件或放在lcd.h的后面,且要定义LCD1602_4PINS
另外
#ifdef uchar
也是错的,应该是
#ifndef uchar
再有main()中更有问题,少头文件,且
LcdWriteData(uchar [i]);
根本也不符合C语法,table,table1定义了没有用
。。。。
你完全还没有入门,先从最基础的程序开始学习下(你上面的涉及工程了,多头文件)