按钮控制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对象。
清晰的注册一个