Neil Thiessen
/
MCP4725_HelloWorld
A simple serial test program for the MCP4725 library.
main.cpp@2:c96277b1deff, 2014-05-30 (annotated)
- Committer:
- neilt6
- Date:
- Fri May 30 18:58:09 2014 +0000
- Revision:
- 2:c96277b1deff
- Parent:
- 0:2c85cb83c9a7
Updated MCP4725 library
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
neilt6 | 0:2c85cb83c9a7 | 1 | #include "mbed.h" |
neilt6 | 0:2c85cb83c9a7 | 2 | #include "MCP4725.h" |
neilt6 | 0:2c85cb83c9a7 | 3 | |
neilt6 | 0:2c85cb83c9a7 | 4 | //Create an MCP4725 object at the default address (ADDRESS_0) |
neilt6 | 0:2c85cb83c9a7 | 5 | MCP4725 dac(p28, p27); |
neilt6 | 0:2c85cb83c9a7 | 6 | |
neilt6 | 0:2c85cb83c9a7 | 7 | int main() |
neilt6 | 0:2c85cb83c9a7 | 8 | { |
neilt6 | 0:2c85cb83c9a7 | 9 | //Try to open the MCP4725 |
neilt6 | 0:2c85cb83c9a7 | 10 | if (dac.open()) { |
neilt6 | 0:2c85cb83c9a7 | 11 | printf("Device detected!\n"); |
neilt6 | 0:2c85cb83c9a7 | 12 | |
neilt6 | 0:2c85cb83c9a7 | 13 | //Wake up the DAC |
neilt6 | 0:2c85cb83c9a7 | 14 | //NOTE: This might wake up other I2C devices as well! |
neilt6 | 0:2c85cb83c9a7 | 15 | dac.wakeup(); |
neilt6 | 0:2c85cb83c9a7 | 16 | |
neilt6 | 0:2c85cb83c9a7 | 17 | while (1) { |
neilt6 | 0:2c85cb83c9a7 | 18 | //Generate a sine wave on the DAC |
neilt6 | 0:2c85cb83c9a7 | 19 | for (float i = 0.0; i < 360.0; i += 0.1) |
neilt6 | 0:2c85cb83c9a7 | 20 | dac = 0.5 * (sinf(i * 3.14159265 / 180.0) + 1); |
neilt6 | 0:2c85cb83c9a7 | 21 | } |
neilt6 | 0:2c85cb83c9a7 | 22 | } else { |
neilt6 | 0:2c85cb83c9a7 | 23 | error("Device not detected!\n"); |
neilt6 | 0:2c85cb83c9a7 | 24 | } |
neilt6 | 0:2c85cb83c9a7 | 25 | } |