找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1870|回复: 2
收起左侧

不明白的单片机程序的小问题?为什么写P0=com;就没有错误,而写DataPort=com;就报错?

[复制链接]
ID:511168 发表于 2020-6-3 11:14 | 显示全部楼层 |阅读模式
#include "reg52.h"
#define DataPort P0;
#define com 0x30;

void main(void)
{
        DataPort = com;  //Keil编译不通过
        P0 = com;        //Keil编译通过
        while(1);
}
为什么写P0=com;就没有错误,而写DataPort=com;就报错?
回复

使用道具 举报

ID:142320 发表于 2020-6-3 11:56 | 显示全部楼层
宏定义不能加分号,你加了就相当于P0;=COM;当然要报错
回复

使用道具 举报

ID:142320 发表于 2020-6-3 11:57 | 显示全部楼层
宏定义不能加分号,初学者常犯的错误,加了就相当于DataPort = com;   // P0; = com; 当然报错
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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