找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1570|回复: 4
收起左侧

keil的gpio.h里的P1M1出现错误

[复制链接]
ID:941608 发表于 2021-12-1 16:18 | 显示全部楼层 |阅读模式
哪个大佬帮看看这个该怎么改啊,头文件加进去了又出现了这种错误,谢谢
#include<AT89x51.h>
gpio.h(3): error C202: 'P0M1': undefined identifier
gpio.h(3): error C202: 'P0M0': undefined identifier
gpio.h(3): error C202: 'P1M1': undefined identifier
gpio.h(3): error C202: 'P1M0': undefined identifier
gpio.h(4): error C202: 'P2M1': undefined identifier
gpio.h(4): error C202: 'P2M0': undefined identifier
gpio.h(4): error C202: 'P3M1': undefined identifier
gpio.h(4): error C202: 'P3M0': undefined identifier

#include<intrins.h>
#include"gpio.h"
#define uint unsigned int
#define uchar unsigned char
#define x P1   
#define y P3
#define z P2
void main(void)
{
gpio();
x=0xff;
y=0xff;
while(1)
{
   z=~(x^y);
}
}


gpio.h
gpio()
{
P0M1=0;P0M0=0;P1M1=0;P1M0=0;
P2M1=0;P2M0=0;P3M1=0;P3M0=0;
P4M1=0;P4M0=0;P5M1=0;P5M0=0;
}



回复

使用道具 举报

ID:624769 发表于 2021-12-1 16:42 | 显示全部楼层
我记得, AT89x51.h 里面并没有定义 P0M0 这些寄存器吧……
但是 你 GPIO.h 用到了 P0M0 这些, 你GPIO.h 自己也没有定义这些…… 那么就会报错了。

所以,你用的什么单片机?
那么还是请用这个单片机指定的 头文件。不然类似的报错会有很多。
回复

使用道具 举报

ID:883031 发表于 2021-12-1 16:45 | 显示全部楼层
89系列单单片机应该是不支持端口模式配置的。你可以看一下89的头文件。
回复

使用道具 举报

ID:985634 发表于 2021-12-1 20:16 | 显示全部楼层
应该是你配置的问题,你可以看你的头文件,并且换配置
回复

使用道具 举报

ID:57657 发表于 2021-12-2 07:19 | 显示全部楼层
AT89 属于80年代的老型号,没有 PxMx 这类寄存器,都是STC后来加进去的。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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