找回密码
 立即注册

QQ登录

只需一步,快速开始

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

关于对单片机IO口的定义的问题

[复制链接]
跳转到指定楼层
楼主
这两种定义都可以用,哪个正确

51hei图片_20230819140856.png (19.47 KB, 下载次数: 24)

51hei图片_20230819140856.png
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:712097 发表于 2023-8-19 15:16 | 只看该作者
STC官方的头文件已经定义过了 sbit P27        =   P2^7;
所以两种都正确,一般习惯用第2种,sbit CS=P2^7;
回复

使用道具 举报

板凳
ID:883242 发表于 2023-8-19 15:41 | 只看该作者
下面那个正确。
回复

使用道具 举报

地板
ID:1088185 发表于 2023-8-19 18:58 | 只看该作者
两种方式都是正确都可以用
只是用起来有些差别 CS = P2^7, 是可以直接用WATCH显示其值, 用define CS P27 WATCH就不能显示其值。
回复

使用道具 举报

5#
ID:1080935 发表于 2023-8-19 22:58 | 只看该作者
都正确,第一种相当于取代,第二种是定义。第一种实际上已经使用了第二种。
回复

使用道具 举报

6#
ID:467496 发表于 2023-8-20 11:30 | 只看该作者
define属于预处理,等于程序编译前编译器把字符P27全部替换成字符CS,不会在代码运行起作用。正确的应该是sbit CS=P2^7;
回复

使用道具 举报

7#
ID:983193 发表于 2023-8-20 18:54 | 只看该作者
俩者都可以,习惯下面的那种
回复

使用道具 举报

8#
ID:224580 发表于 2023-8-20 21:19 | 只看该作者
很多单片机还是选第二种,
回复

使用道具 举报

9#
ID:123289 发表于 2023-8-21 09:33 | 只看该作者
本帖最后由 yzwzfyz 于 2023-8-23 08:52 编辑

只要平台能将CS解释成【A0H.7】都可以。
因为P27,是特殊寄存器A0H中的第7位。这里你的CS=P27。
回复

使用道具 举报

10#
ID:997263 发表于 2023-8-23 09:36 | 只看该作者
两种都正确, P27在STC的头文件中已经定义过
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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