AD and DA using mbed official library for ST Nucleo F401RE.

Dependencies:   mbed

Committer:
MikamiUitOpen
Date:
Tue Oct 21 09:04:45 2014 +0000
Revision:
0:ab1c0a2028da
Child:
1:09cc28c39f81
1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MikamiUitOpen 0:ab1c0a2028da 1 //--------------------------------------------------------------
MikamiUitOpen 0:ab1c0a2028da 2 // Example for ADC and DAC using mbed official classes
MikamiUitOpen 0:ab1c0a2028da 3 // Copyright (c) 2014 MIKAMI, Naoki, 2014/10/21
MikamiUitOpen 0:ab1c0a2028da 4 //--------------------------------------------------------------
MikamiUitOpen 0:ab1c0a2028da 5
MikamiUitOpen 0:ab1c0a2028da 6 #include "mbed.h"
MikamiUitOpen 0:ab1c0a2028da 7 #include "myDac.hpp"
MikamiUitOpen 0:ab1c0a2028da 8
MikamiUitOpen 0:ab1c0a2028da 9 AnalogIn adc_(A0); // using mbed official class
MikamiUitOpen 0:ab1c0a2028da 10 DacA dacA_; // using hand made class
MikamiUitOpen 0:ab1c0a2028da 11
MikamiUitOpen 0:ab1c0a2028da 12 Ticker timer_; // for timer interrupt
MikamiUitOpen 0:ab1c0a2028da 13
MikamiUitOpen 0:ab1c0a2028da 14 // Timer interrupt service routine
MikamiUitOpen 0:ab1c0a2028da 15 void TimerIsr()
MikamiUitOpen 0:ab1c0a2028da 16 {
MikamiUitOpen 0:ab1c0a2028da 17 uint16_t value = adc_.read_u16(); // AD
MikamiUitOpen 0:ab1c0a2028da 18 dacA_.Write(value>>4); // DA
MikamiUitOpen 0:ab1c0a2028da 19 }
MikamiUitOpen 0:ab1c0a2028da 20
MikamiUitOpen 0:ab1c0a2028da 21 int main()
MikamiUitOpen 0:ab1c0a2028da 22 {
MikamiUitOpen 0:ab1c0a2028da 23 timer_.attach_us(&TimerIsr, 20);
MikamiUitOpen 0:ab1c0a2028da 24 while (true) {}
MikamiUitOpen 0:ab1c0a2028da 25 }
MikamiUitOpen 0:ab1c0a2028da 26
MikamiUitOpen 0:ab1c0a2028da 27