Craig Evans
/
ELEC2645_Pong2021
Pong game for ELEC1620 board.
lib/ShiftReg.cpp@3:5746c6833d73, 2021-03-11 (annotated)
- Committer:
- eencae
- Date:
- Thu Mar 11 14:54:25 2021 +0000
- Revision:
- 3:5746c6833d73
- Parent:
- 1:d63a63f0d397
Added on LEDs and 7-seg for lives, bouncing off paddle and walls.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
eencae | 1:d63a63f0d397 | 1 | #include "ShiftReg.h" |
eencae | 1:d63a63f0d397 | 2 | |
eencae | 1:d63a63f0d397 | 3 | ShiftReg::ShiftReg() |
eencae | 1:d63a63f0d397 | 4 | { |
eencae | 1:d63a63f0d397 | 5 | clkout = new DigitalOut(p7); |
eencae | 1:d63a63f0d397 | 6 | dataout = new DigitalOut(p5); |
eencae | 1:d63a63f0d397 | 7 | latchout = new DigitalOut(p30); |
eencae | 1:d63a63f0d397 | 8 | } |
eencae | 1:d63a63f0d397 | 9 | |
eencae | 1:d63a63f0d397 | 10 | ShiftReg::~ShiftReg() |
eencae | 1:d63a63f0d397 | 11 | { |
eencae | 1:d63a63f0d397 | 12 | delete clkout; |
eencae | 1:d63a63f0d397 | 13 | delete dataout; |
eencae | 1:d63a63f0d397 | 14 | delete latchout; |
eencae | 1:d63a63f0d397 | 15 | } |
eencae | 1:d63a63f0d397 | 16 | |
eencae | 1:d63a63f0d397 | 17 | void ShiftReg::write(int data) |
eencae | 1:d63a63f0d397 | 18 | { |
eencae | 1:d63a63f0d397 | 19 | *latchout = 0; |
eencae | 1:d63a63f0d397 | 20 | for (int i = 7; i >= 0; i--) { |
eencae | 1:d63a63f0d397 | 21 | *clkout = 0; |
eencae | 1:d63a63f0d397 | 22 | *dataout = (data & (1 << i)) != 0; |
eencae | 1:d63a63f0d397 | 23 | *clkout = 1; |
eencae | 1:d63a63f0d397 | 24 | } |
eencae | 1:d63a63f0d397 | 25 | *latchout = 1; |
eencae | 1:d63a63f0d397 | 26 | } |