Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
main.cpp@0:a6df9b39f120, 2015-10-15 (annotated)
- Committer:
- madmonkeyman82
- Date:
- Thu Oct 15 16:03:37 2015 +0000
- Revision:
- 0:a6df9b39f120
ADC & DAC Analog
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| madmonkeyman82 | 0:a6df9b39f120 | 1 | #include "mbed.h" |
| madmonkeyman82 | 0:a6df9b39f120 | 2 | |
| madmonkeyman82 | 0:a6df9b39f120 | 3 | |
| madmonkeyman82 | 0:a6df9b39f120 | 4 | DigitalOut Vcc(PA_0); |
| madmonkeyman82 | 0:a6df9b39f120 | 5 | AnalogIn aInn(PA_1); |
| madmonkeyman82 | 0:a6df9b39f120 | 6 | DigitalOut Gnd(PA_4); |
| madmonkeyman82 | 0:a6df9b39f120 | 7 | |
| madmonkeyman82 | 0:a6df9b39f120 | 8 | |
| madmonkeyman82 | 0:a6df9b39f120 | 9 | int main() |
| madmonkeyman82 | 0:a6df9b39f120 | 10 | { |
| madmonkeyman82 | 0:a6df9b39f120 | 11 | Vcc = 1; |
| madmonkeyman82 | 0:a6df9b39f120 | 12 | Gnd = 0; |
| madmonkeyman82 | 0:a6df9b39f120 | 13 | |
| madmonkeyman82 | 0:a6df9b39f120 | 14 | float maxVoltage,minVoltage,voltagePrv; |
| madmonkeyman82 | 0:a6df9b39f120 | 15 | |
| madmonkeyman82 | 0:a6df9b39f120 | 16 | maxVoltage = minVoltage = aInn.read()*3.3f; |
| madmonkeyman82 | 0:a6df9b39f120 | 17 | |
| madmonkeyman82 | 0:a6df9b39f120 | 18 | while(1) |
| madmonkeyman82 | 0:a6df9b39f120 | 19 | { |
| madmonkeyman82 | 0:a6df9b39f120 | 20 | float voltage; |
| madmonkeyman82 | 0:a6df9b39f120 | 21 | for(int i = 0; i < 1000; i++) |
| madmonkeyman82 | 0:a6df9b39f120 | 22 | { |
| madmonkeyman82 | 0:a6df9b39f120 | 23 | voltage += aInn.read()*3.3f; |
| madmonkeyman82 | 0:a6df9b39f120 | 24 | } |
| madmonkeyman82 | 0:a6df9b39f120 | 25 | |
| madmonkeyman82 | 0:a6df9b39f120 | 26 | voltage = voltage/1000; |
| madmonkeyman82 | 0:a6df9b39f120 | 27 | if(voltage < voltagePrv - 0.3f || voltage > voltagePrv + 0.3f) |
| madmonkeyman82 | 0:a6df9b39f120 | 28 | { |
| madmonkeyman82 | 0:a6df9b39f120 | 29 | voltagePrv = voltage; |
| madmonkeyman82 | 0:a6df9b39f120 | 30 | if(voltage < minVoltage) minVoltage = voltage; |
| madmonkeyman82 | 0:a6df9b39f120 | 31 | if(voltage > maxVoltage)maxVoltage = voltage; |
| madmonkeyman82 | 0:a6df9b39f120 | 32 | |
| madmonkeyman82 | 0:a6df9b39f120 | 33 | printf("VoltIn: %.3f Max: %.3f Min: %.3f Diff: %.3f\r\n", voltage, maxVoltage, minVoltage, maxVoltage-minVoltage); |
| madmonkeyman82 | 0:a6df9b39f120 | 34 | } |
| madmonkeyman82 | 0:a6df9b39f120 | 35 | // printf("Voltage:\t%.3f \r\n", voltage); |
| madmonkeyman82 | 0:a6df9b39f120 | 36 | wait_ms(135); |
| madmonkeyman82 | 0:a6df9b39f120 | 37 | } |
| madmonkeyman82 | 0:a6df9b39f120 | 38 | |
| madmonkeyman82 | 0:a6df9b39f120 | 39 | |
| madmonkeyman82 | 0:a6df9b39f120 | 40 | } |