相关商品

  • 基于Arduino 互动电子套件 23节经典实验 UNO R3新版
  • 爱上Arduino 互动入门套件 中文教材配套 教学视频 UNO R3
  • 基于Arduino 互动电子积木套件 arduino UNO R3开发实战 爱上制作
  • Arduino Prototype Shield 原型扩展板 万用板(含Mini面包板)
  • Arduino MEGA ProtoShield V3 原型扩展板 万用板(含面包板)
  • Arduino Leonardo 莱昂纳多控制器 原装进口
  • Arduino RP5履带机器人 寻线避障DIY套件 电子竞赛 机器人教学
  • Arduino 继电器扩展板 Relay Shieldv2.0 支持xbee控制 4路继电器
  • 1602液晶扩展板 v2.0 Arduino LCD 1602 Keypad Shield
  • Arduino 4WD移动机器人平台 铝合金小车(金色) 电子大赛
  • 奥松机器人 MQ2气体传感器 Arduino烟雾甲烷气体检测 正品保证
  • Arduino传感器 HMC5883L 数字电子罗盘 智能小车 机器人配件
  • Arduino UNO R3 控制器 ATmega328P-PU+ATmega16U2 arduino 原装进口
  • 原装进口 Arduino Mega ADK 2560 开发板 Arduino uno R3 控制器
  • 奥松机器人 Arduino UNO R3 V5.0传感器扩展板 电子积木 正品保障 传感器套件专配 单片机开发
  • Arduino MEGA Sensor Shield V2.0 专用传感器扩展板 电子积木
  • Arduino 红外无线遥控套件 红外遥控 红外解码 电子积木
  • Arduino 水位传感器 液面高度 Water Sensor 水分 液滴 水深检测
  • 奥松机器人 4WD铝合金移动小车 Arduino开发平台 编程玩具 新品
  • Arduino 越野履带机器人 路虎5 Rover小车 2驱2码盘测速 电子大赛
  • Arduino 越野履带机器人 路虎5 Rover小车 4驱4码盘测速 电子大赛
  • 8段数码管 红色高亮共阴 爱上Arduino 互动入门套件 电子元件
  • 优质电解电容 25v/220uf Arduino实验元件 电脑主板 高压板高频
  • 单向倾角开关 倾角传感器 Arduino 实验常用 电子元件
  • LED 发光二极管 5mm 高亮 红色 (5只) Arduino互动电子元件
  • 干簧管 俄罗斯进口 爱上Arduino 互动入门套件 电子元件 磁控开关
  • Arduino 小车 2WD套件D版 UNO R3套件 寻线避障套件 电子竞赛
  • IRF520 晶体管 爱上Arduino 互动入门套件 电子元件 全新原装
  • 继电器 3A/250VAC 3A/30VDC Arduino 实验常用电子元件
  • Arduino ATtiny2313-20PU USBtinyISP v3.0 下载器专用 芯片
  • Arduino 机器人专用轮子 直径65mm 1:10 智能车轮 六边形孔 车轮
  • Arduino 传感器连接线公头 引脚排针 间距2.54 一排40pin
  • Arduino 大按钮模块(红色) 电子积木 碰撞开关 机器人配件
  • Arduino 传感器连接线公头 间距2.54 引脚排针(加长)
  • 爱上 Arduino RGB Monome 全彩LED 三色led 多色 RGB共阴 LED灯
  • Arduino M3×8+6 铜柱 10套装
    Arduino M3×8+6 铜柱 10套装 本店售价:¥3.50
  • Arduino从基础到实践 Beginning Arduino 从零开始 初学提高
  • Arduino技术内幕 Arduino Internals 语法精通 实战读本
  • 4WD机器人调试助手v2.0软件 智能小车 Arduino 履带 WiFi蓝牙小车
  • 当前位置: 首页 > 应用教程 > 【创客学堂】NO pinMode!教你使用bitSet函数提高程序空间利用率

    【创客学堂】NO pinMode!教你使用bitSet函数提高程序空间利用率

    编辑:Peter2013-08-01 130708050@qq.com 浏览次数:1577

        使用Arduino我们可以做出很炫的作品,因为在Arduino语法中,枯燥的底层代码都被封装成了一个个的现成的函数,我们只需要调用即可。可是,小编认为我们还真的需要了解一些底层的知识,因为这样可以将我们编写的语句被有效的转换为机器码,提高Arduino控制器有限的程序空间的利用率。在这里小编通过本文简单的介绍一下如何有效的使用Arduino语句,我们先通过下面两幅图片比较一下,

     

    使用pinMode函数编译后代码的大小为1116字节

     

     

      图一 使用pinMode函数编译后代码的大小为1116字节

     

    使用bitSet函数编译后代码的大小982字节

     

    图二 使用bitSet函数编译后代码的大小982字节

     

        通过上面的两幅图片我们可以清楚的看到,使用bitSet函数代替pinMode函数之后——代码变少了,整整少了134字节——这仅仅是一条语句的替换,如果是5条、10条的语句替换,那么节省量就可观了。

        究其原因只是因为在Arduino语法中,bitSet函数仅是一个宏替换语句,而不像pinMode函数大篇幅的函数定义(有兴趣的读者可以自己查阅pinMode函数的原型)。想要使用bitSet函数做到这一点,我们还需要了解一下硬件的知识:在AtmelAVR中,每个I/O口的状态是由对应的数据方向寄存器里的“位”配置的,以Arduino UNO为例,数字引脚13对应的就是PB5(即DDRB,5);而在Arduino Mega 2560中,相对应就是PB7(DDRB,7)。所以,如果我们想改变某个I/O口的输入输出状态,只需要改变与其对应的寄存器里的“位”即可。

       还有就是给大家介绍关于一本学习Arduino的书和博客供大家学习参考。

     

    爱上Arduino:

    http://www.alsrobot.cn/goods-193.html

     

    Arduino电子设计实战指南零基础篇:

    http://www.alsrobot.cn/goods-394.html

     

    Arduino从基础到实践BeginningArduino从零开始:

    http://www.alsrobot.cn/goods-393.html

     

    Arduino爱好者Rebecca的博客:

    http://blog.sina.com.cn/arduino

    • 用户评价

    暂时还没有任何用户评论

    总计 0 个记录,共 1 页。 第一页 上一页 下一页 最末页
    用户名: 匿名用户
    E-mail:
    评价等级:
    评论内容:
    验证码:
    captcha

    Hi,大家好,我是小奥!

    欢迎来到奥松机器人的世界!

    需要咨询服务请点小奥哦!

    • 销售咨询: 销售咨询
    • 销售咨询: 销售咨询
    • 技术支持: 技术支持
    • 咨询电话:
      0451-86628691
    Top