找回密码
 立即注册

QQ登录

只需一步,快速开始

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

16位的键盘单片机程序编译错误 求指导

[复制链接]
跳转到指定楼层
楼主

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

使用道具 举报

沙发
ID:161164 发表于 2021-9-1 17:59 | 只看该作者
函数名和管脚名重覆了"KEY"
回复

使用道具 举报

板凳
ID:963500 发表于 2021-9-1 18:18 | 只看该作者
lkc8210 发表于 2021-9-1 17:59
函数名和管脚名重覆了"KEY"

那只要重新定义一下函数名就行了吗
回复

使用道具 举报

地板
ID:963500 发表于 2021-9-1 18:26 | 只看该作者
lkc8210 发表于 2021-9-1 17:59
函数名和管脚名重覆了"KEY"

那是要如何修改呢,希望可以给个建议,遇到好几次这样的事了
回复

使用道具 举报

5#
ID:161164 发表于 2021-9-1 19:53 来自触屏版 | 只看该作者
alalsce11 发表于 2021-9-1 18:26
那是要如何修改呢,希望可以给个建议,遇到好几次这样的事了

函数用KEY2或其它名字就可以了~
回复

使用道具 举报

6#
ID:963500 发表于 2021-9-1 19:59 | 只看该作者
是18行的unsigned char key的key加个2吗,我试了一下不行啊
回复

使用道具 举报

7#
ID:624769 发表于 2021-9-1 20:38 | 只看该作者
18行 改成 unsigned char Getkey(void)
另外,非常不建议 用: #define KEY P1 这种方式,你非要把P1命名为KEY,宁可用: sfr KEY = 0x90;
最后,不管你什么原因编译不通过,你把编译不通过的信息发出来啊……
回复

使用道具 举报

8#
ID:963500 发表于 2021-9-1 20:49 | 只看该作者
main.c(19): error C141: syntax error near '!'
main.c(19): error C141: syntax error near '='
main.c(19): error C141: syntax error near ')'

这是改过后的,改了18行的key定义
回复

使用道具 举报

9#
ID:161164 发表于 2021-9-2 00:00 | 只看该作者
alalsce11 发表于 2021-9-1 20:49
main.c(19): error C141: syntax error near '!'
main.c(19): error C141: syntax error near '='
main.c ...

请把"! ="改为"!="
回复

使用道具 举报

10#
ID:963500 发表于 2021-9-2 00:12 | 只看该作者
lkc8210 发表于 2021-9-2 00:00
请把"! ="改为"!="

谢谢你,我改好了,请问一下sfr KEY = 0x90;这个是什么含义,我有点理解不了
回复

使用道具 举报

11#
ID:161164 发表于 2021-9-2 00:26 | 只看该作者
alalsce11 发表于 2021-9-2 00:12
谢谢你,我改好了,请问一下sfr KEY = 0x90;这个是什么含义,我有点理解不了

sfr是定义单片机固有的的寄存器,接口
0x90是一个十六进制数值
在8051单片机中,P1的接口地址就是0x90
回复

使用道具 举报

12#
ID:963500 发表于 2021-9-2 00:55 | 只看该作者
lkc8210 发表于 2021-9-2 00:26
sfr是定义单片机固有的的寄存器,接口
0x90是一个十六进制数值
在8051单片机中,P1的接口地址就是0x90

嗯嗯,好,刚刚翻了一下51的手册懂了,谢谢你
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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