Michele Bavaro
/
atlas
max2769tw.cpp@0:be1765e9885e, 2011-01-25 (annotated)
- Committer:
- michelebavaro
- Date:
- Tue Jan 25 11:26:16 2011 +0000
- Revision:
- 0:be1765e9885e
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
michelebavaro | 0:be1765e9885e | 1 | #include "mbed.h" |
michelebavaro | 0:be1765e9885e | 2 | #include "max2769tw.h" |
michelebavaro | 0:be1765e9885e | 3 | |
michelebavaro | 0:be1765e9885e | 4 | MAX2769TW::MAX2769TW(PinName _sData, PinName _sClk, PinName _sCs) : |
michelebavaro | 0:be1765e9885e | 5 | sData(_sData), sClk(_sClk), sCs(_sCs) |
michelebavaro | 0:be1765e9885e | 6 | { |
michelebavaro | 0:be1765e9885e | 7 | sData = 0; |
michelebavaro | 0:be1765e9885e | 8 | sClk = 0; |
michelebavaro | 0:be1765e9885e | 9 | sCs = 1; |
michelebavaro | 0:be1765e9885e | 10 | } |
michelebavaro | 0:be1765e9885e | 11 | |
michelebavaro | 0:be1765e9885e | 12 | MAX2769TW::~MAX2769TW() { |
michelebavaro | 0:be1765e9885e | 13 | // do nothing |
michelebavaro | 0:be1765e9885e | 14 | } |
michelebavaro | 0:be1765e9885e | 15 | |
michelebavaro | 0:be1765e9885e | 16 | void MAX2769TW::SendReg(uint32_t _uiReg) { |
michelebavaro | 0:be1765e9885e | 17 | int k; |
michelebavaro | 0:be1765e9885e | 18 | |
michelebavaro | 0:be1765e9885e | 19 | wait_us(3); sClk = 1; |
michelebavaro | 0:be1765e9885e | 20 | wait_us(3); sClk = 0; |
michelebavaro | 0:be1765e9885e | 21 | wait_us(3); sCs = 0; |
michelebavaro | 0:be1765e9885e | 22 | for (k=31; k>=0; k--) { |
michelebavaro | 0:be1765e9885e | 23 | if ((_uiReg >> k) & 0x1) { |
michelebavaro | 0:be1765e9885e | 24 | sData = 1; |
michelebavaro | 0:be1765e9885e | 25 | } else { |
michelebavaro | 0:be1765e9885e | 26 | sData = 0; |
michelebavaro | 0:be1765e9885e | 27 | } |
michelebavaro | 0:be1765e9885e | 28 | wait_us(3); sClk = 1; |
michelebavaro | 0:be1765e9885e | 29 | wait_us(3); sClk = 0; |
michelebavaro | 0:be1765e9885e | 30 | } |
michelebavaro | 0:be1765e9885e | 31 | wait_us(3); sCs = 1; |
michelebavaro | 0:be1765e9885e | 32 | wait_us(3); sClk = 1; |
michelebavaro | 0:be1765e9885e | 33 | wait_us(3); sClk = 0; |
michelebavaro | 0:be1765e9885e | 34 | sData = 0; |
michelebavaro | 0:be1765e9885e | 35 | } |