• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

arduino uno开发板如何一次控制8个io口

ce5d2c894109707a 2018-06-25 浏览量:3705
由于arduino控制一个io口需要写一行代码,有没有什么好的办法就像51单片机的P0口一样,可以一次赋值,控制8个io口这样快一些,在arduino ide里编程
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 理论上,如果你用代码编程(而不是用积木形式),且这8个io都是数字位,则完全可以自行封装一个置位函数,实现一次调用控制8个io啊。
    • 发布于 2018-06-25
    • 举报
    • 评论 1
    • 0
    • 0
ce5d2c894109707a 回复了 xdsnet:非常感谢,你帮了我大忙 回复

其他答案 数量:9
  • 如果是使用arduno那么,只能是一个一个的来控制,这些函数都是在底层进行封装好的了,不可以修改的,

    当然可以不使用arduino而直接使用单片机进行控制就可以了

    • 发布于2018-06-25
    • 举报
    • 评论 0
    • 0
    • 0

  • uno是atmega328属于AVR单片机,使用AVR单片机的操作方式就可以了:

    DDRB = 0b11110000; 
    PORTB = 0b11001100; 
    while (1) //主循环
     { 
    abc = PINB; //读
    }

    • 发布于2018-06-25
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个可以封装一个函数,这个函数的功能就是把八个IO置位,这样的话每次需要置位八个IO的话直接调用这个函数就可以了
    • 发布于2018-06-25
    • 举报
    • 评论 0
    • 0
    • 0

  • 做不到一次控制8IO avr的不是位控制 不像51可以位操作赋值 

    如果要达到这种这种效果可以自己用循环赋值 封装到函数里

    • 发布于2018-06-25
    • 举报
    • 评论 0
    • 0
    • 0

  • 你可以修改底层的驱动,添加一个这样的函数。默认情况下是没有这样的函数的
    • 发布于2018-06-26
    • 举报
    • 评论 0
    • 0
    • 0

  • ArduinoIDE本身就只有控制一个IO的函数,要同时控制八个IO需要操作单片机的寄存器,ArduinoIDE是做不到的。

    • 发布于2018-06-29
    • 举报
    • 评论 0
    • 0
    • 0

  • 这种一行行代码的做不到一次操作八个IO,由于Arduino IDE无法使用单独的寄存器操作,因此无法一次性给寄存器赋值
    • 发布于2018-06-29
    • 举报
    • 评论 0
    • 0
    • 0

  • 把你的操作IO指令封装成一个函数,调用这个函数的时候就可以直接操作八个IO了
    • 发布于2018-07-19
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

arduino uno开发板如何一次控制8个io口