![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
Lab5
Dependencies: mbed
main.cpp@0:59a8574b663a, 2017-11-21 (annotated)
- Committer:
- Supermil
- Date:
- Tue Nov 21 16:17:32 2017 +0000
- Revision:
- 0:59a8574b663a
lab6 MCP4922;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Supermil | 0:59a8574b663a | 1 | |
Supermil | 0:59a8574b663a | 2 | #include "mbed.h" |
Supermil | 0:59a8574b663a | 3 | #include "MCP4922.h" |
Supermil | 0:59a8574b663a | 4 | |
Supermil | 0:59a8574b663a | 5 | MCP4922 MCP(SPI_MOSI, SPI_SCK,PB_6); // MOSI, SCLK, CS |
Supermil | 0:59a8574b663a | 6 | |
Supermil | 0:59a8574b663a | 7 | |
Supermil | 0:59a8574b663a | 8 | /**** Main Function ***/ |
Supermil | 0:59a8574b663a | 9 | int main(void) |
Supermil | 0:59a8574b663a | 10 | { |
Supermil | 0:59a8574b663a | 11 | MCP.frequency(3125000); |
Supermil | 0:59a8574b663a | 12 | |
Supermil | 0:59a8574b663a | 13 | uint16_t i=0; |
Supermil | 0:59a8574b663a | 14 | int state=0; |
Supermil | 0:59a8574b663a | 15 | while(1) { |
Supermil | 0:59a8574b663a | 16 | if(i < 0x07FF) { |
Supermil | 0:59a8574b663a | 17 | i++; |
Supermil | 0:59a8574b663a | 18 | } |
Supermil | 0:59a8574b663a | 19 | else { |
Supermil | 0:59a8574b663a | 20 | i=0; |
Supermil | 0:59a8574b663a | 21 | if (state == 0 ){ |
Supermil | 0:59a8574b663a | 22 | state = 1; |
Supermil | 0:59a8574b663a | 23 | } |
Supermil | 0:59a8574b663a | 24 | else if(state == 1) { |
Supermil | 0:59a8574b663a | 25 | state = 2; |
Supermil | 0:59a8574b663a | 26 | } |
Supermil | 0:59a8574b663a | 27 | else if(state == 2){ |
Supermil | 0:59a8574b663a | 28 | state = 3; |
Supermil | 0:59a8574b663a | 29 | } |
Supermil | 0:59a8574b663a | 30 | else if(state == 3){ |
Supermil | 0:59a8574b663a | 31 | state = 0; |
Supermil | 0:59a8574b663a | 32 | } |
Supermil | 0:59a8574b663a | 33 | } |
Supermil | 0:59a8574b663a | 34 | |
Supermil | 0:59a8574b663a | 35 | if(state ==0) { |
Supermil | 0:59a8574b663a | 36 | MCP.writeA(i); |
Supermil | 0:59a8574b663a | 37 | } |
Supermil | 0:59a8574b663a | 38 | else if (state == 1){ |
Supermil | 0:59a8574b663a | 39 | MCP.writeA( ((~i))&0x07FF); |
Supermil | 0:59a8574b663a | 40 | } |
Supermil | 0:59a8574b663a | 41 | else if (state == 2){ |
Supermil | 0:59a8574b663a | 42 | MCP.writeA( ((~i))&0x0FFF); |
Supermil | 0:59a8574b663a | 43 | } |
Supermil | 0:59a8574b663a | 44 | else if (state == 3){ |
Supermil | 0:59a8574b663a | 45 | MCP.writeA(i+0x07FF); |
Supermil | 0:59a8574b663a | 46 | } |
Supermil | 0:59a8574b663a | 47 | wait_us(2); |
Supermil | 0:59a8574b663a | 48 | } |
Supermil | 0:59a8574b663a | 49 | } |