找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1407|回复: 11
收起左侧

单片机程序找不出语法错误,什么意思啊

[复制链接]
ID:985065 发表于 2021-12-4 16:09 | 显示全部楼层 |阅读模式
找不出语法错误
?.png
回复

使用道具 举报

ID:57657 发表于 2021-12-4 18:01 | 显示全部楼层
不要用 sfr 定义寄存器,不同的系列,同一个寄存器对应的 sfr 地址可能会有不同,请直接使用STC提供的头文件,错误的STC头文件,可能会导致程序异常。
回复

使用道具 举报

ID:883242 发表于 2021-12-4 18:10 | 显示全部楼层
npn 发表于 2021-12-4 18:01
不要用 sfr 定义寄存器,不同的系列,同一个寄存器对应的 sfr 地址可能会有不同,请直接使用STC提供的头文 ...

楼主用的就是STC提供的h文件。

错误应该发生在引用这个h文件的c文件里面。
回复

使用道具 举报

ID:57657 发表于 2021-12-4 18:12 | 显示全部楼层
Hephaestus 发表于 2021-12-4 18:10
楼主用的就是STC提供的h文件。

错误应该发生在引用这个h文件的c文件里面。

把这些 sfr 全注释了,头文件里都已经有了。
回复

使用道具 举报

ID:883242 发表于 2021-12-4 18:19 | 显示全部楼层
npn 发表于 2021-12-4 18:12
把这些 sfr 全注释了,头文件里都已经有了。

楼主用的就是STC提供的h文件,编译器指出的错误也就出在STC提供的h文件里面,这些sfr根本不能注释掉,你仔细看清楚再回复我的帖子。

但实际上问题应该出在引用这个h文件的c文件里面。
回复

使用道具 举报

ID:624769 发表于 2021-12-4 18:21 来自触屏版 | 显示全部楼层
npn 发表于 2021-12-4 18:12
把这些 sfr 全注释了,头文件里都已经有了。

放大楼主的图片,你会看到,这图显示的就是stc89的头文件,这些全注释的话,会出乱子的。
回复

使用道具 举报

ID:624769 发表于 2021-12-4 18:25 来自触屏版 | 显示全部楼层
从报错看,问题发生在第12行sfr之前,你可以检查一下第11行,或者1-4行,按end键转移到行末是否有乱入一些奇怪的东西,如果都没有,就去看调用这个头文件的指令前面一行,有啥奇怪的东西么,
回复

使用道具 举报

ID:57657 发表于 2021-12-4 19:15 | 显示全部楼层
188610329 发表于 2021-12-4 18:21
放大楼主的图片,你会看到,这图显示的就是stc89的头文件,这些全注释的话,会出乱子的。

STC89头文件里没有的寄存器,你用sfr定义了也没用。
如果不是什么AT89,就不要用reg51.h等Keil自带的头文件。
回复

使用道具 举报

ID:883242 发表于 2021-12-4 19:44 | 显示全部楼层
npn 发表于 2021-12-4 19:15
STC89头文件里没有的寄存器,你用sfr定义了也没用。
如果不是什么AT89,就不要用reg51.h等Keil自带的头 ...

楼主写的很清楚,是STC89C5xRC.h,看看芯片里面到底有什么SFR。你就不能平心静气的看看楼主的图,再看看芯片手册再来发言???信口开河很有意思吗?
51hei图片20211204194154.png

回复

使用道具 举报

ID:57657 发表于 2021-12-4 20:38 | 显示全部楼层
本帖最后由 npn 于 2021-12-4 20:45 编辑

你把那4个文件打包上来,像这样都不知道那个文件有问题,头文件里面的代码不能动。
回复

使用道具 举报

ID:57657 发表于 2021-12-4 20:52 | 显示全部楼层
头文件可能有问题,点这里重新添加一下:添加后将 X:\Keil\C51\INC 目录里所有文件设为只读。
1.png


回复

使用道具 举报

ID:987484 发表于 2021-12-5 13:48 | 显示全部楼层
问题应该出在引用这个h文件的c文件里面
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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