找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1677|回复: 7
打印 上一主题 下一主题
收起左侧

error C141: syntax error是哪里错啦!

[复制链接]
跳转到指定楼层
楼主
第23行出现这个错误!找了一晚上了!也不知道到底怎么回事!求帮助呀!!
这是一部分代码:
#include<reg51.h>
#include"intrins.h"
#define uint unsigned int
#define addr unsigned int
#define uint unsigned int
#define uchar unsigned char
sbit beep=P3^7;
void delay(uint z)//延时函数
{
uint x,y;
for(x=z;x>0;x--);
for(y=110;y>0;y--);
}
void di(uint x)//蜂鸣器发声函数
{
  beep=0;
  delay(x);
  beep=1;
  delay(x);
}
/****************显示处理函数****************/
void shanshuo(uchar addr,uchar count_1,uchar time_num) //闪烁显示子程序
{
  write_com("0x80+addr");//闪烁显示,格式:写入1602地址,设置的位号,显示的位号
  if(count==count_1&(shan<shan_time))//显示“”
  {
   write_data('');
   write_data('');
  }
else//显示时钟
{
write_time(time[time_num]/10);
write_time(time[time_num]%10);
}
}
void deal()//对时间进行显示处理
{
uchar addr=0x44;
shanshuo(addr,3.2);//时
addr+=3;
shanshuo(addr,2,1);//分
addr+=3;
shanshuo(addr,1.0);//秒
addr=0x02;
shanshuo(addr,7,6);//年
addr+=3;
shanshuo(addr,6,4);//月
addr+=3;
shanshuo(addr,5,3);//日
addr+=3;
if(count==4&(shan<shan_time))//星期
{
w_com(Ox80+addr);
  w_string(Oxff," ");
}
else w_string(11,week[time[5]]D);
}
/*************初始化程序*********************/
void init_lcd(//1602初始化
{
w_com(0x38);
  w_com(0x0c);
w_string(0x00."20 - - ");//年月日格式
  w_string(0x44,"-----:--");//时间格式
}
void init1302()//1302初始化
{
if(read1302(0x81)&0x80) settime(0x80,0);
}
谢谢大家!!

1.png (82.5 KB, 下载次数: 53)

1.png
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:235200 发表于 2020-12-24 08:33 | 只看该作者
addr怎么能用第4行的方式去定义,又在23行形式参数中定义呢
回复

使用道具 举报

板凳
ID:115923 发表于 2020-12-24 08:44 | 只看该作者
第2和第4行 重复了

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

地板
ID:743654 发表于 2020-12-24 08:44 | 只看该作者
#include<reg51.h>
#include"intrins.h"
#define uint unsigned int
#define addr unsigned int
#define uint unsigned int
#define uchar unsigned char

改为:
#include<reg51.h>
#include"intrins.h
#define uint unsigned int
#define uchar unsigned char

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

5#
ID:824490 发表于 2020-12-24 08:44 | 只看该作者
w_com(Ox80+addr);
  w_string(Oxff," ");
是0x80,不是Ox80,文字错了

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

6#
ID:278840 发表于 2020-12-24 09:34 | 只看该作者
shanshuo(addr,3.2);//shanshuo(addr,1.0);//秒这里的点应该是问题的关键了

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

7#
ID:553941 发表于 2020-12-24 09:37 | 只看该作者
#define addr unsigned int
回复

使用道具 举报

8#
ID:553941 发表于 2020-12-24 09:38 | 只看该作者
#define addr unsigned int
定义了这么个东西
然后你函数里面又uchar定义了一个叫addr的,,这肯定要报错的。

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表