This library controls a ST TDA7419 audio control IC. This is part of a project to implement an mbed controlled car stereo. The TDA7419 will take in stereo and output four channels of audio plus a subwoofer channel.

Dependents:   car_stereo

Committer:
danielashercohen
Date:
Sun Oct 19 04:30:22 2014 +0000
Revision:
0:86ea14016b10
Child:
1:69c37f1ab7df
first sound from the TDA7419;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
danielashercohen 0:86ea14016b10 1 /** TDA7419 PreAmp library, I2C
danielashercohen 0:86ea14016b10 2 *
danielashercohen 0:86ea14016b10 3 * @Author: Dan Cohen
danielashercohen 0:86ea14016b10 4 */
danielashercohen 0:86ea14016b10 5 #ifndef DigoleSerialDisp_h
danielashercohen 0:86ea14016b10 6 #define DigoleSerialDisp_h
danielashercohen 0:86ea14016b10 7
danielashercohen 0:86ea14016b10 8 #include "mbed.h"
danielashercohen 0:86ea14016b10 9 #include <inttypes.h>
danielashercohen 0:86ea14016b10 10
danielashercohen 0:86ea14016b10 11 ///////////////////////////
danielashercohen 0:86ea14016b10 12 // Variables for TDA7419 //
danielashercohen 0:86ea14016b10 13 ///////////////////////////
danielashercohen 0:86ea14016b10 14 // I2C address for TDA7419
danielashercohen 0:86ea14016b10 15 #define TDA7419_ADDRESS 0x44
danielashercohen 0:86ea14016b10 16
danielashercohen 0:86ea14016b10 17 #define DEC 10
danielashercohen 0:86ea14016b10 18 #define HEX 16
danielashercohen 0:86ea14016b10 19 #define OCT 8
danielashercohen 0:86ea14016b10 20 #define BIN 2
danielashercohen 0:86ea14016b10 21
danielashercohen 0:86ea14016b10 22 /** TDA7419 PreAmp library
danielashercohen 0:86ea14016b10 23 *
danielashercohen 0:86ea14016b10 24 * Includes the commands for volume, fader, subwoofer and tone controls
danielashercohen 0:86ea14016b10 25 *
danielashercohen 0:86ea14016b10 26 */
danielashercohen 0:86ea14016b10 27 class PreampTDA7419 {
danielashercohen 0:86ea14016b10 28 public:
danielashercohen 0:86ea14016b10 29
danielashercohen 0:86ea14016b10 30 /** Create a new Digole Serial Display interface
danielashercohen 0:86ea14016b10 31 *
danielashercohen 0:86ea14016b10 32 * @param sda is the pin for I2C SDA
danielashercohen 0:86ea14016b10 33 * @param scl is the pin for I2C SCL
danielashercohen 0:86ea14016b10 34 * @param address is the 7-bit address (default is 0x27 for the device)
danielashercohen 0:86ea14016b10 35 */
danielashercohen 0:86ea14016b10 36 PreampTDA7419(PinName sda, PinName scl);
danielashercohen 0:86ea14016b10 37
danielashercohen 0:86ea14016b10 38 /** Sets a new I2C address for the Preamp board (perhaps not useful as it is fixed for the TDA4719)
danielashercohen 0:86ea14016b10 39 * @param address is the the new address
danielashercohen 0:86ea14016b10 40 */
danielashercohen 0:86ea14016b10 41 void setI2CAddress(uint8_t add);
danielashercohen 0:86ea14016b10 42
danielashercohen 0:86ea14016b10 43 /** Set up the TDA7419 to default values that will allow audio to pass through the device
danielashercohen 0:86ea14016b10 44 *
danielashercohen 0:86ea14016b10 45 */
danielashercohen 0:86ea14016b10 46 void initialize();
danielashercohen 0:86ea14016b10 47 int i2c_write(char command, char value);
danielashercohen 0:86ea14016b10 48
danielashercohen 0:86ea14016b10 49 private:
danielashercohen 0:86ea14016b10 50 I2C _device;
danielashercohen 0:86ea14016b10 51 uint8_t _address;
danielashercohen 0:86ea14016b10 52 uint8_t _Comdelay;
danielashercohen 0:86ea14016b10 53
danielashercohen 0:86ea14016b10 54 };
danielashercohen 0:86ea14016b10 55
danielashercohen 0:86ea14016b10 56 #endif
danielashercohen 0:86ea14016b10 57
danielashercohen 0:86ea14016b10 58
danielashercohen 0:86ea14016b10 59
danielashercohen 0:86ea14016b10 60
danielashercohen 0:86ea14016b10 61
danielashercohen 0:86ea14016b10 62
danielashercohen 0:86ea14016b10 63
danielashercohen 0:86ea14016b10 64
danielashercohen 0:86ea14016b10 65
danielashercohen 0:86ea14016b10 66
danielashercohen 0:86ea14016b10 67
danielashercohen 0:86ea14016b10 68
danielashercohen 0:86ea14016b10 69
danielashercohen 0:86ea14016b10 70