Frequency shifter using analytic signal for ST Nucleo F401RE.

Dependencies:   UITDSP_ADDA mbed

Files at this revision

API Documentation at this revision

Comitter:
MikamiUitOpen
Date:
Sat Jul 25 07:32:50 2015 +0000
Parent:
3:5cd493e7a3b5
Commit message:
5

Changed in this revision

UITDSP_ADDA.lib Show annotated file Show diff for this revision Revisions of this file
UIT_ADDA.lib Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/UITDSP_ADDA.lib	Sat Jul 25 07:32:50 2015 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/MikamiUitOpen/code/UITDSP_ADDA/#543daa087bd5
--- a/UIT_ADDA.lib	Sat Nov 15 06:14:15 2014 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-http://developer.mbed.org/users/MikamiUitOpen/code/UIT_ADDA/#c326d04aa6b8
--- a/main.cpp	Sat Nov 15 06:14:15 2014 +0000
+++ b/main.cpp	Sat Jul 25 07:32:50 2015 +0000
@@ -1,13 +1,14 @@
 //--------------------------------------------------------------
 // Frequency shifter using analytic signal
 //      Frequency is shifted toward 100 Hz higher
-// 2014/11/12, Copyright (c) 2014 MIKAMI, Naoki
+//      sw number = even : No frequency shift
+//      sw number = odd  : Frequency shift
+
+// 2015/07/25, Copyright (c) 2015 MIKAMI, Naoki
 //--------------------------------------------------------------
 
-#include "mbed.h"
-
-#include "ADC_Base.hpp"             // for ADC not using interrupt
-#include "DAC_MCP4922.hpp"          // for DAC MCP4922
+#include "ADC_BuiltIn.hpp"      // for ADC not using interrupt
+#include "DAC_MCP4921.hpp"      // for DAC MCP4921, MCP4922
 
 #include "HilbertTransform.hpp"     // Hilbert transform filter
 #include "coefsHilbert114.hpp"      // Coeffisients of Hilbert transform filter
@@ -18,8 +19,9 @@
 using namespace Mikami;
 
 const int FS_ = 12000;  // 12 kHz
-ADC_Base adc_(A0, FS_);
-DAC_MCP4922 myDac_;
+ADC_BuiltIn adc_(A0, FS_);
+DAC_MCP4921 myDac_;
+DigitalIn sw_(D2, PullDown);
 
 Hilbert<ORDER_> ht_(hm_);   // Hilbert transform filter
 Biquad DcCut_(c1_);         // DC cut filter
@@ -41,6 +43,7 @@
         cosSin_.Generate(cos, sin);     // cos and sin
         float yn = yIn*cos - yQn*sin;
         
+        if (sw_.read() == 0) yn = xn;   // no frequency shift
         //-----------------------------------------------
         myDac_.Write(yn);               // Write to DAC  
     }
--- a/mbed.bld	Sat Nov 15 06:14:15 2014 +0000
+++ b/mbed.bld	Sat Jul 25 07:32:50 2015 +0000
@@ -1,1 +1,1 @@
-http://mbed.org/users/mbed_official/code/mbed/builds/031413cf7a89
\ No newline at end of file
+http://mbed.org/users/mbed_official/code/mbed/builds/bad568076d81
\ No newline at end of file