Keil 4编程出现错误
#include<reg52.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedintsbi...
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit rs=P2^0;
sbit rw=P2^1;
sbit e=P2^2;
sbit psb=P0^0;
uchar table [] ="˳Àû´ð±ç¿¼ÊԱعý"
void write_12864com(uchar com);
void write_12864dat(uchar dat); //???//
void initinal(void); //???//
//????50s//
void delay_50ms(uint t)
{
uint j;
for(;t>0;t--)
for(j=6245;j>0;j--);
}
void main (void)
{
initinal ();
while (1)
display ();
while (1);
}
void write_12864com(uchar com)//??????//
{
rw=0;
rs=0;
delay_50us(1);
p0=com;
e=1;
delay_50us(10);
}
void write_12864dat(uchar dat)//??????//
{
rw=1;
rs=0;
delay_50us(1);
p0=dat;
e=1;
delay_50us(10);
}
void initinal(void)
{
delay_50ms(2);
write_12864com(ox30);
delay_50us(4);
write_12864com(ox30);
delay_50us(4);
write_12864com(oxof);
delay_50us(4);
write_12864com(ox01);
delay_50us(240);
write_12864com(ox06);
delay_50us(10);
}
void display 1(void)
{
uchar i;
write_12864com(ox80);
for(i=0;i<16;i++)
{
write_12864dat(table[i]);
delay_50us(1);
}
这是STC89c52单片机c语言程序在keil4中运行提示错误为c(13)error c141:syntax near' void'请大家帮忙改一下,非常感谢 展开
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit rs=P2^0;
sbit rw=P2^1;
sbit e=P2^2;
sbit psb=P0^0;
uchar table [] ="˳Àû´ð±ç¿¼ÊԱعý"
void write_12864com(uchar com);
void write_12864dat(uchar dat); //???//
void initinal(void); //???//
//????50s//
void delay_50ms(uint t)
{
uint j;
for(;t>0;t--)
for(j=6245;j>0;j--);
}
void main (void)
{
initinal ();
while (1)
display ();
while (1);
}
void write_12864com(uchar com)//??????//
{
rw=0;
rs=0;
delay_50us(1);
p0=com;
e=1;
delay_50us(10);
}
void write_12864dat(uchar dat)//??????//
{
rw=1;
rs=0;
delay_50us(1);
p0=dat;
e=1;
delay_50us(10);
}
void initinal(void)
{
delay_50ms(2);
write_12864com(ox30);
delay_50us(4);
write_12864com(ox30);
delay_50us(4);
write_12864com(oxof);
delay_50us(4);
write_12864com(ox01);
delay_50us(240);
write_12864com(ox06);
delay_50us(10);
}
void display 1(void)
{
uchar i;
write_12864com(ox80);
for(i=0;i<16;i++)
{
write_12864dat(table[i]);
delay_50us(1);
}
这是STC89c52单片机c语言程序在keil4中运行提示错误为c(13)error c141:syntax near' void'请大家帮忙改一下,非常感谢 展开
1个回答
展开全部
你好, 错误在这一句: uchar table [] ="˳Àû´ð±ç¿¼ÊԱعý"
应该在后面添加一个分号“ ; ”
uchar table [] ="˳Àû´ð±ç¿¼ÊԱعý";
应该在后面添加一个分号“ ; ”
uchar table [] ="˳Àû´ð±ç¿¼ÊԱعý";
追问
加上;后出现10条错误了
追答
我把程序放到我的Keil3里试了下。 总共有修改了以下几处地方:
1、添加了一个函数申明: void display(void);
2、添加了一个子函数:void delay_50us(uint t)
3、将write_12864com函数中小写p改成大写P
4、write_12864dat函数中仍是P由小写改成大写
5、initinal函数修改所有ox为0x,那应该是“零”,不是“欧”;还有oxof应该是0x0f
6、display函数名中那个数字1去掉,由void display 1(void)变为void display(void)
并且:write_12864com(0x80); //这一句,仍是将你的ox改为0x
最后再添加一个大括号,估计这处是你复制的时候漏掉的,应该不算错处
如此修改后,语法错误是没有了。
完整程序贴不上来,说是字数超标,放附件里了。
意法半导体(中国)投资有限公司
2023-06-12 广告
2023-06-12 广告
STM32F4是由ST(意法半导体)开发的一种高性能微控制器系列。其采用了90nm的NVM工艺和ART技术(自适应实时存储加速器,Adaptive Real-Time MemoryAccelerator)。STM32F4是一款基于ARM C...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询