找回密码
 立即注册

QQ登录

只需一步,快速开始

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

AVR的C中 PORTD |= (1 << PD5) 是怎么理解的

[复制链接]
跳转到指定楼层
楼主
ID:45788 发表于 2012-10-25 17:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

刚学AVR C

请问 AVR的C中  PORTD |= (1 << PD5)  是怎么理解的,多谢!

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

使用道具 举报

沙发
ID:46242 发表于 2012-11-9 13:15 | 只看该作者
将PD5端口置1,在iom16v.h中有define PD5 5的定义
回复

使用道具 举报

板凳
ID:48213 发表于 2013-2-18 14:16 | 只看该作者

PORTD的第5位置1,其他位不变

[此贴子已经被作者于2013-2-18 14:17:17编辑过]
回复

使用道具 举报

地板
ID:28415 发表于 2013-3-2 09:30 | 只看该作者

在iom16v.h中有define PD5 5的定义;

PORTD |= (1 << PD5)语句,首先执行括号内的程序 (1 << PD5),即将0000 0001数字向左循环5个位,最低位补零,即变成0010 0000

将0010 0000 该数与PORTD进行与操作,因为AVR上电后PORTX=0x00,所以相与后,PORTD就变成了0x20;

回复

使用道具 举报

5#
ID:56131 发表于 2013-10-20 10:51 | 只看该作者
PD5就是D口的第5位,意思就是D口的第5位置1
回复

使用道具 举报

6#
ID:27127 发表于 2013-12-2 21:33 | 只看该作者
PD5好像应该是第6位吧。
回复

使用道具 举报

7#
ID:55042 发表于 2013-12-11 22:18 | 只看该作者
PD5置为1
回复

使用道具 举报

8#
ID:78178 发表于 2015-5-11 06:43 | 只看该作者
mxlslf 发表于 2013-3-2 09:30
在iom16v.h中有define PD5 5的定义;PORTD |= (1 &lt;&lt; PD5)语句,首先执行括号内的程序 (1 &lt;&lt; PD5), ...

将0010 0000 该数与PORTD进行与操作,因为AVR上电后PORTX=0x00,所以相与后,PORTD就变成了0x20;

这句话中的“与”应该为“或”吧?0x20结果应该没错
回复

使用道具 举报

9#
ID:79991 发表于 2015-5-14 17:20 来自手机 | 只看该作者
pd5置高电平
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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