共2条
1/1 1 跳转至页
问
老耿先生:
我初始化B口为
DDRB = 0x06;/*初始B口DDB7~DDB3,DDB0为输入,DDB2,3为输出
PORTB = 0x06;
我想读B口PINB3是高电平,还是低电平?如下:
if((PINB&0x08)==0x08)
{
。。。。。。
}
这种写法对不对呀?我用万用表测该PINB3是低电平,但无论是if((PINB&0x08)==0x08),还是if((PINB&0x08)==0x00)都成立,为什么呀?希望给写意见?谢谢!
FLYFLY 答 1: 你初始化为输出,当然不行了。应该初始化为输入。 答 2: 你的初始化有问题DDRB=0x06,PB1和PB2输出,其他输入
输入上拉应该为:PORTB=0b11111001(=0xf9)!
答 3: 对,为输入就对了
我初始化B口为
DDRB = 0x06;/*初始B口DDB7~DDB3,DDB0为输入,DDB2,3为输出
PORTB = 0x06;
我想读B口PINB3是高电平,还是低电平?如下:
if((PINB&0x08)==0x08)
{
。。。。。。
}
这种写法对不对呀?我用万用表测该PINB3是低电平,但无论是if((PINB&0x08)==0x08),还是if((PINB&0x08)==0x00)都成立,为什么呀?希望给写意见?谢谢!
FLYFLY 答 1: 你初始化为输出,当然不行了。应该初始化为输入。 答 2: 你的初始化有问题DDRB=0x06,PB1和PB2输出,其他输入
输入上拉应该为:PORTB=0b11111001(=0xf9)!
答 3: 对,为输入就对了
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |