vvv
Dependents: Enrico_newproject_copy
CD74HC165E.cpp@0:5ec20ee3f455, 2018-03-07 (annotated)
- Committer:
- billycorgan123
- Date:
- Wed Mar 07 21:11:16 2018 +0000
- Revision:
- 0:5ec20ee3f455
nuova update 7 marzo 2018;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
billycorgan123 | 0:5ec20ee3f455 | 1 | #include "CD74HC165E.h" |
billycorgan123 | 0:5ec20ee3f455 | 2 | |
billycorgan123 | 0:5ec20ee3f455 | 3 | #define HIGH 1 |
billycorgan123 | 0:5ec20ee3f455 | 4 | #define LOW 0 |
billycorgan123 | 0:5ec20ee3f455 | 5 | |
billycorgan123 | 0:5ec20ee3f455 | 6 | int WaitingTime=1; |
billycorgan123 | 0:5ec20ee3f455 | 7 | //CD74HC165E |
billycorgan123 | 0:5ec20ee3f455 | 8 | //PL pin 1 |
billycorgan123 | 0:5ec20ee3f455 | 9 | //CP pin 2 |
billycorgan123 | 0:5ec20ee3f455 | 10 | //CE pin 15 |
billycorgan123 | 0:5ec20ee3f455 | 11 | //Q7 pin 9 |
billycorgan123 | 0:5ec20ee3f455 | 12 | |
billycorgan123 | 0:5ec20ee3f455 | 13 | |
billycorgan123 | 0:5ec20ee3f455 | 14 | |
billycorgan123 | 0:5ec20ee3f455 | 15 | CD74HC165E::CD74HC165E (PinName PL, PinName CP, PinName Q7) : _PL(PL), _CP(CP), _Q7(Q7) |
billycorgan123 | 0:5ec20ee3f455 | 16 | { |
billycorgan123 | 0:5ec20ee3f455 | 17 | _PL = LOW; |
billycorgan123 | 0:5ec20ee3f455 | 18 | _CP = LOW; |
billycorgan123 | 0:5ec20ee3f455 | 19 | //_Q7 no perchè è una uscita e non ingresso |
billycorgan123 | 0:5ec20ee3f455 | 20 | } |
billycorgan123 | 0:5ec20ee3f455 | 21 | |
billycorgan123 | 0:5ec20ee3f455 | 22 | bool* CD74HC165E::Read() { |
billycorgan123 | 0:5ec20ee3f455 | 23 | //achieving data D0-D7 |
billycorgan123 | 0:5ec20ee3f455 | 24 | _CP = LOW; |
billycorgan123 | 0:5ec20ee3f455 | 25 | wait_us(WaitingTime); |
billycorgan123 | 0:5ec20ee3f455 | 26 | _PL = LOW; |
billycorgan123 | 0:5ec20ee3f455 | 27 | wait_us(WaitingTime*5); // 5 microseconds to be sure to achieve all data D0-D7 |
billycorgan123 | 0:5ec20ee3f455 | 28 | _PL = HIGH; |
billycorgan123 | 0:5ec20ee3f455 | 29 | |
billycorgan123 | 0:5ec20ee3f455 | 30 | //store data in array |
billycorgan123 | 0:5ec20ee3f455 | 31 | static bool myDataIn[8] = {1,0,1,0,1,0,1,0}; |
billycorgan123 | 0:5ec20ee3f455 | 32 | wait_us(WaitingTime); |
billycorgan123 | 0:5ec20ee3f455 | 33 | for (int i=7; i>=0; i--) { |
billycorgan123 | 0:5ec20ee3f455 | 34 | _CP = LOW; |
billycorgan123 | 0:5ec20ee3f455 | 35 | wait_us(WaitingTime); |
billycorgan123 | 0:5ec20ee3f455 | 36 | myDataIn[i] = _Q7; |
billycorgan123 | 0:5ec20ee3f455 | 37 | _CP = HIGH; |
billycorgan123 | 0:5ec20ee3f455 | 38 | wait_us(WaitingTime); |
billycorgan123 | 0:5ec20ee3f455 | 39 | } |
billycorgan123 | 0:5ec20ee3f455 | 40 | |
billycorgan123 | 0:5ec20ee3f455 | 41 | return myDataIn; |
billycorgan123 | 0:5ec20ee3f455 | 42 | } |