主要内容

按钮控制74 hc165移位寄存器

这个例子展示了如何使用MATLAB®支持包Arduino®硬件收集大量的按钮状态74金宝app hc165 8位parallel-in-serial-out移位寄存器。这个示例使用四个按钮。

硬件需求

  • Arduino电路板

  • 四个按钮

  • 74年hc165 8位parallel-in-serial-out移位寄存器

  • 四个10 k欧姆电阻

  • 案板和电线

硬件设置

连接按钮74 hc165移位寄存器Arduino硬件:

  • 连接Vcc销74 hc165 5 v Arduino的硬件上销。

  • 接地连接销74 hc165接地Arduino的硬件上销。

  • 连接Q7销74 hc165数字销11 Arduino硬件上。

  • CP 74 hc165销连接到数字销8 Arduino硬件上。

  • PL 74 hc165销连接到数字销9 Arduino硬件上。

  • 连接CE销74 hc165数字销10 Arduino硬件上。

  • 一个按钮连接到销D0, D4 D5和D7 74 hc165下拉电阻器接地如下所示。

  • 连接销D1、D2、D3和D6 74 hc165接地销Arduino硬件。

创建移位寄存器对象

创建一个arduino对象,包括ShiftRegister库。

一个= arduino (“COM4为”,“Uno”,“库”,“ShiftRegister”)
更新服务器代码Uno (COM4为)。这可能需要几分钟。
= arduino的属性:端口:‘COM4为板:“Uno”AvailablePins: {‘D2-D13’,‘A0-A5} AvailableDigitalPins: {‘D2-D13’,‘A0-A5} AvailablePWMPins: {‘D3’,‘D5-D6’,‘D9-D11} AvailableAnalogPins: {“A0-A5”} AvailableI2CBusIDs:[0]库:{“ShiftRegister”}

创建移位寄存器对象,指定数据连接销,销,负载销和时钟使销。

dataPin =“这里”;clockPin =D8的;loadPin =“D9”;clockEnablePin =“D10”;= shiftRegister(注册一个,74 hc165,clockPin dataPin loadPin clockEnablePin)
= ShiftRegister注册属性:模型:“74 hc165 DataPin:‘这里’ClockPin:“D8”LoadPin:“D9”ClockEnablePin:“D10”

读按钮状态

监控状态的四个按钮,打印出一条消息如果至少一个按钮被按下,

州=阅读(注册,8);pressedButtons =找到(状态= = 1)1;如果~ isempty (pressedButtons) bitsStr = num2str (pressedButtons,' % d ');disp ([”按钮(s)连接到一点bitsStr,“按”]);结束
按钮(s)连接到一些0 4 5 7

清理

当不再需要连接,清晰的移位寄存器和arduino对象。

清晰的注册一个