lab5
Dependencies: mbed
main.cpp@0:45c3dda8ec79, 2017-11-24 (annotated)
- Committer:
- csggreen
- Date:
- Fri Nov 24 04:12:38 2017 +0000
- Revision:
- 0:45c3dda8ec79
lab5
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
csggreen | 0:45c3dda8ec79 | 1 | |
csggreen | 0:45c3dda8ec79 | 2 | #include "mbed.h" |
csggreen | 0:45c3dda8ec79 | 3 | #include "MCP4922.h" |
csggreen | 0:45c3dda8ec79 | 4 | |
csggreen | 0:45c3dda8ec79 | 5 | MCP4922 MCP(SPI_MOSI, SPI_SCK,SPI_CS); // MOSI, SCLK, CS |
csggreen | 0:45c3dda8ec79 | 6 | |
csggreen | 0:45c3dda8ec79 | 7 | |
csggreen | 0:45c3dda8ec79 | 8 | /**** Main Function ***/ |
csggreen | 0:45c3dda8ec79 | 9 | int main(void) |
csggreen | 0:45c3dda8ec79 | 10 | { |
csggreen | 0:45c3dda8ec79 | 11 | MCP.frequency(1000000); |
csggreen | 0:45c3dda8ec79 | 12 | int gs = 0; |
csggreen | 0:45c3dda8ec79 | 13 | int i = 0; |
csggreen | 0:45c3dda8ec79 | 14 | uint8_t state1=0; |
csggreen | 0:45c3dda8ec79 | 15 | uint8_t state2=0; |
csggreen | 0:45c3dda8ec79 | 16 | |
csggreen | 0:45c3dda8ec79 | 17 | while(1) { |
csggreen | 0:45c3dda8ec79 | 18 | |
csggreen | 0:45c3dda8ec79 | 19 | if (gs==0){ |
csggreen | 0:45c3dda8ec79 | 20 | if(i <= 745) { |
csggreen | 0:45c3dda8ec79 | 21 | i++; |
csggreen | 0:45c3dda8ec79 | 22 | |
csggreen | 0:45c3dda8ec79 | 23 | } |
csggreen | 0:45c3dda8ec79 | 24 | else { |
csggreen | 0:45c3dda8ec79 | 25 | i=0; |
csggreen | 0:45c3dda8ec79 | 26 | state1 = ~state1; |
csggreen | 0:45c3dda8ec79 | 27 | } |
csggreen | 0:45c3dda8ec79 | 28 | |
csggreen | 0:45c3dda8ec79 | 29 | if(state1 ==0) { |
csggreen | 0:45c3dda8ec79 | 30 | MCP.writeA(i); |
csggreen | 0:45c3dda8ec79 | 31 | } |
csggreen | 0:45c3dda8ec79 | 32 | else { |
csggreen | 0:45c3dda8ec79 | 33 | MCP.writeA(745-i); |
csggreen | 0:45c3dda8ec79 | 34 | if(745-i==0){ |
csggreen | 0:45c3dda8ec79 | 35 | gs=1; |
csggreen | 0:45c3dda8ec79 | 36 | state1=0; |
csggreen | 0:45c3dda8ec79 | 37 | i=0; |
csggreen | 0:45c3dda8ec79 | 38 | } |
csggreen | 0:45c3dda8ec79 | 39 | } |
csggreen | 0:45c3dda8ec79 | 40 | wait_us(1); |
csggreen | 0:45c3dda8ec79 | 41 | } |
csggreen | 0:45c3dda8ec79 | 42 | if(gs==1){ |
csggreen | 0:45c3dda8ec79 | 43 | if(i<=745){ |
csggreen | 0:45c3dda8ec79 | 44 | i++; |
csggreen | 0:45c3dda8ec79 | 45 | } |
csggreen | 0:45c3dda8ec79 | 46 | else { |
csggreen | 0:45c3dda8ec79 | 47 | i=0; |
csggreen | 0:45c3dda8ec79 | 48 | state2 = ~state2; |
csggreen | 0:45c3dda8ec79 | 49 | } |
csggreen | 0:45c3dda8ec79 | 50 | if(state2 ==0) { |
csggreen | 0:45c3dda8ec79 | 51 | MCP.writeA(1490-i); |
csggreen | 0:45c3dda8ec79 | 52 | } |
csggreen | 0:45c3dda8ec79 | 53 | else { |
csggreen | 0:45c3dda8ec79 | 54 | MCP.writeA(i+745); |
csggreen | 0:45c3dda8ec79 | 55 | if(i==746){ |
csggreen | 0:45c3dda8ec79 | 56 | gs=0; |
csggreen | 0:45c3dda8ec79 | 57 | state2=0; |
csggreen | 0:45c3dda8ec79 | 58 | i=0; |
csggreen | 0:45c3dda8ec79 | 59 | } |
csggreen | 0:45c3dda8ec79 | 60 | } |
csggreen | 0:45c3dda8ec79 | 61 | wait_us(1); |
csggreen | 0:45c3dda8ec79 | 62 | } |
csggreen | 0:45c3dda8ec79 | 63 | } |
csggreen | 0:45c3dda8ec79 | 64 | |
csggreen | 0:45c3dda8ec79 | 65 | } |