80C51F020 P口使用问题求助

2019-03-24 17:50发布

80C51F020共有8个8位的I/O端口,欲使用P4.3 P4.4控制两个LED,软件编写后编译报错。
头文件:
#include <c8051f020.h>
#include <string.h>
#include <intrins.h>
#include <math.h>

定义代码为:
sbit GREEN = P4^3;
sbit YELLOW = P4^4;

报错:'P4': invalid base address  

若改为P0,1,2,3则不报错,P4 5 6 7则报错,求助啊求助!!!!

此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
dingzy_2002
1楼-- · 2019-03-24 20:45
 精彩回答 2  元偷偷看……
小呸
2楼-- · 2019-03-24 23:26
dingzy_2002 发表于 2015-11-10 16:01
很久不用51了,我猜想可能是P4~P7口不是标准的51寄存器定义,所以设定P4^x编译器会报错.另外也有可能是KEIL ...

谢谢回复,很及时呀~~刚找到错误,原来P0-3是可以位寻址或者字节寻址的,P4-7是只能进行字节寻址的,所以这样位寻址就报错了~~谢谢~~
huaiqiao
3楼-- · 2019-03-25 03:16
小呸 发表于 2015-11-10 17:15
谢谢回复,很及时呀~~刚找到错误,原来P0-3是可以位寻址或者字节寻址的,P4-7是只能进行字节寻址的,所以 ...

您这个单片机应该和stc89c51和at89s52这些的差不多,stc89c51和at89s52这些都没有P4口的。

一周热门 更多>