电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>将您的Arduino板变成16位IO端口

将您的Arduino板变成16位IO端口

2022-12-07 | zip | 0.15 MB | 次下载 | 免费

资料介绍

描述

用于 16 位 IO 端口Arduino

您的 Arduino 板变成 16 位 IO 端口

标题听起来很有趣?或者没有?

你们都会想知道,Arduino UNO 或 NANO(或其他类似的 arduino 板)有 ATMega328 板载微控制器,这是一个 8 位设备。那么它如何产生16位输出或接受16位输入呢?

我们也都知道,arduino使用“digitalWrite()”函数给出数字输出,通过“ digitalRead () ”函数获取数字输入但是使用这两个功能,它可以从任何一个引脚提供输出或获取输入——意味着一次它只能向单个引脚提供输出或从单个引脚获取输入。那么它如何同时从16个管脚输出或接受输入呢?

如果我们可以将 16 个 Arduino 板引脚组合(组合)在一起会怎么样?意味着,通过板载 8 位微控制器,arduino 可以提供 16 位输出和/或可以获得 16 位输入。

现在我觉得这听起来很有趣?

因此,在这里我介绍了 arduino 的 16 位 IO 端口(输入输出端口)库。使用这个库,可以将 16 位数据直接发送到配置为组合 16 位端口的任何 arduino 板引脚,或者可以从这些配置的引脚获得 16 位输入。该库将 arduino 的任意 16 个引脚组合在一起,作为 16 位 IO 端口。只需选择任意 16 个 arduino 引脚组合为 16 位端口,并将其数据方向配置为输入或输出。数据方向由输出字符“O”或输入字符“I”设置。

该库只有 5 个功能。有两个将创建端口对象的构造函数,一个将 16 位数字输出发送到端口引脚的函数,一个从端口引脚获取 16 位数字输入的函数和一个更改/设置端口 IO 方向的附加函数. 这里简要解释了所有 5 个函数,然后给出了一些示例和解释。

所以只需使用这个库来连接任何 16 位设备,如 ADCDAC、MUX,或任何数字设备获得 16 位输入或提供 16 位输出

1. IO_Port_16bit(int pin1, intpin2, int pin3, int pin4, int pin5, int pin6, int pin7, int pin8, int pin9, intpin10, int pin11, int pin12, int pin13, int pin14, int pin15, int pin16,字符目录)

这是构造函数。它将创建此类的对象,因此它将通过组合不同的 arduino 引脚来创建一个或多个 16 位端口。必须指定 16 个不同的 arduino 引脚组合为端口以及数据方向作为输入或输出 - 意味着端口既可以作为输入也可以作为输出。此构造函数中的最后一个参数 dir 将端口定义为输入或输出。如果 dir='O' 表示端口作为输出,如果 dir='I',端口作为输入。同一个端口不能同时或交替作为输入和输出。如果未选择数据方向,它也会指示错误

2. IO_Port_16bit(int pin1, intpin2, int pin3, int pin4, int pin5, int pin6, int pin7, int pin8, int pin9, intpin10, int pin11, int pin12, int pin13, int pin14, int pin15, int pin16)

这是另一个构造函数。它还将创建此类的对象,因此它将通过组合不同的 arduino 引脚来创建一个或多个 16 位端口。必须指定 16 个不同的 arduino 引脚组合为端口。但它没有指定数据方向是输入还是输出。使用此构造函数创建端口对象后,必须使用set_IO_direction函数设置端口方向。所以这个构造函数允许程序员使用这个构造函数在运行时改变端口数据方向,同一个端口可以作为输入或输出交替工作(但不是同时)

3. set_IO_direction(字符目录)

该函数指定端口的输入/输出方向。它有一个字符参数,可以是“I”表示端口作为输入或“O”表示端口作为输出。如果未选择数据方向,则在arduino的串口监视器上显示错误

4. send_16bit_data(unsigned int byt)

此函数将 16 位数据发送到指定的引脚。只需将 int 数据(必须 < 65535)作为直接提供给 16 个不同引脚的参数。如果数据 >65535,它会在 arduino 的串口监视器上显示错误。

5. get_16bit_data(无效)

该函数从指定的引脚获取 16 位数据。它通过读取16个不同引脚的状态返回16位unsigned int数据

1:取16位输入并显示在串口监视器上

#include

IO_Port_16bit my16bitport(2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17);

诠释我;

长输入双字节;

无效设置()

{

// 将你的设置代码放在这里,运行一次:

my16bitport.set_IO_direction('I');

序列号.begin(9600);

}

无效循环()

{

input_double_byte =my16bitport.get_16bit_data();

Serial.print("输入数据:");

Serial.println(input_double_byte);

延迟(1000);

}

范例二:16个LED追光程序

#include

IO_Port_16bitmy16bitport(2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17);

无效设置()

{

// 将端口方向声明为指定“O”的输出

my16bitport.set_IO_direction('O');

}

无效循环()

{

无符号整数我;

对于(i=1;i<65535;i*=2)

{

my16bitport.send_16bit_data(i); //发送数据为 2, 4, 8, 16

延迟(200);// 32,..,..,...65534

}

}


下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费