加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C – AVR – 简单的PORTB,DDRB,PINB说明

发布时间:2020-12-16 05:47:36 所属栏目:百科 来源:网络整理
导读:我正在从事学校项目,需要用AVR atmega控制器学习C的基础知识. 我不明白一切如何设置.例如PORTB,PORTD,DDRB; DDRD,PINB,PIND和类似的东西.而且我不知道如何使用if语句,while循环等. 有人可以给我一个简短的解释吗? 我有几行代码行… DDRB = 0b00000011; // I
我正在从事学校项目,需要用AVR atmega控制器学习C的基础知识.

我不明白一切如何设置.例如PORTB,PORTD,DDRB; DDRD,PINB,PIND和类似的东西.而且我不知道如何使用if语句,while循环等.

有人可以给我一个简短的解释吗?

我有几行代码行…

DDRB = 0b00000011; // I know that here DDRB is set to input/output

和if语句:

if (PINB & (1 << PINB0)){
    A = true;
}

有人可以解释一下这个“if语句”是如何工作的?为什么PINB& (1

你是说什么是if-condition PINB& (1 > 1为0000 0001
> 1 <左移后的2号给0000 0100
>按位,0000 0100给出全零0000 0000或0000 0100

3A.如果全部为零,则条件为false(当a中的第三位为零时).
3B.如果按位结果为0000 0100,则条件求值为真(当a中的第三位为1时).

相关文章

  • SQL Server查询 - 用DISTINCT选择COUNT(*)
  • clojure协议的简单说明
  • 框架 - MapReduce的简单说明?
  • c++ typedef和非简单类型说明符
  • c - 显式类型转换和多个简单类型说明符
  • 有人可以提供一个简单的说明,说明如何使用Threading.MemoryBarrier在.Net中实现“全面围栏”
  • ruby-on-rails - 是否有从Phusion Passenger迁移到Unicorn的简单说明?
  • haskell - 简单的例子来说明类别,Monoid和Monad?
点击查看更多相关文章

转载注明原文:C – AVR – 简单的PORTB,PINB说明 - 代码日志

解决方法

你是说什么是if-condition PINB& (1 > 1为0000 0001
> 1 <左移后的2号给0000 0100
>按位,0000 0100给出全零0000 0000或0000 0100

3A.如果全部为零,则条件为false(当a中的第三位为零时).3B.如果按位结果为0000 0100,则条件求值为真(当a中的第三位为1时).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读