First publishment of Shimabara Audio Codec Controller library. Including code for ADAU1361 and UMB-ADAU1361A. Working pretty fine. Checked with LPCXpresso 4337 and Unzen_lpc4337

Dependents:   unzen_sample_LPC4088_quickstart unzen_sample_lpcxpresso_4337_callbacks unzen_sample_nucleo_f746 unzen_delay_sample_nucleo_f746 ... more

shimabaraは、mbedからオーディオ・コーデックのハードウェアを操作するクラス・ライブラリです。このライブラリは雲仙オーディオ・フレームワークと共に使うことを想定して開発しましたが、独立して使うことも可能です。

使い方

shimabaraは BaseAudioCodec, ADAU1361, UMB_ADAU1361Aの三つのクラスを定義しています。いずれのクラスも名前空間simabaraに属しています。実際のアプリケーションで使用するのはshimabara::UMB_ADAU1361Aだけで、このクラスはアクアシグナルのUMB-ADAU1361-Aに対応しています。ヘッダーファイルは umb_adau1361a.hです。

shimabara::UMB_ADAU1361Aのコンストラクタは三つの引数を受け取ります。

  • Fs はサンプル周波数です。これはenum Fs_type型の引数で、やはり名前空間shimabaraに属しています。
  • controller はADAU1361Aが接続されているI2Cポートに対応するI2Cオブジェクトを与えます。shimabaraはこのポートを通してCODECと通信します。
  • Addrには、コーデックのI2Cアドレスを与えます。現時点ではこの引数は0x38固定です。

コンストラクタでオブジェクトを初期化したら、start()メソッドを呼んでください。これでshimabaraはコーデックと通信し、I2Sモードでの動作が始まります。

参考リンク

Revision:
5:bbbf6cd235d4
Parent:
3:c0f834049ee2
Child:
7:6d921f8c38d6
--- a/baseaudiocodec.h	Fri May 27 04:58:41 2016 +0000
+++ b/baseaudiocodec.h	Thu Jan 26 00:07:02 2017 +0000
@@ -1,5 +1,5 @@
-/*
-* \file BaseAudioCodec.h
+/**
+* \file baseaudiocodec.h
 * \brief header file for an abstract audio codec class
 * \arthur SeiichiHorie
 * \date 6/Apr/2016
@@ -16,10 +16,15 @@
 {
 
 
-        // Sampling Frequency of the umb_adau1361
+        /**
+         * \brief Sampling Frequency of the umb_adau1361
+         */
     enum Fs_Type 
     {
-        Fs_32, Fs_441, Fs_48, Fs_96
+        Fs_32,  ///< 32kHz
+        Fs_441, ///< 44.1kHz
+        Fs_48,  ///< 48kHz
+        Fs_96   ///< 96kHz
     } ;