找回密码
 立即注册

QQ登录

只需一步,快速开始

帖子
查看: 5729|回复: 8
打印 上一主题 下一主题
收起左侧

单片机寄存器sfr P0M0=0x94是干什么的?

[复制链接]
跳转到指定楼层
楼主
ID:511168 发表于 2019-4-19 07:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
sfr P0M0=0x94是干什么的? 那对于电路:单片机(STC8A8K64S4A12)控制三极管基极,三极管控制恒流源,恒流源控制LED。为什么要在程序前加sfr P0M0=0x94,且相对应的引脚给高电平,才能使LED正常亮?

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

举报

来自 4#
ID:509408 发表于 2019-4-19 11:09 | 只看该作者
SFR是特殊寄存器,只能直接地址访问。意思是把单片机中 0X94这个地址 命名为P0M0. 方便我们用。也不建议你再去更改它,之所以“特殊”因为这个是配合stc数据手册来定义的。stc工程师已经全部做好了。他们比我们更熟悉自己的产品功能。在对应stc芯片头文件中也有详细

一般 P0M0、P0M1 是成对出现的,代表对P0口(P00~P07)输出方式的配置(弱上拉。推挽,高阻抗等等)
类似的还有 P1M1,P1M0 是对P1口输出方式配置 等等以此类推。具体怎样可以查看 数据手册上 的 I/O配置
回复

举报

沙发
ID:285863 发表于 2019-4-19 10:00 | 只看该作者
定义管脚地址 看器件手册 有详细说明
回复

举报

板凳
ID:94031 发表于 2019-4-19 10:06 | 只看该作者
你在程序里用了 P0M0 这个寄存器变量,所以要给编译器说明 P0M0 它的寄存器地址是 0x94 。
回复

举报

5#
ID:185711 发表于 2019-4-19 11:23 | 只看该作者
管脚地址
回复

举报

6#
ID:516269 发表于 2019-4-19 12:34 | 只看该作者
你在程序里用了 P0M0 这个寄存器变量,所以要给编译器说明 P0M0 它的寄存器地址是 0x94 。
回复

举报

7#
ID:23606 发表于 2019-4-19 14:02 | 只看该作者
声明P0M0的地址为 0x94
回复

举报

8#
ID:516544 发表于 2019-4-19 17:13 | 只看该作者
P0WO是寄存器,0X94是16进制的地址
回复

举报

9#
ID:425268 发表于 2019-4-19 21:06 | 只看该作者
寄存器声明
回复

举报

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

本版积分规则

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

Powered by 单片机教程网

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